fixed Bug 1024299
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpdt / ui / PreferenceConstants.java
index 75c3a01..a4d6700 100644 (file)
@@ -11,6 +11,8 @@
 package net.sourceforge.phpdt.ui;
 
 import net.sourceforge.phpdt.core.IClasspathEntry;
+import net.sourceforge.phpdt.internal.ui.text.spelling.SpellCheckEngine;
+import net.sourceforge.phpdt.internal.ui.text.spelling.engine.ISpellCheckPreferenceKeys;
 import net.sourceforge.phpeclipse.IPreferenceConstants;
 import net.sourceforge.phpeclipse.PHPeclipsePlugin;
 
@@ -384,6 +386,14 @@ public class PreferenceConstants {
    */
   public static final String JAVADOC_COMMAND = "command"; //$NON-NLS-1$
   /**
+        * A named preference that defines whether hint to make hover sticky should be shown.
+        *
+        * @see JavaUI
+        * @since 3.0
+        */
+  public static final String EDITOR_SHOW_TEXT_HOVER_AFFORDANCE= "PreferenceConstants.EDITOR_SHOW_TEXT_HOVER_AFFORDANCE"; //$NON-NLS-1$
+
+  /**
         * A named preference that defines the key for the hover modifiers.
         *
         * @see JavaUI
@@ -730,19 +740,16 @@ public class PreferenceConstants {
    * <p>
    * Value is of type <code>Boolean</code>.
    * </p>
-   * @since 2.1
    */
-  public final static String EDITOR_CLOSE_STRINGS_PHP = "closeStringsPHP"; //$NON-NLS-1$
-
+  public final static String EDITOR_CLOSE_STRINGS_DQ_PHP = "closeStringsPHPDQ"; //$NON-NLS-1$
   /**
-   * A named preference that controls whether the 'wrap strings' feature is
-   * enabled.
+   * A named preference that controls whether the 'close strings' feature
+   *  is   enabled in PHP mode
    * <p>
    * Value is of type <code>Boolean</code>.
    * </p>
-   * @since 2.1
    */
-  public final static String EDITOR_WRAP_STRINGS = "wrapStrings"; //$NON-NLS-1$
+  public final static String EDITOR_CLOSE_STRINGS_SQ_PHP = "closeStringsPHPSQ"; //$NON-NLS-1$
 
   /**
    * A named preference that controls whether the 'close brackets' feature is
@@ -754,6 +761,36 @@ public class PreferenceConstants {
    */
   public final static String EDITOR_CLOSE_BRACKETS_PHP = "closeBracketsPHP"; //$NON-NLS-1$
 
+       /**
+        * A named preference that controls whether the 'wrap strings' feature is
+        * enabled.
+        * <p>
+        * Value is of type <code>Boolean</code>.
+        * </p>
+        * @since 2.1
+        */
+       public final static String EDITOR_WRAP_STRINGS= "wrapStrings"; //$NON-NLS-1$
+
+       /**
+        * A named preference that controls whether the 'escape strings' feature is
+        * enabled.
+        * <p>
+        * Value is of type <code>Boolean</code>.
+        * </p>
+        * @since 3.0
+        */
+       public final static String EDITOR_ESCAPE_STRINGS= "escapeStrings"; //$NON-NLS-1$
+       /**
+        * A named preference that controls if content assist inserts the common
+        * prefix of all proposals before presenting choices.
+        * <p>
+        * Value is of type <code>Boolean</code>.
+        * </p>
+        * 
+        * @since 3.0
+        */
+       public final static String CODEASSIST_PREFIX_COMPLETION= "content_assist_prefix_completion"; //$NON-NLS-1$
+
   /**
    * A named preference that controls whether the 'close braces' feature is
    * enabled.
@@ -833,7 +870,16 @@ public class PreferenceConstants {
    * @since 2.1
    */
   public final static String EDITOR_SMART_HOME_END = AbstractTextEditor.PREFERENCE_NAVIGATION_SMART_HOME_END;
-
+  
+  /**
+        * A named preference that controls whether the 'sub-word navigation' feature is
+        * enabled.
+        * <p>
+        * Value is of type <code>Boolean</code>.
+        * </p>
+        * @since 2.1
+        */
+       public final static String EDITOR_SUB_WORD_NAVIGATION= "subWordNavigation"; //$NON-NLS-1$
   /**
    * A named preference that controls if temporary problems are evaluated and shown in the UI.
    * <p>
@@ -931,6 +977,10 @@ public class PreferenceConstants {
   public static final String EDITOR_BOLD_SUFFIX = "_bold"; //$NON-NLS-1$
 
   /**
+   * Preference key suffix for bold text style preference keys.
+   */
+  public static final String EDITOR_ITALIC_SUFFIX = "_italic"; //$NON-NLS-1$
+  /**
    * A named preference that holds the color used to render multi line comments.
    * <p>
    * Value is of type <code>String</code>. A RGB color value encoded as a string
@@ -943,6 +993,14 @@ public class PreferenceConstants {
   public final static String EDITOR_MULTI_LINE_COMMENT_COLOR = IPreferenceConstants.PHP_MULTILINE_COMMENT;
 
   /**
+        * The symbolic font name for the Java editor text font 
+        * (value <code>"org.eclipse.jdt.ui.editors.textfont"</code>).
+        * 
+        * @since 2.1
+        */
+public final static String EDITOR_TEXT_FONT= "net.sourceforge.phpdt.ui.editors.textfont"; //$NON-NLS-1$
+
+  /**
    * A named preference that controls whether multi line comments are rendered in bold.
    * <p>
    * Value is of type <code>Boolean</code>. If <code>true</code> multi line comments are rendered
@@ -971,6 +1029,71 @@ public class PreferenceConstants {
    * </p>
    */
   public final static String EDITOR_SINGLE_LINE_COMMENT_BOLD = IPreferenceConstants.PHP_SINGLELINE_COMMENT + EDITOR_BOLD_SUFFIX;
+  /**
+        * A named preference that holds the color used to render operators and brackets.
+        * <p>
+        * Value is of type <code>String</code>. A RGB color value encoded as a string
+        * using class <code>PreferenceConverter</code>
+        * </p>
+        * 
+        * @see org.eclipse.jface.resource.StringConverter
+        * @see org.eclipse.jface.preference.PreferenceConverter
+        * @since 3.0
+        */
+       public final static String EDITOR_PHP_OPERATOR_COLOR= IPreferenceConstants.PHP_OPERATOR;        
+
+       /**
+        * A named preference that controls whether operators and brackets are rendered in bold.
+        * <p>
+        * Value is of type <code>Boolean</code>.
+        * </p>
+        * 
+        * @since 3.0
+        */
+       public final static String EDITOR_PHP_OPERATOR_BOLD= IPreferenceConstants.PHP_OPERATOR + EDITOR_BOLD_SUFFIX;
+       
+       /**
+        * A named preference that controls whether operators and brackets are rendered in italic.
+        * <p>
+        * Value is of type <code>Boolean</code>.
+        * </p>
+        * 
+        * @since 3.0
+        */
+       public final static String EDITOR_PHP_OPERATOR_ITALIC= IPreferenceConstants.PHP_OPERATOR + EDITOR_ITALIC_SUFFIX;
+
+        /**
+        * A named preference that holds the color used to render the 'return' keyword.
+        * <p>
+        * Value is of type <code>String</code>. A RGB color value encoded as a string
+        * using class <code>PreferenceConverter</code>
+        * </p>
+        * 
+        * @see org.eclipse.jface.resource.StringConverter
+        * @see org.eclipse.jface.preference.PreferenceConverter
+        * @since 3.0
+        */
+       public final static String EDITOR_PHP_KEYWORD_RETURN_COLOR= IPreferenceConstants.PHP_KEYWORD_RETURN;    
+
+       /**
+        * A named preference that controls whether 'return' keyword is rendered in bold.
+        * <p>
+        * Value is of type <code>Boolean</code>.
+        * </p>
+        * 
+        * @since 3.0
+        */
+       public final static String EDITOR_PHP_KEYWORD_RETURN_BOLD= IPreferenceConstants.PHP_KEYWORD_RETURN + EDITOR_BOLD_SUFFIX;
+       
+       /**
+        * A named preference that controls whether 'return' keyword is rendered in italic.
+        * <p>
+        * Value is of type <code>Boolean</code>.
+        * </p>
+        * 
+        * @since 3.0
+        */
+       public final static String EDITOR_PHP_KEYWORD_RETURN_ITALIC= IPreferenceConstants.PHP_KEYWORD_RETURN + EDITOR_ITALIC_SUFFIX;
 
   /**
         * A named preference that holds the color used to render php start and stop tags.
@@ -982,7 +1105,7 @@ public class PreferenceConstants {
         * @see org.eclipse.jface.resource.StringConverter
         * @see org.eclipse.jface.preference.PreferenceConverter
         */
-  public final static String EDITOR_JAVA_TAG_COLOR = IPreferenceConstants.PHP_TAG;
+  public final static String EDITOR_PHP_TAG_COLOR = IPreferenceConstants.PHP_TAG;
 
   /**
    * A named preference that controls whether php start and stop tags are rendered in bold.
@@ -990,7 +1113,7 @@ public class PreferenceConstants {
    * Value is of type <code>Boolean</code>.
    * </p>
    */
-  public final static String EDITOR_JAVA_TAG_BOLD = IPreferenceConstants.PHP_TAG + EDITOR_BOLD_SUFFIX;
+  public final static String EDITOR_PHP_TAG_BOLD = IPreferenceConstants.PHP_TAG + EDITOR_BOLD_SUFFIX;
 
   /**
    * A named preference that holds the color used to render php keywords.
@@ -1454,6 +1577,14 @@ public class PreferenceConstants {
         * @since 3.0
         */     
        public static final String EDITOR_SMART_SEMICOLON= "smart_semicolon"; //$NON-NLS-1$
+       /**
+        * A named preference that controls the smart backspace behavior.
+        * <p>
+        * Value is of type <code>Boolean</code>.
+        * 
+        * @since 3.0
+        */
+       public static final String EDITOR_SMART_BACKSPACE= "smart_backspace"; //$NON-NLS-1$
        
        /**
         * A named preference that controls the "smart opening brace" smart typing handler
@@ -1483,7 +1614,7 @@ public class PreferenceConstants {
         * 
         * @since 3.0
         */
-//     public final static String SPELLING_CHECK_SPELLING= ISpellCheckPreferenceKeys.SPELLING_CHECK_SPELLING;
+       public final static String SPELLING_CHECK_SPELLING= ISpellCheckPreferenceKeys.SPELLING_CHECK_SPELLING;
 
        /**
         * A named preference that controls whether words containing digits should
@@ -1494,7 +1625,7 @@ public class PreferenceConstants {
         * 
         * @since 3.0
         */
-//     public final static String SPELLING_IGNORE_DIGITS= ISpellCheckPreferenceKeys.SPELLING_IGNORE_DIGITS;
+       public final static String SPELLING_IGNORE_DIGITS= ISpellCheckPreferenceKeys.SPELLING_IGNORE_DIGITS;
 
        /**
         * A named preference that controls whether mixed case words should be
@@ -1505,7 +1636,7 @@ public class PreferenceConstants {
         * 
         * @since 3.0
         */
-//     public final static String SPELLING_IGNORE_MIXED= ISpellCheckPreferenceKeys.SPELLING_IGNORE_MIXED;
+       public final static String SPELLING_IGNORE_MIXED= ISpellCheckPreferenceKeys.SPELLING_IGNORE_MIXED;
 
        /**
         * A named preference that controls whether sentence capitalization should
@@ -1516,7 +1647,7 @@ public class PreferenceConstants {
         * 
         * @since 3.0
         */
-//     public final static String SPELLING_IGNORE_SENTENCE= ISpellCheckPreferenceKeys.SPELLING_IGNORE_SENTENCE;
+       public final static String SPELLING_IGNORE_SENTENCE= ISpellCheckPreferenceKeys.SPELLING_IGNORE_SENTENCE;
 
        /**
         * A named preference that controls whether upper case words should be
@@ -1527,7 +1658,7 @@ public class PreferenceConstants {
         * 
         * @since 3.0
         */
-//     public final static String SPELLING_IGNORE_UPPER= ISpellCheckPreferenceKeys.SPELLING_IGNORE_UPPER;
+       public final static String SPELLING_IGNORE_UPPER= ISpellCheckPreferenceKeys.SPELLING_IGNORE_UPPER;
 
        /**
         * A named preference that controls whether urls should be ignored during
@@ -1538,7 +1669,7 @@ public class PreferenceConstants {
         * 
         * @since 3.0
         */
-//     public final static String SPELLING_IGNORE_URLS= ISpellCheckPreferenceKeys.SPELLING_IGNORE_URLS;
+       public final static String SPELLING_IGNORE_URLS= ISpellCheckPreferenceKeys.SPELLING_IGNORE_URLS;
 
        /**
         * A named preference that controls the locale used for spell-checking.
@@ -1548,7 +1679,7 @@ public class PreferenceConstants {
         * 
         * @since 3.0
         */
-//     public final static String SPELLING_LOCALE= ISpellCheckPreferenceKeys.SPELLING_LOCALE;
+       public final static String SPELLING_LOCALE= ISpellCheckPreferenceKeys.SPELLING_LOCALE;
 
        /**
         * A named preference that controls the number of proposals offered during
@@ -1559,7 +1690,7 @@ public class PreferenceConstants {
         * 
         * @since 3.0
         */
-//     public final static String SPELLING_PROPOSAL_THRESHOLD= ISpellCheckPreferenceKeys.SPELLING_PROPOSAL_THRESHOLD;
+       public final static String SPELLING_PROPOSAL_THRESHOLD= ISpellCheckPreferenceKeys.SPELLING_PROPOSAL_THRESHOLD;
 
        /**
         * A named preference that specifies the workspace user dictionary.
@@ -1569,7 +1700,7 @@ public class PreferenceConstants {
         * 
         * @since 3.0
         */
-//     public final static String SPELLING_USER_DICTIONARY= ISpellCheckPreferenceKeys.SPELLING_USER_DICTIONARY;
+       public final static String SPELLING_USER_DICTIONARY= ISpellCheckPreferenceKeys.SPELLING_USER_DICTIONARY;
 
        /**
         * A named preference that specifies whether spelling dictionaries are available to content assist.
@@ -1579,7 +1710,7 @@ public class PreferenceConstants {
         * 
         * @since 3.0
         */
-//     public final static String SPELLING_ENABLE_CONTENTASSIST= ISpellCheckPreferenceKeys.SPELLING_ENABLE_CONTENTASSIST;
+       public final static String SPELLING_ENABLE_CONTENTASSIST= ISpellCheckPreferenceKeys.SPELLING_ENABLE_CONTENTASSIST;
 
        /**
         * A named preference that controls whether code snippets are formatted
@@ -2001,6 +2132,67 @@ public class PreferenceConstants {
         */
   public static final String EDITOR_TEXT_HOVER_MODIFIER_MASKS = "hoverModifierMasks"; //$NON-NLS-1$
 
+  /**
+        * A named preference that controls whether folding is enabled in the Java editor.
+        * <p>
+        * Value is of type <code>Boolean</code>.
+        * </p>
+        * 
+        * @since 3.0
+        */
+       public static final String EDITOR_FOLDING_ENABLED= "editor_folding_enabled"; //$NON-NLS-1$
+       
+       /**
+        * A named preference that stores the configured folding provider.
+        * <p>
+        * Value is of type <code>String</code>.
+        * </p>
+        * 
+        * @since 3.0
+        */
+       public static final String EDITOR_FOLDING_PROVIDER= "editor_folding_provider"; //$NON-NLS-1$
+       
+       /**
+        * A named preference that stores the value for Javadoc folding for the default folding provider.
+        * <p>
+        * Value is of type <code>Boolean</code>.
+        * </p>
+        * 
+        * @since 3.0
+        */
+       public static final String EDITOR_FOLDING_JAVADOC= "editor_folding_default_javadoc"; //$NON-NLS-1$
+
+       /**
+        * A named preference that stores the value for inner type folding for the default folding provider.
+        * <p>
+        * Value is of type <code>Boolean</code>.
+        * </p>
+        * 
+        * @since 3.0
+        */
+       public static final String EDITOR_FOLDING_INNERTYPES= "editor_folding_default_innertypes"; //$NON-NLS-1$
+
+       /**
+        * A named preference that stores the value for method folding for the default folding provider.
+        * <p>
+        * Value is of type <code>Boolean</code>.
+        * </p>
+        * 
+        * @since 3.0
+        */
+       public static final String EDITOR_FOLDING_METHODS= "editor_folding_default_methods"; //$NON-NLS-1$
+
+       /**
+        * A named preference that stores the value for imports folding for the default folding provider.
+        * <p>
+        * Value is of type <code>Boolean</code>.
+        * </p>
+        * 
+        * @since 3.0
+        */
+       public static final String EDITOR_FOLDING_IMPORTS= "editor_folding_default_imports"; //$NON-NLS-1$
+
+       
   public static void initializeDefaultValues(IPreferenceStore store) {
     store.setDefault(PreferenceConstants.EDITOR_SHOW_SEGMENTS, false);
 
@@ -2137,8 +2329,8 @@ public class PreferenceConstants {
     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_SINGLE_LINE_COMMENT_COLOR, new RGB(63, 127, 95));
     store.setDefault(PreferenceConstants.EDITOR_SINGLE_LINE_COMMENT_BOLD, false);
 
-    PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_JAVA_TAG_COLOR, new RGB(255, 0, 128));
-    store.setDefault(PreferenceConstants.EDITOR_JAVA_TAG_BOLD, true);
+    PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_PHP_TAG_COLOR, new RGB(255, 0, 128));
+    store.setDefault(PreferenceConstants.EDITOR_PHP_TAG_BOLD, true);
 
     PreferenceConverter.setDefault(store, PreferenceConstants.EDITOR_JAVA_KEYWORD_COLOR, new RGB(127, 0, 85));
     store.setDefault(PreferenceConstants.EDITOR_JAVA_KEYWORD_BOLD, true);
@@ -2193,16 +2385,21 @@ public class PreferenceConstants {
     store.setDefault(PreferenceConstants.CODEASSIST_INSERT_COMPLETION, true);
     store.setDefault(PreferenceConstants.CODEASSIST_FILL_ARGUMENT_NAMES, false);
     store.setDefault(PreferenceConstants.CODEASSIST_GUESS_METHOD_ARGUMENTS, true);
+    store.setDefault(PreferenceConstants.CODEASSIST_PREFIX_COMPLETION, false);
 
     store.setDefault(PreferenceConstants.EDITOR_SMART_HOME_END, true);
+       store.setDefault(PreferenceConstants.EDITOR_SUB_WORD_NAVIGATION, true);
     store.setDefault(PreferenceConstants.EDITOR_SMART_PASTE, true);
-    store.setDefault(PreferenceConstants.EDITOR_CLOSE_STRINGS_PHP, true);
+    store.setDefault(PreferenceConstants.EDITOR_CLOSE_STRINGS_DQ_PHP, true);
+    store.setDefault(PreferenceConstants.EDITOR_CLOSE_STRINGS_SQ_PHP, true);
     store.setDefault(PreferenceConstants.EDITOR_CLOSE_BRACKETS_PHP, true);
     store.setDefault(PreferenceConstants.EDITOR_CLOSE_BRACES, true);
     store.setDefault(PreferenceConstants.EDITOR_CLOSE_JAVADOCS, true);
     store.setDefault(PreferenceConstants.EDITOR_WRAP_STRINGS, true);
+    store.setDefault(PreferenceConstants.EDITOR_ESCAPE_STRINGS, false);
     store.setDefault(PreferenceConstants.EDITOR_ADD_JAVADOC_TAGS, true);
     store.setDefault(PreferenceConstants.EDITOR_FORMAT_JAVADOCS, true);
+       store.setDefault(PreferenceConstants.EDITOR_DISABLE_OVERWRITE_MODE, false);
 
     store.setDefault(PreferenceConstants.EDITOR_CLOSE_STRINGS_HTML, true);
     store.setDefault(PreferenceConstants.EDITOR_CLOSE_BRACKETS_HTML, true);
@@ -2219,11 +2416,34 @@ public class PreferenceConstants {
     String ctrl = Action.findModifierString(SWT.CTRL);
     store.setDefault(PreferenceConstants.EDITOR_TEXT_HOVER_MODIFIERS, "net.sourceforge.phpdt.ui.BestMatchHover;0;net.sourceforge.phpdt.ui.JavaSourceHover;" + ctrl); //$NON-NLS-1$
     store.setDefault(PreferenceConstants.EDITOR_TEXT_HOVER_MODIFIER_MASKS, "net.sourceforge.phpdt.ui.BestMatchHover;0;net.sourceforge.phpdt.ui.JavaSourceHover;" + SWT.CTRL); //$NON-NLS-1$
-
+    store.setDefault(PreferenceConstants.EDITOR_SHOW_TEXT_HOVER_AFFORDANCE, true);
+       
     store.setDefault(PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS, true);
     store.setDefault(PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER, ctrl);
     store.setDefault(PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER_MASK, SWT.CTRL);
 
+//  spell checking
+       store.setDefault(PreferenceConstants.SPELLING_CHECK_SPELLING, false);
+       store.setDefault(PreferenceConstants.SPELLING_LOCALE, SpellCheckEngine.getDefaultLocale().toString());
+       store.setDefault(PreferenceConstants.SPELLING_IGNORE_DIGITS, true);
+       store.setDefault(PreferenceConstants.SPELLING_IGNORE_MIXED, true);
+       store.setDefault(PreferenceConstants.SPELLING_IGNORE_SENTENCE, true);
+       store.setDefault(PreferenceConstants.SPELLING_IGNORE_UPPER, true);
+       store.setDefault(PreferenceConstants.SPELLING_IGNORE_URLS, true);
+       store.setDefault(PreferenceConstants.SPELLING_USER_DICTIONARY, ""); //$NON-NLS-1$
+       store.setDefault(PreferenceConstants.SPELLING_PROPOSAL_THRESHOLD, 20);
+       store.setDefault(PreferenceConstants.SPELLING_ENABLE_CONTENTASSIST, false);
+       
+       // folding
+       store.setDefault(PreferenceConstants.EDITOR_FOLDING_ENABLED, true);
+       store.setDefault(PreferenceConstants.EDITOR_FOLDING_PROVIDER,  "net.sourceforge.phpdt.ui.text.defaultFoldingProvider"); //$NON-NLS-1$
+       store.setDefault(PreferenceConstants.EDITOR_FOLDING_JAVADOC, true);
+       store.setDefault(PreferenceConstants.EDITOR_FOLDING_INNERTYPES, true);
+       store.setDefault(PreferenceConstants.EDITOR_FOLDING_METHODS, false);
+       store.setDefault(PreferenceConstants.EDITOR_FOLDING_IMPORTS, false);
+
+       store.setDefault(PreferenceConstants.EDITOR_SMART_BACKSPACE, true);
+       
     // do more complicated stuff
     // NewJavaProjectPreferencePage.initDefaults(store);       
   }