Adds a private listener class to the Arguments tab and an appropriate listener to...
[phpeclipse.git] / net.sourceforge.phpeclipse.externaltools / src / net / sourceforge / phpdt / externaltools / model / IExternalToolConstants.java
1 package net.sourceforge.phpdt.externaltools.model;
2
3 /**********************************************************************
4  Copyright (c) 2002 IBM Corp. and others. All rights reserved.
5  This file is made available under the terms of the Common Public License v1.0
6  which accompanies this distribution, and is available at
7  http://www.eclipse.org/legal/cpl-v10.html
8  �
9  Contributors:
10  **********************************************************************/
11
12 /**
13  * Defines the constants available for client use.
14  * <p>
15  * This interface is not intended to be extended or implemented by clients.
16  * </p>
17  */
18 public interface IExternalToolConstants {
19         /**
20          * Plugin identifier for external tools (value
21          * <code>org.eclipse.ui.externaltools</code>).
22          */
23         public static final String PLUGIN_ID = "net.sourceforge.phpeclipse.externaltools"; //$NON-NLS-1$;
24
25         // ------- Extensions Points -------
26         /**
27          * Extension point to declare the launch configuration type that should be
28          * created when duplicating an existing configuration as a project builder.
29          */
30         public static final String EXTENSION_POINT_CONFIGURATION_DUPLICATION_MAPS = "configurationDuplicationMaps"; //$NON-NLS-1$
31
32         /**
33          * Extension point to declare argument variables (value
34          * <code>argumentVariables</code>).
35          */
36         public static final String EXTENSION_POINT_ARGUMENT_VARIABLES = "argumentVariables"; //$NON-NLS-1$
37
38         /**
39          * Extension point to declare file variables (value
40          * <code>fileVariables</code>).
41          */
42         public static final String EXTENSION_POINT_FILE_VARIABLES = "fileVariables"; //$NON-NLS-1$
43
44         /**
45          * Extension point to declare directory variables (value
46          * <code>directoryVariables</code>).
47          */
48         public static final String EXTENSION_POINT_DIRECTORY_VARIABLES = "directoryVariables"; //$NON-NLS-1$
49
50         /**
51          * Extension point to declare refresh scope variables (value
52          * <code>refreshVariables</code>).
53          */
54         public static final String EXTENSION_POINT_REFRESH_VARIABLES = "refreshVariables"; //$NON-NLS-1$
55
56         // ------- Views -------
57
58         /**
59          * Ant View identifier (value
60          * <code>org.eclipse.ui.externaltools.AntView</code>).
61          */
62         // public static final String ANT_VIEW_ID = PLUGIN_ID + ".AntView";
63         // //$NON-NLS-1$
64         // ------- Tool Types -------
65         /**
66          * External tool type for programs such as executables, batch files, shell
67          * scripts, etc (value <code>programType</code>).
68          */
69         public static final String TOOL_TYPE_PROGRAM = "programType"; //$NON-NLS-1$;
70
71         /**
72          * External tool type for Ant build files (value <code>antBuildType</code>).
73          */
74         // public static final String TOOL_TYPE_ANT_BUILD = "antBuildType";
75         // //$NON-NLS-1$;
76         // ------- Variables -------
77         /**
78          * Variable that expands to the absolute path on the system's hard drive to
79          * the workspace directory (value <code>workspace_loc</code>).
80          */
81         public static final String VAR_WORKSPACE_LOC = "workspace_loc"; //$NON-NLS-1$
82
83         /**
84          * Variable that expands to the absolute path on the system's hard drive to
85          * a project's directory (value <code>project_loc</code>).
86          */
87         public static final String VAR_PROJECT_LOC = "project_loc"; //$NON-NLS-1$
88
89         /**
90          * Variable that expands to the full path, relative to the workspace root,
91          * of a project (value <code>project_path</code>).
92          */
93         public static final String VAR_PROJECT_PATH = "project_path"; //$NON-NLS-1$
94
95         /**
96          * Variable that expands to the name of a project (value
97          * <code>project_name</code>).
98          */
99         public static final String VAR_PROJECT_NAME = "project_name"; //$NON-NLS-1$
100
101         /**
102          * Variable that expands to the absolute path on the system's hard drive to
103          * a resource's location (value <code>resource_loc</code>).
104          */
105         public static final String VAR_RESOURCE_LOC = "resource_loc"; //$NON-NLS-1$
106
107         /**
108          * Variable that expands to the full path, relative to the workspace root,
109          * of a resource (value <code>resource_path</code>).
110          */
111         public static final String VAR_RESOURCE_PATH = "resource_path"; //$NON-NLS-1$
112
113         /**
114          * Variable that expands to the name of a resource (value
115          * <code>resource_name</code>).
116          */
117         public static final String VAR_RESOURCE_NAME = "resource_name"; //$NON-NLS-1$
118
119         /**
120          * Variable that expands to the absolute path on the system's hard drive to
121          * a resource's containing directory (value <code>container_loc</code>).
122          */
123         public static final String VAR_CONTAINER_LOC = "container_loc"; //$NON-NLS-1$
124
125         /**
126          * Variable that expands to the full path, relative to the workspace root,
127          * of a resource's parent (value <code>container_path</code>).
128          */
129         public static final String VAR_CONTAINER_PATH = "container_path"; //$NON-NLS-1$
130
131         /**
132          * Variable that expands to the name of a resource's parent (value
133          * <code>container_name</code>).
134          */
135         public static final String VAR_CONTAINER_NAME = "container_name"; //$NON-NLS-1$
136
137         /**
138          * Variable that expands to the type of build (value <code>build_type</code>).
139          * See <code>BUILD_TYPE_*</code> constants for possible values.
140          */
141         public static final String VAR_BUILD_TYPE = "build_type"; //$NON-NLS-1$
142
143         /**
144          * Variable that expands to the current editor cursor column (value
145          * <code>editor_cur_col</code>).
146          */
147         public static final String VAR_EDITOR_CUR_COL = "editor_cur_col"; //$NON-NLS-1$
148
149         /**
150          * Variable that expands to the current editor cursor line (value
151          * <code>editor_cur_line</code>).
152          */
153         public static final String VAR_EDITOR_CUR_LINE = "editor_cur_line"; //$NON-NLS-1$
154
155         /**
156          * Variable that expands to the current editor selected text (value
157          * <code>editor_sel_text</code>).
158          */
159         public static final String VAR_EDITOR_SEL_TEXT = "editor_sel_text"; //$NON-NLS-1$
160
161         // ------- Refresh Variables -------
162         /**
163          * Variable that expands to the workspace root object (value
164          * <code>workspace</code>).
165          */
166         public static final String VAR_WORKSPACE = "workspace"; //$NON-NLS-1$
167
168         /**
169          * Variable that expands to the project resource (value <code>project</code>).
170          */
171         public static final String VAR_PROJECT = "project"; //$NON-NLS-1$
172
173         /**
174          * Variable that expands to the container resource (value
175          * <code>container</code>).
176          */
177         public static final String VAR_CONTAINER = "container"; //$NON-NLS-1$
178
179         /**
180          * Variable that expands to a resource (value <code>resource</code>).
181          */
182         public static final String VAR_RESOURCE = "resource"; //$NON-NLS-1$
183
184         /**
185          * Variable that expands to the working set object (value
186          * <code>working_set</code>).
187          */
188         public static final String VAR_WORKING_SET = "working_set"; //$NON-NLS-1$
189
190         // ------- Build Types -------
191         /**
192          * Build type indicating an incremental project build request for the
193          * external tool running as a builder (value <code>incremental</code>).
194          */
195         public static final String BUILD_TYPE_INCREMENTAL = "incremental"; //$NON-NLS-1$
196
197         /**
198          * Build type indicating a full project build request for the external tool
199          * running as a builder (value <code>full</code>).
200          */
201         public static final String BUILD_TYPE_FULL = "full"; //$NON-NLS-1$
202
203         /**
204          * Build type indicating an automatic project build request for the external
205          * tool running as a builder (value <code>incremental</code>).
206          */
207         public static final String BUILD_TYPE_AUTO = "auto"; //$NON-NLS-1$
208
209         /**
210          * Build type indicating an no project build request for the external tool
211          * running as a builder (value <code>none</code>).
212          */
213         public static final String BUILD_TYPE_NONE = "none"; //$NON-NLS-1$
214
215         // ------- Images -------
216         /**
217          * External tools wizard banner image
218          */
219         public static final String IMG_WIZBAN_EXTERNAL_TOOLS = PLUGIN_ID
220                         + ".IMG_WIZBAN_EXTERNAL_TOOLS"; //$NON-NLS-1$
221
222         /**
223          * Refresh action image
224          */
225         public static final String IMG_ACTION_REFRESH = PLUGIN_ID
226                         + ".IMG_ACTION_REFRESH"; //$NON-NLS-1$
227
228         /**
229          * Main tab image.
230          */
231         public static final String IMG_TAB_MAIN = PLUGIN_ID + ".IMG_TAB_MAIN"; //$NON-NLS-1$
232
233         /**
234          * Options tab image.
235          */
236         public static final String IMG_TAB_OPTIONS = PLUGIN_ID + ".IMG_TAB_OPTIONS"; //$NON-NLS-1$
237
238         /**
239          * Ant Targets tab image.
240          */
241         public static final String IMG_TAB_ANT_TARGETS = PLUGIN_ID
242                         + ".IMG_TAB_ANT_TARGETS"; //$NON-NLS-1$
243
244         // ------- Launch configuration types --------
245         /**
246          * Ant launch configuration type identifier.
247          */
248         // public static final String ID_ANT_LAUNCH_CONFIGURATION_TYPE =
249         // "org.eclipse.ant.AntLaunchConfigurationType"; //$NON-NLS-1$
250         /**
251          * Ant builder launch configuration type identifier. Ant project builders
252          * are of this type.
253          */
254         // public static final String ID_ANT_BUILDER_LAUNCH_CONFIGURATION_TYPE =
255         // "org.eclipse.ant.AntBuilderLaunchConfigurationType"; //$NON-NLS-1$
256         /**
257          * Program launch configuration type identifier.
258          */
259         public static final String ID_PROGRAM_LAUNCH_CONFIGURATION_TYPE = PLUGIN_ID
260                         + ".ProgramLaunchConfigurationType"; //$NON-NLS-1$
261
262         /**
263          * Program builder launch configuration type identifier. Program project
264          * builders are of this type.
265          */
266         public static final String ID_PROGRAM_BUILDER_LAUNCH_CONFIGURATION_TYPE = PLUGIN_ID
267                         + ".ProgramBuilderLaunchConfigurationType"; //$NON-NLS-1$       
268
269         // ------- Launch configuration category --------
270         /**
271          * Identifier for external tools launch configuration category. Launch
272          * configuration types for external tools that appear in the external tools
273          * launch configuration dialog should belong to this category.
274          */
275         public static final String ID_EXTERNAL_TOOLS_LAUNCH_CATEGORY = "net.sourceforge.phpdt.externaltools"; //$NON-NLS-1$
276
277         /**
278          * Identifier for external tools launch configuration builders category.
279          * Launch configuration types that can be added as project builders should
280          * belong to this category.
281          */
282         public static final String ID_EXTERNAL_TOOLS_BUILDER_LAUNCH_CATEGORY = "net.sourceforge.phpdt.externaltools.builder"; //$NON-NLS-1$
283
284         // ------- Launch configuration groups --------
285         /**
286          * Identifier for external tools launch configuration group. The external
287          * tools launch configuration group corresponds to the external tools
288          * category in run mode.
289          */
290         // public static final String ID_EXTERNAL_TOOLS_LAUNCH_GROUP =
291         // "net.sourceforge.phpdt.externaltools.launchGroup"; //$NON-NLS-1$
292         /**
293          * Identifier for external tools launch configuration group
294          */
295         // public static final String ID_EXTERNAL_TOOLS_BUILDER_LAUNCH_GROUP =
296         // "net.sourceforge.phpdt.externaltools.launchGroup.builder"; //$NON-NLS-1$
297         // ------- Common External Tool Launch Configuration Attributes -------
298         /**
299          * Boolean attribute indicating if external tool output should be captured.
300          * Default value is <code>false</code>.
301          */
302         public static final String ATTR_CAPTURE_OUTPUT = PLUGIN_ID
303                         + ".ATTR_CAPTURE_OUTPUT"; //$NON-NLS-1$
304
305         /**
306          * String attribute identifying the location of an external. Default value
307          * is <code>null</code>. Encoding is tool specific.
308          */
309         public static final String ATTR_LOCATION = PLUGIN_ID + ".ATTR_LOCATION"; //$NON-NLS-1$
310
311         /**
312          * Boolean attribute indicating if the user should be prompted for arguments
313          * before running a tool. Default value is <code>false</code>.
314          */
315         public static final String ATTR_PROMPT_FOR_ARGUMENTS = PLUGIN_ID
316                         + ".ATTR_PROMPT_FOR_ARGUMENTS"; //$NON-NLS-1$
317
318         /**
319          * Boolean attribute indicating if a refresh scope is recursive. Default
320          * value is <code>false</code>.
321          */
322         public static final String ATTR_REFRESH_RECURSIVE = PLUGIN_ID
323                         + ".ATTR_REFRESH_RECURSIVE"; //$NON-NLS-1$
324
325         /**
326          * String attribute identifying the scope of resources that should be
327          * refreshed after an external tool is run. Default value is
328          * <code>null</code>, indicating no refresh. Format is ???
329          */
330         public static final String ATTR_REFRESH_SCOPE = PLUGIN_ID
331                         + ".ATTR_REFRESH_SCOPE"; //$NON-NLS-1$
332
333         /**
334          * String attribute containing an array of build kinds for which an external
335          * tool builder should be run.
336          */
337         public static final String ATTR_RUN_BUILD_KINDS = PLUGIN_ID
338                         + ".ATTR_RUN_BUILD_KINDS"; //$NON-NLS-1$
339
340         /**
341          * Boolean attribute indicating if an external tool should be run in the
342          * background. Default value is <code>false</code>.
343          */
344         public static final String ATTR_RUN_IN_BACKGROUND = PLUGIN_ID
345                         + ".ATTR_RUN_IN_BACKGROUND"; //$NON-NLS-1$
346
347         /**
348          * Boolean attribute indicating if the console should be shown on external
349          * tool output. Default value is <code>false</code>.
350          */
351         public static final String ATTR_SHOW_CONSOLE = PLUGIN_ID
352                         + ".ATTR_SHOW_CONSOLE"; //$NON-NLS-1$
353
354         /**
355          * String attribute containing the arguments that should be passed to the
356          * tool. Default value is <code>null</code>, and encoding is tool
357          * specific.
358          */
359         public static final String ATTR_TOOL_ARGUMENTS = PLUGIN_ID
360                         + ".ATTR_TOOL_ARGUMENTS"; //$NON-NLS-1$
361
362         /**
363          * String attribute identifying the working directory of an external tool.
364          * Default value is <code>null</code>, which indicates a default working
365          * directory, which is tool specific.
366          */
367         public static final String ATTR_WORKING_DIRECTORY = PLUGIN_ID
368                         + ".ATTR_WORKING_DIRECTORY"; //$NON-NLS-1$
369
370         // ------- Common Ant Launch Configuration Attributes -------
371         /**
372          * String attribute indicating the Ant targets to execute. Default value is
373          * <code>null</code> which indicates that the default target is to be
374          * executed. Format is a comma separated listing of targets.
375          */
376         public static final String ATTR_ANT_TARGETS = PLUGIN_ID
377                         + ".ATTR_ANT_TARGETS"; //$NON-NLS-1$
378
379         /**
380          * Map attribute indicating the Ant properties to be defined during the
381          * build. Default value is <code>null</code> which indicates no additional
382          * properties will be defined.
383          */
384         public static final String ATTR_ANT_PROPERTIES = PLUGIN_ID
385                         + ".ATTR_ANT_PROPERTIES"; //$NON-NLS-1$                                 
386
387         /**
388          * String attribute indicating the Ant targets to execute. Default value is
389          * <code>null</code> which indicates that no additional property files
390          * will be defined. Format is a comma separated listing of property files.
391          */
392         // public static final String ATTR_ANT_PROPERTY_FILES = PLUGIN_ID +
393         // ".ATTR_ANT_PROPERTY_FILES"; //$NON-NLS-1$
394         /**
395          * String attribute indicating the custom runtime classpath to use for an
396          * Ant build. Default value is <code>null</code> which indicates that the
397          * global classpath is to be used. Format is a comma separated listing of
398          * URLs.
399          */
400         // public static final String ATTR_ANT_CUSTOM_CLASSPATH = PLUGIN_ID +
401         // ".ATTR_ANT_CUSTOM_CLASSPATH"; //$NON-NLS-1$
402         /**
403          * String attribute indicating the custom Ant home to use for an Ant build.
404          * Default value is <code>null</code> which indicates that no Ant homeis
405          * to be set
406          */
407         // public static final String ATTR_ANT_HOME = PLUGIN_ID + ".ATTR_ANT_HOME";
408         // //$NON-NLS-1$
409         /**
410          * Identifier for ant processes (value <code>ant</code>). This identifier
411          * is set as the value for the <code>IProcess.ATTR_PROCESS_TYPE</code>
412          * attribute in processes create by the ant launch delegate.
413          */
414         // public static final String ID_ANT_PROCESS_TYPE = "ant"; //$NON-NLS-1$
415 }