diff options
author | Sopot Cela | 2012-11-19 22:27:31 +0000 |
---|---|---|
committer | Sopot Cela | 2012-11-19 22:27:31 +0000 |
commit | de05a7643b9fd46599952af2839cb0c78db90bf8 (patch) | |
tree | 8083913c0638a34afe921710ac8059d77a67cb75 | |
parent | bdac1998be6a4b697da7d03afe6231aa82f919ec (diff) | |
download | org.eclipse.e4.tools-de05a7643b9fd46599952af2839cb0c78db90bf8.tar.gz org.eclipse.e4.tools-de05a7643b9fd46599952af2839cb0c78db90bf8.tar.xz org.eclipse.e4.tools-de05a7643b9fd46599952af2839cb0c78db90bf8.zip |
Bug 394247 - Default editor for unknown model elementsI20121120-2200
4 files changed, 51 insertions, 1 deletions
diff --git a/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/Messages.java b/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/Messages.java index 7439832e..c12d38c4 100644 --- a/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/Messages.java +++ b/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/Messages.java @@ -616,4 +616,6 @@ public class Messages { public String CommandWizard_ShellTitle; public String VWindowSharedElementsEditor_AddPartStack; + public String Special_UnknownElement; + public String Special_UnknownElement_Detail; }
\ No newline at end of file diff --git a/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/Messages.properties b/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/Messages.properties index b5c8cd0b..aee6827e 100644 --- a/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/Messages.properties +++ b/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/Messages.properties @@ -617,3 +617,5 @@ ObjectViewer_Script=Execute Script CommandWizard_ShellTitle=Command/Handler wizard +Special_UnknownElement=(unknown model element) +Special_UnknownElement_Detail= Use an extension point! diff --git a/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/ModelEditor.java b/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/ModelEditor.java index 698e119b..9b20b80f 100644 --- a/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/ModelEditor.java +++ b/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/ModelEditor.java @@ -65,6 +65,7 @@ import org.eclipse.e4.tools.emf.ui.internal.common.component.CategoryEditor; import org.eclipse.e4.tools.emf.ui.internal.common.component.CommandEditor; import org.eclipse.e4.tools.emf.ui.internal.common.component.CommandParameterEditor; import org.eclipse.e4.tools.emf.ui.internal.common.component.CoreExpressionEditor; +import org.eclipse.e4.tools.emf.ui.internal.common.component.DefaultEditor; import org.eclipse.e4.tools.emf.ui.internal.common.component.DirectMenuItemEditor; import org.eclipse.e4.tools.emf.ui.internal.common.component.DirectToolItemEditor; import org.eclipse.e4.tools.emf.ui.internal.common.component.HandledMenuItemEditor; @@ -526,7 +527,6 @@ public class ModelEditor { } } }); - viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { @@ -1093,6 +1093,8 @@ public class ModelEditor { return editor; } } + if (editor == null) + editor = ContextInjectionFactory.make(DefaultEditor.class, context); } return editor; } diff --git a/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/component/DefaultEditor.java b/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/component/DefaultEditor.java new file mode 100644 index 00000000..2691e269 --- /dev/null +++ b/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/component/DefaultEditor.java @@ -0,0 +1,44 @@ +package org.eclipse.e4.tools.emf.ui.internal.common.component;
+
+import org.eclipse.core.databinding.observable.list.IObservableList;
+import org.eclipse.e4.tools.emf.ui.common.component.AbstractComponentEditor;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+
+public class DefaultEditor extends AbstractComponentEditor {
+
+ @Override
+ public Image getImage(Object element, Display display) {
+ // no image
+ return null;
+ }
+
+ @Override
+ public String getLabel(Object element) {
+ return element.getClass().getInterfaces()[0].getSimpleName() + " " + Messages.Special_UnknownElement; //$NON-NLS-1$
+ }
+
+ @Override
+ public String getDetailLabel(Object element) {
+ return Messages.Special_UnknownElement_Detail;
+ }
+
+ @Override
+ public String getDescription(Object element) {
+ return null;
+ }
+
+ @Override
+ protected Composite doGetEditor(Composite parent, Object object) {
+ return new Composite(parent, SWT.NONE);
+ }
+
+ @Override
+ public IObservableList getChildList(Object element) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+}
|