- data CanvFrame = CanvFrame {}
- data FrameType
- argIoletCounter :: [String] -> ExprNode -> (Int, Int)
- atLeastSizeFrame :: Size -> CanvFrame -> CanvFrame
- cfEvalReady :: CanvFrame -> Bool
- cfPointInHeader :: CanvFrame -> Double -> Double -> Bool
- cfPointInFooter :: CanvFrame -> Double -> Double -> Bool
- cfRoot :: CanvFrame -> Node
- frameNewWithLayout :: Style -> Position -> Double -> Functoid -> Maybe [Value] -> FrameType -> Node -> Env -> Maybe Node -> (CanvFrame, FunctoidLayout)
- frameBodyBox :: CanvFrame -> BBox
- frameNodeAt :: CanvFrame -> WGraph -> Position -> Maybe Node
- frameOffset :: Style -> CanvFrame -> Position
- levelOrder :: CanvFrame -> CanvFrame -> Ordering
- nodeCompoundFunction :: WGraph -> CanvFrame -> Node -> Maybe Function
- pointIolet :: Position -> Int -> [Iolet] -> Maybe Int
- resizeFrame :: CanvFrame -> Double -> Double -> CanvFrame
- translateFrame :: CanvFrame -> Double -> Double -> CanvFrame
- grTranslateFrameNodes :: WGraph -> CanvFrame -> Double -> Double -> WGraph
Documentation
A CanvFrame represents (indirectly, through cfRoot, and we access to the graph which is provided by the VCanvas) a subgraph such as the expression tree of a function which is being edited or called.
CanvFrame | |
|
argIoletCounter :: [String] -> ExprNode -> (Int, Int)Source
argIoletCounter returns (no. of inlets, no. of outlets) derived from the argument list of a function still being defined
atLeastSizeFrame :: Size -> CanvFrame -> CanvFrameSource
cfEvalReady :: CanvFrame -> BoolSource
A frame is eval ready -- that is, okay to run the Eval Frame dialog -- if it is a call frame with no parent
frameNewWithLayout :: Style -> Position -> Double -> Functoid -> Maybe [Value] -> FrameType -> Node -> Env -> Maybe Node -> (CanvFrame, FunctoidLayout)Source
Figure out the frame layout for a function. Returns the layout and frame. Currently, the frame is marked as a call frame; if you want to edit it, call (editFrame? editFunction?)
frameBodyBox :: CanvFrame -> BBoxSource
frameOffset :: Style -> CanvFrame -> PositionSource
Where to position a new frame that is grown out of an old frame? This is a very rough draft of frameOffset
levelOrder :: CanvFrame -> CanvFrame -> OrderingSource
Use levelOrder for sorting frames before drawing them