package at.bestsolution.e4.ui.workbench.renderers.jfx; import javafx.scene.layout.BorderPane; import org.eclipse.e4.core.contexts.IEclipseContext; import org.eclipse.e4.core.services.contributions.IContributionFactory; 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; @SuppressWarnings("restriction") public class ContributedPartRenderer extends JFXPartRenderer { @Override public Object createWidget(MUIElement element) { BorderPane pane = new BorderPane(); if( element.getElementId() != null ) { pane.setId(element.getElementId()); } MPart part = (MPart) element; IEclipseContext localContext = part.getContext(); localContext.set(BorderPane.class, pane); IContributionFactory contributionFactory = (IContributionFactory) localContext .get(IContributionFactory.class.getName()); Object newPart = contributionFactory.create(part.getContributionURI(), localContext); part.setObject(newPart); return pane; } @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; } }