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%2FdiagramEditor%2FDiagramEditor.java;fp=bundles%2Forg.simantics.modeling.ui%2Fsrc%2Forg%2Fsimantics%2Fmodeling%2Fui%2FdiagramEditor%2FDiagramEditor.java;h=60dc7f5991854a62706aadde0157b4d71cc50e76;hp=7734ce7145f60dc20ba7b27c21a769a7b36ab17a;hb=d90a13d82876ecd36bd3a73c00c879d6619376d1;hpb=ef969b71e1a0b8eabe93444cabaaf4960e7d1459 diff --git a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/diagramEditor/DiagramEditor.java b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/diagramEditor/DiagramEditor.java index 7734ce714..60dc7f599 100644 --- a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/diagramEditor/DiagramEditor.java +++ b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/diagramEditor/DiagramEditor.java @@ -13,6 +13,7 @@ package org.simantics.modeling.ui.diagramEditor; import java.lang.reflect.Constructor; +import java.util.Set; import java.util.function.Predicate; import org.eclipse.core.runtime.IConfigurationElement; @@ -433,4 +434,19 @@ public class DiagramEditor extends EditorPart implements IResourceEditorPart2, I && ((IResourceEditorInput) input).getResource().equals(diagram)); } + /** + * Reinitializes all DiagramEditor instances in all workbench windows that have + * the specified diagrams as their input. + * + *

Must be invoked from the SWT thread.

+ * + * @param diagrams + * collection of diagram resources for which to reinitialize all DiagramEditors + * for + */ + public static void reinitializeDiagram(Set diagrams) { + reinitializeDiagram(input -> input instanceof IResourceEditorInput + && diagrams.contains(((IResourceEditorInput) input).getResource())); + } + }