misc
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpdt / ui / PreferenceConstants.java
1 /*******************************************************************************
2  * Copyright (c) 2002 International Business Machines Corp. and others.
3  * All rights reserved. This program and the accompanying materials 
4  * are made available under the terms of the Common Public License v1.0 
5  * which accompanies this distribution, and is available at
6  * http://www.eclipse.org/legal/cpl-v05.html
7  * 
8  * Contributors:
9  *     IBM Corporation - initial API and implementation
10  ******************************************************************************/
11 package net.sourceforge.phpdt.ui;
12
13 import net.sourceforge.phpdt.core.IClasspathEntry;
14 import net.sourceforge.phpdt.internal.ui.text.spelling.SpellCheckEngine;
15 import net.sourceforge.phpdt.internal.ui.text.spelling.engine.ISpellCheckPreferenceKeys;
16 import net.sourceforge.phpeclipse.IPreferenceConstants;
17 import net.sourceforge.phpeclipse.PHPeclipsePlugin;
18
19 import org.eclipse.jface.action.Action;
20 import org.eclipse.jface.preference.IPreferenceStore;
21 import org.eclipse.jface.preference.PreferenceConverter;
22 import org.eclipse.swt.SWT;
23 import org.eclipse.swt.graphics.RGB;
24 import org.eclipse.ui.texteditor.AbstractDecoratedTextEditorPreferenceConstants;
25 import org.eclipse.ui.texteditor.AbstractTextEditor;
26
27 //
28 //import org.phpeclipse.phpdt.internal.ui.JavaPlugin;
29 //import org.phpeclipse.phpdt.internal.ui.preferences.NewJavaProjectPreferencePage;
30
31 /**
32  * Preference constants used in the JDT-UI preference store. Clients should only read the JDT-UI preference store using these
33  * values. Clients are not allowed to modify the preference store programmatically.
34  * 
35  * @since 2.0
36  */
37 public class PreferenceConstants {
38
39   private PreferenceConstants() {
40   }
41
42   /**
43    * A named preference that controls return type rendering of methods in the UI.
44    * <p>
45    * Value is of type <code>Boolean</code>: if <code>true</code> return types are rendered
46    * </p>
47    */
48   public static final String APPEARANCE_METHOD_RETURNTYPE = "net.sourceforge.phpdt.ui.methodreturntype"; //$NON-NLS-1$
49
50   /**
51    * A named preference that controls if override indicators are rendered in the UI.
52    * <p>
53    * Value is of type <code>Boolean</code>: if <code>true</code> override indicators are rendered
54    * </p>
55    */
56   public static final String APPEARANCE_OVERRIDE_INDICATOR = "net.sourceforge.phpdt.ui.overrideindicator"; //$NON-NLS-1$
57
58   /**
59    * A named preference that defines the pattern used for package name compression.
60    * <p>
61    * Value is of type <code>String</code>. For example foe the given package name 'org.eclipse.jdt' pattern '.' will compress it
62    * to '..jdt', '1~' to 'o~.e~.jdt'.
63    * </p>
64    */
65   public static final String APPEARANCE_PKG_NAME_PATTERN_FOR_PKG_VIEW = "PackagesView.pkgNamePatternForPackagesView"; //$NON-NLS-1$
66
67   /**
68    * A named preference that controls if package name compression is turned on or off.
69    * <p>
70    * Value is of type <code>Boolean</code>.
71    * </p>
72    * 
73    * @see #APPEARANCE_PKG_NAME_PATTERN_FOR_PKG_VIEW
74    */
75   public static final String APPEARANCE_COMPRESS_PACKAGE_NAMES = "net.sourceforge.phpdt.ui.compresspackagenames"; //$NON-NLS-1$
76
77   /**
78    * A named preference that controls if empty inner packages are folded in the hierarchical mode of the package explorer.
79    * <p>
80    * Value is of type <code>Boolean</code>: if <code>true</code> empty inner packages are folded.
81    * </p>
82    * 
83    * @since 2.1
84    */
85   public static final String APPEARANCE_FOLD_PACKAGES_IN_PACKAGE_EXPLORER = "net.sourceforge.phpdt.ui.flatPackagesInPackageExplorer"; //$NON-NLS-1$
86
87   /**
88    * A named preference that defines how member elements are ordered by the Java views using the <code>JavaElementSorter</code>.
89    * <p>
90    * Value is of type <code>String</code>: A comma separated list of the following entries. Each entry must be in the list, no
91    * duplication. List order defines the sort order.
92    * <ul>
93    * <li><b>T </b>: Types</li>
94    * <li><b>C </b>: Constructors</li>
95    * <li><b>I </b>: Initializers</li>
96    * <li><b>M </b>: Methods</li>
97    * <li><b>F </b>: Fields</li>
98    * <li><b>SI </b>: Static Initializers</li>
99    * <li><b>SM </b>: Static Methods</li>
100    * <li><b>SF </b>: Static Fields</li>
101    * </ul>
102    * </p>
103    * 
104    * @since 2.1
105    */
106   public static final String APPEARANCE_MEMBER_SORT_ORDER = "outlinesortoption"; //$NON-NLS-1$
107
108   /**
109    * A named preference that defines how member elements are ordered by visibility in the Java views using the
110    * <code>JavaElementSorter</code>.
111    * <p>
112    * Value is of type <code>String</code>: A comma separated list of the following entries. Each entry must be in the list, no
113    * duplication. List order defines the sort order.
114    * <ul>
115    * <li><b>B </b>: Public</li>
116    * <li><b>V </b>: Private</li>
117    * <li><b>R </b>: Protected</li>
118    * <li><b>D </b>: Default</li>
119    * </ul>
120    * </p>
121    * 
122    * @since 3.0
123    */
124   public static final String APPEARANCE_VISIBILITY_SORT_ORDER = "net.sourceforge.phpdt.ui.visibility.order"; //$NON-NLS-1$
125
126   /**
127    * A named preferences that controls if Java elements are also sorted by visibility.
128    * <p>
129    * Value is of type <code>Boolean</code>.
130    * </p>
131    * 
132    * @since 3.0
133    */
134   public static final String APPEARANCE_ENABLE_VISIBILITY_SORT_ORDER = "net.sourceforge.phpdt.ui.enable.visibility.order"; //$NON-NLS-1$
135
136   /**
137    * A named preference that controls if prefix removal during setter/getter generation is turned on or off.
138    * <p>
139    * Value is of type <code>Boolean</code>.
140    * </p>
141    */
142   public static final String CODEGEN_USE_GETTERSETTER_PREFIX = "net.sourceforge.phpdt.ui.gettersetter.prefix.enable"; //$NON-NLS-1$
143
144   /**
145    * A named preference that holds a list of prefixes to be removed from a local variable to compute setter and gettter names.
146    * <p>
147    * Value is of type <code>String</code>: comma separated list of prefixed
148    * </p>
149    * 
150    * @see #CODEGEN_USE_GETTERSETTER_PREFIX
151    */
152   public static final String CODEGEN_GETTERSETTER_PREFIX = "net.sourceforge.phpdt.ui.gettersetter.prefix.list"; //$NON-NLS-1$
153
154   /**
155    * A named preference that controls if suffix removal during setter/getter generation is turned on or off.
156    * <p>
157    * Value is of type <code>Boolean</code>.
158    * </p>
159    */
160   public static final String CODEGEN_USE_GETTERSETTER_SUFFIX = "net.sourceforge.phpdt.ui.gettersetter.suffix.enable"; //$NON-NLS-1$
161
162   /**
163    * A named preference that holds a list of suffixes to be removed from a local variable to compute setter and getter names.
164    * <p>
165    * Value is of type <code>String</code>: comma separated list of suffixes
166    * </p>
167    * 
168    * @see #CODEGEN_USE_GETTERSETTER_SUFFIX
169    */
170   public static final String CODEGEN_GETTERSETTER_SUFFIX = "net.sourceforge.phpdt.ui.gettersetter.suffix.list"; //$NON-NLS-1$
171
172   /**
173    * A named preference that controls if comment stubs will be added automatically to newly created types and methods.
174    * <p>
175    * Value is of type <code>Boolean</code>.
176    * </p>
177    * 
178    * @since 2.1
179    */
180   public static final String CODEGEN_ADD_COMMENTS = "net.sourceforge.phpdt.ui.phpdoc"; //$NON-NLS-1$
181
182   /**
183    * A name preference that controls if a JavaDoc stub gets added to newly created types and methods.
184    * <p>
185    * Value is of type <code>Boolean</code>.
186    * </p>
187    * 
188    * @deprecated Use CODEGEN_ADD_COMMENTS instead (Name is more precise).
189    */
190   //  public static final String CODEGEN__JAVADOC_STUBS = CODEGEN_ADD_COMMENTS; //$NON-NLS-1$
191   /**
192    * A named preference that controls if a non-phpdoc comment gets added to methods generated via the "Override Methods" operation.
193    * <p>
194    * Value is of type <code>Boolean</code>.
195    * </p>
196    */
197   public static final String CODEGEN__NON_JAVADOC_COMMENTS = "net.sourceforge.phpdt.ui.seecomments"; //$NON-NLS-1$
198
199   /**
200    * A named preference that controls if a file comment gets added to newly created files.
201    * <p>
202    * Value is of type <code>Boolean</code>.
203    * </p>
204    */
205   public static final String CODEGEN__FILE_COMMENTS = "net.sourceforge.phpdt.ui.filecomments"; //$NON-NLS-1$
206
207   /**
208    * A named preference that holds a list of comma separated package names. The list specifies the import order used by the
209    * "Organize Imports" opeation.
210    * <p>
211    * Value is of type <code>String</code>: semicolon separated list of package names
212    * </p>
213    */
214   public static final String ORGIMPORTS_IMPORTORDER = "net.sourceforge.phpdt.ui.importorder"; //$NON-NLS-1$
215
216   /**
217    * A named preference that specifies the number of imports added before a star-import declaration is used.
218    * <p>
219    * Value is of type <code>Int</code>: positive value specifing the number of non star-import is used
220    * </p>
221    */
222   public static final String ORGIMPORTS_ONDEMANDTHRESHOLD = "net.sourceforge.phpdt.ui.ondemandthreshold"; //$NON-NLS-1$
223
224   /**
225    * A named preferences that controls if types that start with a lower case letters get added by the "Organize Import" operation.
226    * <p>
227    * Value is of type <code>Boolean</code>.
228    * </p>
229    */
230   public static final String ORGIMPORTS_IGNORELOWERCASE = "net.sourceforge.phpdt.ui.ignorelowercasenames"; //$NON-NLS-1$
231
232   /**
233    * A named preference that speficies whether children of a compilation unit are shown in the package explorer.
234    * <p>
235    * Value is of type <code>Boolean</code>.
236    * </p>
237    */
238   public static final String SHOW_CU_CHILDREN = "net.sourceforge.phpdt.ui.packages.cuchildren"; //$NON-NLS-1$
239
240   /**
241    * A named preference that controls whether the package explorer's selection is linked to the active editor.
242    * <p>
243    * Value is of type <code>Boolean</code>.
244    * </p>
245    */
246   public static final String LINK_PACKAGES_TO_EDITOR = "net.sourceforge.phpdt.ui.packages.linktoeditor"; //$NON-NLS-1$
247
248   /**
249    * A named preference that controls whether the hierarchy view's selection is linked to the active editor.
250    * <p>
251    * Value is of type <code>Boolean</code>.
252    * </p>
253    */
254   public static final String LINK_TYPEHIERARCHY_TO_EDITOR = "net.sourceforge.phpdt.ui.packages.linktypehierarchytoeditor"; //$NON-NLS-1$
255
256   /**
257    * A named preference that controls whether the browsing view's selection is linked to the active editor.
258    * <p>
259    * Value is of type <code>Boolean</code>.
260    * </p>
261    * 
262    * @since 2.1
263    */
264   public static final String LINK_BROWSING_VIEW_TO_EDITOR = "net.sourceforge.phpdt.ui.browsing.linktoeditor"; //$NON-NLS-1$
265
266   /**
267    * A named preference that controls whether new projects are generated using source and output folder.
268    * <p>
269    * Value is of type <code>Boolean</code>. if <code>true</code> new projects are created with a source and output folder. If
270    * <code>false</code> source and output folder equals to the project.
271    * </p>
272    */
273   public static final String SRCBIN_FOLDERS_IN_NEWPROJ = "net.sourceforge.phpdt.ui.wizards.srcBinFoldersInNewProjects"; //$NON-NLS-1$
274
275   /**
276    * A named preference that specifies the source folder name used when creating a new Java project. Value is inactive if
277    * <code>SRCBIN_FOLDERS_IN_NEWPROJ</code> is set to <code>false</code>.
278    * <p>
279    * Value is of type <code>String</code>.
280    * </p>
281    * 
282    * @see #SRCBIN_FOLDERS_IN_NEWPROJ
283    */
284   public static final String SRCBIN_SRCNAME = "net.sourceforge.phpdt.ui.wizards.srcBinFoldersSrcName"; //$NON-NLS-1$
285
286   /**
287    * A named preference that specifies the output folder name used when creating a new Java project. Value is inactive if
288    * <code>SRCBIN_FOLDERS_IN_NEWPROJ</code> is set to <code>false</code>.
289    * <p>
290    * Value is of type <code>String</code>.
291    * </p>
292    * 
293    * @see #SRCBIN_FOLDERS_IN_NEWPROJ
294    */
295   public static final String SRCBIN_BINNAME = "net.sourceforge.phpdt.ui.wizards.srcBinFoldersBinName"; //$NON-NLS-1$
296
297   /**
298    * A named preference that holds a list of possible JRE libraries used by the New Java Project wizard. An library consists of a
299    * description and an arbitrary number of <code>IClasspathEntry</code>s, that will represent the JRE on the new project's
300    * classpath.
301    * <p>
302    * Value is of type <code>String</code>: a semicolon separated list of encoded JRE libraries.
303    * <code>NEWPROJECT_JRELIBRARY_INDEX</code> defines the currently used library. Clients should use the method
304    * <code>encodeJRELibrary</code> to encode a JRE library into a string and the methods
305    * <code>decodeJRELibraryDescription(String)</code> and <code>
306    * decodeJRELibraryClasspathEntries(String)</code> to decode the
307    * description and the array of classpath entries from an encoded string.
308    * </p>
309    * 
310    * @see #NEWPROJECT_JRELIBRARY_INDEX
311    * @see #encodeJRELibrary(String, IClasspathEntry[])
312    * @see #decodeJRELibraryDescription(String)
313    * @see #decodeJRELibraryClasspathEntries(String)
314    */
315   public static final String NEWPROJECT_JRELIBRARY_LIST = "net.sourceforge.phpdt.ui.wizards.jre.list"; //$NON-NLS-1$
316
317   /**
318    * A named preferences that specifies the current active JRE library.
319    * <p>
320    * Value is of type <code>Int</code>: an index into the list of possible JRE libraries.
321    * </p>
322    * 
323    * @see #NEWPROJECT_JRELIBRARY_LIST
324    */
325   public static final String NEWPROJECT_JRELIBRARY_INDEX = "net.sourceforge.phpdt.ui.wizards.jre.index"; //$NON-NLS-1$
326
327   /**
328    * A named preference that controls if a new type hierarchy gets opened in a new type hierarchy perspective or inside the type
329    * hierarchy view part.
330    * <p>
331    * Value is of type <code>String</code>: possible values are <code>
332    * OPEN_TYPE_HIERARCHY_IN_PERSPECTIVE</code> or <code>
333    * OPEN_TYPE_HIERARCHY_IN_VIEW_PART</code>.
334    * </p>
335    * 
336    * @see #OPEN_TYPE_HIERARCHY_IN_PERSPECTIVE
337    * @see #OPEN_TYPE_HIERARCHY_IN_VIEW_PART
338    */
339   public static final String OPEN_TYPE_HIERARCHY = "net.sourceforge.phpdt.ui.openTypeHierarchy"; //$NON-NLS-1$
340
341   /**
342    * A string value used by the named preference <code>OPEN_TYPE_HIERARCHY</code>.
343    * 
344    * @see #OPEN_TYPE_HIERARCHY
345    */
346   public static final String OPEN_TYPE_HIERARCHY_IN_PERSPECTIVE = "perspective"; //$NON-NLS-1$
347
348   /**
349    * A string value used by the named preference <code>OPEN_TYPE_HIERARCHY</code>.
350    * 
351    * @see #OPEN_TYPE_HIERARCHY
352    */
353   public static final String OPEN_TYPE_HIERARCHY_IN_VIEW_PART = "viewPart"; //$NON-NLS-1$
354
355   /**
356    * A named preference that controls the behaviour when double clicking on a container in the packages view.
357    * <p>
358    * Value is of type <code>String</code>: possible values are <code>
359    * DOUBLE_CLICK_GOES_INTO</code> or <code>
360    * DOUBLE_CLICK_EXPANDS</code>.
361    * </p>
362    * 
363    * @see #DOUBLE_CLICK_EXPANDS
364    * @see #DOUBLE_CLICK_GOES_INTO
365    */
366   public static final String DOUBLE_CLICK = "packageview.doubleclick"; //$NON-NLS-1$
367
368   /**
369    * A string value used by the named preference <code>DOUBLE_CLICK</code>.
370    * 
371    * @see #DOUBLE_CLICK
372    */
373   public static final String DOUBLE_CLICK_GOES_INTO = "packageview.gointo"; //$NON-NLS-1$
374
375   /**
376    * A string value used by the named preference <code>DOUBLE_CLICK</code>.
377    * 
378    * @see #DOUBLE_CLICK
379    */
380   public static final String DOUBLE_CLICK_EXPANDS = "packageview.doubleclick.expands"; //$NON-NLS-1$
381
382   /**
383    * A named preference that controls whether Java views update their presentation while editing or when saving the content of an
384    * editor.
385    * <p>
386    * Value is of type <code>String</code>: possible values are <code>
387    * UPDATE_ON_SAVE</code> or <code>
388    * UPDATE_WHILE_EDITING</code>.
389    * </p>
390    * 
391    * @see #UPDATE_ON_SAVE
392    * @see #UPDATE_WHILE_EDITING
393    */
394   public static final String UPDATE_JAVA_VIEWS = "JavaUI.update"; //$NON-NLS-1$
395
396   /**
397    * A string value used by the named preference <code>UPDATE_JAVA_VIEWS</code>
398    * 
399    * @see #UPDATE_JAVA_VIEWS
400    */
401   public static final String UPDATE_ON_SAVE = "JavaUI.update.onSave"; //$NON-NLS-1$
402
403   /**
404    * A string value used by the named preference <code>UPDATE_JAVA_VIEWS</code>
405    * 
406    * @see #UPDATE_JAVA_VIEWS
407    */
408   public static final String UPDATE_WHILE_EDITING = "JavaUI.update.whileEditing"; //$NON-NLS-1$
409
410   /**
411    * A named preference that holds the path of the Javadoc command used by the Javadoc creation wizard.
412    * <p>
413    * Value is of type <code>String</code>.
414    * </p>
415    */
416   public static final String JAVADOC_COMMAND = "command"; //$NON-NLS-1$
417
418   /**
419    * A named preference that defines whether hint to make hover sticky should be shown.
420    * 
421    * @see JavaUI
422    * @since 3.0
423    */
424   public static final String EDITOR_SHOW_TEXT_HOVER_AFFORDANCE = "PreferenceConstants.EDITOR_SHOW_TEXT_HOVER_AFFORDANCE"; //$NON-NLS-1$
425
426   /**
427    * A named preference that defines the key for the hover modifiers.
428    * 
429    * @see JavaUI
430    * @since 2.1
431    */
432   public static final String EDITOR_TEXT_HOVER_MODIFIERS = "hoverModifiers"; //$NON-NLS-1$
433
434   /**
435    * The id of the best match hover contributed for extension point <code>javaEditorTextHovers</code>.
436    * 
437    * @since 2.1
438    */
439   public static String ID_BESTMATCH_HOVER = "net.sourceforge.phpdt.ui.BestMatchHover"; //$NON-NLS-1$
440
441   /**
442    * The id of the source code hover contributed for extension point <code>javaEditorTextHovers</code>.
443    * 
444    * @since 2.1
445    */
446   public static String ID_SOURCE_HOVER = "net.sourceforge.phpdt.ui.JavaSourceHover"; //$NON-NLS-1$
447
448   /**
449    * The id of the problem hover contributed for extension point <code>javaEditorTextHovers</code>.
450    * 
451    * @since 2.1
452    */
453   public static String ID_PROBLEM_HOVER = "net.sourceforge.phpdt.ui.ProblemHover"; //$NON-NLS-1$
454
455   /**
456    * A named preference that controls whether bracket matching highlighting is turned on or off.
457    * <p>
458    * Value is of type <code>Boolean</code>.
459    * </p>
460    */
461   public final static String EDITOR_MATCHING_BRACKETS = "matchingBrackets"; //$NON-NLS-1$
462
463   /**
464    * A named preference that holds the color used to highlight matching brackets.
465    * <p>
466    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
467    * </p>
468    * 
469    * @see org.eclipse.jface.resource.StringConverter
470    * @see org.eclipse.jface.preference.PreferenceConverter
471    */
472   public final static String EDITOR_MATCHING_BRACKETS_COLOR = "matchingBracketsColor"; //$NON-NLS-1$
473
474   /**
475    * A named preference that controls whether the current line highlighting is turned on or off.
476    * <p>
477    * Value is of type <code>Boolean</code>.
478    * </p>
479    */
480   public final static String EDITOR_CURRENT_LINE = "currentLine"; //$NON-NLS-1$
481
482   /**
483    * A named preference that holds the color used to highlight the current line.
484    * <p>
485    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
486    * </p>
487    * 
488    * @see org.eclipse.jface.resource.StringConverter
489    * @see org.eclipse.jface.preference.PreferenceConverter
490    */
491   public final static String EDITOR_CURRENT_LINE_COLOR = "currentLineColor"; //$NON-NLS-1$
492
493   /**
494    * A named preference that controls whether the print margin is turned on or off.
495    * <p>
496    * Value is of type <code>Boolean</code>.
497    * </p>
498    */
499   public final static String EDITOR_PRINT_MARGIN = "printMargin"; //$NON-NLS-1$
500
501   /**
502    * A named preference that holds the color used to render the print margin.
503    * <p>
504    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
505    * </p>
506    * 
507    * @see org.eclipse.jface.resource.StringConverter
508    * @see org.eclipse.jface.preference.PreferenceConverter
509    */
510   public final static String EDITOR_PRINT_MARGIN_COLOR = "printMarginColor"; //$NON-NLS-1$
511
512   /**
513    * Print margin column. Int value.
514    */
515   public final static String EDITOR_PRINT_MARGIN_COLUMN = "printMarginColumn"; //$NON-NLS-1$
516
517   /**
518    * A named preference that holds the color used for the find/replace scope.
519    * <p>
520    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
521    * </p>
522    * 
523    * @see org.eclipse.jface.resource.StringConverter
524    * @see org.eclipse.jface.preference.PreferenceConverter
525    */
526   public final static String EDITOR_FIND_SCOPE_COLOR = AbstractTextEditor.PREFERENCE_COLOR_FIND_SCOPE;
527
528   /**
529    * A named preference that specifies if the editor uses spaces for tabs.
530    * <p>
531    * Value is of type <code>Boolean</code>. If <code>true</code> spaces instead of tabs are used in the editor. If
532    * <code>false</code> the editor inserts a tab character when pressing the tab key.
533    * </p>
534    */
535   public final static String EDITOR_SPACES_FOR_TABS = "spacesForTabs"; //$NON-NLS-1$
536
537   /**
538    * A named preference that holds the number of spaces used per tab in the editor.
539    * <p>
540    * Value is of type <code>Int</code>: positive int value specifying the number of spaces per tab.
541    * </p>
542    */
543   public final static String EDITOR_TAB_WIDTH = AbstractDecoratedTextEditorPreferenceConstants.EDITOR_TAB_WIDTH; //"net.sourceforge.phpdt.ui.editor.tab.width";
544
545   // //$NON-NLS-1$
546
547   /**
548    * A named preference that controls whether the outline view selection should stay in sync with with the element at the current
549    * cursor position.
550    * <p>
551    * Value is of type <code>Boolean</code>.
552    * </p>
553    * 
554    * @since 2.1
555    */
556   public final static String EDITOR_SYNC_OUTLINE_ON_CURSOR_MOVE = "JavaEditor.SyncOutlineOnCursorMove"; //$NON-NLS-1$
557
558   /**
559    * A named preference that controls if correction indicators are shown in the UI.
560    * <p>
561    * Value is of type <code>Boolean</code>.
562    * </p>
563    */
564   public final static String EDITOR_CORRECTION_INDICATION = "JavaEditor.ShowTemporaryProblem"; //$NON-NLS-1$
565
566   /**
567    * A named preference that controls whether the editor shows problem indicators in text (squiggly lines).
568    * <p>
569    * Value is of type <code>Boolean</code>.
570    * </p>
571    */
572   //  public final static String EDITOR_PROBLEM_INDICATION = "problemIndication"; //$NON-NLS-1$
573   /**
574    * A named preference that holds the color used to render problem indicators.
575    * <p>
576    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
577    * </p>
578    * 
579    * @see #EDITOR_PROBLEM_INDICATION
580    * @see org.eclipse.jface.resource.StringConverter
581    * @see org.eclipse.jface.preference.PreferenceConverter
582    */
583   //  public final static String EDITOR_PROBLEM_INDICATION_COLOR = "problemIndicationColor"; //$NON-NLS-1$
584   /**
585    * PreferenceConstants.EDITOR_PROBLEM_INDICATION_COLOR; A named preference that controls whether the editor shows warning
586    * indicators in text (squiggly lines).
587    * <p>
588    * Value is of type <code>Boolean</code>.
589    * </p>
590    */
591   //  public final static String EDITOR_WARNING_INDICATION = "warningIndication"; //$NON-NLS-1$
592   /**
593    * A named preference that holds the color used to render warning indicators.
594    * <p>
595    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
596    * </p>
597    * 
598    * @see #EDITOR_WARNING_INDICATION
599    * @see org.eclipse.jface.resource.StringConverter
600    * @see org.eclipse.jface.preference.PreferenceConverter
601    */
602   //  public final static String EDITOR_WARNING_INDICATION_COLOR = "warningIndicationColor"; //$NON-NLS-1$
603   /**
604    * A named preference that controls whether the editor shows task indicators in text (squiggly lines).
605    * <p>
606    * Value is of type <code>Boolean</code>.
607    * </p>
608    */
609   public final static String EDITOR_TASK_INDICATION = "taskIndication"; //$NON-NLS-1$
610
611   /**
612    * A named preference that holds the color used to render task indicators.
613    * <p>
614    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
615    * </p>
616    * 
617    * @see #EDITOR_TASK_INDICATION
618    * @see org.eclipse.jface.resource.StringConverter
619    * @see org.eclipse.jface.preference.PreferenceConverter
620    */
621   public final static String EDITOR_TASK_INDICATION_COLOR = "taskIndicationColor"; //$NON-NLS-1$
622
623   /**
624    * A named preference that controls whether the editor shows bookmark indicators in text (squiggly lines).
625    * <p>
626    * Value is of type <code>Boolean</code>.
627    * </p>
628    * 
629    * @since 2.1
630    */
631   public final static String EDITOR_BOOKMARK_INDICATION = "bookmarkIndication"; //$NON-NLS-1$
632
633   /**
634    * A named preference that holds the color used to render bookmark indicators.
635    * <p>
636    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
637    * </p>
638    * 
639    * @see #EDITOR_BOOKMARK_INDICATION
640    * @see org.eclipse.jface.resource.StringConverter
641    * @see org.eclipse.jface.preference.PreferenceConverter
642    * @since 2.1
643    */
644   public final static String EDITOR_BOOKMARK_INDICATION_COLOR = "bookmarkIndicationColor"; //$NON-NLS-1$
645
646   /**
647    * A named preference that controls whether the editor shows search indicators in text (squiggly lines).
648    * <p>
649    * Value is of type <code>Boolean</code>.
650    * </p>
651    * 
652    * @since 2.1
653    */
654   public final static String EDITOR_SEARCH_RESULT_INDICATION = "searchResultIndication"; //$NON-NLS-1$
655
656   /**
657    * A named preference that holds the color used to render search indicators.
658    * <p>
659    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
660    * </p>
661    * 
662    * @see #EDITOR_SEARCH_RESULT_INDICATION
663    * @see org.eclipse.jface.resource.StringConverter
664    * @see org.eclipse.jface.preference.PreferenceConverter
665    * @since 2.1
666    */
667   public final static String EDITOR_SEARCH_RESULT_INDICATION_COLOR = "searchResultIndicationColor"; //$NON-NLS-1$
668
669   /**
670    * A named preference that controls whether the editor shows unknown indicators in text (squiggly lines).
671    * <p>
672    * Value is of type <code>Boolean</code>.
673    * </p>
674    * 
675    * @since 2.1
676    */
677   public final static String EDITOR_UNKNOWN_INDICATION = "othersIndication"; //$NON-NLS-1$
678
679   /**
680    * A named preference that holds the color used to render unknown indicators.
681    * <p>
682    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
683    * </p>
684    * 
685    * @see #EDITOR_UNKNOWN_INDICATION
686    * @see org.eclipse.jface.resource.StringConverter
687    * @see org.eclipse.jface.preference.PreferenceConverter
688    * @since 2.1
689    */
690   public final static String EDITOR_UNKNOWN_INDICATION_COLOR = "othersIndicationColor"; //$NON-NLS-1$
691
692   /**
693    * A named preference that controls whether the overview ruler shows error indicators.
694    * <p>
695    * Value is of type <code>Boolean</code>.
696    * </p>
697    * 
698    * @since 2.1
699    */
700   public final static String EDITOR_ERROR_INDICATION_IN_OVERVIEW_RULER = "errorIndicationInOverviewRuler"; //$NON-NLS-1$
701
702   /**
703    * A named preference that controls whether the overview ruler shows warning indicators.
704    * <p>
705    * Value is of type <code>Boolean</code>.
706    * </p>
707    * 
708    * @since 2.1
709    */
710   public final static String EDITOR_WARNING_INDICATION_IN_OVERVIEW_RULER = "warningIndicationInOverviewRuler"; //$NON-NLS-1$
711
712   /**
713    * A named preference that controls whether the overview ruler shows task indicators.
714    * <p>
715    * Value is of type <code>Boolean</code>.
716    * </p>
717    * 
718    * @since 2.1
719    */
720   public final static String EDITOR_TASK_INDICATION_IN_OVERVIEW_RULER = "taskIndicationInOverviewRuler"; //$NON-NLS-1$
721
722   /**
723    * A named preference that controls whether the overview ruler shows bookmark indicators.
724    * <p>
725    * Value is of type <code>Boolean</code>.
726    * </p>
727    * 
728    * @since 2.1
729    */
730   public final static String EDITOR_BOOKMARK_INDICATION_IN_OVERVIEW_RULER = "bookmarkIndicationInOverviewRuler"; //$NON-NLS-1$
731
732   /**
733    * A named preference that controls whether the overview ruler shows search result indicators.
734    * <p>
735    * Value is of type <code>Boolean</code>.
736    * </p>
737    * 
738    * @since 2.1
739    */
740   public final static String EDITOR_SEARCH_RESULT_INDICATION_IN_OVERVIEW_RULER = "searchResultIndicationInOverviewRuler"; //$NON-NLS-1$
741
742   /**
743    * A named preference that controls whether the overview ruler shows unknown indicators.
744    * <p>
745    * Value is of type <code>Boolean</code>.
746    * </p>
747    * 
748    * @since 2.1
749    */
750   public final static String EDITOR_UNKNOWN_INDICATION_IN_OVERVIEW_RULER = "othersIndicationInOverviewRuler"; //$NON-NLS-1$
751
752   /**
753    * A named preference that controls whether the 'close strings' feature is enabled in PHP mode
754    * <p>
755    * Value is of type <code>Boolean</code>.
756    * </p>
757    */
758   public final static String EDITOR_CLOSE_STRINGS_DQ_PHP = "closeStringsPHPDQ"; //$NON-NLS-1$
759
760   /**
761    * A named preference that controls whether the 'close strings' feature is enabled in PHP mode
762    * <p>
763    * Value is of type <code>Boolean</code>.
764    * </p>
765    */
766   public final static String EDITOR_CLOSE_STRINGS_SQ_PHP = "closeStringsPHPSQ"; //$NON-NLS-1$
767
768   /**
769    * A named preference that controls whether the 'close brackets' feature is enabled in PHP mode
770    * <p>
771    * Value is of type <code>Boolean</code>.
772    * </p>
773    * 
774    * @since 2.1
775    */
776   public final static String EDITOR_CLOSE_BRACKETS_PHP = "closeBracketsPHP"; //$NON-NLS-1$
777
778   /**
779    * A named preference that controls whether the 'wrap words' feature is enabled.
780    * <p>
781    * Value is of type <code>Boolean</code>.
782    * </p>
783    * 
784    * @since 2.1
785    */
786   public final static String EDITOR_WRAP_WORDS = "wrapWords"; //$NON-NLS-1$
787
788   /**
789    * A named preference that controls whether the 'wrap strings' feature is enabled.
790    * <p>
791    * Value is of type <code>Boolean</code>.
792    * </p>
793    * 
794    * @since 2.1
795    */
796   public final static String EDITOR_WRAP_STRINGS_DQ = "wrapStringsDQ"; //$NON-NLS-1$
797
798   /**
799    * A named preference that controls whether the 'escape strings' feature is enabled.
800    * <p>
801    * Value is of type <code>Boolean</code>.
802    * </p>
803    * 
804    * @since 3.0
805    */
806   public final static String EDITOR_ESCAPE_STRINGS_DQ = "escapeStringsDQ"; //$NON-NLS-1$
807
808   /**
809    * A named preference that controls whether the 'wrap strings' feature is enabled.
810    * <p>
811    * Value is of type <code>Boolean</code>.
812    * </p>
813    * 
814    * @since 2.1
815    */
816   public final static String EDITOR_WRAP_STRINGS_SQ = "wrapStringsDQ"; //$NON-NLS-1$
817
818   /**
819    * A named preference that controls whether the 'escape strings' feature is enabled.
820    * <p>
821    * Value is of type <code>Boolean</code>.
822    * </p>
823    * 
824    * @since 3.0
825    */
826   public final static String EDITOR_ESCAPE_STRINGS_SQ = "escapeStringsSQ"; //$NON-NLS-1$
827
828   /**
829    * A named preference that controls if content assist inserts the common prefix of all proposals before presenting choices.
830    * <p>
831    * Value is of type <code>Boolean</code>.
832    * </p>
833    * 
834    * @since 3.0
835    */
836   public final static String CODEASSIST_PREFIX_COMPLETION = "content_assist_prefix_completion"; //$NON-NLS-1$
837
838   /**
839    * A named preference that controls whether the 'close braces' feature is enabled.
840    * <p>
841    * Value is of type <code>Boolean</code>.
842    * </p>
843    * 
844    * @since 2.1
845    */
846   public final static String EDITOR_CLOSE_BRACES = "closeBraces"; //$NON-NLS-1$
847
848   /**
849    * A named preference that controls whether the 'close php docs' feature is enabled.
850    * <p>
851    * Value is of type <code>Boolean</code>.
852    * </p>
853    * 
854    * @since 2.1
855    */
856   public final static String EDITOR_CLOSE_JAVADOCS = "closeJavaDocs"; //$NON-NLS-1$
857
858   /**
859    * A named preference that controls whether the 'add JavaDoc tags' feature is enabled.
860    * <p>
861    * Value is of type <code>Boolean</code>.
862    * </p>
863    * 
864    * @since 2.1
865    */
866   public final static String EDITOR_ADD_JAVADOC_TAGS = "addJavaDocTags"; //$NON-NLS-1$
867
868   /**
869    * A named preference that controls whether the 'format Javadoc tags' feature is enabled.
870    * <p>
871    * Value is of type <code>Boolean</code>.
872    * </p>
873    * 
874    * @since 2.1
875    */
876   public final static String EDITOR_FORMAT_JAVADOCS = "formatJavaDocs"; //$NON-NLS-1$
877
878   /**
879    * A named preference that controls whether the 'smart paste' feature is enabled.
880    * <p>
881    * Value is of type <code>Boolean</code>.
882    * </p>
883    * 
884    * @since 2.1
885    */
886   public final static String EDITOR_SMART_PASTE = "smartPaste"; //$NON-NLS-1$
887
888   /**
889    * A named preference that controls whether the 'close strings' feature is enabled in HTML mode
890    * <p>
891    * Value is of type <code>Boolean</code>.
892    * </p>
893    * 
894    * @since 2.1
895    */
896   public final static String EDITOR_CLOSE_STRINGS_HTML = "closeStringsHTML"; //$NON-NLS-1$
897
898   /**
899    * A named preference that controls whether the 'close brackets' feature is enabled in HTML mode
900    * <p>
901    * Value is of type <code>Boolean</code>.
902    * </p>
903    * 
904    * @since 2.1
905    */
906   public final static String EDITOR_CLOSE_BRACKETS_HTML = "closeBracketsHTML"; //$NON-NLS-1$
907
908   /**
909    * A named preference that controls whether the 'smart home-end' feature is enabled.
910    * <p>
911    * Value is of type <code>Boolean</code>.
912    * </p>
913    * 
914    * @since 2.1
915    */
916   public final static String EDITOR_SMART_HOME_END = AbstractTextEditor.PREFERENCE_NAVIGATION_SMART_HOME_END;
917
918   /**
919    * A named preference that controls whether the 'sub-word navigation' feature is enabled.
920    * <p>
921    * Value is of type <code>Boolean</code>.
922    * </p>
923    * 
924    * @since 2.1
925    */
926   public final static String EDITOR_SUB_WORD_NAVIGATION = "subWordNavigation"; //$NON-NLS-1$
927
928   /**
929    * A named preference that controls if temporary problems are evaluated and shown in the UI.
930    * <p>
931    * Value is of type <code>Boolean</code>.
932    * </p>
933    */
934   public final static String EDITOR_EVALUTE_TEMPORARY_PROBLEMS = "handleTemporaryProblems"; //$NON-NLS-1$
935
936   /**
937    * A named preference that controls if the overview ruler is shown in the UI.
938    * <p>
939    * Value is of type <code>Boolean</code>.
940    * </p>
941    */
942   public final static String EDITOR_OVERVIEW_RULER = "overviewRuler"; //$NON-NLS-1$
943
944   /**
945    * A named preference that controls if the line number ruler is shown in the UI.
946    * <p>
947    * Value is of type <code>Boolean</code>.
948    * </p>
949    */
950   public final static String EDITOR_LINE_NUMBER_RULER = "lineNumberRuler"; //$NON-NLS-1$
951
952   /**
953    * A named preference that holds the color used to render line numbers inside the line number ruler.
954    * <p>
955    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
956    * </p>
957    * 
958    * @see org.eclipse.jface.resource.StringConverter
959    * @see org.eclipse.jface.preference.PreferenceConverter
960    * @see #EDITOR_LINE_NUMBER_RULER
961    */
962   public final static String EDITOR_LINE_NUMBER_RULER_COLOR = "lineNumberColor"; //$NON-NLS-1$
963
964   /**
965    * A named preference that holds the color used to render linked positions inside code templates.
966    * <p>
967    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
968    * </p>
969    * 
970    * @see org.eclipse.jface.resource.StringConverter
971    * @see org.eclipse.jface.preference.PreferenceConverter
972    */
973   public final static String EDITOR_LINKED_POSITION_COLOR = "linkedPositionColor"; //$NON-NLS-1$
974
975   /**
976    * A named preference that holds the color used as the text foreground.
977    * <p>
978    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
979    * </p>
980    * 
981    * @see org.eclipse.jface.resource.StringConverter
982    * @see org.eclipse.jface.preference.PreferenceConverter
983    */
984   public final static String EDITOR_FOREGROUND_COLOR = AbstractTextEditor.PREFERENCE_COLOR_FOREGROUND;
985
986   /**
987    * A named preference that describes if the system default foreground color is used as the text foreground.
988    * <p>
989    * Value is of type <code>Boolean</code>.
990    * </p>
991    */
992   public final static String EDITOR_FOREGROUND_DEFAULT_COLOR = AbstractTextEditor.PREFERENCE_COLOR_FOREGROUND_SYSTEM_DEFAULT;
993
994   /**
995    * A named preference that holds the color used as the text background.
996    * <p>
997    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
998    * </p>
999    * 
1000    * @see org.eclipse.jface.resource.StringConverter
1001    * @see org.eclipse.jface.preference.PreferenceConverter
1002    */
1003   public final static String EDITOR_BACKGROUND_COLOR = AbstractTextEditor.PREFERENCE_COLOR_BACKGROUND;
1004
1005   /**
1006    * A named preference that describes if the system default background color is used as the text foreground.
1007    * <p>
1008    * Value is of type <code>Boolean</code>.
1009    * </p>
1010    */
1011   public final static String EDITOR_BACKGROUND_DEFAULT_COLOR = AbstractTextEditor.PREFERENCE_COLOR_BACKGROUND_SYSTEM_DEFAULT;
1012
1013   /**
1014    * Preference key suffix for bold text style preference keys.
1015    */
1016   public static final String EDITOR_BOLD_SUFFIX = "_bold"; //$NON-NLS-1$
1017
1018   /**
1019    * Preference key suffix for bold text style preference keys.
1020    */
1021   public static final String EDITOR_ITALIC_SUFFIX = "_italic"; //$NON-NLS-1$
1022
1023   /**
1024    * A named preference that holds the color used to render multi line comments.
1025    * <p>
1026    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1027    * </p>
1028    * 
1029    * @see org.eclipse.jface.resource.StringConverter
1030    * @see org.eclipse.jface.preference.PreferenceConverter
1031    */
1032   public final static String EDITOR_MULTI_LINE_COMMENT_COLOR = IPreferenceConstants.PHP_MULTILINE_COMMENT;
1033
1034   /**
1035    * The symbolic font name for the Java editor text font (value <code>"org.eclipse.jdt.ui.editors.textfont"</code>).
1036    * 
1037    * @since 2.1
1038    */
1039   public final static String EDITOR_TEXT_FONT = "net.sourceforge.phpdt.ui.editors.textfont"; //$NON-NLS-1$
1040
1041   /**
1042    * A named preference that controls whether multi line comments are rendered in bold.
1043    * <p>
1044    * Value is of type <code>Boolean</code>. If <code>true</code> multi line comments are rendered in bold. If
1045    * <code>false</code> the are rendered using no font style attribute.
1046    * </p>
1047    */
1048   public final static String EDITOR_MULTI_LINE_COMMENT_BOLD = IPreferenceConstants.PHP_MULTILINE_COMMENT + EDITOR_BOLD_SUFFIX;
1049
1050   /**
1051    * A named preference that holds the color used to render single line comments.
1052    * <p>
1053    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1054    * </p>
1055    * 
1056    * @see org.eclipse.jface.resource.StringConverter
1057    * @see org.eclipse.jface.preference.PreferenceConverter
1058    */
1059   public final static String EDITOR_SINGLE_LINE_COMMENT_COLOR = IPreferenceConstants.PHP_SINGLELINE_COMMENT;
1060
1061   /**
1062    * A named preference that controls whether sinle line comments are rendered in bold.
1063    * <p>
1064    * Value is of type <code>Boolean</code>. If <code>true</code> single line comments are rendered in bold. If
1065    * <code>false</code> the are rendered using no font style attribute.
1066    * </p>
1067    */
1068   public final static String EDITOR_SINGLE_LINE_COMMENT_BOLD = IPreferenceConstants.PHP_SINGLELINE_COMMENT + EDITOR_BOLD_SUFFIX;
1069
1070   /**
1071    * A named preference that holds the color used to render operators and brackets.
1072    * <p>
1073    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1074    * </p>
1075    * 
1076    * @see org.eclipse.jface.resource.StringConverter
1077    * @see org.eclipse.jface.preference.PreferenceConverter
1078    * @since 3.0
1079    */
1080   public final static String EDITOR_PHP_OPERATOR_COLOR = IPreferenceConstants.PHP_OPERATOR;
1081
1082   /**
1083    * A named preference that controls whether operators and brackets are rendered in bold.
1084    * <p>
1085    * Value is of type <code>Boolean</code>.
1086    * </p>
1087    * 
1088    * @since 3.0
1089    */
1090   public final static String EDITOR_PHP_OPERATOR_BOLD = IPreferenceConstants.PHP_OPERATOR + EDITOR_BOLD_SUFFIX;
1091
1092   /**
1093    * A named preference that controls whether operators and brackets are rendered in italic.
1094    * <p>
1095    * Value is of type <code>Boolean</code>.
1096    * </p>
1097    * 
1098    * @since 3.0
1099    */
1100   public final static String EDITOR_PHP_OPERATOR_ITALIC = IPreferenceConstants.PHP_OPERATOR + EDITOR_ITALIC_SUFFIX;
1101
1102   /**
1103    * A named preference that holds the color used to render operators and brackets.
1104    * <p>
1105    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1106    * </p>
1107    * 
1108    * @see org.eclipse.jface.resource.StringConverter
1109    * @see org.eclipse.jface.preference.PreferenceConverter
1110    * @since 3.0
1111    */
1112   public final static String EDITOR_PHP_BRACE_OPERATOR_COLOR = IPreferenceConstants.PHP_BRACE_OPERATOR;
1113
1114   /**
1115    * A named preference that controls whether operators and brackets are rendered in bold.
1116    * <p>
1117    * Value is of type <code>Boolean</code>.
1118    * </p>
1119    * 
1120    * @since 3.0
1121    */
1122   public final static String EDITOR_PHP_BRACE_OPERATOR_BOLD = IPreferenceConstants.PHP_BRACE_OPERATOR + EDITOR_BOLD_SUFFIX;
1123
1124   /**
1125    * A named preference that controls whether operators and brackets are rendered in italic.
1126    * <p>
1127    * Value is of type <code>Boolean</code>.
1128    * </p>
1129    * 
1130    * @since 3.0
1131    */
1132   public final static String EDITOR_PHP_BRACE_OPERATOR_ITALIC = IPreferenceConstants.PHP_BRACE_OPERATOR + EDITOR_ITALIC_SUFFIX;
1133
1134   /**
1135    * A named preference that holds the color used to render the 'return' keyword.
1136    * <p>
1137    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1138    * </p>
1139    * 
1140    * @see org.eclipse.jface.resource.StringConverter
1141    * @see org.eclipse.jface.preference.PreferenceConverter
1142    * @since 3.0
1143    */
1144   public final static String EDITOR_PHP_KEYWORD_RETURN_COLOR = IPreferenceConstants.PHP_KEYWORD_RETURN;
1145
1146   /**
1147    * A named preference that controls whether 'return' keyword is rendered in bold.
1148    * <p>
1149    * Value is of type <code>Boolean</code>.
1150    * </p>
1151    * 
1152    * @since 3.0
1153    */
1154   public final static String EDITOR_PHP_KEYWORD_RETURN_BOLD = IPreferenceConstants.PHP_KEYWORD_RETURN + EDITOR_BOLD_SUFFIX;
1155
1156   /**
1157    * A named preference that controls whether 'return' keyword is rendered in italic.
1158    * <p>
1159    * Value is of type <code>Boolean</code>.
1160    * </p>
1161    * 
1162    * @since 3.0
1163    */
1164   public final static String EDITOR_PHP_KEYWORD_RETURN_ITALIC = IPreferenceConstants.PHP_KEYWORD_RETURN + EDITOR_ITALIC_SUFFIX;
1165
1166   /**
1167    * A named preference that holds the color used to render php start and stop tags.
1168    * <p>
1169    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1170    * </p>
1171    * 
1172    * @see org.eclipse.jface.resource.StringConverter
1173    * @see org.eclipse.jface.preference.PreferenceConverter
1174    */
1175   public final static String EDITOR_PHP_TAG_COLOR = IPreferenceConstants.PHP_TAG;
1176
1177   /**
1178    * A named preference that controls whether php start and stop tags are rendered in bold.
1179    * <p>
1180    * Value is of type <code>Boolean</code>.
1181    * </p>
1182    */
1183   public final static String EDITOR_PHP_TAG_BOLD = IPreferenceConstants.PHP_TAG + EDITOR_BOLD_SUFFIX;
1184
1185   /**
1186    * A named preference that holds the color used to render php keywords.
1187    * <p>
1188    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1189    * </p>
1190    * 
1191    * @see org.eclipse.jface.resource.StringConverter
1192    * @see org.eclipse.jface.preference.PreferenceConverter
1193    */
1194   public final static String EDITOR_JAVA_KEYWORD_COLOR = IPreferenceConstants.PHP_KEYWORD;
1195
1196   /**
1197    * A named preference that controls whether keywords are rendered in bold.
1198    * <p>
1199    * Value is of type <code>Boolean</code>.
1200    * </p>
1201    */
1202   public final static String EDITOR_JAVA_KEYWORD_BOLD = IPreferenceConstants.PHP_KEYWORD + EDITOR_BOLD_SUFFIX;
1203
1204   /**
1205    * A named preference that holds the color used to render predefined php function names.
1206    * <p>
1207    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1208    * </p>
1209    * 
1210    * @see org.eclipse.jface.resource.StringConverter
1211    * @see org.eclipse.jface.preference.PreferenceConverter
1212    */
1213   public final static String EDITOR_PHP_FUNCTIONNAME_COLOR = IPreferenceConstants.PHP_FUNCTIONNAME;
1214
1215   /**
1216    * A named preference that controls whether function names are rendered in bold.
1217    * <p>
1218    * Value is of type <code>Boolean</code>.
1219    * </p>
1220    */
1221   public final static String EDITOR_PHP_FUNCTIONNAME_BOLD = IPreferenceConstants.PHP_FUNCTIONNAME + EDITOR_BOLD_SUFFIX;
1222
1223   /**
1224    * A named preference that holds the color used to render php variables.
1225    * <p>
1226    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1227    * </p>
1228    * 
1229    * @see org.eclipse.jface.resource.StringConverter
1230    * @see org.eclipse.jface.preference.PreferenceConverter
1231    */
1232   public final static String EDITOR_PHP_VARIABLE_COLOR = IPreferenceConstants.PHP_VARIABLE;
1233
1234   /**
1235    * A named preference that controls whether variables are rendered in bold.
1236    * <p>
1237    * Value is of type <code>Boolean</code>.
1238    * </p>
1239    */
1240   public final static String EDITOR_PHP_VARIABLE_BOLD = IPreferenceConstants.PHP_VARIABLE + EDITOR_BOLD_SUFFIX;
1241
1242   /**
1243    * A named preference that holds the color used to render php constants.
1244    * <p>
1245    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1246    * </p>
1247    * 
1248    * @see org.eclipse.jface.resource.StringConverter
1249    * @see org.eclipse.jface.preference.PreferenceConverter
1250    */
1251   public final static String EDITOR_PHP_CONSTANT_COLOR = IPreferenceConstants.PHP_CONSTANT;
1252
1253   /**
1254    * A named preference that controls whether constants are rendered in bold.
1255    * <p>
1256    * Value is of type <code>Boolean</code>.
1257    * </p>
1258    */
1259   public final static String EDITOR_PHP_CONSTANT_BOLD = IPreferenceConstants.PHP_CONSTANT + EDITOR_BOLD_SUFFIX;
1260
1261   /**
1262    * A named preference that holds the color used to render php types.
1263    * <p>
1264    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1265    * </p>
1266    * 
1267    * @see org.eclipse.jface.resource.StringConverter
1268    * @see org.eclipse.jface.preference.PreferenceConverter
1269    */
1270   public final static String EDITOR_PHP_TYPE_COLOR = IPreferenceConstants.PHP_TYPE;
1271
1272   /**
1273    * A named preference that controls whether types are rendered in bold.
1274    * <p>
1275    * Value is of type <code>Boolean</code>.
1276    * </p>
1277    */
1278   public final static String EDITOR_PHP_TYPE_BOLD = IPreferenceConstants.PHP_TYPE + EDITOR_BOLD_SUFFIX;
1279
1280   /**
1281    * A named preference that holds the color used to render string constants.
1282    * <p>
1283    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1284    * </p>
1285    * 
1286    * @see org.eclipse.jface.resource.StringConverter
1287    * @see org.eclipse.jface.preference.PreferenceConverter
1288    */
1289   public final static String EDITOR_STRING_COLOR = IPreferenceConstants.PHP_STRING;
1290
1291   /**
1292    * A named preference that controls whether string constants are rendered in bold.
1293    * <p>
1294    * Value is of type <code>Boolean</code>.
1295    * </p>
1296    */
1297   public final static String EDITOR_STRING_BOLD = IPreferenceConstants.PHP_STRING + EDITOR_BOLD_SUFFIX;
1298
1299   /**
1300    * A named preference that holds the color used to render php default text.
1301    * <p>
1302    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1303    * </p>
1304    * 
1305    * @see org.eclipse.jface.resource.StringConverter
1306    * @see org.eclipse.jface.preference.PreferenceConverter
1307    */
1308   public final static String EDITOR_JAVA_DEFAULT_COLOR = IPreferenceConstants.PHP_DEFAULT;
1309
1310   /**
1311    * A named preference that controls whether Java default text is rendered in bold.
1312    * <p>
1313    * Value is of type <code>Boolean</code>.
1314    * </p>
1315    */
1316   public final static String EDITOR_JAVA_DEFAULT_BOLD = IPreferenceConstants.PHP_DEFAULT + EDITOR_BOLD_SUFFIX;
1317
1318   /**
1319    * A named preference that holds the color used to render task tags.
1320    * <p>
1321    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1322    * </p>
1323    * 
1324    * @see org.eclipse.jface.resource.StringConverter
1325    * @see org.eclipse.jface.preference.PreferenceConverter
1326    * @since 2.1
1327    */
1328   public final static String EDITOR_TASK_TAG_COLOR = IPreferenceConstants.TASK_TAG;
1329
1330   /**
1331    * A named preference that controls whether task tags are rendered in bold.
1332    * <p>
1333    * Value is of type <code>Boolean</code>.
1334    * </p>
1335    * 
1336    * @since 2.1
1337    */
1338   public final static String EDITOR_TASK_TAG_BOLD = IPreferenceConstants.TASK_TAG + EDITOR_BOLD_SUFFIX;
1339
1340   /**
1341    * A named preference that holds the color used to render phpdoc keywords.
1342    * <p>
1343    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1344    * </p>
1345    * 
1346    * @see org.eclipse.jface.resource.StringConverter
1347    * @see org.eclipse.jface.preference.PreferenceConverter
1348    */
1349   public final static String EDITOR_JAVADOC_KEYWORD_COLOR = IPreferenceConstants.PHPDOC_KEYWORD;
1350
1351   /**
1352    * A named preference that controls whether phpdoc keywords are rendered in bold.
1353    * <p>
1354    * Value is of type <code>Boolean</code>.
1355    * </p>
1356    */
1357   public final static String EDITOR_JAVADOC_KEYWORD_BOLD = IPreferenceConstants.PHPDOC_KEYWORD + EDITOR_BOLD_SUFFIX;
1358
1359   /**
1360    * A named preference that holds the color used to render phpdoc tags.
1361    * <p>
1362    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1363    * </p>
1364    * 
1365    * @see org.eclipse.jface.resource.StringConverter
1366    * @see org.eclipse.jface.preference.PreferenceConverter
1367    */
1368   public final static String EDITOR_JAVADOC_TAG_COLOR = IPreferenceConstants.PHPDOC_TAG;
1369
1370   /**
1371    * A named preference that controls whether phpdoc tags are rendered in bold.
1372    * <p>
1373    * Value is of type <code>Boolean</code>.
1374    * </p>
1375    */
1376   public final static String EDITOR_JAVADOC_TAG_BOLD = IPreferenceConstants.PHPDOC_TAG + EDITOR_BOLD_SUFFIX;
1377
1378   /**
1379    * A named preference that holds the color used to render phpdoc links.
1380    * <p>
1381    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1382    * </p>
1383    * 
1384    * @see org.eclipse.jface.resource.StringConverter
1385    * @see org.eclipse.jface.preference.PreferenceConverter
1386    */
1387   public final static String EDITOR_JAVADOC_LINKS_COLOR = IPreferenceConstants.PHPDOC_LINK;
1388
1389   /**
1390    * A named preference that controls whether phpdoc links are rendered in bold.
1391    * <p>
1392    * Value is of type <code>Boolean</code>.
1393    * </p>
1394    */
1395   public final static String EDITOR_JAVADOC_LINKS_BOLD = IPreferenceConstants.PHPDOC_LINK + EDITOR_BOLD_SUFFIX;
1396
1397   /**
1398    * A named preference that holds the color used to render phpdoc default text.
1399    * <p>
1400    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1401    * </p>
1402    * 
1403    * @see org.eclipse.jface.resource.StringConverter
1404    * @see org.eclipse.jface.preference.PreferenceConverter
1405    */
1406   public final static String EDITOR_JAVADOC_DEFAULT_COLOR = IPreferenceConstants.PHPDOC_DEFAULT;
1407
1408   /**
1409    * A named preference that controls whether phpdoc default text is rendered in bold.
1410    * <p>
1411    * Value is of type <code>Boolean</code>.
1412    * </p>
1413    */
1414   public final static String EDITOR_JAVADOC_DEFAULT_BOLD = IPreferenceConstants.PHPDOC_DEFAULT + EDITOR_BOLD_SUFFIX;
1415
1416   /**
1417    * A named preference that holds the color used for 'linked-mode' underline.
1418    * <p>
1419    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1420    * </p>
1421    * 
1422    * @see org.eclipse.jface.resource.StringConverter
1423    * @see org.eclipse.jface.preference.PreferenceConverter
1424    * @since 2.1
1425    */
1426   public final static String EDITOR_LINK_COLOR = "linkColor"; //$NON-NLS-1$
1427
1428   /**
1429    * A named preference that controls whether hover tooltips in the editor are turned on or off.
1430    * <p>
1431    * Value is of type <code>Boolean</code>.
1432    * </p>
1433    */
1434   public static final String EDITOR_SHOW_HOVER = "net.sourceforge.phpdt.ui.editor.showHover"; //$NON-NLS-1$
1435
1436   /**
1437    * A named preference that defines the hover shown when no control key is pressed.
1438    * <p>
1439    * Value is of type <code>String</code>: possible values are <code>
1440    * EDITOR_NO_HOVER_CONFIGURED_ID</code> or
1441    * <code>EDITOR_DEFAULT_HOVER_CONFIGURED_ID</code> or the hover id of a hover contributed as <code>phpEditorTextHovers</code>.
1442    * </p>
1443    * 
1444    * @see #EDITOR_NO_HOVER_CONFIGURED_ID
1445    * @see #EDITOR_DEFAULT_HOVER_CONFIGURED_ID
1446    * @see JavaUI
1447    * @since 2.1
1448    */
1449   public static final String EDITOR_NONE_HOVER = "noneHover"; //$NON-NLS-1$
1450
1451   /**
1452    * A named preference that defines the hover shown when the <code>CTRL</code> modifier key is pressed.
1453    * <p>
1454    * Value is of type <code>String</code>: possible values are <code>
1455    * EDITOR_NO_HOVER_CONFIGURED_ID</code> or
1456    * <code>EDITOR_DEFAULT_HOVER_CONFIGURED_ID</code> or the hover id of a hover contributed as <code>phpEditorTextHovers</code>.
1457    * </p>
1458    * 
1459    * @see #EDITOR_NO_HOVER_CONFIGURED_ID
1460    * @see #EDITOR_DEFAULT_HOVER_CONFIGURED_ID
1461    * @see JavaUI
1462    * @since 2.1
1463    */
1464   public static final String EDITOR_CTRL_HOVER = "ctrlHover"; //$NON-NLS-1$
1465
1466   /**
1467    * A named preference that defines the hover shown when the <code>SHIFT</code> modifier key is pressed.
1468    * <p>
1469    * Value is of type <code>String</code>: possible values are <code>
1470    * EDITOR_NO_HOVER_CONFIGURED_ID</code> or
1471    * <code>EDITOR_DEFAULT_HOVER_CONFIGURED_ID</code> or the hover id of a hover contributed as <code>phpEditorTextHovers</code>.
1472    * </p>
1473    * 
1474    * @see #EDITOR_NO_HOVER_CONFIGURED_ID
1475    * @see #EDITOR_DEFAULT_HOVER_CONFIGURED_ID
1476    * @see JavaUI ID_*_HOVER
1477    * @since 2.1
1478    */
1479   public static final String EDITOR_SHIFT_HOVER = "shiftHover"; //$NON-NLS-1$
1480
1481   /**
1482    * A named preference that defines the hover shown when the <code>CTRL + ALT</code> modifier keys is pressed.
1483    * <p>
1484    * Value is of type <code>String</code>: possible values are <code>
1485    * EDITOR_NO_HOVER_CONFIGURED_ID</code> or
1486    * <code>EDITOR_DEFAULT_HOVER_CONFIGURED_ID</code> or the hover id of a hover contributed as <code>phpEditorTextHovers</code>.
1487    * </p>
1488    * 
1489    * @see #EDITOR_NO_HOVER_CONFIGURED_ID
1490    * @see #EDITOR_DEFAULT_HOVER_CONFIGURED_ID
1491    * @see JavaUI ID_*_HOVER
1492    * @since 2.1
1493    */
1494   public static final String EDITOR_CTRL_ALT_HOVER = "ctrlAltHover"; //$NON-NLS-1$
1495
1496   /**
1497    * A named preference that defines the hover shown when the <code>CTRL + ALT + SHIFT</code> modifier keys is pressed.
1498    * <p>
1499    * Value is of type <code>String</code>: possible values are <code>
1500    * EDITOR_NO_HOVER_CONFIGURED_ID</code> or
1501    * <code>EDITOR_DEFAULT_HOVER_CONFIGURED_ID</code> or the hover id of a hover contributed as <code>phpEditorTextHovers</code>.
1502    * </p>
1503    * 
1504    * @see #EDITOR_NO_HOVER_CONFIGURED_ID
1505    * @see #EDITOR_DEFAULT_HOVER_CONFIGURED_ID
1506    * @see JavaUI ID_*_HOVER
1507    * @since 2.1
1508    */
1509   public static final String EDITOR_CTRL_ALT_SHIFT_HOVER = "ctrlAltShiftHover"; //$NON-NLS-1$
1510
1511   /**
1512    * A named preference that defines the hover shown when the <code>CTRL + SHIFT</code> modifier keys is pressed.
1513    * <p>
1514    * Value is of type <code>String</code>: possible values are <code>
1515    * EDITOR_NO_HOVER_CONFIGURED_ID</code> or
1516    * <code>EDITOR_DEFAULT_HOVER_CONFIGURED_ID</code> or the hover id of a hover contributed as <code>phpEditorTextHovers</code>.
1517    * </p>
1518    * 
1519    * @see #EDITOR_NO_HOVER_CONFIGURED_ID
1520    * @see #EDITOR_DEFAULT_HOVER_CONFIGURED_ID
1521    * @see JavaUI ID_*_HOVER
1522    * @since 2.1
1523    */
1524   public static final String EDITOR_CTRL_SHIFT_HOVER = "ctrlShiftHover"; //$NON-NLS-1$
1525
1526   /**
1527    * A named preference that defines the hover shown when the <code>ALT</code> modifier key is pressed.
1528    * <p>
1529    * Value is of type <code>String</code>: possible values are <code>
1530    * EDITOR_NO_HOVER_CONFIGURED_ID</code>,
1531    * <code>EDITOR_DEFAULT_HOVER_CONFIGURED_ID</code> or the hover id of a hover contributed as <code>phpEditorTextHovers</code>.
1532    * </p>
1533    * 
1534    * @see #EDITOR_NO_HOVER_CONFIGURED_ID
1535    * @see #EDITOR_DEFAULT_HOVER_CONFIGURED_ID
1536    * @see JavaUI ID_*_HOVER
1537    * @since 2.1
1538    */
1539   public static final String EDITOR_ALT_SHIFT_HOVER = "altShiftHover"; //$NON-NLS-1$
1540
1541   /**
1542    * A string value used by the named preferences for hover configuration to descibe that no hover should be shown for the given key
1543    * modifiers.
1544    * 
1545    * @since 2.1
1546    */
1547   public static final String EDITOR_NO_HOVER_CONFIGURED_ID = "noHoverConfiguredId"; //$NON-NLS-1$
1548
1549   /**
1550    * A string value used by the named preferences for hover configuration to descibe that the default hover should be shown for the
1551    * given key modifiers. The default hover is described by the <code>EDITOR_DEFAULT_HOVER</code> property.
1552    * 
1553    * @since 2.1
1554    */
1555   public static final String EDITOR_DEFAULT_HOVER_CONFIGURED_ID = "defaultHoverConfiguredId"; //$NON-NLS-1$
1556
1557   /**
1558    * A named preference that defines the hover named the 'default hover'. Value is of type <code>String</code>: possible values
1559    * are <code>
1560    * EDITOR_NO_HOVER_CONFIGURED_ID</code> or <code> the hover id of a hover
1561    * contributed as <code>phpEditorTextHovers</code>.
1562    * </p>
1563    *@since 2.1
1564    */
1565   public static final String EDITOR_DEFAULT_HOVER = "defaultHover"; //$NON-NLS-1$
1566
1567   /**
1568    * A named preference that controls if segmented view (show selected element only) is turned on or off.
1569    * <p>
1570    * Value is of type <code>Boolean</code>.
1571    * </p>
1572    */
1573   public static final String EDITOR_SHOW_SEGMENTS = "net.sourceforge.phpdt.ui.editor.showSegments"; //$NON-NLS-1$
1574
1575   /**
1576    * A named preference that controls if browser like links are turned on or off.
1577    * <p>
1578    * Value is of type <code>Boolean</code>.
1579    * </p>
1580    * 
1581    * @since 2.1
1582    */
1583   public static final String EDITOR_BROWSER_LIKE_LINKS = "browserLikeLinks"; //$NON-NLS-1$
1584
1585   /**
1586    * A named preference that controls the key modifier for browser like links.
1587    * <p>
1588    * Value is of type <code>String</code>.
1589    * </p>
1590    * 
1591    * @since 2.1
1592    */
1593   public static final String EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER = "browserLikeLinksKeyModifier"; //$NON-NLS-1$
1594
1595   /**
1596    * A named preference that controls whether occurrences are marked in the editor.
1597    * <p>
1598    * Value is of type <code>Boolean</code>.
1599    * </p>
1600    * 
1601    * @since 3.0
1602    */
1603   public static final String EDITOR_MARK_OCCURRENCES = "markOccurrences"; //$NON-NLS-1$
1604
1605   /**
1606    * A named preference that controls whether occurrences are sticky in the editor.
1607    * <p>
1608    * Value is of type <code>Boolean</code>.
1609    * </p>
1610    * 
1611    * @since 3.0
1612    */
1613   public static final String EDITOR_STICKY_OCCURRENCES = "stickyOccurrences"; //$NON-NLS-1$
1614
1615   /**
1616    * A named preference that controls disabling of the overwrite mode.
1617    * <p>
1618    * Value is of type <code>Boolean</code>.
1619    * </p>
1620    * 
1621    * @since 3.0
1622    */
1623   public static final String EDITOR_DISABLE_OVERWRITE_MODE = "disable_overwrite_mode"; //$NON-NLS-1$
1624
1625   /**
1626    * A named preference that controls the "smart semicolon" smart typing handler
1627    * <p>
1628    * Value is of type <code>Boolean</code>.
1629    * </p>
1630    * 
1631    * @since 3.0
1632    */
1633   public static final String EDITOR_SMART_SEMICOLON = "smart_semicolon"; //$NON-NLS-1$
1634
1635   /**
1636    * A named preference that controls the smart backspace behavior.
1637    * <p>
1638    * Value is of type <code>Boolean</code>.
1639    * 
1640    * @since 3.0
1641    */
1642   public static final String EDITOR_SMART_BACKSPACE = "smart_backspace"; //$NON-NLS-1$
1643
1644   /**
1645    * A named preference that controls the "smart opening brace" smart typing handler
1646    * <p>
1647    * Value is of type <code>Boolean</code>.
1648    * </p>
1649    * 
1650    * @since 3.0
1651    */
1652   public static final String EDITOR_SMART_OPENING_BRACE = "smart_opening_brace"; //$NON-NLS-1$
1653
1654   /**
1655    * A named preference that controls the smart tab behaviour.
1656    * <p>
1657    * Value is of type <code>Boolean</code>.
1658    * 
1659    * @since 3.0
1660    */
1661   public static final String EDITOR_SMART_TAB = "smart_tab"; //$NON-NLS-1$
1662
1663   /**
1664    * A named preference that controls whether Java comments should be spell-checked.
1665    * <p>
1666    * Value is of type <code>Boolean</code>.
1667    * </p>
1668    * 
1669    * @since 3.0
1670    */
1671   public final static String SPELLING_CHECK_SPELLING = ISpellCheckPreferenceKeys.SPELLING_CHECK_SPELLING;
1672
1673   /**
1674    * A named preference that controls whether words containing digits should be skipped during spell-checking.
1675    * <p>
1676    * Value is of type <code>Boolean</code>.
1677    * </p>
1678    * 
1679    * @since 3.0
1680    */
1681   public final static String SPELLING_IGNORE_DIGITS = ISpellCheckPreferenceKeys.SPELLING_IGNORE_DIGITS;
1682
1683   /**
1684    * A named preference that controls whether mixed case words should be skipped during spell-checking.
1685    * <p>
1686    * Value is of type <code>Boolean</code>.
1687    * </p>
1688    * 
1689    * @since 3.0
1690    */
1691   public final static String SPELLING_IGNORE_MIXED = ISpellCheckPreferenceKeys.SPELLING_IGNORE_MIXED;
1692
1693   /**
1694    * A named preference that controls whether sentence capitalization should be ignored during spell-checking.
1695    * <p>
1696    * Value is of type <code>Boolean</code>.
1697    * </p>
1698    * 
1699    * @since 3.0
1700    */
1701   public final static String SPELLING_IGNORE_SENTENCE = ISpellCheckPreferenceKeys.SPELLING_IGNORE_SENTENCE;
1702
1703   /**
1704    * A named preference that controls whether upper case words should be skipped during spell-checking.
1705    * <p>
1706    * Value is of type <code>Boolean</code>.
1707    * </p>
1708    * 
1709    * @since 3.0
1710    */
1711   public final static String SPELLING_IGNORE_UPPER = ISpellCheckPreferenceKeys.SPELLING_IGNORE_UPPER;
1712
1713   /**
1714    * A named preference that controls whether urls should be ignored during spell-checking.
1715    * <p>
1716    * Value is of type <code>Boolean</code>.
1717    * </p>
1718    * 
1719    * @since 3.0
1720    */
1721   public final static String SPELLING_IGNORE_URLS = ISpellCheckPreferenceKeys.SPELLING_IGNORE_URLS;
1722
1723   /**
1724    * A named preference that controls the locale used for spell-checking.
1725    * <p>
1726    * Value is of type <code>String</code>.
1727    * </p>
1728    * 
1729    * @since 3.0
1730    */
1731   public final static String SPELLING_LOCALE = ISpellCheckPreferenceKeys.SPELLING_LOCALE;
1732
1733   /**
1734    * A named preference that controls the number of proposals offered during spell-checking.
1735    * <p>
1736    * Value is of type <code>Integer</code>.
1737    * </p>
1738    * 
1739    * @since 3.0
1740    */
1741   public final static String SPELLING_PROPOSAL_THRESHOLD = ISpellCheckPreferenceKeys.SPELLING_PROPOSAL_THRESHOLD;
1742
1743   /**
1744    * A named preference that specifies the workspace user dictionary.
1745    * <p>
1746    * Value is of type <code>Integer</code>.
1747    * </p>
1748    * 
1749    * @since 3.0
1750    */
1751   public final static String SPELLING_USER_DICTIONARY = ISpellCheckPreferenceKeys.SPELLING_USER_DICTIONARY;
1752
1753   /**
1754    * A named preference that specifies whether spelling dictionaries are available to content assist.
1755    * <p>
1756    * Value is of type <code>Boolean</code>.
1757    * </p>
1758    * 
1759    * @since 3.0
1760    */
1761   public final static String SPELLING_ENABLE_CONTENTASSIST = ISpellCheckPreferenceKeys.SPELLING_ENABLE_CONTENTASSIST;
1762
1763   /**
1764    * A named preference that controls whether code snippets are formatted in Javadoc comments.
1765    * <p>
1766    * Value is of type <code>Boolean</code>.
1767    * </p>
1768    * 
1769    * @since 3.0
1770    */
1771   public final static String FORMATTER_COMMENT_FORMATSOURCE = "comment_format_source_code"; //$NON-NLS-1$
1772
1773   /**
1774    * A named preference that controls whether description of Javadoc parameters are indented.
1775    * <p>
1776    * Value is of type <code>Boolean</code>.
1777    * </p>
1778    * 
1779    * @since 3.0
1780    */
1781   public final static String FORMATTER_COMMENT_INDENTPARAMETERDESCRIPTION = "comment_indent_parameter_description"; //$NON-NLS-1$
1782
1783   /**
1784    * A named preference that controls whether the header comment of a Java source file is formatted.
1785    * <p>
1786    * Value is of type <code>Boolean</code>.
1787    * </p>
1788    * 
1789    * @since 3.0
1790    */
1791   public final static String FORMATTER_COMMENT_FORMATHEADER = "comment_format_header"; //$NON-NLS-1$
1792
1793   /**
1794    * A named preference that controls whether Javadoc root tags are indented.
1795    * <p>
1796    * Value is of type <code>Boolean</code>.
1797    * </p>
1798    * 
1799    * @since 3.0
1800    */
1801   public final static String FORMATTER_COMMENT_INDENTROOTTAGS = "comment_indent_root_tags"; //$NON-NLS-1$
1802
1803   /**
1804    * A named preference that controls whether Javadoc comments are formatted by the content formatter.
1805    * <p>
1806    * Value is of type <code>Boolean</code>.
1807    * </p>
1808    * 
1809    * @since 3.0
1810    */
1811   public final static String FORMATTER_COMMENT_FORMAT = "comment_format_comments"; //$NON-NLS-1$
1812
1813   /**
1814    * A named preference that controls whether a new line is inserted after Javadoc root tag parameters.
1815    * <p>
1816    * Value is of type <code>Boolean</code>.
1817    * </p>
1818    * 
1819    * @since 3.0
1820    */
1821   public final static String FORMATTER_COMMENT_NEWLINEFORPARAMETER = "comment_new_line_for_parameter"; //$NON-NLS-1$
1822
1823   /**
1824    * A named preference that controls whether an empty line is inserted before the Javadoc root tag block.
1825    * <p>
1826    * Value is of type <code>Boolean</code>.
1827    * </p>
1828    * 
1829    * @since 3.0
1830    */
1831   public final static String FORMATTER_COMMENT_SEPARATEROOTTAGS = "comment_separate_root_tags"; //$NON-NLS-1$
1832
1833   /**
1834    * A named preference that controls whether blank lines are cleared during formatting
1835    * <p>
1836    * Value is of type <code>Boolean</code>.
1837    * </p>
1838    * 
1839    * @since 3.0
1840    */
1841   public final static String FORMATTER_COMMENT_CLEARBLANKLINES = "comment_clear_blank_lines"; //$NON-NLS-1$
1842
1843   /**
1844    * A named preference that controls the line length of comments.
1845    * <p>
1846    * Value is of type <code>Integer</code>. The value must be at least 4 for reasonable formatting.
1847    * </p>
1848    * 
1849    * @since 3.0
1850    */
1851   public final static String FORMATTER_COMMENT_LINELENGTH = "comment_line_length"; //$NON-NLS-1$
1852
1853   /**
1854    * A named preference that controls whether html tags are formatted.
1855    * <p>
1856    * Value is of type <code>Boolean</code>.
1857    * </p>
1858    * 
1859    * @since 3.0
1860    */
1861   public final static String FORMATTER_COMMENT_FORMATHTML = "comment_format_html"; //$NON-NLS-1$
1862
1863   /**
1864    * A named preference that controls if the Java code assist gets auto activated.
1865    * <p>
1866    * Value is of type <code>Boolean</code>.
1867    * </p>
1868    */
1869   public final static String CODEASSIST_AUTOACTIVATION = "content_assist_autoactivation"; //$NON-NLS-1$
1870
1871   /**
1872    * A name preference that holds the auto activation delay time in milli seconds.
1873    * <p>
1874    * Value is of type <code>Int</code>.
1875    * </p>
1876    */
1877   public final static String CODEASSIST_AUTOACTIVATION_DELAY = "content_assist_autoactivation_delay"; //$NON-NLS-1$
1878
1879   /**
1880    * A named preference that controls if code assist contains only visible proposals.
1881    * <p>
1882    * Value is of type <code>Boolean</code>. if <code>true<code> code assist only contains visible members. If 
1883    * <code>false</code> all members are included.
1884    * </p>
1885    */
1886   public final static String CODEASSIST_SHOW_VISIBLE_PROPOSALS = "content_assist_show_visible_proposals"; //$NON-NLS-1$
1887
1888   /**
1889    * A named preference that controls if the Java code assist inserts a proposal automatically if only one proposal is available.
1890    * <p>
1891    * Value is of type <code>Boolean</code>.
1892    * </p>
1893    * 
1894    * @since 2.1
1895    */
1896   public final static String CODEASSIST_AUTOINSERT = "content_assist_autoinsert"; //$NON-NLS-1$
1897
1898   /**
1899    * A named preference that controls if the Java code assist adds import statements.
1900    * <p>
1901    * Value is of type <code>Boolean</code>.
1902    * </p>
1903    * 
1904    * @since 2.1
1905    */
1906   public final static String CODEASSIST_ADDIMPORT = "content_assist_add_import"; //$NON-NLS-1$
1907
1908   /**
1909    * A named preference that controls if the Java code assist only inserts completions. If set to false the proposals can also
1910    * _replace_ code.
1911    * <p>
1912    * Value is of type <code>Boolean</code>.
1913    * </p>
1914    * 
1915    * @since 2.1
1916    */
1917   public final static String CODEASSIST_INSERT_COMPLETION = "content_assist_insert_completion"; //$NON-NLS-1$   
1918
1919   /**
1920    * A named preference that controls whether code assist proposals filtering is case sensitive or not.
1921    * <p>
1922    * Value is of type <code>Boolean</code>.
1923    * </p>
1924    */
1925   public final static String CODEASSIST_CASE_SENSITIVITY = "content_assist_case_sensitivity"; //$NON-NLS-1$
1926
1927   /**
1928    * A named preference that defines if code assist proposals are sorted in alphabetical order.
1929    * <p>
1930    * Value is of type <code>Boolean</code>. If <code>true</code> that are sorted in alphabetical order. If <code>false</code>
1931    * that are unsorted.
1932    * </p>
1933    */
1934   public final static String CODEASSIST_ORDER_PROPOSALS = "content_assist_order_proposals"; //$NON-NLS-1$
1935
1936   /**
1937    * A named preference that controls if argument names are filled in when a method is selected from as list of code assist
1938    * proposal.
1939    * <p>
1940    * Value is of type <code>Boolean</code>.
1941    * </p>
1942    */
1943   public final static String CODEASSIST_FILL_ARGUMENT_NAMES = "content_assist_fill_method_arguments"; //$NON-NLS-1$
1944
1945   /**
1946    * A named preference that controls if method arguments are guessed when a method is selected from as list of code assist
1947    * proposal.
1948    * <p>
1949    * Value is of type <code>Boolean</code>.
1950    * </p>
1951    * 
1952    * @since 2.1
1953    */
1954   public final static String CODEASSIST_GUESS_METHOD_ARGUMENTS = "content_assist_guess_method_arguments"; //$NON-NLS-1$
1955
1956   /**
1957    * A named preference that holds the characters that auto activate code assist in PHP code.
1958    * <p>
1959    * Value is of type <code>Sring</code>. All characters that trigger auto code assist in PHP code.
1960    * </p>
1961    */
1962   public final static String CODEASSIST_AUTOACTIVATION_TRIGGERS_JAVA = "content_assist_autoactivation_triggers_php"; //$NON-NLS-1$
1963
1964   /**
1965    * A named preference that holds the characters that auto activate code assist in PHPDoc.
1966    * <p>
1967    * Value is of type <code>Sring</code>. All characters that trigger auto code assist in PHPDoc.
1968    * </p>
1969    */
1970   public final static String CODEASSIST_AUTOACTIVATION_TRIGGERS_JAVADOC = "content_assist_autoactivation_triggers_phpdoc"; //$NON-NLS-1$
1971
1972   /**
1973    * A named preference that holds the characters that auto activate code assist in HTML.
1974    * <p>
1975    * Value is of type <code>Sring</code>. All characters that trigger auto code assist in HTML.
1976    * </p>
1977    */
1978   public final static String CODEASSIST_AUTOACTIVATION_TRIGGERS_HTML = "content_assist_autoactivation_triggers_html"; //$NON-NLS-1$
1979
1980   /**
1981    * A named preference that holds the background color used in the code assist selection dialog.
1982    * <p>
1983    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1984    * </p>
1985    * 
1986    * @see org.eclipse.jface.resource.StringConverter
1987    * @see org.eclipse.jface.preference.PreferenceConverter
1988    */
1989   public final static String CODEASSIST_PROPOSALS_BACKGROUND = "content_assist_proposals_background"; //$NON-NLS-1$
1990
1991   /**
1992    * A named preference that holds the foreground color used in the code assist selection dialog.
1993    * <p>
1994    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
1995    * </p>
1996    * 
1997    * @see org.eclipse.jface.resource.StringConverter
1998    * @see org.eclipse.jface.preference.PreferenceConverter
1999    */
2000   public final static String CODEASSIST_PROPOSALS_FOREGROUND = "content_assist_proposals_foreground"; //$NON-NLS-1$
2001
2002   /**
2003    * A named preference that holds the background color used for parameter hints.
2004    * <p>
2005    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
2006    * </p>
2007    * 
2008    * @see org.eclipse.jface.resource.StringConverter
2009    * @see org.eclipse.jface.preference.PreferenceConverter
2010    */
2011   public final static String CODEASSIST_PARAMETERS_BACKGROUND = "content_assist_parameters_background"; //$NON-NLS-1$
2012
2013   /**
2014    * A named preference that holds the foreground color used in the code assist selection dialog
2015    * <p>
2016    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
2017    * </p>
2018    * 
2019    * @see org.eclipse.jface.resource.StringConverter
2020    * @see org.eclipse.jface.preference.PreferenceConverter
2021    */
2022   public final static String CODEASSIST_PARAMETERS_FOREGROUND = "content_assist_parameters_foreground"; //$NON-NLS-1$
2023
2024   /**
2025    * A named preference that holds the background color used in the code assist selection dialog to mark replaced code.
2026    * <p>
2027    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
2028    * </p>
2029    * 
2030    * @see org.eclipse.jface.resource.StringConverter
2031    * @see org.eclipse.jface.preference.PreferenceConverter
2032    * @since 2.1
2033    */
2034   public final static String CODEASSIST_REPLACEMENT_BACKGROUND = "content_assist_completion_replacement_background"; //$NON-NLS-1$
2035
2036   /**
2037    * A named preference that holds the foreground color used in the code assist selection dialog to mark replaced code.
2038    * <p>
2039    * Value is of type <code>String</code>. A RGB color value encoded as a string using class <code>PreferenceConverter</code>
2040    * </p>
2041    * 
2042    * @see org.eclipse.jface.resource.StringConverter
2043    * @see org.eclipse.jface.preference.PreferenceConverter
2044    * @since 2.1
2045    */
2046   public final static String CODEASSIST_REPLACEMENT_FOREGROUND = "content_assist_completion_replacement_foreground"; //$NON-NLS-1$
2047
2048   /**
2049    * A named preference that controls the behaviour of the refactoring wizard for showing the error page.
2050    * <p>
2051    * Value is of type <code>String</code>. Valid values are: <code>REFACTOR_FATAL_SEVERITY</code>,
2052    * <code>REFACTOR_ERROR_SEVERITY</code>,<code>REFACTOR_WARNING_SEVERITY</code>
2053    * <code>REFACTOR_INFO_SEVERITY</code>,
2054    * <code>REFACTOR_OK_SEVERITY</code>.
2055    * </p>
2056    * 
2057    * @see #REFACTOR_FATAL_SEVERITY
2058    * @see #REFACTOR_ERROR_SEVERITY
2059    * @see #REFACTOR_WARNING_SEVERITY
2060    * @see #REFACTOR_INFO_SEVERITY
2061    * @see #REFACTOR_OK_SEVERITY
2062    */
2063   public static final String REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD = "Refactoring.ErrorPage.severityThreshold"; //$NON-NLS-1$
2064
2065   /**
2066    * A string value used by the named preference <code>REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD</code>.
2067    * 
2068    * @see #REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD
2069    */
2070   public static final String REFACTOR_FATAL_SEVERITY = "4"; //$NON-NLS-1$
2071
2072   /**
2073    * A string value used by the named preference <code>REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD</code>.
2074    * 
2075    * @see #REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD
2076    */
2077   public static final String REFACTOR_ERROR_SEVERITY = "3"; //$NON-NLS-1$
2078
2079   /**
2080    * A string value used by the named preference <code>REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD</code>.
2081    * 
2082    * @see #REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD
2083    */
2084   public static final String REFACTOR_WARNING_SEVERITY = "2"; //$NON-NLS-1$
2085
2086   /**
2087    * A string value used by the named preference <code>REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD</code>.
2088    * 
2089    * @see #REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD
2090    */
2091   public static final String REFACTOR_INFO_SEVERITY = "1"; //$NON-NLS-1$
2092
2093   /**
2094    * A string value used by the named preference <code>REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD</code>.
2095    * 
2096    * @see #REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD
2097    */
2098   public static final String REFACTOR_OK_SEVERITY = "0"; //$NON-NLS-1$
2099
2100   /**
2101    * A named preference thet controls whether all dirty editors are automatically saved before a refactoring is executed.
2102    * <p>
2103    * Value is of type <code>Boolean</code>.
2104    * </p>
2105    */
2106   public static final String REFACTOR_SAVE_ALL_EDITORS = "Refactoring.savealleditors"; //$NON-NLS-1$
2107
2108   /**
2109    * A named preference that controls if the Java Browsing views are linked to the active editor.
2110    * <p>
2111    * Value is of type <code>Boolean</code>.
2112    * </p>
2113    * 
2114    * @see #LINK_PACKAGES_TO_EDITOR
2115    */
2116   public static final String BROWSING_LINK_VIEW_TO_EDITOR = "net.sourceforge.phpdt.ui.browsing.linktoeditor"; //$NON-NLS-1$
2117
2118   /**
2119    * A named preference that controls the layout of the Java Browsing views vertically. Boolean value.
2120    * <p>
2121    * Value is of type <code>Boolean</code>. If <code>true<code> the views are stacked vertical.
2122    * If <code>false</code> they are stacked horizontal.
2123    * </p>
2124    */
2125   public static final String BROWSING_STACK_VERTICALLY = "net.sourceforge.phpdt.ui.browsing.stackVertically"; //$NON-NLS-1$
2126
2127   /**
2128    * A named preference that controls if templates are formatted when applied.
2129    * <p>
2130    * Value is of type <code>Boolean</code>.
2131    * </p>
2132    * 
2133    * @since 2.1
2134    */
2135   public static final String TEMPLATES_USE_CODEFORMATTER = "net.sourceforge.phpdt.ui.template.format"; //$NON-NLS-1$
2136
2137   /**
2138    * A named preference that controls whether annotation roll over is used or not.
2139    * <p>
2140    * Value is of type <code>Boolean</code>. If <code>true<code> the annotation ruler column
2141    * uses a roll over to display multiple annotations
2142    * </p>
2143    * 
2144    * @since 3.0
2145    */
2146   public static final String EDITOR_ANNOTATION_ROLL_OVER = "editor_annotation_roll_over"; //$NON-NLS-1$
2147
2148   /**
2149    * A named preference that controls the key modifier mask for browser like links. The value is only used if the value of
2150    * <code>EDITOR_BROWSER_LIKE_LINKS</code> cannot be resolved to valid SWT modifier bits.
2151    * <p>
2152    * Value is of type <code>String</code>.
2153    * </p>
2154    * 
2155    * @see #EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER
2156    * @since 2.1.1
2157    */
2158   public static final String EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER_MASK = "browserLikeLinksKeyModifierMask"; //$NON-NLS-1$
2159
2160   /**
2161    * A named preference that defines the key for the hover modifier state masks. The value is only used if the value of
2162    * <code>EDITOR_TEXT_HOVER_MODIFIERS</code> cannot be resolved to valid SWT modifier bits.
2163    * 
2164    * @see JavaUI
2165    * @see #EDITOR_TEXT_HOVER_MODIFIERS
2166    * @since 2.1.1
2167    */
2168   public static final String EDITOR_TEXT_HOVER_MODIFIER_MASKS = "hoverModifierMasks"; //$NON-NLS-1$
2169
2170   /**
2171    * A named preference that controls whether folding is enabled in the Java editor.
2172    * <p>
2173    * Value is of type <code>Boolean</code>.
2174    * </p>
2175    * 
2176    * @since 3.0
2177    */
2178   public static final String EDITOR_FOLDING_ENABLED = "editor_folding_enabled"; //$NON-NLS-1$
2179
2180   /**
2181    * A named preference that stores the configured folding provider.
2182    * <p>
2183    * Value is of type <code>String</code>.
2184    * </p>
2185    * 
2186    * @since 3.0
2187    */
2188   public static final String EDITOR_FOLDING_PROVIDER = "editor_folding_provider"; //$NON-NLS-1$
2189
2190   /**
2191    * A named preference that stores the value for Javadoc folding for the default folding provider.
2192    * <p>
2193    * Value is of type <code>Boolean</code>.
2194    * </p>
2195    * 
2196    * @since 3.0
2197    */
2198   public static final String EDITOR_FOLDING_JAVADOC = "editor_folding_default_javadoc"; //$NON-NLS-1$
2199
2200   /**
2201    * A named preference that stores the value for inner type folding for the default folding provider.
2202    * <p>
2203    * Value is of type <code>Boolean</code>.
2204    * </p>
2205    * 
2206    * @since 3.0
2207    */
2208   public static final String EDITOR_FOLDING_INNERTYPES = "editor_folding_default_innertypes"; //$NON-NLS-1$
2209
2210   /**
2211    * A named preference that stores the value for method folding for the default folding provider.
2212    * <p>
2213    * Value is of type <code>Boolean</code>.
2214    * </p>
2215    * 
2216    * @since 3.0
2217    */
2218   public static final String EDITOR_FOLDING_METHODS = "editor_folding_default_methods"; //$NON-NLS-1$
2219
2220   /**
2221    * A named preference that stores the value for imports folding for the default folding provider.
2222    * <p>
2223    * Value is of type <code>Boolean</code>.
2224    * </p>
2225    * 
2226    * @since 3.0
2227    */
2228   public static final String EDITOR_FOLDING_IMPORTS = "editor_folding_default_imports"; //$NON-NLS-1$
2229
2230   public static void initializeDefaultValues(IPreferenceStore store) {
2231     store.setDefault(PreferenceConstants.EDITOR_SHOW_SEGMENTS, false);
2232
2233     // JavaBasePreferencePage
2234     store.setDefault(PreferenceConstants.LINK_PACKAGES_TO_EDITOR, true);
2235     store.setDefault(PreferenceConstants.LINK_TYPEHIERARCHY_TO_EDITOR, false);
2236     store.setDefault(PreferenceConstants.LINK_BROWSING_VIEW_TO_EDITOR, true);
2237     store.setDefault(PreferenceConstants.OPEN_TYPE_HIERARCHY, PreferenceConstants.OPEN_TYPE_HIERARCHY_IN_VIEW_PART);
2238     store.setDefault(PreferenceConstants.DOUBLE_CLICK, PreferenceConstants.DOUBLE_CLICK_EXPANDS);
2239     store.setDefault(PreferenceConstants.UPDATE_JAVA_VIEWS, PreferenceConstants.UPDATE_WHILE_EDITING);
2240
2241     // AppearancePreferencePage
2242     store.setDefault(PreferenceConstants.APPEARANCE_COMPRESS_PACKAGE_NAMES, false);
2243     store.setDefault(PreferenceConstants.APPEARANCE_METHOD_RETURNTYPE, false);
2244     store.setDefault(PreferenceConstants.SHOW_CU_CHILDREN, true);
2245     store.setDefault(PreferenceConstants.APPEARANCE_OVERRIDE_INDICATOR, true);
2246     store.setDefault(PreferenceConstants.BROWSING_STACK_VERTICALLY, false);
2247     store.setDefault(PreferenceConstants.APPEARANCE_PKG_NAME_PATTERN_FOR_PKG_VIEW, ""); //$NON-NLS-1$
2248     store.setDefault(PreferenceConstants.APPEARANCE_FOLD_PACKAGES_IN_PACKAGE_EXPLORER, true);
2249
2250     // ImportOrganizePreferencePage
2251     store.setDefault(PreferenceConstants.ORGIMPORTS_IMPORTORDER, "php;phpx;org;com"); //$NON-NLS-1$
2252     store.setDefault(PreferenceConstants.ORGIMPORTS_ONDEMANDTHRESHOLD, 99);
2253     store.setDefault(PreferenceConstants.ORGIMPORTS_IGNORELOWERCASE, true);
2254
2255     // ClasspathVariablesPreferencePage
2256     // CodeFormatterPreferencePage
2257     // CompilerPreferencePage
2258     // no initialization needed
2259
2260     // RefactoringPreferencePage
2261     store.setDefault(PreferenceConstants.REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD, PreferenceConstants.REFACTOR_ERROR_SEVERITY);
2262     store.setDefault(PreferenceConstants.REFACTOR_SAVE_ALL_EDITORS, false);
2263     store.setDefault("RefactoringUI", "dialog");
2264
2265     // TemplatePreferencePage
2266     store.setDefault(PreferenceConstants.TEMPLATES_USE_CODEFORMATTER, true);
2267
2268     // CodeGenerationPreferencePage
2269     store.setDefault(PreferenceConstants.CODEGEN_USE_GETTERSETTER_PREFIX, false);
2270     store.setDefault(PreferenceConstants.CODEGEN_USE_GETTERSETTER_SUFFIX, false);
2271     store.setDefault(PreferenceConstants.CODEGEN_GETTERSETTER_PREFIX, "fg, f, _$, _, m_"); //$NON-NLS-1$
2272     store.setDefault(PreferenceConstants.CODEGEN_GETTERSETTER_SUFFIX, "_"); //$NON-NLS-1$
2273     store.setDefault(PreferenceConstants.CODEGEN_ADD_COMMENTS, true);
2274     store.setDefault(PreferenceConstants.CODEGEN__NON_JAVADOC_COMMENTS, false);
2275     store.setDefault(PreferenceConstants.CODEGEN__FILE_COMMENTS, false);
2276
2277     // MembersOrderPreferencePage
2278     store.setDefault(PreferenceConstants.APPEARANCE_MEMBER_SORT_ORDER, "T,SF,SI,SM,I,F,C,M"); //$NON-NLS-1$
2279     store.setDefault(PreferenceConstants.APPEARANCE_VISIBILITY_SORT_ORDER, "B,V,R,D"); //$NON-NLS-1$
2280     store.setDefault(PreferenceConstants.APPEARANCE_ENABLE_VISIBILITY_SORT_ORDER, false);
2281     // must add here to guarantee that it is the first in the listener list
2282     store.addPropertyChangeListener(PHPeclipsePlugin.getDefault().getMemberOrderPreferenceCache());
2283
2284     store.setDefault(PreferenceConstants.EDITOR_MATCHING_BRACKETS, true);
2285     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_MATCHING_BRACKETS_COLOR, new RGB(192, 192, 192));
2286
2287     store.setDefault(PreferenceConstants.EDITOR_CURRENT_LINE, true);
2288     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_CURRENT_LINE_COLOR, new RGB(225, 235, 224));
2289
2290     store.setDefault(PreferenceConstants.EDITOR_PRINT_MARGIN, false);
2291     store.setDefault(PreferenceConstants.EDITOR_PRINT_MARGIN_COLUMN, 80);
2292     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_PRINT_MARGIN_COLOR, new RGB(176, 180, 185));
2293
2294     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_FIND_SCOPE_COLOR, new RGB(185, 176, 180));
2295
2296     //    store.setDefault(PreferenceConstants.EDITOR_PROBLEM_INDICATION, true);
2297     //    PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_PROBLEM_INDICATION_COLOR, new RGB(255, 0, 128));
2298     //    store.setDefault(PreferenceConstants.EDITOR_ERROR_INDICATION_IN_OVERVIEW_RULER, true);
2299     //
2300     //    store.setDefault(PreferenceConstants.EDITOR_WARNING_INDICATION, true);
2301     //    PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_WARNING_INDICATION_COLOR, new RGB(244, 200, 45));
2302     //    store.setDefault(PreferenceConstants.EDITOR_WARNING_INDICATION_IN_OVERVIEW_RULER, true);
2303     //
2304     //    store.setDefault(PreferenceConstants.EDITOR_TASK_INDICATION, false);
2305     //    PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_TASK_INDICATION_COLOR, new RGB(0, 128, 255));
2306     //    store.setDefault(PreferenceConstants.EDITOR_TASK_INDICATION_IN_OVERVIEW_RULER, false);
2307     //
2308     //    store.setDefault(PreferenceConstants.EDITOR_BOOKMARK_INDICATION, false);
2309     //    PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_BOOKMARK_INDICATION_COLOR, new RGB(34, 164, 99));
2310     //    store.setDefault(PreferenceConstants.EDITOR_BOOKMARK_INDICATION_IN_OVERVIEW_RULER, false);
2311     //
2312     //    store.setDefault(PreferenceConstants.EDITOR_SEARCH_RESULT_INDICATION, false);
2313     //    PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_SEARCH_RESULT_INDICATION_COLOR, new RGB(192, 192, 192));
2314     //    store.setDefault(PreferenceConstants.EDITOR_SEARCH_RESULT_INDICATION_IN_OVERVIEW_RULER, false);
2315     //
2316     //    store.setDefault(PreferenceConstants.EDITOR_UNKNOWN_INDICATION, false);
2317     //    PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_UNKNOWN_INDICATION_COLOR, new RGB(0, 0, 0));
2318     //    store.setDefault(PreferenceConstants.EDITOR_UNKNOWN_INDICATION_IN_OVERVIEW_RULER, false);
2319
2320     store.setDefault(PreferenceConstants.EDITOR_CORRECTION_INDICATION, true);
2321     store.setDefault(PreferenceConstants.EDITOR_SYNC_OUTLINE_ON_CURSOR_MOVE, true);
2322
2323     store.setDefault(PreferenceConstants.EDITOR_EVALUTE_TEMPORARY_PROBLEMS, true);
2324
2325     store.setDefault(PreferenceConstants.EDITOR_OVERVIEW_RULER, true);
2326
2327     store.setDefault(PreferenceConstants.EDITOR_LINE_NUMBER_RULER, false);
2328     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_LINE_NUMBER_RULER_COLOR, new RGB(0, 0, 0));
2329
2330     //    WorkbenchChainedTextFontFieldEditor.startPropagate(store, JFaceResources.TEXT_FONT);
2331
2332     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_LINKED_POSITION_COLOR, new RGB(0, 200, 100));
2333     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_LINK_COLOR, new RGB(0, 0, 255));
2334
2335     store.setDefault(PreferenceConstants.EDITOR_FOREGROUND_DEFAULT_COLOR, true);
2336
2337     store.setDefault(PreferenceConstants.EDITOR_BACKGROUND_DEFAULT_COLOR, true);
2338
2339     store.setDefault(PreferenceConstants.EDITOR_TAB_WIDTH, 4);
2340     store.setDefault(PreferenceConstants.EDITOR_SPACES_FOR_TABS, false);
2341
2342     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_MULTI_LINE_COMMENT_COLOR, new RGB(63, 127, 95));
2343     store.setDefault(PreferenceConstants.EDITOR_MULTI_LINE_COMMENT_BOLD, false);
2344
2345     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_SINGLE_LINE_COMMENT_COLOR, new RGB(63, 127, 95));
2346     store.setDefault(PreferenceConstants.EDITOR_SINGLE_LINE_COMMENT_BOLD, false);
2347
2348     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_PHP_TAG_COLOR, new RGB(255, 0, 128));
2349     store.setDefault(PreferenceConstants.EDITOR_PHP_TAG_BOLD, true);
2350
2351     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_JAVA_KEYWORD_COLOR, new RGB(127, 0, 85));
2352     store.setDefault(PreferenceConstants.EDITOR_JAVA_KEYWORD_BOLD, true);
2353
2354     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_PHP_FUNCTIONNAME_COLOR, new RGB(127, 127, 159));
2355     store.setDefault(PreferenceConstants.EDITOR_PHP_FUNCTIONNAME_BOLD, false);
2356
2357     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_PHP_VARIABLE_COLOR, new RGB(127, 159, 191));
2358     store.setDefault(PreferenceConstants.EDITOR_PHP_VARIABLE_BOLD, false);
2359
2360     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_PHP_CONSTANT_COLOR, new RGB(127, 0, 85));
2361     store.setDefault(PreferenceConstants.EDITOR_PHP_CONSTANT_BOLD, false);
2362
2363     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_PHP_TYPE_COLOR, new RGB(127, 0, 85));
2364     store.setDefault(PreferenceConstants.EDITOR_PHP_TYPE_BOLD, false);
2365
2366     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_STRING_COLOR, new RGB(42, 0, 255));
2367     store.setDefault(PreferenceConstants.EDITOR_STRING_BOLD, false);
2368
2369     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_JAVA_DEFAULT_COLOR, new RGB(0, 0, 0));
2370     store.setDefault(PreferenceConstants.EDITOR_JAVA_DEFAULT_BOLD, false);
2371
2372     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_JAVADOC_KEYWORD_COLOR, new RGB(127, 159, 191));
2373     store.setDefault(PreferenceConstants.EDITOR_JAVADOC_KEYWORD_BOLD, true);
2374
2375     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_JAVADOC_TAG_COLOR, new RGB(127, 127, 159));
2376     store.setDefault(PreferenceConstants.EDITOR_JAVADOC_TAG_BOLD, false);
2377
2378     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_JAVADOC_LINKS_COLOR, new RGB(63, 63, 191));
2379     store.setDefault(PreferenceConstants.EDITOR_JAVADOC_LINKS_BOLD, false);
2380
2381     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_JAVADOC_DEFAULT_COLOR, new RGB(63, 95, 191));
2382     store.setDefault(PreferenceConstants.EDITOR_JAVADOC_DEFAULT_BOLD, false);
2383
2384     store.setDefault(PreferenceConstants.CODEASSIST_AUTOACTIVATION, true);
2385     store.setDefault(PreferenceConstants.CODEASSIST_AUTOACTIVATION_DELAY, 500);
2386
2387     store.setDefault(PreferenceConstants.CODEASSIST_AUTOINSERT, true);
2388     PreferenceConverter.setDefault(store, PreferenceConstants.CODEASSIST_PROPOSALS_BACKGROUND, new RGB(254, 241, 233));
2389     PreferenceConverter.setDefault(store, PreferenceConstants.CODEASSIST_PROPOSALS_FOREGROUND, new RGB(0, 0, 0));
2390     PreferenceConverter.setDefault(store, PreferenceConstants.CODEASSIST_PARAMETERS_BACKGROUND, new RGB(254, 241, 233));
2391     PreferenceConverter.setDefault(store, PreferenceConstants.CODEASSIST_PARAMETERS_FOREGROUND, new RGB(0, 0, 0));
2392     PreferenceConverter.setDefault(store, PreferenceConstants.CODEASSIST_REPLACEMENT_BACKGROUND, new RGB(255, 255, 0));
2393     PreferenceConverter.setDefault(store, PreferenceConstants.CODEASSIST_REPLACEMENT_FOREGROUND, new RGB(255, 0, 0));
2394     store.setDefault(PreferenceConstants.CODEASSIST_AUTOACTIVATION_TRIGGERS_JAVA, "$"); //$NON-NLS-1$
2395     store.setDefault(PreferenceConstants.CODEASSIST_AUTOACTIVATION_TRIGGERS_JAVADOC, "@"); //$NON-NLS-1$
2396     store.setDefault(PreferenceConstants.CODEASSIST_AUTOACTIVATION_TRIGGERS_HTML, "<&#"); //$NON-NLS-1$
2397     store.setDefault(PreferenceConstants.CODEASSIST_SHOW_VISIBLE_PROPOSALS, true);
2398     store.setDefault(PreferenceConstants.CODEASSIST_CASE_SENSITIVITY, false);
2399     store.setDefault(PreferenceConstants.CODEASSIST_ORDER_PROPOSALS, false);
2400     store.setDefault(PreferenceConstants.CODEASSIST_ADDIMPORT, true);
2401     store.setDefault(PreferenceConstants.CODEASSIST_INSERT_COMPLETION, true);
2402     store.setDefault(PreferenceConstants.CODEASSIST_FILL_ARGUMENT_NAMES, false);
2403     store.setDefault(PreferenceConstants.CODEASSIST_GUESS_METHOD_ARGUMENTS, true);
2404     store.setDefault(PreferenceConstants.CODEASSIST_PREFIX_COMPLETION, false);
2405
2406     store.setDefault(PreferenceConstants.EDITOR_SMART_HOME_END, true);
2407     store.setDefault(PreferenceConstants.EDITOR_SUB_WORD_NAVIGATION, true);
2408     store.setDefault(PreferenceConstants.EDITOR_SMART_PASTE, true);
2409     store.setDefault(PreferenceConstants.EDITOR_CLOSE_STRINGS_DQ_PHP, true);
2410     store.setDefault(PreferenceConstants.EDITOR_CLOSE_STRINGS_SQ_PHP, true);
2411     store.setDefault(PreferenceConstants.EDITOR_CLOSE_BRACKETS_PHP, true);
2412     store.setDefault(PreferenceConstants.EDITOR_CLOSE_BRACES, true);
2413     store.setDefault(PreferenceConstants.EDITOR_CLOSE_JAVADOCS, true);
2414     store.setDefault(PreferenceConstants.EDITOR_WRAP_WORDS, false);
2415     store.setDefault(PreferenceConstants.EDITOR_WRAP_STRINGS_DQ, true);
2416     store.setDefault(PreferenceConstants.EDITOR_ESCAPE_STRINGS_DQ, false);
2417     store.setDefault(PreferenceConstants.EDITOR_WRAP_STRINGS_SQ, true);
2418     store.setDefault(PreferenceConstants.EDITOR_ESCAPE_STRINGS_SQ, false);
2419     store.setDefault(PreferenceConstants.EDITOR_ADD_JAVADOC_TAGS, true);
2420     store.setDefault(PreferenceConstants.EDITOR_FORMAT_JAVADOCS, false);
2421     store.setDefault(PreferenceConstants.EDITOR_DISABLE_OVERWRITE_MODE, false);
2422
2423     store.setDefault(PreferenceConstants.EDITOR_CLOSE_STRINGS_HTML, true);
2424     store.setDefault(PreferenceConstants.EDITOR_CLOSE_BRACKETS_HTML, true);
2425
2426     //  store.setDefault(PreferenceConstants.EDITOR_DEFAULT_HOVER, JavaPlugin.ID_BESTMATCH_HOVER);
2427     store.setDefault(PreferenceConstants.EDITOR_NONE_HOVER, PreferenceConstants.EDITOR_DEFAULT_HOVER_CONFIGURED_ID);
2428     //          store.setDefault(PreferenceConstants.EDITOR_CTRL_HOVER, JavaPlugin.ID_SOURCE_HOVER);
2429     store.setDefault(PreferenceConstants.EDITOR_SHIFT_HOVER, PreferenceConstants.EDITOR_DEFAULT_HOVER_CONFIGURED_ID);
2430     store.setDefault(PreferenceConstants.EDITOR_CTRL_SHIFT_HOVER, PreferenceConstants.EDITOR_DEFAULT_HOVER_CONFIGURED_ID);
2431     store.setDefault(PreferenceConstants.EDITOR_CTRL_ALT_HOVER, PreferenceConstants.EDITOR_DEFAULT_HOVER_CONFIGURED_ID);
2432     store.setDefault(PreferenceConstants.EDITOR_ALT_SHIFT_HOVER, PreferenceConstants.EDITOR_DEFAULT_HOVER_CONFIGURED_ID);
2433     store.setDefault(PreferenceConstants.EDITOR_CTRL_ALT_SHIFT_HOVER, PreferenceConstants.EDITOR_DEFAULT_HOVER_CONFIGURED_ID);
2434
2435     String ctrl = Action.findModifierString(SWT.CTRL);
2436     store.setDefault(PreferenceConstants.EDITOR_TEXT_HOVER_MODIFIERS,
2437         "net.sourceforge.phpdt.ui.BestMatchHover;0;net.sourceforge.phpdt.ui.JavaSourceHover;" + ctrl); //$NON-NLS-1$
2438     store.setDefault(PreferenceConstants.EDITOR_TEXT_HOVER_MODIFIER_MASKS,
2439         "net.sourceforge.phpdt.ui.BestMatchHover;0;net.sourceforge.phpdt.ui.JavaSourceHover;" + SWT.CTRL); //$NON-NLS-1$
2440     store.setDefault(PreferenceConstants.EDITOR_SHOW_TEXT_HOVER_AFFORDANCE, true);
2441
2442     store.setDefault(PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS, true);
2443     store.setDefault(PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER, ctrl);
2444     store.setDefault(PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER_MASK, SWT.CTRL);
2445
2446     //  spell checking
2447     store.setDefault(PreferenceConstants.SPELLING_CHECK_SPELLING, false);
2448     store.setDefault(PreferenceConstants.SPELLING_LOCALE, SpellCheckEngine.getDefaultLocale().toString());
2449     store.setDefault(PreferenceConstants.SPELLING_IGNORE_DIGITS, true);
2450     store.setDefault(PreferenceConstants.SPELLING_IGNORE_MIXED, true);
2451     store.setDefault(PreferenceConstants.SPELLING_IGNORE_SENTENCE, true);
2452     store.setDefault(PreferenceConstants.SPELLING_IGNORE_UPPER, true);
2453     store.setDefault(PreferenceConstants.SPELLING_IGNORE_URLS, true);
2454     store.setDefault(PreferenceConstants.SPELLING_USER_DICTIONARY, ""); //$NON-NLS-1$
2455     store.setDefault(PreferenceConstants.SPELLING_PROPOSAL_THRESHOLD, 20);
2456     store.setDefault(PreferenceConstants.SPELLING_ENABLE_CONTENTASSIST, false);
2457
2458     // folding
2459     store.setDefault(PreferenceConstants.EDITOR_FOLDING_ENABLED, true);
2460     store.setDefault(PreferenceConstants.EDITOR_FOLDING_PROVIDER, "net.sourceforge.phpdt.ui.text.defaultFoldingProvider"); //$NON-NLS-1$
2461     store.setDefault(PreferenceConstants.EDITOR_FOLDING_JAVADOC, true);
2462     store.setDefault(PreferenceConstants.EDITOR_FOLDING_INNERTYPES, true);
2463     store.setDefault(PreferenceConstants.EDITOR_FOLDING_METHODS, false);
2464     store.setDefault(PreferenceConstants.EDITOR_FOLDING_IMPORTS, false);
2465
2466     store.setDefault(PreferenceConstants.EDITOR_SMART_BACKSPACE, true);
2467
2468     // do more complicated stuff
2469     //  NewJavaProjectPreferencePage.initDefaults(store);
2470   }
2471
2472   /**
2473    * Returns the JDT-UI preference store.
2474    * 
2475    * @return the JDT-UI preference store
2476    */
2477   public static IPreferenceStore getPreferenceStore() {
2478     return PHPeclipsePlugin.getDefault().getPreferenceStore();
2479   }
2480
2481   //    /**
2482   //     * Encodes a JRE library to be used in the named preference <code>NEWPROJECT_JRELIBRARY_LIST</code>.
2483   //     *
2484   //     * @param description a string value describing the JRE library. The description is used
2485   //     * to indentify the JDR library in the UI
2486   //     * @param entries an array of classpath entries to be encoded
2487   //     *
2488   //     * @return the encoded string.
2489   //    */
2490   //    public static String encodeJRELibrary(String description, IClasspathEntry[] entries) {
2491   //            return NewJavaProjectPreferencePage.encodeJRELibrary(description, entries);
2492   //    }
2493   //    
2494   //    /**
2495   //     * Decodes an encoded JRE library and returns its description string.
2496   //     *
2497   //     * @return the description of an encoded JRE library
2498   //     *
2499   //     * @see #encodeJRELibrary(String, IClasspathEntry[])
2500   //     */
2501   //    public static String decodeJRELibraryDescription(String encodedLibrary) {
2502   //            return NewJavaProjectPreferencePage.decodeJRELibraryDescription(encodedLibrary);
2503   //    }
2504   //    
2505   //    /**
2506   //     * Decodes an encoded JRE library and returns its classpath entries.
2507   //     *
2508   //     * @return the array of classpath entries of an encoded JRE library.
2509   //     *
2510   //     * @see #encodeJRELibrary(String, IClasspathEntry[])
2511   //     */
2512   //    public static IClasspathEntry[] decodeJRELibraryClasspathEntries(String encodedLibrary) {
2513   //            return NewJavaProjectPreferencePage.decodeJRELibraryClasspathEntries(encodedLibrary);
2514   //    }
2515   //    
2516   //    /**
2517   //     * Returns the current configuration for the JRE to be used as default in new Java projects.
2518   //     * This is a convenience method to access the named preference <code>NEWPROJECT_JRELIBRARY_LIST
2519   //     * </code> with the index defined by <code> NEWPROJECT_JRELIBRARY_INDEX</code>.
2520   //     *
2521   //     * @return the current default set of classpath entries
2522   //     *
2523   //     * @see #NEWPROJECT_JRELIBRARY_LIST
2524   //     * @see #NEWPROJECT_JRELIBRARY_INDEX
2525   //     */
2526   //    public static IClasspathEntry[] getDefaultJRELibrary() {
2527   //            return NewJavaProjectPreferencePage.getDefaultJRELibrary();
2528   //    }
2529 }