-/*******************************************************************************\r
- * Copyright (c) 2007, 2010 Association for Decentralized Information Management\r
- * in Industry THTH ry.\r
- * All rights reserved. This program and the accompanying materials\r
- * are made available under the terms of the Eclipse Public License v1.0\r
- * which accompanies this distribution, and is available at\r
- * http://www.eclipse.org/legal/epl-v10.html\r
- *\r
- * Contributors:\r
- * VTT Technical Research Centre of Finland - initial API and implementation\r
- *******************************************************************************/\r
-package org.simantics.ui;\r
-\r
-import org.eclipse.core.runtime.CoreException;\r
-import org.eclipse.core.runtime.IConfigurationElement;\r
-import org.simantics.db.exception.DatabaseException;\r
-import org.simantics.utils.ui.ExceptionUtils;\r
-\r
-public class DoubleClickExtension implements IDoubleClickExtension {\r
-\r
- /**\r
- * A fallback action for replacing {@link #cachedAction} if action\r
- * instantiation fails.\r
- */\r
- private static final IDoubleClickAction NO_ACTION = new IDoubleClickAction() {\r
- @Override\r
- public void doubleClickEvent(DoubleClickEvent e) throws DatabaseException {\r
- }\r
- };\r
-\r
- private final IConfigurationElement config;\r
-\r
- private final String name;\r
-\r
- private final double priority;\r
-\r
- private IDoubleClickAction cachedAction;\r
-\r
- DoubleClickExtension(IConfigurationElement config, String name, double priority) {\r
- this.config = config;\r
- this.name = name;\r
- this.priority = priority;\r
- }\r
-\r
- @Override\r
- public String getName() {\r
- return name;\r
- }\r
-\r
- @Override\r
- public double getPriority() {\r
- return priority;\r
- }\r
-\r
- @Override\r
- public synchronized IDoubleClickAction getAction() {\r
- if (cachedAction == null) {\r
- try {\r
- cachedAction = (IDoubleClickAction) config.createExecutableExtension("class");\r
- } catch (CoreException e) {\r
- ExceptionUtils.logError("Failed to instantiate " + config.getName()\r
- + " extension with name \"" + config.getAttribute("name") + "\": "\r
- + e.getMessage(), e);\r
- // This prevents informing of an error in the extension.\r
- cachedAction = NO_ACTION;\r
- }\r
- }\r
- return cachedAction;\r
- }\r
-\r
- @Override\r
- public String toString() {\r
- return "DoubleClickExtension [name=" + name + ", class=" + config.getAttribute("class") + ", priority=" + priority + "]";\r
- }\r
-\r
-}\r
+/*******************************************************************************
+ * Copyright (c) 2007, 2010 Association for Decentralized Information Management
+ * in Industry THTH ry.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * VTT Technical Research Centre of Finland - initial API and implementation
+ *******************************************************************************/
+package org.simantics.ui;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.simantics.db.exception.DatabaseException;
+import org.simantics.utils.ui.ExceptionUtils;
+
+public class DoubleClickExtension implements IDoubleClickExtension {
+
+ /**
+ * A fallback action for replacing {@link #cachedAction} if action
+ * instantiation fails.
+ */
+ private static final IDoubleClickAction NO_ACTION = new IDoubleClickAction() {
+ @Override
+ public void doubleClickEvent(DoubleClickEvent e) throws DatabaseException {
+ }
+ };
+
+ private final IConfigurationElement config;
+
+ private final String name;
+
+ private final double priority;
+
+ private IDoubleClickAction cachedAction;
+
+ DoubleClickExtension(IConfigurationElement config, String name, double priority) {
+ this.config = config;
+ this.name = name;
+ this.priority = priority;
+ }
+
+ @Override
+ public String getName() {
+ return name;
+ }
+
+ @Override
+ public double getPriority() {
+ return priority;
+ }
+
+ @Override
+ public synchronized IDoubleClickAction getAction() {
+ if (cachedAction == null) {
+ try {
+ cachedAction = (IDoubleClickAction) config.createExecutableExtension("class");
+ } catch (CoreException e) {
+ ExceptionUtils.logError("Failed to instantiate " + config.getName()
+ + " extension with name \"" + config.getAttribute("name") + "\": "
+ + e.getMessage(), e);
+ // This prevents informing of an error in the extension.
+ cachedAction = NO_ACTION;
+ }
+ }
+ return cachedAction;
+ }
+
+ @Override
+ public String toString() {
+ return "DoubleClickExtension [name=" + name + ", class=" + config.getAttribute("class") + ", priority=" + priority + "]";
+ }
+
+}