package org.simantics.processeditor.handlers; import org.simantics.db.Graph; import org.simantics.db.Resource; import org.simantics.processeditor.Activator; import org.simantics.processeditor.ProcessResource; import org.simantics.proconf.ui.workbench.ResourceEditorInput; import org.simantics.proconf.ui.workbench.editor.SimpleEditorAdapter; import org.simantics.utils.ui.BundleUtils; import org.simantics.utils.ui.workbench.WorkbenchUtils; public class Plant3DEditorAdapter extends SimpleEditorAdapter { public Plant3DEditorAdapter() { super("PlantEditor", BundleUtils.getImageDescriptorFromPlugin(Activator.PLUGIN_ID, "icons/factory.png"), null,null,null); } @Override public boolean canHandle(Graph g, Resource r) { if(ProcessResource.plant3Dresource == null) return false; if(ProcessResource.plant3Dresource.Plant == null) return false; return g.isInstanceOf(r, ProcessResource.plant3Dresource.Plant); } @Override public void openEditor(Resource r) throws Exception { WorkbenchUtils.openEditor("org.simantics.proconf.processeditor.planteditor", new ResourceEditorInput("org.simantics.proconf.processeditor.planteditor",r)); } }