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