X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.diagram.svg%2Fsrc%2Forg%2Fsimantics%2Fdiagram%2Fsvg%2Fexport%2FDiagramToSVG.java;h=a8de56f612de2b283a05557ba00bfdd5b1fda7e9;hb=ec1e6bb5e052c7b5da6c72a2af83f66d9688fe5d;hp=555be8be7d1cf68224a7e38c0e4bc78043567f55;hpb=b2cb20c0a326900b3b854cf8b516040f5a5771e2;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.diagram.svg/src/org/simantics/diagram/svg/export/DiagramToSVG.java b/bundles/org.simantics.diagram.svg/src/org/simantics/diagram/svg/export/DiagramToSVG.java index 555be8be7..a8de56f61 100644 --- a/bundles/org.simantics.diagram.svg/src/org/simantics/diagram/svg/export/DiagramToSVG.java +++ b/bundles/org.simantics.diagram.svg/src/org/simantics/diagram/svg/export/DiagramToSVG.java @@ -20,6 +20,7 @@ import org.simantics.db.request.Read; import org.simantics.diagram.elements.DiagramNodeUtil; import org.simantics.diagram.export.ImagePrinter; import org.simantics.diagram.stubs.DiagramResource; +import org.simantics.g2d.canvas.Hints; import org.simantics.g2d.canvas.impl.CanvasContext; import org.simantics.g2d.scenegraph.ICanvasSceneGraphProvider; import org.simantics.layer0.Layer0; @@ -132,6 +133,7 @@ public class DiagramToSVG { thread.start(); final CanvasContext ctx = new CanvasContext(thread); + ctx.getDefaultHintContext().setHint(Hints.KEY_DISABLE_GRAPH_MODIFICATIONS, Boolean.TRUE); final AtomicReference sgProvider = new AtomicReference(); final ISessionContext sessionContext = Simantics.getSessionContext(); final DataContainer result = new DataContainer(null); @@ -217,6 +219,7 @@ public class DiagramToSVG { if(!painterThread.currentThreadAccess()) throw new IllegalStateException("The callable should be called from the contextThread"); final CanvasContext ctx = new CanvasContext(loaderThread); + ctx.getDefaultHintContext().setHint(Hints.KEY_DISABLE_GRAPH_MODIFICATIONS, Boolean.TRUE); final AtomicReference sgProvider = new AtomicReference(); final DataContainer result = new DataContainer(null); final DataContainer exception = new DataContainer(null); @@ -233,6 +236,7 @@ public class DiagramToSVG { }); ICanvasSceneGraphProvider provider = DiagramNodeUtil.loadSceneGraphProvider(ctx, modelAndRVI.first, exportPlan.diagram, modelAndRVI.second); + Thread.sleep(1000); sgProvider.set( provider ); final Semaphore done = new Semaphore(0);