A lot of changes
[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.phpeclipse.PHPeclipsePlugin;
14
15 import org.eclipse.jface.preference.IPreferenceStore;
16 import org.eclipse.jface.preference.PreferenceConverter;
17 import org.eclipse.jface.resource.JFaceResources;
18 import org.eclipse.swt.SWT;
19 import org.eclipse.swt.graphics.Color;
20 import org.eclipse.swt.graphics.RGB;
21 import org.eclipse.swt.widgets.Display;
22 import org.eclipse.ui.texteditor.AbstractTextEditor;
23 import org.eclipse.ui.texteditor.WorkbenchChainedTextFontFieldEditor;
24
25 //import org.phpeclipse.phpdt.core.IClasspathEntry;
26 //
27 import net.sourceforge.phpdt.ui.text.IJavaColorConstants;
28 //
29 //import org.phpeclipse.phpdt.internal.ui.JavaPlugin;
30 //import org.phpeclipse.phpdt.internal.ui.preferences.NewJavaProjectPreferencePage;
31
32 /**
33  * Preference constants used in the JDT-UI preference store. Clients should only read the
34  * JDT-UI preference store using these values. Clients are not allowed to modify the 
35  * preference store programmatically.
36  * 
37  * @since 2.0
38   */
39 public class PreferenceConstants {
40
41         private PreferenceConstants() {
42         }
43         
44         /**
45          * A named preference that controls return type rendering of methods in the UI.
46          * <p>
47          * Value is of type <code>Boolean</code>: if <code>true</code> return types
48          * are rendered
49          * </p>
50          */
51         public static final String APPEARANCE_METHOD_RETURNTYPE= "net.sourceforge.phpdt.ui.methodreturntype";//$NON-NLS-1$
52
53         /**
54          * A named preference that controls if override indicators are rendered in the UI.
55          * <p>
56          * Value is of type <code>Boolean</code>: if <code>true</code> override 
57          * indicators are rendered
58          * </p>
59      */
60         public static final String APPEARANCE_OVERRIDE_INDICATOR= "net.sourceforge.phpdt.ui.overrideindicator";//$NON-NLS-1$
61
62         /**
63          * A named preference that defines the pattern used for package name compression.
64          * <p>
65          * Value is of type <code>String</code>. For example foe the given package name 'org.eclipse.jdt' pattern
66          * '.' will compress it to '..jdt', '1~' to 'o~.e~.jdt'.
67          * </p>
68          */     
69         public static final String APPEARANCE_PKG_NAME_PATTERN_FOR_PKG_VIEW= "PackagesView.pkgNamePatternForPackagesView";//$NON-NLS-1$
70
71         /**
72          * A named preference that controls if package name compression is turned on or off.
73          * <p>
74          * Value is of type <code>Boolean</code>.
75          * </p>
76          * 
77          * @see #APPEARANCE_PKG_NAME_PATTERN_FOR_PKG_VIEW
78          */     
79         public static final String APPEARANCE_COMPRESS_PACKAGE_NAMES= "net.sourceforge.phpdt.ui.compresspackagenames";//$NON-NLS-1$
80
81         /**
82          * A named preference that controls if empty inner packages are folded in
83          * the hierarchical mode of the package explorer.
84          * <p>
85          * Value is of type <code>Boolean</code>: if <code>true</code> empty
86          * inner packages are folded.
87          * </p>
88          * @since 2.1
89          */
90         public static final String APPEARANCE_FOLD_PACKAGES_IN_PACKAGE_EXPLORER= "net.sourceforge.phpdt.ui.flatPackagesInPackageExplorer";//$NON-NLS-1$
91
92         /**
93          * A named preference that defines how member elements are ordered by the
94          * Java views using the <code>JavaElementSorter</code>.
95          * <p>
96          * Value is of type <code>String</code>: A comma separated list of the
97          * following entries. Each entry must be in the list, no duplication. List
98          * order defines the sort order.
99          * <ul>
100          * <li><b>T</b>: Types</li>
101          * <li><b>C</b>: Constructors</li>
102          * <li><b>I</b>: Initializers</li>
103          * <li><b>M</b>: Methods</li>
104          * <li><b>F</b>: Fields</li>
105          * <li><b>SI</b>: Static Initializers</li>
106          * <li><b>SM</b>: Static Methods</li>
107          * <li><b>SF</b>: Static Fields</li>
108          * </ul>
109          * </p>
110          * @since 2.1
111          */
112         public static final String APPEARANCE_MEMBER_SORT_ORDER= "outlinesortoption"; //$NON-NLS-1$
113
114         /**
115          * A named preference that controls if prefix removal during setter/getter generation is turned on or off. 
116          * <p>
117          * Value is of type <code>Boolean</code>.
118          * </p>
119          */     
120         public static final String CODEGEN_USE_GETTERSETTER_PREFIX= "net.sourceforge.phpdt.ui.gettersetter.prefix.enable";//$NON-NLS-1$
121
122         /**
123          * A named preference that holds a list of prefixes to be removed from a local variable to compute setter 
124          * and gettter names.
125          * <p>
126          * Value is of type <code>String</code>: comma separated list of prefixed
127          * </p>
128          * 
129          * @see #CODEGEN_USE_GETTERSETTER_PREFIX
130          */     
131         public static final String CODEGEN_GETTERSETTER_PREFIX= "net.sourceforge.phpdt.ui.gettersetter.prefix.list";//$NON-NLS-1$
132
133         /**
134          * A named preference that controls if suffix removal during setter/getter generation is turned on or off.
135          * <p>
136          * Value is of type <code>Boolean</code>.
137          * </p>
138          */     
139         public static final String CODEGEN_USE_GETTERSETTER_SUFFIX= "net.sourceforge.phpdt.ui.gettersetter.suffix.enable";//$NON-NLS-1$
140
141         /**
142          * A named preference that holds a list of suffixes to be removed from a local variable to compute setter 
143          * and getter names.
144          * <p>
145          * Value is of type <code>String</code>: comma separated list of suffixes
146          * </p>
147          * 
148          * @see #CODEGEN_USE_GETTERSETTER_SUFFIX
149          */     
150         public static final String CODEGEN_GETTERSETTER_SUFFIX= "net.sourceforge.phpdt.ui.gettersetter.suffix.list"; //$NON-NLS-1$
151
152         /**
153          * A name preference that controls if a JavaDoc stub gets added to newly created types and methods.
154          * <p>
155          * Value is of type <code>Boolean</code>.
156          * </p>
157          */
158         public static final String CODEGEN__JAVADOC_STUBS= "net.sourceforge.phpdt.ui.phpdoc"; //$NON-NLS-1$
159
160         /**
161          * A named preference that controls if a non-phpdoc comment gets added to methods generated via the 
162          * "Override Methods" operation.
163          * <p>
164          * Value is of type <code>Boolean</code>.
165          * </p>
166          */
167         public static final String CODEGEN__NON_JAVADOC_COMMENTS= "net.sourceforge.phpdt.ui.seecomments"; //$NON-NLS-1$
168
169         /**
170          * A named preference that controls if a file comment gets added to newly created files.
171          * <p>
172          * Value is of type <code>Boolean</code>.
173          * </p>
174          */
175         public static final String CODEGEN__FILE_COMMENTS= "net.sourceforge.phpdt.ui.filecomments"; //$NON-NLS-1$
176         
177         /**
178          * A named preference that holds a list of comma separated package names. The list specifies the import order used by
179          * the "Organize Imports" opeation.
180          * <p>
181          * Value is of type <code>String</code>: semicolon separated list of package
182          * names
183          * </p>
184          */
185         public static final String ORGIMPORTS_IMPORTORDER= "net.sourceforge.phpdt.ui.importorder"; //$NON-NLS-1$
186         
187         /**
188          * A named preference that specifies the number of imports added before a star-import declaration is used.
189          * <p>
190          * Value is of type <code>Int</code>: positive value specifing the number of non star-import is used
191          * </p>
192          */
193         public static final String ORGIMPORTS_ONDEMANDTHRESHOLD= "net.sourceforge.phpdt.ui.ondemandthreshold"; //$NON-NLS-1$
194
195         /**
196          * A named preferences that controls if types that start with a lower case letters get added by the
197          * "Organize Import" operation.
198          * <p>
199          * Value is of type <code>Boolean</code>.
200          * </p>
201          */
202         public static final String ORGIMPORTS_IGNORELOWERCASE= "net.sourceforge.phpdt.ui.ignorelowercasenames"; //$NON-NLS-1$
203
204         /**
205          * A named preference that speficies whether children of a compilation unit are shown in the package explorer.
206          * <p>
207          * Value is of type <code>Boolean</code>.
208          * </p>
209          */
210         public static final String SHOW_CU_CHILDREN= "net.sourceforge.phpdt.ui.packages.cuchildren"; //$NON-NLS-1$
211
212         /**
213          * A named preference that controls whether the package explorer's selection is linked to the active editor.
214          * <p>
215          * Value is of type <code>Boolean</code>.
216          * </p>
217          */
218         public static final String LINK_PACKAGES_TO_EDITOR= "net.sourceforge.phpdt.ui.packages.linktoeditor"; //$NON-NLS-1$
219
220         /**
221          * A named preference that controls whether the hierarchy view's selection is linked to the active editor.
222          * <p>
223          * Value is of type <code>Boolean</code>.
224          * </p>
225          */
226         public static final String LINK_TYPEHIERARCHY_TO_EDITOR= "net.sourceforge.phpdt.ui.packages.linktypehierarchytoeditor"; //$NON-NLS-1$
227
228         /**
229          * A named preference that controls whether the browsing view's selection is
230          * linked to the active editor.
231          * <p>
232          * Value is of type <code>Boolean</code>.
233          * </p>
234          * @since 2.1
235          */
236         public static final String LINK_BROWSING_VIEW_TO_EDITOR= "net.sourceforge.phpdt.ui.browsing.linktoeditor"; //$NON-NLS-1$
237
238         /**
239          * A named preference that controls whether new projects are generated using source and output folder.
240          * <p>
241          * Value is of type <code>Boolean</code>. if <code>true</code> new projects are created with a source and
242          * output folder. If <code>false</code> source and output folder equals to the project.
243          * </p>
244          */
245         public static final String SRCBIN_FOLDERS_IN_NEWPROJ= "net.sourceforge.phpdt.ui.wizards.srcBinFoldersInNewProjects"; //$NON-NLS-1$
246
247         /**
248          * A named preference that specifies the source folder name used when creating a new Java project. Value is inactive
249          * if <code>SRCBIN_FOLDERS_IN_NEWPROJ</code> is set to <code>false</code>.
250          * <p>
251          * Value is of type <code>String</code>. 
252          * </p>
253          * 
254          * @see #SRCBIN_FOLDERS_IN_NEWPROJ
255          */
256         public static final String SRCBIN_SRCNAME= "net.sourceforge.phpdt.ui.wizards.srcBinFoldersSrcName"; //$NON-NLS-1$
257
258         /**
259          * A named preference that specifies the output folder name used when creating a new Java project. Value is inactive
260          * if <code>SRCBIN_FOLDERS_IN_NEWPROJ</code> is set to <code>false</code>.
261          * <p>
262          * Value is of type <code>String</code>. 
263          * </p>
264          * 
265          * @see #SRCBIN_FOLDERS_IN_NEWPROJ
266          */
267         public static final String SRCBIN_BINNAME= "net.sourceforge.phpdt.ui.wizards.srcBinFoldersBinName"; //$NON-NLS-1$
268
269         /**
270          * A named preference that holds a list of possible JRE libraries used by the New Java Project wizard. An library 
271          * consists of a description and an arbitrary number of <code>IClasspathEntry</code>s, that will represent the 
272          * JRE on the new project's classpath. 
273          * <p>
274          * Value is of type <code>String</code>: a semicolon separated list of encoded JRE libraries. 
275          * <code>NEWPROJECT_JRELIBRARY_INDEX</code> defines the currently used library. Clients
276          * should use the method <code>encodeJRELibrary</code> to encode a JRE library into a string
277          * and the methods <code>decodeJRELibraryDescription(String)</code> and <code>
278          * decodeJRELibraryClasspathEntries(String)</code> to decode the description and the array
279          * of classpath entries from an encoded string.
280          * </p>
281          * 
282          * @see #NEWPROJECT_JRELIBRARY_INDEX
283          * @see #encodeJRELibrary(String, IClasspathEntry[])
284          * @see #decodeJRELibraryDescription(String)
285          * @see #decodeJRELibraryClasspathEntries(String)
286          */
287         public static final String NEWPROJECT_JRELIBRARY_LIST= "net.sourceforge.phpdt.ui.wizards.jre.list"; //$NON-NLS-1$
288
289         /**
290          * A named preferences that specifies the current active JRE library.
291          * <p>
292          * Value is of type <code>Int</code>: an index into the list of possible JRE libraries.
293          * </p>
294          * 
295          * @see #NEWPROJECT_JRELIBRARY_LIST
296          */
297         public static final String NEWPROJECT_JRELIBRARY_INDEX= "net.sourceforge.phpdt.ui.wizards.jre.index"; //$NON-NLS-1$
298
299         /**
300          * A named preference that controls if a new type hierarchy gets opened in a 
301          * new type hierarchy perspective or inside the type hierarchy view part.
302          * <p>
303          * Value is of type <code>String</code>: possible values are <code>
304          * OPEN_TYPE_HIERARCHY_IN_PERSPECTIVE</code> or <code>
305          * OPEN_TYPE_HIERARCHY_IN_VIEW_PART</code>.
306          * </p>
307          * 
308          * @see #OPEN_TYPE_HIERARCHY_IN_PERSPECTIVE
309          * @see #OPEN_TYPE_HIERARCHY_IN_VIEW_PART
310          */
311         public static final String OPEN_TYPE_HIERARCHY= "net.sourceforge.phpdt.ui.openTypeHierarchy"; //$NON-NLS-1$
312
313         /**
314          * A string value used by the named preference <code>OPEN_TYPE_HIERARCHY</code>.
315          * 
316          * @see #OPEN_TYPE_HIERARCHY
317          */
318         public static final String OPEN_TYPE_HIERARCHY_IN_PERSPECTIVE= "perspective"; //$NON-NLS-1$
319
320         /**
321          * A string value used by the named preference <code>OPEN_TYPE_HIERARCHY</code>.
322          * 
323          * @see #OPEN_TYPE_HIERARCHY
324          */
325         public static final String OPEN_TYPE_HIERARCHY_IN_VIEW_PART= "viewPart"; //$NON-NLS-1$
326         
327         /**
328          * A named preference that controls the behaviour when double clicking on a container in the packages view. 
329          * <p>
330          * Value is of type <code>String</code>: possible values are <code>
331          * DOUBLE_CLICK_GOES_INTO</code> or <code>
332          * DOUBLE_CLICK_EXPANDS</code>.
333          * </p>
334          * 
335          * @see #DOUBLE_CLICK_EXPANDS
336          * @see #DOUBLE_CLICK_GOES_INTO
337          */
338         public static final String DOUBLE_CLICK= "packageview.doubleclick"; //$NON-NLS-1$
339
340         /**
341          * A string value used by the named preference <code>DOUBLE_CLICK</code>.
342          * 
343          * @see #DOUBLE_CLICK
344          */
345         public static final String DOUBLE_CLICK_GOES_INTO= "packageview.gointo"; //$NON-NLS-1$
346
347         /**
348          * A string value used by the named preference <code>DOUBLE_CLICK</code>.
349          * 
350          * @see #DOUBLE_CLICK
351          */
352         public static final String DOUBLE_CLICK_EXPANDS= "packageview.doubleclick.expands"; //$NON-NLS-1$
353
354         /**
355          * A named preference that controls whether Java views update their presentation while editing or when saving the
356          * content of an editor. 
357          * <p>
358          * Value is of type <code>String</code>: possible values are <code>
359          * UPDATE_ON_SAVE</code> or <code>
360          * UPDATE_WHILE_EDITING</code>.
361          * </p>
362          * 
363          * @see #UPDATE_ON_SAVE
364          * @see #UPDATE_WHILE_EDITING
365          */
366         public static final String UPDATE_JAVA_VIEWS= "JavaUI.update"; //$NON-NLS-1$
367
368         /**
369          * A string value used by the named preference <code>UPDATE_JAVA_VIEWS</code>
370          * 
371          * @see #UPDATE_JAVA_VIEWS
372          */
373         public static final String UPDATE_ON_SAVE= "JavaUI.update.onSave"; //$NON-NLS-1$
374
375         /**
376          * A string value used by the named preference <code>UPDATE_JAVA_VIEWS</code>
377          * 
378          * @see #UPDATE_JAVA_VIEWS
379          */
380         public static final String UPDATE_WHILE_EDITING= "JavaUI.update.whileEditing"; //$NON-NLS-1$
381
382         /**
383          * A named preference that holds the path of the Javadoc command used by the Javadoc creation wizard.
384          * <p>
385          * Value is of type <code>String</code>.
386          * </p>
387          */
388         public static final String JAVADOC_COMMAND= "command"; //$NON-NLS-1$
389
390         /**
391          * A named preference that controls whether bracket matching highlighting is turned on or off.
392          * <p>
393          * Value is of type <code>Boolean</code>.
394          * </p>
395          */
396         public final static String EDITOR_MATCHING_BRACKETS= "matchingBrackets"; //$NON-NLS-1$
397
398         /**
399          * A named preference that holds the color used to highlight matching brackets.
400          * <p>
401          * Value is of type <code>String</code>. A RGB color value encoded as a string 
402          * using class <code>PreferenceConverter</code>
403          * </p>
404          * 
405          * @see org.eclipse.jface.resource.StringConverter
406          * @see org.eclipse.jface.preference.PreferenceConverter
407          */
408         public final static String EDITOR_MATCHING_BRACKETS_COLOR=  "matchingBracketsColor"; //$NON-NLS-1$
409
410         /**
411          * A named preference that controls whether the current line highlighting is turned on or off.
412          * <p>
413          * Value is of type <code>Boolean</code>.
414          * </p>
415          */
416         public final static String EDITOR_CURRENT_LINE= "currentLine"; //$NON-NLS-1$
417
418         /**
419          * A named preference that holds the color used to highlight the current line.
420          * <p>
421          * Value is of type <code>String</code>. A RGB color value encoded as a string
422          * using class <code>PreferenceConverter</code>
423          * </p>
424          * 
425          * @see org.eclipse.jface.resource.StringConverter
426          * @see org.eclipse.jface.preference.PreferenceConverter
427          */
428         public final static String EDITOR_CURRENT_LINE_COLOR= "currentLineColor"; //$NON-NLS-1$
429
430         /**
431          * A named preference that controls whether the print margin is turned on or off.
432          * <p>
433          * Value is of type <code>Boolean</code>.
434          * </p>
435          */
436         public final static String EDITOR_PRINT_MARGIN= "printMargin"; //$NON-NLS-1$
437         
438         /**
439          * A named preference that holds the color used to render the print margin.
440          * <p>
441          * Value is of type <code>String</code>. A RGB color value encoded as a string
442          * using class <code>PreferenceConverter</code>
443          * </p>
444          * 
445          * @see org.eclipse.jface.resource.StringConverter
446          * @see org.eclipse.jface.preference.PreferenceConverter
447          */
448         public final static String EDITOR_PRINT_MARGIN_COLOR= "printMarginColor"; //$NON-NLS-1$
449
450         /**
451          * Print margin column. Int value.
452          */
453         public final static String EDITOR_PRINT_MARGIN_COLUMN= "printMarginColumn"; //$NON-NLS-1$
454
455         /**
456          * A named preference that holds the color used for the find/replace scope.
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_FIND_SCOPE_COLOR= AbstractTextEditor.PREFERENCE_COLOR_FIND_SCOPE;
466
467         /**
468          * A named preference that specifies if the editor uses spaces for tabs.
469          * <p>
470          * Value is of type <code>Boolean</code>. If <code>true</code>spaces instead of tabs are used
471          * in the editor. If <code>false</code> the editor inserts a tab character when pressing the tab
472          * key.
473          * </p>
474          */
475         public final static String EDITOR_SPACES_FOR_TABS= "spacesForTabs"; //$NON-NLS-1$
476
477         /**
478          * A named preference that holds the number of spaces used per tab in the editor.
479          * <p>
480          * Value is of type <code>Int</code>: positive int value specifying the number of
481          * spaces per tab.
482          * </p>
483          */
484         public final static String EDITOR_TAB_WIDTH= "net.sourceforge.phpdt.ui.editor.tab.width"; //$NON-NLS-1$
485
486         /**
487          * A named preference that controls whether the outline view selection
488          * should stay in sync with with the element at the current cursor position.
489          * <p>
490          * Value is of type <code>Boolean</code>.
491          * </p>
492          * @since 2.1
493          */
494         public final static String EDITOR_SYNC_OUTLINE_ON_CURSOR_MOVE= "JavaEditor.SyncOutlineOnCursorMove"; //$NON-NLS-1$
495
496         /**
497          * A named preference that controls if correction indicators are shown in the UI.
498          * <p>
499          * Value is of type <code>Boolean</code>.
500          * </p>
501          */
502         public final static String EDITOR_CORRECTION_INDICATION= "JavaEditor.ShowTemporaryProblem"; //$NON-NLS-1$
503
504         /**
505          * A named preference that controls whether the editor shows problem indicators in text (squiggly lines). 
506          * <p>
507          * Value is of type <code>Boolean</code>.
508          * </p>
509          */
510         public final static String EDITOR_PROBLEM_INDICATION= "problemIndication"; //$NON-NLS-1$
511
512         /**
513          * A named preference that holds the color used to render problem indicators.
514          * <p>
515          * Value is of type <code>String</code>. A RGB color value encoded as a string
516          * using class <code>PreferenceConverter</code>
517          * </p>
518          * 
519          * @see #EDITOR_PROBLEM_INDICATION
520          * @see org.eclipse.jface.resource.StringConverter
521          * @see org.eclipse.jface.preference.PreferenceConverter
522          */
523         public final static String EDITOR_PROBLEM_INDICATION_COLOR= "problemIndicationColor"; //$NON-NLS-1$
524
525         /**PreferenceConstants.EDITOR_PROBLEM_INDICATION_COLOR;
526          * A named preference that controls whether the editor shows warning indicators in text (squiggly lines). 
527          * <p>
528          * Value is of type <code>Boolean</code>.
529          * </p>
530          */
531         public final static String EDITOR_WARNING_INDICATION= "warningIndication"; //$NON-NLS-1$
532
533         /**
534          * A named preference that holds the color used to render warning indicators.
535          * <p>
536          * Value is of type <code>String</code>. A RGB color value encoded as a string
537          * using class <code>PreferenceConverter</code>
538          * </p>
539          * 
540          * @see #EDITOR_WARNING_INDICATION
541          * @see org.eclipse.jface.resource.StringConverter
542          * @see org.eclipse.jface.preference.PreferenceConverter
543          */
544         public final static String EDITOR_WARNING_INDICATION_COLOR= "warningIndicationColor"; //$NON-NLS-1$
545         
546         /**
547          * A named preference that controls whether the editor shows task indicators in text (squiggly lines). 
548          * <p>
549          * Value is of type <code>Boolean</code>.
550          * </p>
551          */
552         public final static String EDITOR_TASK_INDICATION= "taskIndication"; //$NON-NLS-1$
553
554         /**
555          * A named preference that holds the color used to render task indicators.
556          * <p>
557          * Value is of type <code>String</code>. A RGB color value encoded as a string
558          * using class <code>PreferenceConverter</code>
559          * </p>
560          * 
561          * @see #EDITOR_TASK_INDICATION
562          * @see org.eclipse.jface.resource.StringConverter
563          * @see org.eclipse.jface.preference.PreferenceConverter
564          */
565         public final static String EDITOR_TASK_INDICATION_COLOR= "taskIndicationColor"; //$NON-NLS-1$
566
567         /**
568          * A named preference that controls whether the editor shows bookmark
569          * indicators in text (squiggly lines).
570          * <p>
571          * Value is of type <code>Boolean</code>.
572          * </p>
573          * @since 2.1
574          */
575         public final static String EDITOR_BOOKMARK_INDICATION= "bookmarkIndication"; //$NON-NLS-1$
576
577         /**
578          * A named preference that holds the color used to render bookmark indicators.
579          * <p>
580          * Value is of type <code>String</code>. A RGB color value encoded as a string
581          * using class <code>PreferenceConverter</code>
582          * </p>
583          *
584          * @see #EDITOR_BOOKMARK_INDICATION
585          * @see org.eclipse.jface.resource.StringConverter
586          * @see org.eclipse.jface.preference.PreferenceConverter
587          * @since 2.1
588          */
589         public final static String EDITOR_BOOKMARK_INDICATION_COLOR= "bookmarkIndicationColor"; //$NON-NLS-1$
590
591         /**
592          * A named preference that controls whether the editor shows search
593          * indicators in text (squiggly lines).
594          * <p>
595          * Value is of type <code>Boolean</code>.
596          * </p>
597          * @since 2.1
598          */
599         public final static String EDITOR_SEARCH_RESULT_INDICATION= "searchResultIndication"; //$NON-NLS-1$
600
601         /**
602          * A named preference that holds the color used to render search indicators.
603          * <p>
604          * Value is of type <code>String</code>. A RGB color value encoded as a string
605          * using class <code>PreferenceConverter</code>
606          * </p>
607          *
608          * @see #EDITOR_SEARCH_RESULT_INDICATION
609          * @see org.eclipse.jface.resource.StringConverter
610          * @see org.eclipse.jface.preference.PreferenceConverter
611          * @since 2.1
612          */
613         public final static String EDITOR_SEARCH_RESULT_INDICATION_COLOR= "searchResultIndicationColor"; //$NON-NLS-1$
614
615         /**
616          * A named preference that controls whether the editor shows unknown
617          * indicators in text (squiggly lines).
618          * <p>
619          * Value is of type <code>Boolean</code>.
620          * </p>
621          * @since 2.1
622          */
623         public final static String EDITOR_UNKNOWN_INDICATION= "othersIndication"; //$NON-NLS-1$
624
625         /**
626          * A named preference that holds the color used to render unknown
627          * indicators.
628          * <p>
629          * Value is of type <code>String</code>. A RGB color value encoded as a string
630          * using class <code>PreferenceConverter</code>
631          * </p>
632          *
633          * @see #EDITOR_UNKNOWN_INDICATION
634          * @see org.eclipse.jface.resource.StringConverter
635          * @see org.eclipse.jface.preference.PreferenceConverter
636          * @since 2.1
637          */
638         public final static String EDITOR_UNKNOWN_INDICATION_COLOR= "othersIndicationColor"; //$NON-NLS-1$
639
640         /**
641          * A named preference that controls whether the overview ruler shows error
642          * indicators.
643          * <p>
644          * Value is of type <code>Boolean</code>.
645          * </p>
646          * @since 2.1
647          */
648         public final static String EDITOR_ERROR_INDICATION_IN_OVERVIEW_RULER= "errorIndicationInOverviewRuler"; //$NON-NLS-1$
649         
650         /**
651          * A named preference that controls whether the overview ruler shows warning
652          * indicators.
653          * <p>
654          * Value is of type <code>Boolean</code>.
655          * </p>
656          * @since 2.1
657          */
658         public final static String EDITOR_WARNING_INDICATION_IN_OVERVIEW_RULER= "warningIndicationInOverviewRuler"; //$NON-NLS-1$
659
660         /**
661          * A named preference that controls whether the overview ruler shows task
662          * indicators.
663          * <p>
664          * Value is of type <code>Boolean</code>.
665          * </p>
666          * @since 2.1
667          */
668         public final static String EDITOR_TASK_INDICATION_IN_OVERVIEW_RULER= "taskIndicationInOverviewRuler"; //$NON-NLS-1$
669
670         /**
671          * A named preference that controls whether the overview ruler shows
672          * bookmark indicators.
673          * <p>
674          * Value is of type <code>Boolean</code>.
675          * </p>
676          * @since 2.1
677          */
678         public final static String EDITOR_BOOKMARK_INDICATION_IN_OVERVIEW_RULER= "bookmarkIndicationInOverviewRuler"; //$NON-NLS-1$
679
680         /**
681          * A named preference that controls whether the overview ruler shows
682          * search result indicators.
683          * <p>
684          * Value is of type <code>Boolean</code>.
685          * </p>
686          * @since 2.1
687          */
688         public final static String EDITOR_SEARCH_RESULT_INDICATION_IN_OVERVIEW_RULER= "searchResultIndicationInOverviewRuler"; //$NON-NLS-1$
689
690         /**
691          * A named preference that controls whether the overview ruler shows
692          * unknown indicators.
693          * <p>
694          * Value is of type <code>Boolean</code>.
695          * </p>
696          * @since 2.1
697          */
698         public final static String EDITOR_UNKNOWN_INDICATION_IN_OVERVIEW_RULER= "othersIndicationInOverviewRuler"; //$NON-NLS-1$
699
700         /**
701          * A named preference that controls whether the 'close strings' feature
702          *  is   enabled.
703          * <p>
704          * Value is of type <code>Boolean</code>.
705          * </p>
706          * @since 2.1
707          */
708         public final static String EDITOR_CLOSE_STRINGS= "closeStrings"; //$NON-NLS-1$
709
710         /**
711          * A named preference that controls whether the 'wrap strings' feature is
712          * enabled.
713          * <p>
714          * Value is of type <code>Boolean</code>.
715          * </p>
716          * @since 2.1
717          */
718         public final static String EDITOR_WRAP_STRINGS= "wrapStrings"; //$NON-NLS-1$
719
720         /**
721          * A named preference that controls whether the 'close brackets' feature is
722          * enabled.
723          * <p>
724          * Value is of type <code>Boolean</code>.
725          * </p>
726          * @since 2.1
727          */
728         public final static String EDITOR_CLOSE_BRACKETS= "closeBrackets"; //$NON-NLS-1$
729
730         /**
731          * A named preference that controls whether the 'close braces' feature is
732          * enabled.
733          * <p>
734          * Value is of type <code>Boolean</code>.
735          * </p>
736          * @since 2.1
737          */
738         public final static String EDITOR_CLOSE_BRACES= "closeBraces"; //$NON-NLS-1$
739
740         /**
741          * A named preference that controls whether the 'close php docs' feature is
742          * enabled.
743          * <p>
744          * Value is of type <code>Boolean</code>.
745          * </p>
746          * @since 2.1
747          */
748         public final static String EDITOR_CLOSE_JAVADOCS= "closeJavaDocs"; //$NON-NLS-1$
749
750         /**
751          * A named preference that controls whether the 'add JavaDoc tags' feature
752          * is enabled.
753          * <p>
754          * Value is of type <code>Boolean</code>.
755          * </p>
756          * @since 2.1
757          */
758         public final static String EDITOR_ADD_JAVADOC_TAGS= "addJavaDocTags"; //$NON-NLS-1$
759
760         /**
761          * A named preference that controls whether the 'format Javadoc tags'
762          * feature is enabled.
763          * <p>
764          * Value is of type <code>Boolean</code>.
765          * </p>
766          * @since 2.1
767          */
768         public final static String EDITOR_FORMAT_JAVADOCS= "formatJavaDocs"; //$NON-NLS-1$
769
770         /**
771          * A named preference that controls whether the 'smart paste' feature is
772          * enabled.
773          * <p>
774          * Value is of type <code>Boolean</code>.
775          * </p>
776          * @since 2.1
777          */
778         public final static String EDITOR_SMART_PASTE= "smartPaste"; //$NON-NLS-1$
779
780         /**
781          * A named preference that controls whether the 'smart home-end' feature is
782          * enabled.
783          * <p>
784          * Value is of type <code>Boolean</code>.
785          * </p>
786          * @since 2.1
787          */
788         public final static String EDITOR_SMART_HOME_END= AbstractTextEditor.PREFERENCE_NAVIGATION_SMART_HOME_END;
789
790         /**
791          * A named preference that controls if temporary problems are evaluated and shown in the UI.
792          * <p>
793          * Value is of type <code>Boolean</code>.
794          * </p>
795          */
796         public final static String EDITOR_EVALUTE_TEMPORARY_PROBLEMS= "handleTemporaryProblems"; //$NON-NLS-1$
797
798         /**
799          * A named preference that controls if the overview ruler is shown in the UI.
800          * <p>
801          * Value is of type <code>Boolean</code>.
802          * </p>
803          */
804         public final static String EDITOR_OVERVIEW_RULER= "overviewRuler"; //$NON-NLS-1$
805
806         /**
807          * A named preference that controls if the line number ruler is shown in the UI.
808          * <p>
809          * Value is of type <code>Boolean</code>.
810          * </p>
811          */
812         public final static String EDITOR_LINE_NUMBER_RULER= "lineNumberRuler"; //$NON-NLS-1$
813
814         /**
815          * A named preference that holds the color used to render line numbers inside the line number ruler.
816          * <p>
817          * Value is of type <code>String</code>. A RGB color value encoded as a string
818          * using class <code>PreferenceConverter</code>
819          * </p>
820          * 
821          * @see org.eclipse.jface.resource.StringConverter
822          * @see org.eclipse.jface.preference.PreferenceConverter
823          * @see #EDITOR_LINE_NUMBER_RULER
824          */
825         public final static String EDITOR_LINE_NUMBER_RULER_COLOR= "lineNumberColor"; //$NON-NLS-1$
826
827         /**
828          * A named preference that holds the color used to render linked positions inside code templates.
829          * <p>
830          * Value is of type <code>String</code>. A RGB color value encoded as a string
831          * using class <code>PreferenceConverter</code>
832          * </p>
833          * 
834          * @see org.eclipse.jface.resource.StringConverter
835          * @see org.eclipse.jface.preference.PreferenceConverter
836          */
837         public final static String EDITOR_LINKED_POSITION_COLOR= "linkedPositionColor"; //$NON-NLS-1$
838
839         /**
840          * A named preference that holds the color used as the text foreground.
841          * <p>
842          * Value is of type <code>String</code>. A RGB color value encoded as a string
843          * using class <code>PreferenceConverter</code>
844          * </p>
845          * 
846          * @see org.eclipse.jface.resource.StringConverter
847          * @see org.eclipse.jface.preference.PreferenceConverter
848          */
849         public final static String EDITOR_FOREGROUND_COLOR= AbstractTextEditor.PREFERENCE_COLOR_FOREGROUND;
850
851         /**
852          * A named preference that describes if the system default foreground color
853          * is used as the text foreground.
854          * <p>
855          * Value is of type <code>Boolean</code>.
856          * </p>
857          */
858         public final static String EDITOR_FOREGROUND_DEFAULT_COLOR= AbstractTextEditor.PREFERENCE_COLOR_FOREGROUND_SYSTEM_DEFAULT;
859
860         /**
861          * A named preference that holds the color used as the text background.
862          * <p>
863          * Value is of type <code>String</code>. A RGB color value encoded as a string
864          * using class <code>PreferenceConverter</code>
865          * </p>
866          * 
867          * @see org.eclipse.jface.resource.StringConverter
868          * @see org.eclipse.jface.preference.PreferenceConverter
869          */
870         public final static String EDITOR_BACKGROUND_COLOR= AbstractTextEditor.PREFERENCE_COLOR_BACKGROUND;
871
872         /**
873          * A named preference that describes if the system default background color
874          * is used as the text foreground.
875          * <p>
876          * Value is of type <code>Boolean</code>. 
877          * </p>
878          */
879         public final static String EDITOR_BACKGROUND_DEFAULT_COLOR= AbstractTextEditor.PREFERENCE_COLOR_BACKGROUND_SYSTEM_DEFAULT;
880
881         /**
882          * Preference key suffix for bold text style preference keys.
883          */
884         public static final String EDITOR_BOLD_SUFFIX= "_bold"; //$NON-NLS-1$
885
886         /**
887          * A named preference that holds the color used to render multi line comments.
888          * <p>
889          * Value is of type <code>String</code>. A RGB color value encoded as a string
890          * using class <code>PreferenceConverter</code>
891          * </p>
892          * 
893          * @see org.eclipse.jface.resource.StringConverter
894          * @see org.eclipse.jface.preference.PreferenceConverter
895          */
896         public final static String EDITOR_MULTI_LINE_COMMENT_COLOR= IJavaColorConstants.PHP_MULTI_LINE_COMMENT;
897
898         /**
899          * A named preference that controls whether multi line comments are rendered in bold.
900          * <p>
901          * Value is of type <code>Boolean</code>. If <code>true</code> multi line comments are rendered
902          * in bold. If <code>false</code> the are rendered using no font style attribute.
903          * </p>
904          */
905         public final static String EDITOR_MULTI_LINE_COMMENT_BOLD= IJavaColorConstants.PHP_MULTI_LINE_COMMENT + EDITOR_BOLD_SUFFIX; 
906
907         /**
908          * A named preference that holds the color used to render single line comments.
909          * <p>
910          * Value is of type <code>String</code>. A RGB color value encoded as a string
911          * using class <code>PreferenceConverter</code>
912          * </p>
913          * 
914          * @see org.eclipse.jface.resource.StringConverter
915          * @see org.eclipse.jface.preference.PreferenceConverter
916          */
917         public final static String EDITOR_SINGLE_LINE_COMMENT_COLOR= IJavaColorConstants.PHP_SINGLE_LINE_COMMENT;
918
919         /**
920          * A named preference that controls whether sinle line comments are rendered in bold.
921          * <p>
922          * Value is of type <code>Boolean</code>. If <code>true</code> single line comments are rendered
923          * in bold. If <code>false</code> the are rendered using no font style attribute.
924          * </p>
925          */
926         public final static String EDITOR_SINGLE_LINE_COMMENT_BOLD= IJavaColorConstants.PHP_SINGLE_LINE_COMMENT + EDITOR_BOLD_SUFFIX; 
927
928         /**
929          * A named preference that holds the color used to render php keywords.
930          * <p>
931          * Value is of type <code>String</code>. A RGB color value encoded as a string
932          * using class <code>PreferenceConverter</code>
933          * </p>
934          * 
935          * @see org.eclipse.jface.resource.StringConverter
936          * @see org.eclipse.jface.preference.PreferenceConverter
937          */
938         public final static String EDITOR_JAVA_KEYWORD_COLOR= IJavaColorConstants.PHP_KEYWORD;
939
940         /**
941          * A named preference that controls whether keywords are rendered in bold.
942          * <p>
943          * Value is of type <code>Boolean</code>.
944          * </p>
945          */
946         public final static String EDITOR_JAVA_KEYWORD_BOLD= IJavaColorConstants.PHP_KEYWORD + EDITOR_BOLD_SUFFIX;
947
948   /**
949    * A named preference that holds the color used to render predefined php
950    * function names.
951    * <p>
952    * Value is of type <code>String</code>. A RGB color value encoded as a string
953    * using class <code>PreferenceConverter</code>
954    * </p>
955    * 
956    * @see org.eclipse.jface.resource.StringConverter
957    * @see org.eclipse.jface.preference.PreferenceConverter
958    */
959   public final static String EDITOR_PHP_FUNCTIONNAME_COLOR= IJavaColorConstants.PHP_FUNCTIONNAME;
960
961   /**
962    * A named preference that controls whether function names are rendered in
963    * bold.
964    * <p>
965    * Value is of type <code>Boolean</code>.
966    * </p>
967    */
968   public final static String EDITOR_PHP_FUNCTIONNAME_BOLD= IJavaColorConstants.PHP_FUNCTIONNAME + EDITOR_BOLD_SUFFIX;
969
970   /**
971    * A named preference that holds the color used to render php
972    * variables.
973    * <p>
974    * Value is of type <code>String</code>. A RGB color value encoded as a string
975    * using class <code>PreferenceConverter</code>
976    * </p>
977    * 
978    * @see org.eclipse.jface.resource.StringConverter
979    * @see org.eclipse.jface.preference.PreferenceConverter
980    */
981   public final static String EDITOR_PHP_VARIABLE_COLOR= IJavaColorConstants.PHP_VARIABLE;
982
983   /**
984    * A named preference that controls whether variables are rendered in bold.
985    * <p>
986    * Value is of type <code>Boolean</code>.
987    * </p>
988    */
989   public final static String EDITOR_PHP_VARIABLE_BOLD= IJavaColorConstants.PHP_VARIABLE + EDITOR_BOLD_SUFFIX;
990
991   /**
992    * A named preference that holds the color used to render php constants.
993    * <p>
994    * Value is of type <code>String</code>. A RGB color value encoded as a string
995    * using class <code>PreferenceConverter</code>
996    * </p>
997    * 
998    * @see org.eclipse.jface.resource.StringConverter
999    * @see org.eclipse.jface.preference.PreferenceConverter
1000    */
1001   public final static String EDITOR_PHP_CONSTANT_COLOR= IJavaColorConstants.PHP_CONSTANT;
1002
1003   /**
1004    * A named preference that controls whether constants are rendered in bold.
1005    * <p>
1006    * Value is of type <code>Boolean</code>.
1007    * </p>
1008    */
1009   public final static String EDITOR_PHP_CONSTANT_BOLD= IJavaColorConstants.PHP_CONSTANT + EDITOR_BOLD_SUFFIX;
1010
1011   /**
1012    * A named preference that holds the color used to render php types.
1013    * <p>
1014    * Value is of type <code>String</code>. A RGB color value encoded as a string
1015    * using class <code>PreferenceConverter</code>
1016    * </p>
1017    * 
1018    * @see org.eclipse.jface.resource.StringConverter
1019    * @see org.eclipse.jface.preference.PreferenceConverter
1020    */
1021   public final static String EDITOR_PHP_TYPE_COLOR= IJavaColorConstants.PHP_TYPE;
1022
1023   /**
1024    * A named preference that controls whether types are rendered in bold.
1025    * <p>
1026    * Value is of type <code>Boolean</code>.
1027    * </p>
1028    */
1029   public final static String EDITOR_PHP_TYPE_BOLD= IJavaColorConstants.PHP_TYPE + EDITOR_BOLD_SUFFIX;
1030
1031
1032         /**
1033          * A named preference that holds the color used to render string constants.
1034          * <p>
1035          * Value is of type <code>String</code>. A RGB color value encoded as a string
1036          * using class <code>PreferenceConverter</code>
1037          * </p>
1038          * 
1039          * @see org.eclipse.jface.resource.StringConverter
1040          * @see org.eclipse.jface.preference.PreferenceConverter
1041          */
1042         public final static String EDITOR_STRING_COLOR= IJavaColorConstants.PHP_STRING;
1043
1044         /**
1045          * A named preference that controls whether string constants are rendered in bold.
1046          * <p>
1047          * Value is of type <code>Boolean</code>.
1048          * </p>
1049          */
1050         public final static String EDITOR_STRING_BOLD= IJavaColorConstants.PHP_STRING + EDITOR_BOLD_SUFFIX;
1051
1052         /**
1053          * A named preference that holds the color used to render php default text.
1054          * <p>
1055          * Value is of type <code>String</code>. A RGB color value encoded as a string
1056          * using class <code>PreferenceConverter</code>
1057          * </p>
1058          * 
1059          * @see org.eclipse.jface.resource.StringConverter
1060          * @see org.eclipse.jface.preference.PreferenceConverter
1061          */
1062         public final static String EDITOR_JAVA_DEFAULT_COLOR= IJavaColorConstants.PHP_DEFAULT;
1063
1064         /**
1065          * A named preference that controls whether Java default text is rendered in bold.
1066          * <p>
1067          * Value is of type <code>Boolean</code>.
1068          * </p>
1069          */
1070         public final static String EDITOR_JAVA_DEFAULT_BOLD= IJavaColorConstants.PHP_DEFAULT + EDITOR_BOLD_SUFFIX;
1071
1072         /**
1073          * A named preference that holds the color used to render phpdoc keywords.
1074          * <p>
1075          * Value is of type <code>String</code>. A RGB color value encoded as a string
1076          * using class <code>PreferenceConverter</code>
1077          * </p>
1078          * 
1079          * @see org.eclipse.jface.resource.StringConverter
1080          * @see org.eclipse.jface.preference.PreferenceConverter
1081          */
1082         public final static String EDITOR_JAVADOC_KEYWORD_COLOR= IJavaColorConstants.PHPDOC_KEYWORD;
1083
1084         /**
1085          * A named preference that controls whether phpdoc keywords are rendered in bold.
1086          * <p>
1087          * Value is of type <code>Boolean</code>.
1088          * </p>
1089          */
1090         public final static String EDITOR_JAVADOC_KEYWORD_BOLD= IJavaColorConstants.PHPDOC_KEYWORD + EDITOR_BOLD_SUFFIX;
1091
1092         /**
1093          * A named preference that holds the color used to render phpdoc tags.
1094          * <p>
1095          * Value is of type <code>String</code>. A RGB color value encoded as a string
1096          * using class <code>PreferenceConverter</code>
1097          * </p>
1098          * 
1099          * @see org.eclipse.jface.resource.StringConverter
1100          * @see org.eclipse.jface.preference.PreferenceConverter
1101          */
1102         public final static String EDITOR_JAVADOC_TAG_COLOR= IJavaColorConstants.PHPDOC_TAG;
1103
1104         /**
1105          * A named preference that controls whether phpdoc tags are rendered in bold.
1106          * <p>
1107          * Value is of type <code>Boolean</code>.
1108          * </p>
1109          */
1110         public final static String EDITOR_JAVADOC_TAG_BOLD= IJavaColorConstants.PHPDOC_TAG + EDITOR_BOLD_SUFFIX;
1111
1112         /**
1113          * A named preference that holds the color used to render phpdoc links.
1114          * <p>
1115          * Value is of type <code>String</code>. A RGB color value encoded as a string
1116          * using class <code>PreferenceConverter</code>
1117          * </p>
1118          * 
1119          * @see org.eclipse.jface.resource.StringConverter
1120          * @see org.eclipse.jface.preference.PreferenceConverter
1121          */
1122         public final static String EDITOR_JAVADOC_LINKS_COLOR= IJavaColorConstants.PHPDOC_LINK;
1123
1124         /**
1125          * A named preference that controls whether phpdoc links are rendered in bold.
1126          * <p>
1127          * Value is of type <code>Boolean</code>.
1128          * </p>
1129          */
1130         public final static String EDITOR_JAVADOC_LINKS_BOLD= IJavaColorConstants.PHPDOC_LINK + EDITOR_BOLD_SUFFIX;
1131                 
1132         /**
1133          * A named preference that holds the color used to render phpdoc default text.
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_JAVADOC_DEFAULT_COLOR= IJavaColorConstants.PHPDOC_DEFAULT;
1143
1144         /**
1145          * A named preference that controls whether phpdoc default text is rendered in bold.
1146          * <p>
1147          * Value is of type <code>Boolean</code>.
1148          * </p>
1149          */
1150         public final static String EDITOR_JAVADOC_DEFAULT_BOLD= IJavaColorConstants.PHPDOC_DEFAULT + EDITOR_BOLD_SUFFIX;
1151
1152         /**
1153          * A named preference that holds the color used for 'linked-mode' underline.
1154          * <p>
1155          * Value is of type <code>String</code>. A RGB color value encoded as a string
1156          * using class <code>PreferenceConverter</code>
1157          * </p>
1158          *
1159          * @see org.eclipse.jface.resource.StringConverter
1160          * @see org.eclipse.jface.preference.PreferenceConverter
1161          * @since 2.1
1162          */
1163         public final static String EDITOR_LINK_COLOR= "linkColor"; //$NON-NLS-1$
1164
1165         /**
1166          * A named preference that controls whether hover tooltips in the editor are turned on or off.
1167          * <p>
1168          * Value is of type <code>Boolean</code>.
1169          * </p>
1170          */
1171         public static final String EDITOR_SHOW_HOVER= "net.sourceforge.phpdt.ui.editor.showHover"; //$NON-NLS-1$
1172
1173         /**
1174          * A named preference that defines the hover shown when no control key is
1175          * pressed.
1176          * <p>Value is of type <code>String</code>: possible values are <code>
1177          * EDITOR_NO_HOVER_CONFIGURED_ID</code> or
1178          * <code>EDITOR_DEFAULT_HOVER_CONFIGURED_ID</code> or the hover id of a hover
1179          * contributed as <code>phpEditorTextHovers</code>.
1180          * </p>
1181          * @see #EDITOR_NO_HOVER_CONFIGURED_ID
1182          * @see #EDITOR_DEFAULT_HOVER_CONFIGURED_ID
1183          * @see JavaUI
1184          * @since 2.1
1185          */
1186         public static final String EDITOR_NONE_HOVER= "noneHover"; //$NON-NLS-1$
1187
1188         /**
1189          * A named preference that defines the hover shown when the
1190          * <code>CTRL</code> modifier key is pressed.
1191          * <p>Value is of type <code>String</code>: possible values are <code>
1192          * EDITOR_NO_HOVER_CONFIGURED_ID</code> or
1193          * <code>EDITOR_DEFAULT_HOVER_CONFIGURED_ID</code> or the hover id of a
1194          * hover contributed as <code>phpEditorTextHovers</code>.
1195          * </p>
1196          * @see #EDITOR_NO_HOVER_CONFIGURED_ID
1197          * @see #EDITOR_DEFAULT_HOVER_CONFIGURED_ID
1198          * @see JavaUI
1199          * @since 2.1
1200          */
1201         public static final String EDITOR_CTRL_HOVER= "ctrlHover"; //$NON-NLS-1$
1202         
1203         /**
1204          * A named preference that defines the hover shown when the
1205          * <code>SHIFT</code> modifier key is pressed.
1206          * <p>Value is of type <code>String</code>: possible values are <code>
1207          * EDITOR_NO_HOVER_CONFIGURED_ID</code> or
1208          * <code>EDITOR_DEFAULT_HOVER_CONFIGURED_ID</code> or the hover id of a
1209          * hover contributed as <code>phpEditorTextHovers</code>.
1210          * </p>
1211          * @see #EDITOR_NO_HOVER_CONFIGURED_ID
1212          * @see #EDITOR_DEFAULT_HOVER_CONFIGURED_ID
1213          * @see JavaUI ID_*_HOVER
1214          * @since 2.1
1215          */
1216         public static final String EDITOR_SHIFT_HOVER= "shiftHover"; //$NON-NLS-1$
1217
1218         /**
1219          * A named preference that defines the hover shown when the
1220          * <code>CTRL + ALT</code> modifier keys is pressed.
1221          * <p>Value is of type <code>String</code>: possible values are <code>
1222          * EDITOR_NO_HOVER_CONFIGURED_ID</code> or
1223          * <code>EDITOR_DEFAULT_HOVER_CONFIGURED_ID</code> or the hover id of a
1224          * hover contributed as <code>phpEditorTextHovers</code>.
1225          * </p>
1226          * @see #EDITOR_NO_HOVER_CONFIGURED_ID
1227          * @see #EDITOR_DEFAULT_HOVER_CONFIGURED_ID
1228          * @see JavaUI ID_*_HOVER
1229          * @since 2.1
1230          */
1231         public static final String EDITOR_CTRL_ALT_HOVER= "ctrlAltHover"; //$NON-NLS-1$
1232
1233         /**
1234          * A named preference that defines the hover shown when the
1235          * <code>CTRL + ALT + SHIFT</code> modifier keys is pressed.
1236          * <p>Value is of type <code>String</code>: possible values are <code>
1237          * EDITOR_NO_HOVER_CONFIGURED_ID</code> or
1238          * <code>EDITOR_DEFAULT_HOVER_CONFIGURED_ID</code> or the hover id of a
1239          * hover contributed as <code>phpEditorTextHovers</code>.
1240          * </p>
1241          * @see #EDITOR_NO_HOVER_CONFIGURED_ID
1242          * @see #EDITOR_DEFAULT_HOVER_CONFIGURED_ID
1243          * @see JavaUI ID_*_HOVER
1244          * @since 2.1
1245          */
1246         public static final String EDITOR_CTRL_ALT_SHIFT_HOVER= "ctrlAltShiftHover"; //$NON-NLS-1$
1247
1248         /**
1249          * A named preference that defines the hover shown when the
1250          * <code>CTRL + SHIFT</code> modifier keys is pressed.
1251          * <p>Value is of type <code>String</code>: possible values are <code>
1252          * EDITOR_NO_HOVER_CONFIGURED_ID</code> or
1253          * <code>EDITOR_DEFAULT_HOVER_CONFIGURED_ID</code> or the hover id of a
1254          * hover contributed as <code>phpEditorTextHovers</code>.
1255          * </p>
1256          * @see #EDITOR_NO_HOVER_CONFIGURED_ID
1257          * @see #EDITOR_DEFAULT_HOVER_CONFIGURED_ID
1258          * @see JavaUI ID_*_HOVER
1259          * @since 2.1
1260          */
1261         public static final String EDITOR_CTRL_SHIFT_HOVER= "ctrlShiftHover"; //$NON-NLS-1$
1262
1263         /**
1264          * A named preference that defines the hover shown when the
1265          * <code>ALT</code> modifier key is pressed.
1266          * <p>Value is of type <code>String</code>: possible values are <code>
1267          * EDITOR_NO_HOVER_CONFIGURED_ID</code>,
1268          * <code>EDITOR_DEFAULT_HOVER_CONFIGURED_ID</code>  or the hover id of a
1269          * hover contributed as <code>phpEditorTextHovers</code>.
1270          * </p>
1271          * @see #EDITOR_NO_HOVER_CONFIGURED_ID
1272          * @see #EDITOR_DEFAULT_HOVER_CONFIGURED_ID
1273          * @see JavaUI ID_*_HOVER
1274          * @since 2.1
1275          */
1276         public static final String EDITOR_ALT_SHIFT_HOVER= "altShiftHover"; //$NON-NLS-1$
1277
1278         /**
1279          * A string value used by the named preferences for hover configuration to
1280          * descibe that no hover should be shown for the given key modifiers.
1281          * @since 2.1
1282          */
1283         public static final String EDITOR_NO_HOVER_CONFIGURED_ID= "noHoverConfiguredId"; //$NON-NLS-1$
1284         
1285         /**
1286          * A string value used by the named preferences for hover configuration to
1287          * descibe that the default hover should be shown for the given key
1288          * modifiers. The default hover is described by the
1289          * <code>EDITOR_DEFAULT_HOVER</code> property.
1290          * @since 2.1
1291          */
1292         public static final String EDITOR_DEFAULT_HOVER_CONFIGURED_ID= "defaultHoverConfiguredId"; //$NON-NLS-1$
1293
1294         /**
1295          * A named preference that defines the hover named the 'default hover'.
1296          * Value is of type <code>String</code>: possible values are <code>
1297          * EDITOR_NO_HOVER_CONFIGURED_ID</code> or <code> the hover id of a hover
1298          * contributed as <code>phpEditorTextHovers</code>.
1299          * </p>
1300          *@since 2.1
1301          */
1302         public static final String EDITOR_DEFAULT_HOVER= "defaultHover"; //$NON-NLS-1$
1303
1304         /**
1305          * A named preference that controls if segmented view (show selected element only) is turned on or off.
1306          * <p>
1307          * Value is of type <code>Boolean</code>.
1308          * </p>
1309          */
1310         public static final String EDITOR_SHOW_SEGMENTS= "net.sourceforge.phpdt.ui.editor.showSegments"; //$NON-NLS-1$
1311
1312         /**
1313          * A named preference that controls if the Java code assist gets auto activated.
1314          * <p>
1315          * Value is of type <code>Boolean</code>.
1316          * </p>
1317          */
1318         public final static String CODEASSIST_AUTOACTIVATION= "content_assist_autoactivation"; //$NON-NLS-1$
1319
1320         /**
1321          * A name preference that holds the auto activation delay time in milli seconds.
1322          * <p>
1323          * Value is of type <code>Int</code>.
1324          * </p>
1325          */
1326         public final static String CODEASSIST_AUTOACTIVATION_DELAY= "content_assist_autoactivation_delay"; //$NON-NLS-1$
1327
1328         /**
1329          * A named preference that controls if code assist contains only visible proposals.
1330          * <p>
1331          * Value is of type <code>Boolean</code>. if <code>true<code> code assist only contains visible members. If 
1332          * <code>false</code> all members are included.
1333          * </p>
1334          */
1335         public final static String CODEASSIST_SHOW_VISIBLE_PROPOSALS= "content_assist_show_visible_proposals"; //$NON-NLS-1$
1336
1337         /**
1338          * A named preference that controls if the Java code assist inserts a
1339          * proposal automatically if only one proposal is available.
1340          * <p>
1341          * Value is of type <code>Boolean</code>.
1342          * </p>
1343          * @since 2.1
1344          */
1345         public final static String CODEASSIST_AUTOINSERT= "content_assist_autoinsert"; //$NON-NLS-1$
1346
1347         /**
1348          * A named preference that controls if the Java code assist adds import
1349          * statements.
1350          * <p>
1351          * Value is of type <code>Boolean</code>.
1352          * </p>
1353          * @since 2.1
1354          */
1355         public final static String CODEASSIST_ADDIMPORT= "content_assist_add_import"; //$NON-NLS-1$
1356         
1357         /**
1358          * A named preference that controls if the Java code assist only inserts
1359          * completions. If set to false the proposals can also _replace_ code.
1360          * <p>
1361          * Value is of type <code>Boolean</code>.
1362          * </p>
1363          * @since 2.1
1364          */
1365         public final static String CODEASSIST_INSERT_COMPLETION= "content_assist_insert_completion"; //$NON-NLS-1$      
1366
1367         /**
1368          * A named preference that controls whether code assist proposals filtering is case sensitive or not.
1369          * <p>
1370          * Value is of type <code>Boolean</code>.
1371          * </p>
1372          */
1373         public final static String CODEASSIST_CASE_SENSITIVITY= "content_assist_case_sensitivity"; //$NON-NLS-1$
1374         
1375         /**
1376          * A named preference that defines if code assist proposals are sorted in alphabetical order.
1377          * <p>
1378          * Value is of type <code>Boolean</code>. If <code>true</code> that are sorted in alphabetical 
1379          * order. If <code>false</code> that are unsorted.
1380          * </p>
1381          */
1382         public final static String CODEASSIST_ORDER_PROPOSALS= "content_assist_order_proposals"; //$NON-NLS-1$
1383
1384         /**
1385          * A named preference that controls if argument names are filled in when a method is selected from as list
1386          * of code assist proposal.
1387          * <p>
1388          * Value is of type <code>Boolean</code>.
1389          * </p>
1390          */
1391         public final static String CODEASSIST_FILL_ARGUMENT_NAMES= "content_assist_fill_method_arguments"; //$NON-NLS-1$
1392
1393         /**
1394          * A named preference that controls if method arguments are guessed when a
1395          * method is selected from as list of code assist proposal.
1396          * <p>
1397          * Value is of type <code>Boolean</code>.
1398          * </p>
1399          * @since 2.1
1400          */
1401         public final static String CODEASSIST_GUESS_METHOD_ARGUMENTS= "content_assist_guess_method_arguments"; //$NON-NLS-1$
1402
1403         /**
1404          * A named preference that holds the characters that auto activate code assist in Java code.
1405          * <p>
1406          * Value is of type <code>Sring</code>. All characters that trigger auto code assist in Java code.
1407          * </p>
1408          */
1409         public final static String CODEASSIST_AUTOACTIVATION_TRIGGERS_JAVA= "content_assist_autoactivation_triggers_php"; //$NON-NLS-1$
1410
1411         /**
1412          * A named preference that holds the characters that auto activate code assist in Javadoc.
1413          * <p>
1414          * Value is of type <code>Sring</code>. All characters that trigger auto code assist in Javadoc.
1415          * </p>
1416          */
1417         public final static String CODEASSIST_AUTOACTIVATION_TRIGGERS_JAVADOC= "content_assist_autoactivation_triggers_phpdoc"; //$NON-NLS-1$
1418
1419         /**
1420          * A named preference that holds the background color used in the code assist selection dialog.
1421          * <p>
1422          * Value is of type <code>String</code>. A RGB color value encoded as a string
1423          * using class <code>PreferenceConverter</code>
1424          * </p>
1425          * 
1426          * @see org.eclipse.jface.resource.StringConverter
1427          * @see org.eclipse.jface.preference.PreferenceConverter
1428          */
1429         public final static String CODEASSIST_PROPOSALS_BACKGROUND= "content_assist_proposals_background"; //$NON-NLS-1$
1430
1431         /**
1432          * A named preference that holds the foreground color used in the code assist selection dialog.
1433          * <p>
1434          * Value is of type <code>String</code>. A RGB color value encoded as a string
1435          * using class <code>PreferenceConverter</code>
1436          * </p>
1437          * 
1438          * @see org.eclipse.jface.resource.StringConverter
1439          * @see org.eclipse.jface.preference.PreferenceConverter
1440          */
1441         public final static String CODEASSIST_PROPOSALS_FOREGROUND= "content_assist_proposals_foreground"; //$NON-NLS-1$
1442         
1443         /**
1444          * A named preference that holds the background color used for parameter hints.
1445          * <p>
1446          * Value is of type <code>String</code>. A RGB color value encoded as a string
1447          * using class <code>PreferenceConverter</code>
1448          * </p>
1449          * 
1450          * @see org.eclipse.jface.resource.StringConverter
1451          * @see org.eclipse.jface.preference.PreferenceConverter
1452          */
1453         public final static String CODEASSIST_PARAMETERS_BACKGROUND= "content_assist_parameters_background"; //$NON-NLS-1$
1454
1455         /**
1456          * A named preference that holds the foreground color used in the code assist selection dialog
1457          * <p>
1458          * Value is of type <code>String</code>. A RGB color value encoded as a string
1459          * using class <code>PreferenceConverter</code>
1460          * </p>
1461          * 
1462          * @see org.eclipse.jface.resource.StringConverter
1463          * @see org.eclipse.jface.preference.PreferenceConverter
1464          */
1465         public final static String CODEASSIST_PARAMETERS_FOREGROUND= "content_assist_parameters_foreground"; //$NON-NLS-1$
1466
1467         /**
1468          * A named preference that holds the background color used in the code
1469          * assist selection dialog to mark replaced code.
1470          * <p>
1471          * Value is of type <code>String</code>. A RGB color value encoded as a string
1472          * using class <code>PreferenceConverter</code>
1473          * </p>
1474          *
1475          * @see org.eclipse.jface.resource.StringConverter
1476          * @see org.eclipse.jface.preference.PreferenceConverter
1477          * @since 2.1
1478          */
1479         public final static String CODEASSIST_REPLACEMENT_BACKGROUND= "content_assist_completion_replacement_background"; //$NON-NLS-1$
1480
1481         /**
1482          * A named preference that holds the foreground color used in the code
1483          * assist selection dialog to mark replaced code.
1484          * <p>
1485          * Value is of type <code>String</code>. A RGB color value encoded as a string
1486          * using class <code>PreferenceConverter</code>
1487          * </p>
1488          *
1489          * @see org.eclipse.jface.resource.StringConverter
1490          * @see org.eclipse.jface.preference.PreferenceConverter
1491          * @since 2.1
1492          */
1493         public final static String CODEASSIST_REPLACEMENT_FOREGROUND= "content_assist_completion_replacement_foreground"; //$NON-NLS-1$
1494
1495
1496         /**
1497          * A named preference that controls the behaviour of the refactoring wizard for showing the error page. 
1498          * <p>
1499          * Value is of type <code>String</code>. Valid values are: 
1500          * <code>REFACTOR_FATAL_SEVERITY</code>,
1501          * <code>REFACTOR_ERROR_SEVERITY</code>,
1502          * <code>REFACTOR_WARNING_SEVERITY</code>
1503          * <code>REFACTOR_INFO_SEVERITY</code>,
1504          * <code>REFACTOR_OK_SEVERITY</code>.
1505          * </p>
1506          * 
1507          * @see #REFACTOR_FATAL_SEVERITY
1508          * @see #REFACTOR_ERROR_SEVERITY
1509          * @see #REFACTOR_WARNING_SEVERITY
1510          * @see #REFACTOR_INFO_SEVERITY
1511          * @see #REFACTOR_OK_SEVERITY
1512          */
1513         public static final String REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD= "Refactoring.ErrorPage.severityThreshold"; //$NON-NLS-1$
1514
1515         /**
1516          * A string value used by the named preference <code>REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD</code>.
1517          * 
1518          * @see #REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD
1519          */
1520         public static final String REFACTOR_FATAL_SEVERITY= "4"; //$NON-NLS-1$
1521         
1522         /**
1523          * A string value used by the named preference <code>REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD</code>.
1524          * 
1525          * @see #REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD
1526          */     
1527         public static final String REFACTOR_ERROR_SEVERITY= "3"; //$NON-NLS-1$
1528
1529         /**
1530          * A string value used by the named preference <code>REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD</code>.
1531          * 
1532          * @see #REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD
1533          */
1534         public static final String REFACTOR_WARNING_SEVERITY= "2"; //$NON-NLS-1$
1535
1536         /**
1537          * A string value used by the named preference <code>REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD</code>.
1538          * 
1539          * @see #REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD
1540          */
1541         public static final String REFACTOR_INFO_SEVERITY= "1"; //$NON-NLS-1$
1542
1543         /**
1544          * A string value used by the named preference <code>REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD</code>.
1545          * 
1546          * @see #REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD
1547          */
1548         public static final String REFACTOR_OK_SEVERITY= "0"; //$NON-NLS-1$
1549
1550         /**
1551          * A named preference thet controls whether all dirty editors are automatically saved before a refactoring is
1552          * executed.
1553          * <p>
1554          * Value is of type <code>Boolean</code>.
1555          * </p>
1556          */
1557         public static final String REFACTOR_SAVE_ALL_EDITORS= "Refactoring.savealleditors"; //$NON-NLS-1$
1558
1559         /**
1560          * A named preference that controls if the Java Browsing views are linked to the active editor.
1561          * <p>
1562          * Value is of type <code>Boolean</code>.
1563          * </p>
1564          * 
1565          * @see #LINK_PACKAGES_TO_EDITOR
1566          */
1567         public static final String BROWSING_LINK_VIEW_TO_EDITOR= "net.sourceforge.phpdt.ui.browsing.linktoeditor"; //$NON-NLS-1$
1568
1569         /**
1570          * A named preference that controls the layout of the Java Browsing views vertically. Boolean value.
1571          * <p>
1572          * Value is of type <code>Boolean</code>. If <code>true<code> the views are stacked vertical.
1573          * If <code>false</code> they are stacked horizontal.
1574          * </p>
1575          */
1576         public static final String BROWSING_STACK_VERTICALLY= "net.sourceforge.phpdt.ui.browsing.stackVertically"; //$NON-NLS-1$
1577         
1578         
1579         /**
1580          * A named preference that controls if templates are formatted when applied.
1581          * <p>
1582          * Value is of type <code>Boolean</code>.
1583          * </p>
1584          *
1585          * @since 2.1
1586          */     
1587         public static final String TEMPLATES_USE_CODEFORMATTER= "net.sourceforge.phpdt.ui.template.format"; //$NON-NLS-1$
1588
1589         
1590         
1591         public static void initializeDefaultValues(IPreferenceStore store) {
1592                 store.setDefault(PreferenceConstants.EDITOR_SHOW_SEGMENTS, false);
1593
1594                 // JavaBasePreferencePage
1595                 store.setDefault(PreferenceConstants.LINK_PACKAGES_TO_EDITOR, true);
1596                 store.setDefault(PreferenceConstants.LINK_TYPEHIERARCHY_TO_EDITOR, false);
1597                 store.setDefault(PreferenceConstants.LINK_BROWSING_VIEW_TO_EDITOR, true);
1598                 store.setDefault(PreferenceConstants.OPEN_TYPE_HIERARCHY, PreferenceConstants.OPEN_TYPE_HIERARCHY_IN_VIEW_PART);
1599                 store.setDefault(PreferenceConstants.DOUBLE_CLICK, PreferenceConstants.DOUBLE_CLICK_EXPANDS);
1600                 store.setDefault(PreferenceConstants.UPDATE_JAVA_VIEWS, PreferenceConstants.UPDATE_WHILE_EDITING);      
1601                 
1602                 // AppearancePreferencePage
1603                 store.setDefault(PreferenceConstants.APPEARANCE_COMPRESS_PACKAGE_NAMES, false);
1604                 store.setDefault(PreferenceConstants.APPEARANCE_METHOD_RETURNTYPE, false);
1605                 store.setDefault(PreferenceConstants.SHOW_CU_CHILDREN, true);
1606                 store.setDefault(PreferenceConstants.APPEARANCE_OVERRIDE_INDICATOR, true);
1607                 store.setDefault(PreferenceConstants.BROWSING_STACK_VERTICALLY, false);
1608                 store.setDefault(PreferenceConstants.APPEARANCE_PKG_NAME_PATTERN_FOR_PKG_VIEW, ""); //$NON-NLS-1$
1609                 store.setDefault(PreferenceConstants.APPEARANCE_FOLD_PACKAGES_IN_PACKAGE_EXPLORER, true);
1610
1611                 // ImportOrganizePreferencePage
1612                 store.setDefault(PreferenceConstants.ORGIMPORTS_IMPORTORDER, "php;phpx;org;com"); //$NON-NLS-1$
1613                 store.setDefault(PreferenceConstants.ORGIMPORTS_ONDEMANDTHRESHOLD, 99);
1614                 store.setDefault(PreferenceConstants.ORGIMPORTS_IGNORELOWERCASE, true);
1615
1616                 // ClasspathVariablesPreferencePage
1617                 // CodeFormatterPreferencePage
1618                 // CompilerPreferencePage
1619                 // no initialization needed
1620                 
1621                 // RefactoringPreferencePage
1622                 store.setDefault(PreferenceConstants.REFACTOR_ERROR_PAGE_SEVERITY_THRESHOLD, PreferenceConstants.REFACTOR_ERROR_SEVERITY);
1623                 store.setDefault(PreferenceConstants.REFACTOR_SAVE_ALL_EDITORS, false);
1624                 store.setDefault("RefactoringUI", "dialog");            
1625
1626                 // TemplatePreferencePage
1627                 store.setDefault(PreferenceConstants.TEMPLATES_USE_CODEFORMATTER, true);
1628                 
1629                 // CodeGenerationPreferencePage
1630                 store.setDefault(PreferenceConstants.CODEGEN_USE_GETTERSETTER_PREFIX, false);
1631                 store.setDefault(PreferenceConstants.CODEGEN_USE_GETTERSETTER_SUFFIX, false);
1632                 store.setDefault(PreferenceConstants.CODEGEN_GETTERSETTER_PREFIX, "fg, f, _$, _, m_"); //$NON-NLS-1$
1633                 store.setDefault(PreferenceConstants.CODEGEN_GETTERSETTER_SUFFIX, "_"); //$NON-NLS-1$
1634                 store.setDefault(PreferenceConstants.CODEGEN__JAVADOC_STUBS, true);
1635                 store.setDefault(PreferenceConstants.CODEGEN__NON_JAVADOC_COMMENTS, false);
1636                 store.setDefault(PreferenceConstants.CODEGEN__FILE_COMMENTS, false);            
1637
1638                 // MembersOrderPreferencePage
1639                 store.setDefault(PreferenceConstants.APPEARANCE_MEMBER_SORT_ORDER, "T,SI,SF,SM,I,F,C,M"); //$NON-NLS-1$
1640                 // must add here to guarantee that it is the first in the listener list
1641         //      store.addPropertyChangeListener(PHPeclipsePlugin.getDefault().getMemberOrderPreferenceCache());
1642
1643
1644                 // PHPEditorPreferencePage
1645                 /*
1646                  * Ensure that the display is accessed only in the UI thread.
1647                  * Ensure that there are no side effects of switching the thread.
1648                  */
1649                 final RGB[] rgbs= new RGB[3];
1650                 final Display display= Display.getDefault();
1651                 display.syncExec(new Runnable() {
1652                         public void run() {
1653                                 Color c= display.getSystemColor(SWT.COLOR_GRAY);
1654                                 rgbs[0]= c.getRGB();
1655                                 c= display.getSystemColor(SWT.COLOR_LIST_FOREGROUND);
1656                                 rgbs[1]= c.getRGB();
1657                                 c= display.getSystemColor(SWT.COLOR_LIST_BACKGROUND);
1658                                 rgbs[2]= c.getRGB();
1659                         }
1660                 });
1661
1662                 store.setDefault(PreferenceConstants.EDITOR_MATCHING_BRACKETS, true);
1663                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_MATCHING_BRACKETS_COLOR,  rgbs[0]);
1664
1665                 store.setDefault(PreferenceConstants.EDITOR_CURRENT_LINE, true);
1666                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_CURRENT_LINE_COLOR, new RGB(225, 235, 224));
1667
1668                 store.setDefault(PreferenceConstants.EDITOR_PRINT_MARGIN, false);
1669                 store.setDefault(PreferenceConstants.EDITOR_PRINT_MARGIN_COLUMN, 80);
1670                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_PRINT_MARGIN_COLOR, new RGB(176, 180 , 185));
1671
1672                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_FIND_SCOPE_COLOR, new RGB(185, 176 , 180));
1673
1674                 store.setDefault(PreferenceConstants.EDITOR_PROBLEM_INDICATION, true);
1675                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_PROBLEM_INDICATION_COLOR, new RGB(255, 0 , 128));
1676                 store.setDefault(PreferenceConstants.EDITOR_ERROR_INDICATION_IN_OVERVIEW_RULER, true);
1677
1678                 store.setDefault(PreferenceConstants.EDITOR_WARNING_INDICATION, true);
1679                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_WARNING_INDICATION_COLOR, new RGB(244, 200 , 45));
1680                 store.setDefault(PreferenceConstants.EDITOR_WARNING_INDICATION_IN_OVERVIEW_RULER, true);
1681
1682                 store.setDefault(PreferenceConstants.EDITOR_TASK_INDICATION, false);
1683                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_TASK_INDICATION_COLOR, new RGB(0, 128, 255));
1684                 store.setDefault(PreferenceConstants.EDITOR_TASK_INDICATION_IN_OVERVIEW_RULER, false);
1685
1686                 store.setDefault(PreferenceConstants.EDITOR_BOOKMARK_INDICATION, false);
1687                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_BOOKMARK_INDICATION_COLOR, new RGB(34, 164, 99));
1688                 store.setDefault(PreferenceConstants.EDITOR_BOOKMARK_INDICATION_IN_OVERVIEW_RULER, false);
1689
1690                 store.setDefault(PreferenceConstants.EDITOR_SEARCH_RESULT_INDICATION, false);
1691                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_SEARCH_RESULT_INDICATION_COLOR, new RGB(192, 192, 192));
1692                 store.setDefault(PreferenceConstants.EDITOR_SEARCH_RESULT_INDICATION_IN_OVERVIEW_RULER, false);
1693
1694                 store.setDefault(PreferenceConstants.EDITOR_UNKNOWN_INDICATION, false);
1695                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_UNKNOWN_INDICATION_COLOR, new RGB(0, 0, 0));
1696                 store.setDefault(PreferenceConstants.EDITOR_UNKNOWN_INDICATION_IN_OVERVIEW_RULER, false);
1697
1698                 store.setDefault(PreferenceConstants.EDITOR_CORRECTION_INDICATION, true);
1699                 store.setDefault(PreferenceConstants.EDITOR_SYNC_OUTLINE_ON_CURSOR_MOVE, false);
1700
1701                 store.setDefault(PreferenceConstants.EDITOR_EVALUTE_TEMPORARY_PROBLEMS, true);
1702
1703                 store.setDefault(PreferenceConstants.EDITOR_OVERVIEW_RULER, true);
1704
1705                 store.setDefault(PreferenceConstants.EDITOR_LINE_NUMBER_RULER, false);
1706                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_LINE_NUMBER_RULER_COLOR, new RGB(0, 0, 0));
1707
1708                 WorkbenchChainedTextFontFieldEditor.startPropagate(store, JFaceResources.TEXT_FONT);
1709
1710                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_LINKED_POSITION_COLOR, new RGB(0, 200 , 100));
1711                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_LINK_COLOR, new RGB(0, 0, 255));
1712
1713                 PreferenceConverter.setDefault(store,  PreferenceConstants.EDITOR_FOREGROUND_COLOR, rgbs[1]);
1714                 store.setDefault(PreferenceConstants.EDITOR_FOREGROUND_DEFAULT_COLOR, true);
1715
1716                 PreferenceConverter.setDefault(store,  PreferenceConstants.EDITOR_BACKGROUND_COLOR, rgbs[2]);
1717                 store.setDefault(PreferenceConstants.EDITOR_BACKGROUND_DEFAULT_COLOR, true);
1718
1719                 store.setDefault(PreferenceConstants.EDITOR_TAB_WIDTH, 4);
1720                 store.setDefault(PreferenceConstants.EDITOR_SPACES_FOR_TABS, false);
1721
1722                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_MULTI_LINE_COMMENT_COLOR, new RGB(63, 127, 95));
1723                 store.setDefault(PreferenceConstants.EDITOR_MULTI_LINE_COMMENT_BOLD, false);
1724
1725                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_SINGLE_LINE_COMMENT_COLOR, new RGB(63, 127, 95));
1726                 store.setDefault(PreferenceConstants.EDITOR_SINGLE_LINE_COMMENT_BOLD, false);
1727
1728                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_JAVA_KEYWORD_COLOR, new RGB(127, 0, 85));
1729                 store.setDefault(PreferenceConstants.EDITOR_JAVA_KEYWORD_BOLD, true);
1730
1731     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_PHP_FUNCTIONNAME_COLOR, new RGB(127, 127, 159));
1732     store.setDefault(PreferenceConstants.EDITOR_PHP_FUNCTIONNAME_BOLD, false);
1733
1734     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_PHP_VARIABLE_COLOR, new RGB(127, 159, 191));
1735     store.setDefault(PreferenceConstants.EDITOR_PHP_VARIABLE_BOLD, false);
1736     
1737     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_PHP_CONSTANT_COLOR, new RGB(127, 0, 85));
1738     store.setDefault(PreferenceConstants.EDITOR_PHP_CONSTANT_BOLD, false);
1739
1740     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_PHP_TYPE_COLOR, new RGB(127, 0, 85));
1741     store.setDefault(PreferenceConstants.EDITOR_PHP_TYPE_BOLD, false);
1742         
1743                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_STRING_COLOR, new RGB(42, 0, 255));
1744                 store.setDefault(PreferenceConstants.EDITOR_STRING_BOLD, false);
1745
1746                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_JAVA_DEFAULT_COLOR, new RGB(0, 0, 0));
1747                 store.setDefault(PreferenceConstants.EDITOR_JAVA_DEFAULT_BOLD, false);
1748
1749                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_JAVADOC_KEYWORD_COLOR, new RGB(127, 159, 191));
1750                 store.setDefault(PreferenceConstants.EDITOR_JAVADOC_KEYWORD_BOLD, true);
1751
1752                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_JAVADOC_TAG_COLOR, new RGB(127, 127, 159));
1753                 store.setDefault(PreferenceConstants.EDITOR_JAVADOC_TAG_BOLD, false);
1754
1755                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_JAVADOC_LINKS_COLOR, new RGB(63, 63, 191));
1756                 store.setDefault(PreferenceConstants.EDITOR_JAVADOC_LINKS_BOLD, false);
1757
1758                 PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_JAVADOC_DEFAULT_COLOR, new RGB(63, 95, 191));
1759                 store.setDefault(PreferenceConstants.EDITOR_JAVADOC_DEFAULT_BOLD, false);
1760
1761                 store.setDefault(PreferenceConstants.CODEASSIST_AUTOACTIVATION, true);
1762                 store.setDefault(PreferenceConstants.CODEASSIST_AUTOACTIVATION_DELAY, 500);
1763
1764                 store.setDefault(PreferenceConstants.CODEASSIST_AUTOINSERT, true);
1765                 PreferenceConverter.setDefault(store, PreferenceConstants.CODEASSIST_PROPOSALS_BACKGROUND, new RGB(254, 241, 233));
1766                 PreferenceConverter.setDefault(store, PreferenceConstants.CODEASSIST_PROPOSALS_FOREGROUND, new RGB(0, 0, 0));
1767                 PreferenceConverter.setDefault(store, PreferenceConstants.CODEASSIST_PARAMETERS_BACKGROUND, new RGB(254, 241, 233));
1768                 PreferenceConverter.setDefault(store, PreferenceConstants.CODEASSIST_PARAMETERS_FOREGROUND, new RGB(0, 0, 0));
1769                 PreferenceConverter.setDefault(store, PreferenceConstants.CODEASSIST_REPLACEMENT_BACKGROUND, new RGB(255, 255, 0));
1770                 PreferenceConverter.setDefault(store, PreferenceConstants.CODEASSIST_REPLACEMENT_FOREGROUND, new RGB(255, 0, 0));
1771                 store.setDefault(PreferenceConstants.CODEASSIST_AUTOACTIVATION_TRIGGERS_JAVA, "."); //$NON-NLS-1$
1772                 store.setDefault(PreferenceConstants.CODEASSIST_AUTOACTIVATION_TRIGGERS_JAVADOC, "@"); //$NON-NLS-1$
1773                 store.setDefault(PreferenceConstants.CODEASSIST_SHOW_VISIBLE_PROPOSALS, true);
1774                 store.setDefault(PreferenceConstants.CODEASSIST_CASE_SENSITIVITY, false);
1775                 store.setDefault(PreferenceConstants.CODEASSIST_ORDER_PROPOSALS, false);
1776                 store.setDefault(PreferenceConstants.CODEASSIST_ADDIMPORT, true);
1777                 store.setDefault(PreferenceConstants.CODEASSIST_INSERT_COMPLETION, true);
1778                 store.setDefault(PreferenceConstants.CODEASSIST_FILL_ARGUMENT_NAMES, false);
1779                 store.setDefault(PreferenceConstants.CODEASSIST_GUESS_METHOD_ARGUMENTS, true);
1780
1781                 store.setDefault(PreferenceConstants.EDITOR_SMART_HOME_END, true);
1782                 store.setDefault(PreferenceConstants.EDITOR_SMART_PASTE, true);
1783                 store.setDefault(PreferenceConstants.EDITOR_CLOSE_STRINGS, true);
1784                 store.setDefault(PreferenceConstants.EDITOR_CLOSE_BRACKETS, true);
1785                 store.setDefault(PreferenceConstants.EDITOR_CLOSE_BRACES, true);
1786                 store.setDefault(PreferenceConstants.EDITOR_CLOSE_JAVADOCS, true);
1787                 store.setDefault(PreferenceConstants.EDITOR_WRAP_STRINGS, true);
1788                 store.setDefault(PreferenceConstants.EDITOR_ADD_JAVADOC_TAGS, true);
1789                 store.setDefault(PreferenceConstants.EDITOR_FORMAT_JAVADOCS, true);
1790
1791         //      store.setDefault(PreferenceConstants.EDITOR_DEFAULT_HOVER, JavaPlugin.ID_BESTMATCH_HOVER);
1792                 store.setDefault(PreferenceConstants.EDITOR_NONE_HOVER, PreferenceConstants.EDITOR_DEFAULT_HOVER_CONFIGURED_ID);
1793 //              store.setDefault(PreferenceConstants.EDITOR_CTRL_HOVER, JavaPlugin.ID_SOURCE_HOVER);
1794                 store.setDefault(PreferenceConstants.EDITOR_SHIFT_HOVER, PreferenceConstants.EDITOR_DEFAULT_HOVER_CONFIGURED_ID);
1795                 store.setDefault(PreferenceConstants.EDITOR_CTRL_SHIFT_HOVER, PreferenceConstants.EDITOR_DEFAULT_HOVER_CONFIGURED_ID);
1796                 store.setDefault(PreferenceConstants.EDITOR_CTRL_ALT_HOVER, PreferenceConstants.EDITOR_DEFAULT_HOVER_CONFIGURED_ID);
1797                 store.setDefault(PreferenceConstants.EDITOR_ALT_SHIFT_HOVER, PreferenceConstants.EDITOR_DEFAULT_HOVER_CONFIGURED_ID);
1798                 store.setDefault(PreferenceConstants.EDITOR_CTRL_ALT_SHIFT_HOVER, PreferenceConstants.EDITOR_DEFAULT_HOVER_CONFIGURED_ID);
1799                 
1800                 // do more complicated stuff
1801         //      NewJavaProjectPreferencePage.initDefaults(store);       
1802         }
1803         
1804         /**
1805          * Returns the JDT-UI preference store.
1806          * 
1807          * @return the JDT-UI preference store
1808          */
1809         public static IPreferenceStore getPreferenceStore() {
1810                 return PHPeclipsePlugin.getDefault().getPreferenceStore();
1811         }
1812         
1813 //      /**
1814 //       * Encodes a JRE library to be used in the named preference <code>NEWPROJECT_JRELIBRARY_LIST</code>. 
1815 //       * 
1816 //       * @param description a string value describing the JRE library. The description is used
1817 //       * to indentify the JDR library in the UI
1818 //       * @param entries an array of classpath entries to be encoded
1819 //       * 
1820 //       * @return the encoded string.
1821 //      */
1822 //      public static String encodeJRELibrary(String description, IClasspathEntry[] entries) {
1823 //              return NewJavaProjectPreferencePage.encodeJRELibrary(description, entries);
1824 //      }
1825 //      
1826 //      /**
1827 //       * Decodes an encoded JRE library and returns its description string.
1828 //       * 
1829 //       * @return the description of an encoded JRE library
1830 //       * 
1831 //       * @see #encodeJRELibrary(String, IClasspathEntry[])
1832 //       */
1833 //      public static String decodeJRELibraryDescription(String encodedLibrary) {
1834 //              return NewJavaProjectPreferencePage.decodeJRELibraryDescription(encodedLibrary);
1835 //      }
1836 //      
1837 //      /**
1838 //       * Decodes an encoded JRE library and returns its classpath entries.
1839 //       * 
1840 //       * @return the array of classpath entries of an encoded JRE library.
1841 //       * 
1842 //       * @see #encodeJRELibrary(String, IClasspathEntry[])
1843 //       */
1844 //      public static IClasspathEntry[] decodeJRELibraryClasspathEntries(String encodedLibrary) {
1845 //              return NewJavaProjectPreferencePage.decodeJRELibraryClasspathEntries(encodedLibrary);
1846 //      }
1847 //      
1848 //      /**
1849 //       * Returns the current configuration for the JRE to be used as default in new Java projects.
1850 //       * This is a convenience method to access the named preference <code>NEWPROJECT_JRELIBRARY_LIST
1851 //       * </code> with the index defined by <code> NEWPROJECT_JRELIBRARY_INDEX</code>.
1852 //       *
1853 //       * @return the current default set of classpath entries
1854 //       *  
1855 //       * @see #NEWPROJECT_JRELIBRARY_LIST
1856 //       * @see #NEWPROJECT_JRELIBRARY_INDEX
1857 //       */
1858 //      public static IClasspathEntry[] getDefaultJRELibrary() {
1859 //              return NewJavaProjectPreferencePage.getDefaultJRELibrary();
1860 //      }               
1861 }