]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.diagram.profile/src/org/simantics/diagram/profile/view/ActiveRuntimeDiagramInputSource.java
Allow Issues and Profiles to be used on non standard diagram viewers
[simantics/platform.git] / bundles / org.simantics.diagram.profile / src / org / simantics / diagram / profile / view / ActiveRuntimeDiagramInputSource.java
index fb07993ac7894940a6fa522243595470a16837bb..be0b062ad3b8fdd5a3d911228092932997db3b86 100644 (file)
@@ -37,6 +37,7 @@ import org.simantics.db.common.request.UniqueRead;
 import org.simantics.db.exception.DatabaseException;
 import org.simantics.db.management.ISessionContext;
 import org.simantics.db.procedure.Procedure;
+import org.simantics.diagram.runtime.RuntimeDiagramManager;
 import org.simantics.diagram.stubs.DiagramResource;
 import org.simantics.utils.ObjectUtils;
 import org.simantics.utils.ui.SWTUtils;
@@ -170,7 +171,12 @@ public class ActiveRuntimeDiagramInputSource implements WorkbenchSessionContextI
     }
 
     protected void editorActivated(IEditorPart part) {
-        Resource resource = part.getAdapter(Resource.class); 
+        RuntimeDiagramManager rdm = part.getAdapter(RuntimeDiagramManager.class);
+        Resource resource = null;
+        if (rdm != null)
+            resource = rdm.getRuntimeDiagram();
+        if (resource == null)
+            resource = part.getAdapter(Resource.class); 
         lastInputResource = resource;
         if (ownerIsVisible) {
             testAndChangeInput(resource);