new Syntax Highlighting Preference Page (doesn't have an effect at the moment)
authorkhartlage <khartlage>
Wed, 27 Nov 2002 22:41:28 +0000 (22:41 +0000)
committerkhartlage <khartlage>
Wed, 27 Nov 2002 22:41:28 +0000 (22:41 +0000)
net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/IPreferenceConstants.java [new file with mode: 0644]
net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/PHPSyntaxPreferencePage.java [new file with mode: 0644]
net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/PHPeclipsePlugin.java

diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/IPreferenceConstants.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/IPreferenceConstants.java
new file mode 100644 (file)
index 0000000..f2cc73b
--- /dev/null
@@ -0,0 +1,58 @@
+/**********************************************************************
+Copyright (c) 2000, 2002 IBM Corp. and others.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Common Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/cpl-v10.html
+
+Contributors:
+    IBM Corporation - Initial implementation
+    Klaus Hartlage - www.eclipseproject.de
+**********************************************************************/
+package net.sourceforge.phpeclipse;
+
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+import net.sourceforge.phpeclipse.phpeditor.PHPDocumentProvider;
+import org.eclipse.core.resources.IWorkspace;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IPluginDescriptor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.MultiStatus;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Status;
+//import org.eclipse.jdt.internal.ui.JavaStatusConstants;
+//import org.eclipse.jdt.internal.ui.JavaUIMessages;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+
+/**
+ * The main plugin class to be used in the desktop.
+ */
+public interface IPreferenceConstants {
+       public static final String LOCALHOST_PREF = "_localhost";
+       public static final String DOCUMENTROOT_PREF = "_documentroot";
+       public static final String USE_EXTERNAL_BROWSER_PREF = "_use_external_browser";
+       public static final String EXTERNAL_BROWSER_PREF = "_external_browser";
+       public static final String MYSQL_PREF = "_my_sql";
+       public static final String APACHE_START_PREF = "_apache_start";
+       public static final String APACHE_STOP_PREF = "_apache_stop";
+       public static final String APACHE_RESTART_PREF = "_apache_restart";
+  public static final String SHOW_OUTPUT_IN_CONSOLE = "_sho_output_in_console";
+  public static final String EXTERNAL_PARSER_PREF = "_external_parser";
+
+  public static final String PHP_MULTILINE_COMMENT = "_php_multilineComment";
+  public static final String PHP_SINGLELINE_COMMENT = "_php_singlelineComment";
+  public static final String PHP_KEYWORD = "_php_keyword";
+  public static final String PHP_VARIABLE = "_php_variable";
+  public static final String PHP_FUNCTIONNAME = "_php_functionname";
+  public static final String PHP_STRING = "_php_string";
+  public static final String PHP_DEFAULT = "_php_default";
+  
+  
+}
\ No newline at end of file
diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/PHPSyntaxPreferencePage.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/PHPSyntaxPreferencePage.java
new file mode 100644 (file)
index 0000000..20a26f5
--- /dev/null
@@ -0,0 +1,62 @@
+/**********************************************************************
+Copyright (c) 2000, 2002 IBM Corp. and others.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Common Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/cpl-v10.html
+
+Contributors:
+    IBM Corporation - Initial implementation
+    Klaus Hartlage - www.eclipseproject.de
+**********************************************************************/
+package net.sourceforge.phpeclipse;
+
+import org.eclipse.jface.preference.BooleanFieldEditor;
+import org.eclipse.jface.preference.ColorFieldEditor;
+import org.eclipse.jface.preference.DirectoryFieldEditor;
+import org.eclipse.jface.preference.FieldEditorPreferencePage;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.jface.preference.StringFieldEditor;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPreferencePage;
+
+/**
+ * 
+ * @author khartlage
+ */
+public class PHPSyntaxPreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage, IPreferenceConstants {
+
+  public PHPSyntaxPreferencePage() {
+    super(FieldEditorPreferencePage.GRID);
+    //Initialize the preference store we wish to use
+    setPreferenceStore(PHPeclipsePlugin.getDefault().getPreferenceStore());
+  }
+
+  protected void createFieldEditors() {
+    final IPreferenceStore store = PHPeclipsePlugin.getDefault().getPreferenceStore();
+
+    ColorFieldEditor multilineComment =
+      new ColorFieldEditor(PHP_MULTILINE_COMMENT, "Multi-line comment:", this.getFieldEditorParent());
+    this.addField(multilineComment);
+    ColorFieldEditor singlelineComment =
+      new ColorFieldEditor(PHP_SINGLELINE_COMMENT, "Single-line comment:", this.getFieldEditorParent());
+    this.addField(singlelineComment);
+    ColorFieldEditor keyWords = new ColorFieldEditor(PHP_KEYWORD, "Keywords:", this.getFieldEditorParent());
+    this.addField(keyWords);
+    ColorFieldEditor variables = new ColorFieldEditor(PHP_VARIABLE, "Variables:", this.getFieldEditorParent());
+    this.addField(variables);
+    ColorFieldEditor types = new ColorFieldEditor(PHP_FUNCTIONNAME, "Types:", this.getFieldEditorParent());
+    this.addField(types);
+    ColorFieldEditor strings = new ColorFieldEditor(PHP_STRING, "Strings:", this.getFieldEditorParent());
+    this.addField(strings);
+    ColorFieldEditor others = new ColorFieldEditor(PHP_DEFAULT, "Others:", this.getFieldEditorParent());
+    this.addField(others);
+  }
+
+  /**
+   * @see IWorkbenchPreferencePage#init
+   */
+  public void init(IWorkbench workbench) {
+  }
+
+}
index 23d818c..b4b4e07 100644 (file)
@@ -15,17 +15,15 @@ import java.util.MissingResourceException;
 import java.util.ResourceBundle;
 
 import net.sourceforge.phpeclipse.phpeditor.PHPDocumentProvider;
+import net.sourceforge.phpeclipse.phpeditor.util.PHPColorProvider;
 import org.eclipse.core.resources.IWorkspace;
 import org.eclipse.core.resources.ResourcesPlugin;
 import org.eclipse.core.runtime.IPath;
 import org.eclipse.core.runtime.IPluginDescriptor;
 import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
 import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-//import org.eclipse.jdt.internal.ui.JavaStatusConstants;
-//import org.eclipse.jdt.internal.ui.JavaUIMessages;
 import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.jface.preference.PreferenceConverter;
 import org.eclipse.swt.widgets.Shell;
 import org.eclipse.ui.IWorkbenchPage;
 import org.eclipse.ui.IWorkbenchWindow;
@@ -34,17 +32,17 @@ import org.eclipse.ui.plugin.AbstractUIPlugin;
 /**
  * The main plugin class to be used in the desktop.
  */
-public class PHPeclipsePlugin extends AbstractUIPlugin {
-       public static final String LOCALHOST_PREF = "_localhost";
-       public static final String DOCUMENTROOT_PREF = "_documentroot";
-       public static final String USE_EXTERNAL_BROWSER_PREF = "_use_external_browser";
-       public static final String EXTERNAL_BROWSER_PREF = "_external_browser";
-       public static final String MYSQL_PREF = "_my_sql";
-       public static final String APACHE_START_PREF = "_apache_start";
-       public static final String APACHE_STOP_PREF = "_apache_stop";
-       public static final String APACHE_RESTART_PREF = "_apache_restart";
-  public static final String SHOW_OUTPUT_IN_CONSOLE = "_sho_output_in_console";
-  public static final String EXTERNAL_PARSER_PREF = "_external_parser";
+public class PHPeclipsePlugin extends AbstractUIPlugin implements IPreferenceConstants {
+//     public static final String LOCALHOST_PREF = "_localhost";
+//     public static final String DOCUMENTROOT_PREF = "_documentroot";
+//     public static final String USE_EXTERNAL_BROWSER_PREF = "_use_external_browser";
+//     public static final String EXTERNAL_BROWSER_PREF = "_external_browser";
+//     public static final String MYSQL_PREF = "_my_sql";
+//     public static final String APACHE_START_PREF = "_apache_start";
+//     public static final String APACHE_STOP_PREF = "_apache_stop";
+//     public static final String APACHE_RESTART_PREF = "_apache_restart";
+//  public static final String SHOW_OUTPUT_IN_CONSOLE = "_sho_output_in_console";
+//  public static final String EXTERNAL_PARSER_PREF = "_external_parser";
   
   /**
    * The id of the PHP plugin (value <code>"net.sourceforge.phpeclipse"</code>).
@@ -248,5 +246,15 @@ public class PHPeclipsePlugin extends AbstractUIPlugin {
                        store.setDefault(APACHE_RESTART_PREF, "/apache/apache -k restart");
       
                }
+    
+    // php syntax highlighting
+    PreferenceConverter.setDefault(store, PHP_MULTILINE_COMMENT, PHPColorProvider.MULTI_LINE_COMMENT);
+    PreferenceConverter.setDefault(store, PHP_SINGLELINE_COMMENT, PHPColorProvider.SINGLE_LINE_COMMENT);
+    PreferenceConverter.setDefault(store, PHP_KEYWORD, PHPColorProvider.KEYWORD);
+    PreferenceConverter.setDefault(store, PHP_VARIABLE, PHPColorProvider.VARIABLE);
+    PreferenceConverter.setDefault(store, PHP_FUNCTIONNAME, PHPColorProvider.FUNCTION_NAME);
+    PreferenceConverter.setDefault(store, PHP_STRING, PHPColorProvider.STRING);
+    PreferenceConverter.setDefault(store, PHP_DEFAULT, PHPColorProvider.DEFAULT);
+
        }
 }
\ No newline at end of file