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