import "Simantics/DB" import "Simantics/Diagram" import "Simantics/Rename" importJava "org.simantics.g2d.canvas.ICanvasContext" where data ICanvasContext importJava "org.simantics.g2d.scenegraph.ICanvasSceneGraphProvider" where data ICanvasSceneGraphProvider getCanvasContext :: ICanvasSceneGraphProvider -> ICanvasContext importJava "org.simantics.modeling.SCLScenegraph" where sceneGraphTest :: ICanvasContext -> String -> String -> String getAllNodes :: ICanvasContext -> String getBoundsNodes :: ICanvasContext -> String getBackgroundNodes :: ICanvasContext -> String getDataNodes :: ICanvasContext -> String getNavigationNodes :: ICanvasContext -> String getParentNodes :: ICanvasContext -> String getDecorationNodes :: ICanvasContext -> String getSingleElementNodes :: ICanvasContext -> String getConnectionNodes :: ICanvasContext -> String getTextNodes :: ICanvasContext -> String getItemNodes :: ICanvasContext -> String @JavaName getNodeText getText :: ICanvasContext -> String -> String @JavaName getNodeCount getCount :: ICanvasContext -> String @JavaName getNodeTransform getTransform :: ICanvasContext -> String -> String getICanvasSceneGraphProvider :: Model -> Resource -> String -> ICanvasSceneGraphProvider disposeSceneGraphProvider :: ICanvasSceneGraphProvider -> () editNodeText :: ICanvasContext -> String -> String -> String -> String copyPaste :: ICanvasContext -> ICanvasContext -> [Resource] -> Boolean getSceneGraphProvider :: Diagram -> ICanvasSceneGraphProvider getSceneGraphProvider diagram = do diagramName = syncRead(\() -> getSafeName (toResource diagram)) diagramRVI = "/" + diagramName model = syncRead(\() -> getPossibleModel (toResource diagram)) composite = syncRead(\() -> compositeToDiagram' (toResource diagram)) getICanvasSceneGraphProvider model composite diagramRVI getDiagramContext :: ICanvasSceneGraphProvider -> ICanvasContext getDiagramContext provider = do getCanvasContext provider getNodeTransform :: Diagram -> String -> String getNodeTransform diagram nodeName = do diagramName = syncRead(\() -> getSafeName (toResource diagram)) diagramRVI = "/" + diagramName model = syncRead(\() -> getPossibleModel (toResource diagram)) composite = syncRead(\() -> compositeToDiagram' (toResource diagram)) provider = getICanvasSceneGraphProvider model composite diagramRVI context = getCanvasContext provider getTransform context nodeName getNodeText :: Diagram -> String -> String getNodeText diagram nodeName = do diagramName = syncRead(\() -> getSafeName (toResource diagram)) diagramRVI = "/" + diagramName model = syncRead(\() -> getPossibleModel (toResource diagram)) composite = syncRead(\() -> compositeToDiagram' (toResource diagram)) provider = getICanvasSceneGraphProvider model composite diagramRVI context = getCanvasContext provider getText context nodeName getNodeCount :: Diagram -> String getNodeCount diagram = do diagramName = syncRead(\() -> getSafeName (toResource diagram)) diagramRVI = "/" + diagramName model = syncRead(\() -> getPossibleModel (toResource diagram)) composite = syncRead(\() -> compositeToDiagram' (toResource diagram)) provider = getICanvasSceneGraphProvider model composite diagramRVI context = getCanvasContext provider getCount context