X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.modeling.ui%2Fsrc%2Forg%2Fsimantics%2Fmodeling%2Fui%2Fhandlers%2Fe4%2FSyncCurrentTypicalInstanceWithTemplate.java;h=fb6b31382579bebdd62181170fbaa80092a1d30c;hp=9e58624803a8abfd559d230e17ffba77a62e40e0;hb=55d1e6f63df516019032ebf0c1e9c8c0495a619d;hpb=d924aa9e2691606e0bc8044cce01aff4abcc7bc9 diff --git a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/handlers/e4/SyncCurrentTypicalInstanceWithTemplate.java b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/handlers/e4/SyncCurrentTypicalInstanceWithTemplate.java index 9e5862480..fb6b31382 100644 --- a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/handlers/e4/SyncCurrentTypicalInstanceWithTemplate.java +++ b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/handlers/e4/SyncCurrentTypicalInstanceWithTemplate.java @@ -16,6 +16,7 @@ import org.simantics.db.Resource; import org.simantics.db.Session; import org.simantics.db.exception.DatabaseException; import org.simantics.modeling.typicals.SyncTypicalTemplatesToInstances; +import org.simantics.modeling.ui.diagramEditor.DiagramEditor; import org.simantics.modeling.ui.documents.OpenPlainTextDocumentAdapter; import org.simantics.modeling.ui.property.TypicalPropertyTester; import org.simantics.modeling.ui.typicals.RuleChooserDialog; @@ -40,12 +41,15 @@ public class SyncCurrentTypicalInstanceWithTemplate { // TODO: This is not good practice with E4 but an OK fallback for now activeEditor = WorkbenchUtils.getActiveEditor(); } - if (activeEditor == null) + if (activeEditor == null || (!(activeEditor instanceof DiagramEditor))) return false; if (DatabaseJob.inProgress()) return false; - IResourceEditorInput input = (IResourceEditorInput) activeEditor.getEditorInput(); - return TypicalPropertyTester.isTypicalInstanceEditor(Simantics.getSession(), input.getResource()); + if (activeEditor.getEditorInput() instanceof IResourceEditorInput) { + return TypicalPropertyTester.isTypicalInstanceEditor(activeEditor); + } else { + return false; + } } @Execute