package at.bestsolution.e4.ui.workbench.renderers.swing; import java.awt.Component; import javax.swing.JSplitPane; import org.eclipse.e4.ui.model.application.ui.MElementContainer; import org.eclipse.e4.ui.model.application.ui.MUIElement; import org.eclipse.e4.ui.model.application.ui.MUILabel; import org.eclipse.e4.ui.model.application.ui.basic.MPart; import org.eclipse.e4.ui.model.application.ui.basic.MPartSashContainer; import org.eclipse.e4.ui.model.application.ui.basic.MWindow; @SuppressWarnings("restriction") public class SashRenderer extends SwingPartRenderer { @Override public Object createWidget(MUIElement element, Object parent) { if( ! (element instanceof MPartSashContainer) ) { return null; } JSplitPane split = new JSplitPane(); return split; } @Override public void processContents(MElementContainer<MUIElement> container) { if( ! ((MUIElement)container instanceof MPartSashContainer) ) { return; } if( container.getChildren().size() == 2 ) { super.processContents(container); JSplitPane split = (JSplitPane) container.getWidget(); split.setLeftComponent((Component) container.getChildren().get(0).getWidget()); split.setRightComponent((Component) container.getChildren().get(1).getWidget()); } else { System.err.println("A sash has to have 2 children"); } } @Override protected Object getParentWidget(MUIElement element) { // TODO Auto-generated method stub return null; } @Override public void disposeWidget(MUIElement part) { // TODO Auto-generated method stub } @Override public void childRendered(MElementContainer<MUIElement> parentElement, MUIElement element) { // TODO Auto-generated method stub } @Override protected Object getImage(MUILabel element) { // TODO Auto-generated method stub return null; } @Override protected boolean requiresFocus(MPart element) { // TODO Auto-generated method stub return false; } }