Bug 418125 - [e4] Reflective editors do not include scrollbars when the content is too large
diff --git a/extra/org.eclipse.emf.ecp.application.e4/src/org/eclipse/emf/ecp/e4/editor/ECPE4Editor.java b/extra/org.eclipse.emf.ecp.application.e4/src/org/eclipse/emf/ecp/e4/editor/ECPE4Editor.java
index b8ae938..50acbe6 100644
--- a/extra/org.eclipse.emf.ecp.application.e4/src/org/eclipse/emf/ecp/e4/editor/ECPE4Editor.java
+++ b/extra/org.eclipse.emf.ecp.application.e4/src/org/eclipse/emf/ecp/e4/editor/ECPE4Editor.java
@@ -1,37 +1,41 @@
package org.eclipse.emf.ecp.e4.editor;
import javax.annotation.PostConstruct;
-import javax.inject.Inject;
import javax.inject.Named;
import org.eclipse.e4.core.di.annotations.Optional;
import org.eclipse.e4.ui.services.IServiceConstants;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecp.core.ECPProject;
-import org.eclipse.emf.ecp.core.ECPProjectManager;
import org.eclipse.emf.ecp.core.util.ECPUtil;
import org.eclipse.emf.ecp.edit.ECPEditorContext;
import org.eclipse.emf.ecp.editor.EditorFactory;
import org.eclipse.emf.ecp.editor.IEditorCompositeProvider;
import org.eclipse.emf.ecp.explorereditorbridge.internal.EditorContext;
import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.ScrolledComposite;
import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
public class ECPE4Editor {
- public ECPE4Editor(){
-
+ public ECPE4Editor() {
+
}
-
+
@PostConstruct
- public void construct(Composite composite,@Named(IServiceConstants.ACTIVE_SELECTION) @Optional EObject modelElement){
-// IEditorCompositeProvider compositeProvider=EditorFactory.INSTANCE.getEditorComposite(modelElementContext);
-// Composite editorComposite=compositeProvider.createUI(composite);
- if(modelElement==null)
+ public void construct(Composite composite, @Named(IServiceConstants.ACTIVE_SELECTION) @Optional EObject modelElement) {
+ // IEditorCompositeProvider compositeProvider=EditorFactory.INSTANCE.getEditorComposite(modelElementContext);
+ // Composite editorComposite=compositeProvider.createUI(composite);
+ if (modelElement == null)
return;
- ECPEditorContext editorContext=new EditorContext(modelElement, ECPUtil.getECPProjectManager().getProject(modelElement), composite.getShell());
+ ECPEditorContext editorContext = new EditorContext(modelElement, ECPUtil.getECPProjectManager().getProject(
+ modelElement), composite.getShell());
IEditorCompositeProvider editorPageContent = EditorFactory.INSTANCE.getEditorComposite(editorContext);
- editorPageContent.createUI(composite);
+ ScrolledComposite sc = new ScrolledComposite(composite, SWT.V_SCROLL|SWT.H_SCROLL);
+
+ Composite createUI = editorPageContent.createUI(sc);
+ sc.setExpandHorizontal(true);
+ sc.setExpandVertical(true);
+ sc.setContent(createUI);
+ sc.setMinSize(createUI.computeSize(SWT.DEFAULT, SWT.DEFAULT));
}
}