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