import java.io.InputStream;
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Enumeration;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import net.sourceforge.phpdt.core.JavaCore;
import net.sourceforge.phpdt.core.WorkingCopyOwner;
import net.sourceforge.phpdt.externaltools.internal.model.ColorManager;
-import net.sourceforge.phpdt.externaltools.internal.model.ExternalToolsPlugin;
import net.sourceforge.phpdt.internal.core.BatchOperation;
import net.sourceforge.phpdt.internal.core.JavaModelManager;
import net.sourceforge.phpdt.internal.core.util.Util;
* The id of the PHP plugin (value <code>"net.sourceforge.phpeclipse"</code>).
*/
public static final String PLUGIN_ID = "net.sourceforge.phpeclipse"; //$NON-NLS-1$
+ public static final String EDITOR_ID = PHPeclipsePlugin.PLUGIN_ID+".PHPUnitEditor";
+ public static final String ID_PERSPECTIVE = "net.sourceforge.phpeclipse.PHPPerspective"; //$NON-NLS-1$
IWorkspace w;
/**
* The key to store customized templates.
- *
+ *
* @since 3.0
*/
private static final String TEMPLATES_KEY = "net.sourceforge.phpdt.ui.text.custom_templates"; //$NON-NLS-1$
/**
* The key to store customized code templates.
- *
+ *
* @since 3.0
*/
private static final String CODE_TEMPLATES_KEY = "net.sourceforge.phpdt.ui.text.custom_code_templates"; //$NON-NLS-1$
/**
* The key to store whether the legacy templates have been migrated
- *
+ *
* @since 3.0
*/
// private static final String TEMPLATES_MIGRATION_KEY= "net.sourceforge.phpdt.ui.text.templates_migrated"; //$NON-NLS-1$
/**
* The key to store whether the legacy code templates have been migrated
- *
+ *
* @since 3.0
*/
// private static final String CODE_TEMPLATES_MIGRATION_KEY= "net.sourceforge.phpdt.ui.text.code_templates_migrated";
// //$NON-NLS-1$
- private static ExternalToolsPlugin externalTools;
+// private static ExternalToolsPlugin externalTools;
/**
* The Java virtual machine that we are running on.
/**
* The template context type registry for the java editor.
- *
+ *
* @since 3.0
*/
private ContextTypeRegistry fContextTypeRegistry;
/**
* The code template context type registry for the java editor.
- *
+ *
* @since 3.0
*/
private ContextTypeRegistry fCodeTemplateContextTypeRegistry;
/**
* The template store for the java editor.
- *
+ *
* @since 3.0
*/
private TemplateStore fTemplateStore;
/**
* The coded template store for the java editor.
- *
+ *
* @since 3.0
*/
private TemplateStore fCodeTemplateStore;
/**
* Property change listener on this plugin's preference store.
- *
+ *
* @since 3.0
*/
// private IPropertyChangeListener fPropertyChangeListener;
/**
* The combined preference store.
- *
+ *
* @since 3.0
*/
private IPreferenceStore fCombinedPreferenceStore;
/**
* The extension point registry for the <code>net.sourceforge.phpdt.ui.javaFoldingStructureProvider</code> extension point.
- *
+ *
* @since 3.0
*/
private JavaFoldingStructureProviderRegistry fFoldingStructureProviderRegistry;
/**
* Mockup preference store for firing events and registering listeners on project setting changes. FIXME: Temporary solution.
- *
+ *
* @since 3.0
*/
private MockupPreferenceStore fMockupPreferenceStore;
public PHPeclipsePlugin(IPluginDescriptor descriptor) {
super(descriptor);
plugin = this;
- externalTools = new ExternalToolsPlugin();
+// externalTools = new ExternalToolsPlugin();
// try {
// resourceBundle =
// }
/**
* Returns all Java editor text hovers contributed to the workbench.
- *
+ *
* @return an array of JavaEditorTextHoverDescriptor
* @since 2.1
*/
* <p>
* This will force a rebuild of the descriptors the next time a client asks for them.
* </p>
- *
+ *
* @return an array of JavaEditorTextHoverDescriptor
* @since 2.1
*/
/**
* Returns an array of all editors that have an unsaved content. If the identical content is presented in more than one editor,
* only one of those editor parts is part of the result.
- *
+ *
* @return an array of all dirty editor parts.
*/
public static IEditorPart[] getDirtyEditors() {
getDefault().getLog().log(status);
}
- public static void log(Throwable e) {
- log(new Status(IStatus.ERROR, PLUGIN_ID, IStatus.ERROR, "PHPeclipsePlugin.internalErrorOccurred", e)); //$NON-NLS-1$
+ public static void log(Throwable t) {
+ log(error(t));
+ }
+
+ public static void log(String message, Throwable t) {
+ log(error(message, t));
}
public static void logErrorMessage(String message) {
log(new Status(IStatus.ERROR, getPluginId(), IJavaStatusConstants.INTERNAL_ERROR, message, null));
}
+ public static IStatus error(Throwable t) {
+ return error("PHPeclipsePlugin.internalErrorOccurred", t); //$NON-NLS-1$
+ }
+
+ public static IStatus error(String message, Throwable t) {
+ return new Status(IStatus.ERROR, PLUGIN_ID, IStatus.ERROR, message, t);
+ }
+
// private static void setJVM() {
// String osName = System.getProperty("os.name");
// if (osName.startsWith("Mac OS")) {
/**
* Get the identifier index manager for the given project
- *
+ *
* @param iProject
* the current project
* @return
IPath path = iProject.getWorkingLocation(PHPeclipsePlugin.PLUGIN_ID);
path = path.append("project.index");
String indexFilename = path.toString();
- // System.out.println(indexFilename);
+// try {
+// IdentDB db = IdentDB.getInstance();
+// } catch (ClassNotFoundException e) {
+// e.printStackTrace();
+// } catch (SQLException e) {
+// e.printStackTrace();
+// }
IdentifierIndexManager indexManager = (IdentifierIndexManager) fIndexManagerMap.get(indexFilename);
if (indexManager == null) {
indexManager = new IdentifierIndexManager(indexFilename);
String operatingSystem = Platform.getOS();
// maxosx, linux, solaris, win32,...
try {
- InputStream is = getDefault().openStream(new Path("prefs/default_" + operatingSystem + ".properties"));
+ InputStream is = getDefault().openStream(
+ new Path("prefs/default_" + operatingSystem + ".properties"));
PropertyResourceBundle resourceBundle = new PropertyResourceBundle(is);
-
- store.setDefault(PHP_RUN_PREF, resourceBundle.getString(PHP_RUN_PREF));
- store.setDefault(EXTERNAL_PARSER_PREF, resourceBundle.getString(EXTERNAL_PARSER_PREF));
- store.setDefault(MYSQL_RUN_PREF, resourceBundle.getString(MYSQL_RUN_PREF));
- store.setDefault(APACHE_RUN_PREF, resourceBundle.getString(APACHE_RUN_PREF));
-
- store.setDefault(MYSQL_PREF, resourceBundle.getString(MYSQL_PREF));
- store.setDefault(APACHE_START_PREF, resourceBundle.getString(APACHE_START_PREF));
- store.setDefault(APACHE_STOP_PREF, resourceBundle.getString(APACHE_STOP_PREF));
- store.setDefault(APACHE_RESTART_PREF, resourceBundle.getString(APACHE_RESTART_PREF));
- store.setDefault(MYSQL_START_BACKGROUND, resourceBundle.getString(MYSQL_START_BACKGROUND));
- store.setDefault(APACHE_START_BACKGROUND, resourceBundle.getString(APACHE_START_BACKGROUND));
- store.setDefault(APACHE_STOP_BACKGROUND, resourceBundle.getString(APACHE_STOP_BACKGROUND));
- store.setDefault(APACHE_RESTART_BACKGROUND, resourceBundle.getString(APACHE_RESTART_BACKGROUND));
+ Enumeration enum = resourceBundle.getKeys();
+ String key;
+ while (enum.hasMoreElements()) {
+ key = (String)enum.nextElement();
+ store.setDefault(key, resourceBundle.getString( key ));
+ }
} catch (Exception e) {
// no default properties found
if (operatingSystem.equals(Platform.OS_WIN32)) {
- store.setDefault(PHP_RUN_PREF, "c:\\apache\\php\\php.exe");
- store.setDefault(EXTERNAL_PARSER_PREF, "c:\\apache\\php\\php -l -f {0}");
- store.setDefault(MYSQL_RUN_PREF, "c:\\apache\\mysql\\bin\\mysqld-nt.exe");
- store.setDefault(APACHE_RUN_PREF, "c:\\apache\\apache.exe");
+// store.setDefault(PHP_RUN_PREF, "c:\\apache\\php\\php.exe");
+// store.setDefault(EXTERNAL_PARSER_PREF, "c:\\apache\\php\\php -l -f {0}");
+// store.setDefault(MYSQL_RUN_PREF, "c:\\apache\\mysql\\bin\\mysqld-nt.exe");
+// store.setDefault(APACHE_RUN_PREF, "c:\\apache\\apache.exe");
+// store.setDefault(XAMPP_START_PREF, "c:\\xampp\\xampp_start.exe");
+// store.setDefault(XAMPP_STOP_PREF, "c:\\xampp\\xampp_stop.exe");
+// store.setDefault(
+// ETC_HOSTS_PATH_PREF, "c:\\windows\\system32\\drivers\\etc\\hosts");
} else {
- store.setDefault(PHP_RUN_PREF, "/apache/php/php");
- store.setDefault(EXTERNAL_PARSER_PREF, "/apache/php/php -l -f {0}");
- store.setDefault(MYSQL_RUN_PREF, "/apache/mysql/bin/mysqld");
- store.setDefault(APACHE_RUN_PREF, "/apache/apache");
+// store.setDefault(PHP_RUN_PREF, "/apache/php/php");
+// store.setDefault(EXTERNAL_PARSER_PREF, "/apache/php/php -l -f {0}");
+// store.setDefault(MYSQL_RUN_PREF, "/apache/mysql/bin/mysqld");
+// store.setDefault(APACHE_RUN_PREF, "/apache/apache");
+// store.setDefault(XAMPP_START_PREF, "xamp/xampp_start");
+// store.setDefault(XAMPP_STOP_PREF, "xampp/xampp_stop");
}
- store.setDefault(MYSQL_PREF, "--standalone");
- store.setDefault(APACHE_START_PREF, "-c \"DocumentRoot \"{0}\"\"");
- store.setDefault(APACHE_STOP_PREF, "-k shutdown");
- store.setDefault(APACHE_RESTART_PREF, "-k restart");
- store.setDefault(MYSQL_START_BACKGROUND, "true");
- store.setDefault(APACHE_START_BACKGROUND, "true");
- store.setDefault(APACHE_STOP_BACKGROUND, "true");
- store.setDefault(APACHE_RESTART_BACKGROUND, "true");
+// store.setDefault(MYSQL_PREF, "--standalone");
+// store.setDefault(APACHE_START_PREF, "-c \"DocumentRoot \"{0}\"\"");
+// store.setDefault(APACHE_STOP_PREF, "-k shutdown");
+// store.setDefault(APACHE_RESTART_PREF, "-k restart");
+// store.setDefault(MYSQL_START_BACKGROUND, "true");
+// store.setDefault(APACHE_START_BACKGROUND, "true");
+// store.setDefault(APACHE_STOP_BACKGROUND, "true");
+// store.setDefault(APACHE_RESTART_BACKGROUND, "true");
}
- store.setDefault(SHOW_OUTPUT_IN_CONSOLE, "true");
- store.setDefault(PHP_OBFUSCATOR_DEFAULT, "c:\\temp");
- if (operatingSystem.equals(Platform.OS_WIN32)) {
+// store.setDefault(SHOW_OUTPUT_IN_CONSOLE, "true");
+// store.setDefault(PHP_OBFUSCATOR_DEFAULT, "c:\\temp");
+// if (operatingSystem.equals(Platform.OS_WIN32)) {
// store.setDefault(EXTERNAL_BROWSER_PREF, "rundll32 url.dll,FileProtocolHandler {0}");
- } else if (operatingSystem.equals(Platform.OS_MACOSX)) {
- store.setDefault(PHP_OBFUSCATOR_DEFAULT, "/tmp");
+// } else if (operatingSystem.equals(Platform.OS_MACOSX)) {
+// store.setDefault(PHP_OBFUSCATOR_DEFAULT, "/tmp");
// TODO How do we start Safari on Mac OS X ?
// store.setDefault(EXTERNAL_BROWSER_PREF, "netscape {0}");
- } else {
- store.setDefault(PHP_OBFUSCATOR_DEFAULT, "/tmp");
+// } else {
+// store.setDefault(PHP_OBFUSCATOR_DEFAULT, "/tmp");
// store.setDefault(EXTERNAL_BROWSER_PREF, "netscape {0}");
- }
+// }
+
+// store.setDefault(PHP_EXTENSION_PREFS, "php,php3,php4,php5,phtml,inc,module,class");
- store.setDefault(PHP_EXTENSION_PREFS, "php,php3,php4,php5,phtml,inc,module,class");
-
// store.setDefault(PHP_PARSER_DEFAULT, PHP_EXTERNAL_PARSER);
// store.setDefault(PHP_INTERNAL_PARSER, "false");
// store.setDefault(PHP_EXTERNAL_PARSER, "true");
// php syntax highlighting
store.setDefault(PHP_USERDEF_XMLFILE, "");
//assume there is none chooA
- PreferenceConverter.setDefault(store, PHP_MULTILINE_COMMENT, PHPColorProvider.MULTI_LINE_COMMENT);
- PreferenceConverter.setDefault(store, PHP_SINGLELINE_COMMENT, PHPColorProvider.SINGLE_LINE_COMMENT);
+// PreferenceConverter.setDefault(store, PHP_MULTILINE_COMMENT, PHPColorProvider.MULTI_LINE_COMMENT);
+// PreferenceConverter.setDefault(store, PHP_SINGLELINE_COMMENT, PHPColorProvider.SINGLE_LINE_COMMENT);
PreferenceConverter.setDefault(store, PHP_TAG, PHPColorProvider.TAG);
PreferenceConverter.setDefault(store, PHP_KEYWORD, PHPColorProvider.KEYWORD);
PreferenceConverter.setDefault(store, PHP_VARIABLE, PHPColorProvider.VARIABLE);
+ PreferenceConverter.setDefault(store, PHP_VARIABLE_DOLLAR, PHPColorProvider.VARIABLE);
PreferenceConverter.setDefault(store, PHP_FUNCTIONNAME, PHPColorProvider.FUNCTION_NAME);
PreferenceConverter.setDefault(store, PHP_CONSTANT, PHPColorProvider.CONSTANT);
PreferenceConverter.setDefault(store, PHP_TYPE, PHPColorProvider.TYPE);
- PreferenceConverter.setDefault(store, PHP_STRING, PHPColorProvider.STRING);
+// PreferenceConverter.setDefault(store, PHP_STRING_DQ, PHPColorProvider.STRING_DQ);
+// store.setDefault(PHP_STRING_BOLD_DQ, true);
+// PreferenceConverter.setDefault(store, PHP_STRING_SQ, PHPColorProvider.STRING_SQ);
PreferenceConverter.setDefault(store, PHP_DEFAULT, PHPColorProvider.DEFAULT);
PreferenceConverter.setDefault(store, PHPDOC_KEYWORD, PHPColorProvider.PHPDOC_KEYWORD);
PreferenceConverter.setDefault(store, PHPDOC_TAG, PHPColorProvider.PHPDOC_TAG);
new PHPSyntaxRdr();
JavaCore.initializeDefaultPluginPreferences();
PreferenceConstants.initializeDefaultValues(store);
- externalTools.initializeDefaultPreferences(store);
+// externalTools.initializeDefaultPreferences(store);
MarkerAnnotationPreferences.initializeDefaultValues(store);
}
/**
* Open a file in the Workbench that may or may not exist in the workspace. Must be run on the UI thread.
- *
+ *
* @param filename
* @throws CoreException
*/
/**
* Open a file in the Workbench that may or may not exist in the workspace. Must be run on the UI thread.
- *
+ *
* @param filename
* @param line
* @throws CoreException
/**
* Open a file in the Workbench that may or may not exist in the workspace. Must be run on the UI thread.
- *
+ *
* @param filename
* @param offset
* @throws CoreException
/**
* Returns a combined preference store, this store is read-only.
- *
+ *
* @return the combined preference store
- *
+ *
* @since 3.0
*/
public IPreferenceStore getCombinedPreferenceStore() {
/**
* Returns the registry of the extensions to the <code>net.sourceforge.phpdt.ui.javaFoldingStructureProvider</code> extension
* point.
- *
+ *
* @return the registry of contributed <code>IJavaFoldingStructureProvider</code>
* @since 3.0
*/
* <p>
* If this method is called in the dynamic scope of another such call, this method simply runs the action.
* </p>
- *
+ *
* @param action
* the action to perform
* @param monitor
* The supplied scheduling rule is used to determine whether this operation can be run simultaneously with workspace changes in
* other threads. See <code>IWorkspace.run(...)</code> for more details.
* </p>
- *
+ *
* @param action
* the action to perform
* @param rule
/**
* Returns the template context type registry for the java plugin.
- *
+ *
* @return the template context type registry for the java plugin
* @since 3.0
*/
/**
* Returns the template store for the java editor templates.
- *
+ *
* @return the template store for the java editor templates
* @since 3.0
*/
/**
* Returns the template context type registry for the code generation templates.
- *
+ *
* @return the template context type registry for the code generation templates
* @since 3.0
*/
/**
* Returns the template store for the code generation templates.
- *
+ *
* @return the template store for the code generation templates
* @since 3.0
*/