diff options
author | Thomas Schindl | 2010-06-08 20:04:36 +0000 |
---|---|---|
committer | Thomas Schindl | 2010-06-08 20:04:36 +0000 |
commit | 0c5c6f69c419c2ac56fcf8fc27d398c602a66b4d (patch) | |
tree | 7e462b1539986378ef6cb245acf25ec652269d29 | |
parent | f964a8d8b4aa562c2bf65347436bf2f1db5ff4d0 (diff) | |
download | org.eclipse.e4.tools-0c5c6f69c419c2ac56fcf8fc27d398c602a66b4d.tar.gz org.eclipse.e4.tools-0c5c6f69c419c2ac56fcf8fc27d398c602a66b4d.tar.xz org.eclipse.e4.tools-0c5c6f69c419c2ac56fcf8fc27d398c602a66b4d.zip |
Bug 304584 - [Tooling] Implement Workbench-Model-Tooling
* using new Focus-Annotation Support
4 files changed, 20 insertions, 11 deletions
diff --git a/bundles/org.eclipse.e4.tools.compat/src/org/eclipse/e4/tools/compat/parts/DIEditorPart.java b/bundles/org.eclipse.e4.tools.compat/src/org/eclipse/e4/tools/compat/parts/DIEditorPart.java index cd805dd0..dc711b9e 100644 --- a/bundles/org.eclipse.e4.tools.compat/src/org/eclipse/e4/tools/compat/parts/DIEditorPart.java +++ b/bundles/org.eclipse.e4.tools.compat/src/org/eclipse/e4/tools/compat/parts/DIEditorPart.java @@ -16,6 +16,7 @@ import org.eclipse.e4.core.contexts.ContextInjectionFactory; import org.eclipse.e4.core.contexts.IEclipseContext; import org.eclipse.e4.tools.compat.internal.PartHelper; import org.eclipse.e4.tools.services.IDirtyProviderService; +import org.eclipse.e4.ui.di.Focus; import org.eclipse.e4.ui.di.Persist; import org.eclipse.swt.widgets.Composite; import org.eclipse.ui.IEditorInput; @@ -89,12 +90,10 @@ public abstract class DIEditorPart<C> extends EditorPart implements IDirtyProvid return dirtyState; } -//FIXME Once we have an @Focus we can implement it -// @Override -// public void setFocus() { -// // TODO Auto-generated method stub -// -// } + @Override + public void setFocus() { + ContextInjectionFactory.invoke(component, Focus.class, context); + } @Override public void dispose() { diff --git a/bundles/org.eclipse.e4.tools.compat/src/org/eclipse/e4/tools/compat/parts/DIViewPart.java b/bundles/org.eclipse.e4.tools.compat/src/org/eclipse/e4/tools/compat/parts/DIViewPart.java index ac5fe132..46a29f69 100644 --- a/bundles/org.eclipse.e4.tools.compat/src/org/eclipse/e4/tools/compat/parts/DIViewPart.java +++ b/bundles/org.eclipse.e4.tools.compat/src/org/eclipse/e4/tools/compat/parts/DIViewPart.java @@ -10,8 +10,11 @@ ******************************************************************************/ package org.eclipse.e4.tools.compat.parts; +import org.eclipse.e4.core.contexts.ContextInjectionFactory; import org.eclipse.e4.core.contexts.IEclipseContext; +import org.eclipse.e4.core.di.InjectionException; import org.eclipse.e4.tools.compat.internal.PartHelper; +import org.eclipse.e4.ui.di.Focus; import org.eclipse.swt.widgets.Composite; import org.eclipse.ui.IViewPart; import org.eclipse.ui.IViewSite; @@ -49,4 +52,13 @@ public abstract class DIViewPart<C> extends ViewPart { public C getComponent() { return component; } + + @Override + public void setFocus() { + try { + ContextInjectionFactory.invoke(component, Focus.class, context); + } catch (InjectionException e) { + // TODO: handle exception + } + } }
\ No newline at end of file diff --git a/bundles/org.eclipse.e4.tools.emf.editor3x/src/org/eclipse/e4/tools/emf/editor3x/E4WorkbenchModelEditor.java b/bundles/org.eclipse.e4.tools.emf.editor3x/src/org/eclipse/e4/tools/emf/editor3x/E4WorkbenchModelEditor.java index a9544e07..3484bed5 100644 --- a/bundles/org.eclipse.e4.tools.emf.editor3x/src/org/eclipse/e4/tools/emf/editor3x/E4WorkbenchModelEditor.java +++ b/bundles/org.eclipse.e4.tools.emf.editor3x/src/org/eclipse/e4/tools/emf/editor3x/E4WorkbenchModelEditor.java @@ -19,9 +19,4 @@ public class E4WorkbenchModelEditor extends DIEditorPart<ApplicationModelEditor> public E4WorkbenchModelEditor() { super(ApplicationModelEditor.class); } - - @Override - public void setFocus() { - getComponent().setFocus(); - } } 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 cfec8245..d46780ef 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 @@ -10,6 +10,8 @@ ******************************************************************************/ package org.eclipse.e4.tools.emf.ui.internal.common; +import org.eclipse.e4.ui.di.Focus; + import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; @@ -499,6 +501,7 @@ public class ModelEditor { } } + @Focus public void setFocus() { viewer.getControl().setFocus(); } |