X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.modeling%2Fscl%2FSimantics%2FScenegraph.scl;h=3c9c5579969cb61b1015f0d461cc5e9c50431d1a;hp=fa1d2193fde51181ade6b5dc66bd79e256ff2cc4;hb=411b91db954684861999a5f66280a767055e8258;hpb=a42562ce5347643cf8303eb4c6acef4d65c9e210 diff --git a/bundles/org.simantics.modeling/scl/Simantics/Scenegraph.scl b/bundles/org.simantics.modeling/scl/Simantics/Scenegraph.scl index fa1d2193f..3c9c55799 100644 --- a/bundles/org.simantics.modeling/scl/Simantics/Scenegraph.scl +++ b/bundles/org.simantics.modeling/scl/Simantics/Scenegraph.scl @@ -51,12 +51,14 @@ importJava "org.simantics.modeling.SCLScenegraph" where editNodeText :: ICanvasContext -> String -> String -> String -> String copyPaste :: ICanvasContext -> ICanvasContext -> [Resource] -> Boolean + + renderSVG :: ICanvasContext -> String getSceneGraphProvider :: Diagram -> ICanvasSceneGraphProvider getSceneGraphProvider diagram = do diagramName = syncRead(\() -> getSafeName diagram) diagramRVI = "/" + diagramName - model = syncRead(\() -> getPossibleModel diagram) + model = syncRead(\() -> fromJust $ possibleIndexRoot diagram) composite = syncRead(\() -> compositeToDiagram' diagram) getICanvasSceneGraphProvider model composite diagramRVI @@ -93,3 +95,35 @@ getNodeCount diagram = do provider = getICanvasSceneGraphProvider model composite diagramRVI context = getCanvasContext provider getCount context + +importJava "org.simantics.scenegraph.g2d.G2DNodeModification" where + data G2DNodeModification + @JavaName "" + createG2DNodeModification :: [SVGNodeAssignment] -> [TransformationAssignment] -> G2DNodeModification + @JavaName "" + createG2DNodeModification3 :: [SVGNodeAssignment] -> [TargetedSVGNodeAssignment] -> [TransformationAssignment] -> G2DNodeModification + +importJava "org.simantics.scenegraph.g2d.nodes.SVGNodeAssignment" where + data SVGNodeAssignment + @JavaName "" + createSVGNodeAssignment :: String -> String -> String -> SVGNodeAssignment + +importJava "org.simantics.scenegraph.g2d.nodes.TargetedSVGNodeAssignment" where + data TargetedSVGNodeAssignment + @JavaName "" + createTargetedSVGNodeAssignment :: a -> String -> String -> String -> TargetedSVGNodeAssignment + +importJava "org.simantics.scenegraph.g2d.nodes.TransformationAssignment" where + data TransformationAssignment + @JavaName "" + createTransformationAssignment :: a -> AffineTransform -> TransformationAssignment + +importJava "java.awt.geom.AffineTransform" where + data AffineTransform + @JavaName "" + createAffineTransform :: Double -> Double -> Double -> Double -> Double -> Double -> AffineTransform + +importJava "org.simantics.scenegraph.g2d.AffineTransformFunctions" where + transform :: AffineTransform -> (Double,Double) -> (Double,Double) + inverseTransform :: AffineTransform -> (Double,Double) -> (Double,Double) + \ No newline at end of file