Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data VPUI = VPUI {}
- type WinId = String
- data VPUIWindow
- vpuiFileChanged :: VPUI -> Bool
- vpuiUserEnvAList :: VPUI -> [(String, Value)]
- vpuiInsertWindow :: VPUI -> WinId -> VPUIWindow -> VPUI
- vpuiTryGetWindow :: VPUI -> WinId -> Maybe VPUIWindow
- vpuiGetWindow :: VPUI -> WinId -> VPUIWindow
- vpuiUpdateWindow :: VPUI -> WinId -> (VPUIWindow -> VPUIWindow) -> VPUI
- vpuiReplaceWindow :: VPUI -> WinId -> VPUIWindow -> VPUI
- vpuiUpdateWindowIO :: WinId -> (VPUIWindow -> IO VPUIWindow) -> VPUI -> IO VPUI
- vpuiRemoveVPUIWindow :: WinId -> VPUI -> VPUI
- vpuiWindowLookupCanvas :: VPUIWindow -> Maybe VCanvas
- vpuiWindowGetCanvas :: VPUIWindow -> VCanvas
- vpuiWindowSetCanvas :: VPUIWindow -> VCanvas -> VPUIWindow
- vpuiWindowModCanvas :: VPUIWindow -> (VCanvas -> VCanvas) -> VPUIWindow
- vpuiWindowModCanvasIO :: VPUIWindow -> (VCanvas -> IO VCanvas) -> IO VPUIWindow
- vpuiModCanvas :: VPUI -> WinId -> (VCanvas -> VCanvas) -> VPUI
- vpuiModCanvasIO :: VPUI -> WinId -> (VCanvas -> IO VCanvas) -> IO VPUI
- vpuiWindowWindow :: VPUIWindow -> Window
- data VPToolkit = VPToolkit {
- toolkitName :: String
- toolkitWidth :: Int
- toolkitRows :: [[Tool]]
- data Toolbox = Toolbox {}
- data Tool = Tool {}
- data ToolContext
- type CanvasToolOp = VCanvas -> ToolContext -> [Modifier] -> Double -> Double -> IO VCanvas
- type ToolOp = VPUI -> WinId -> ToolContext -> [Modifier] -> Double -> Double -> IO VPUI
- toToolOpVW :: CanvasToolOp -> ToolOp
- data Workspace = Workspace {
- wsRootWidget :: VBox
- wsCanvas :: VCanvas
- wsButtonBar :: HBox
- wsStatusbar :: Statusbar
- wsArgToolSpecs :: [ArgSpec]
- data VCanvas = VCanvas {}
- data Selection
- = SelectionNode { }
- | SelectionInlet { }
- | SelectionOutlet {
- selNode :: Node
- selOutEdge :: WEdge
- data Dragging = Dragging {}
Documentation
VPUI: Sifflet (formerly VisiProg) User Interface The initialEnv is apt to contain "builtin" functions; it's preserved here so that when writing to a file, we can skip the functions that were in the initial env.
VPUI | |
|
vpuiFileChanged :: VPUI -> Bool Source
Tell whether the global environmkent has changed since the last file open or save
vpuiUserEnvAList :: VPUI -> [(String, Value)] Source
Extract from the environment the part defined by the user But you probably want to use Graphics.UI.Sifflet.Window.UserFunctions instead of this.
Operations on a VPUI involving its window
vpuiInsertWindow :: VPUI -> WinId -> VPUIWindow -> VPUI Source
Insert a window in the window map
vpuiTryGetWindow :: VPUI -> WinId -> Maybe VPUIWindow Source
Try to get the VPUIWindow with the given window ID, return Just result or Nothing
vpuiGetWindow :: VPUI -> WinId -> VPUIWindow Source
Get the VPUIWindow with the given window ID; it is an error if this fails.
vpuiUpdateWindow :: VPUI -> WinId -> (VPUIWindow -> VPUIWindow) -> VPUI Source
Apply an update function to a VPUIWindow with given window ID; it is an error if this fails.
vpuiReplaceWindow :: VPUI -> WinId -> VPUIWindow -> VPUI Source
Replace a VPUIWindow with given window ID; it is an error if this fails.
vpuiUpdateWindowIO :: WinId -> (VPUIWindow -> IO VPUIWindow) -> VPUI -> IO VPUI Source
Apply an update IO action to a VPUIWindow with given window ID; it is an error if this fails.
vpuiRemoveVPUIWindow :: WinId -> VPUI -> VPUI Source
Remove a window from the windows map; it has already been destroyed in the GUI
Operations on a window involving its canvas
vpuiWindowLookupCanvas :: VPUIWindow -> Maybe VCanvas Source
Try to find canvas; fail gracefully
vpuiWindowGetCanvas :: VPUIWindow -> VCanvas Source
Find canvas or fail dramatically
vpuiWindowSetCanvas :: VPUIWindow -> VCanvas -> VPUIWindow Source
vpuiWindowModCanvas :: VPUIWindow -> (VCanvas -> VCanvas) -> VPUIWindow Source
vpuiWindowModCanvasIO :: VPUIWindow -> (VCanvas -> IO VCanvas) -> IO VPUIWindow Source
Operation on a VPUI involving the canvas of its window
vpuiModCanvas :: VPUI -> WinId -> (VCanvas -> VCanvas) -> VPUI Source
Update the canvas of the specified window, without IO
vpuiModCanvasIO :: VPUI -> WinId -> (VCanvas -> IO VCanvas) -> IO VPUI Source
Update the canvas of the specified window, with IO
Other operations on a window
Toolkit functions are organized in groups (rows) for presentation in a toolbox
VPToolkit | |
|
A Toolbox is a framed VBox with a set of Toolbars attached
data ToolContext Source
ToolContext: The way a tool should be applied depends on where it is being used
type CanvasToolOp = VCanvas -> ToolContext -> [Modifier] -> Double -> Double -> IO VCanvas Source
type ToolOp = VPUI -> WinId -> ToolContext -> [Modifier] -> Double -> Double -> IO VPUI Source
ToolOp a is intended for a = VPUIWindow or VCanvas type ToolOp a = VPUI -> a -> ToolContext -> [Modifier] -> Double -> Double -> IO a
toToolOpVW :: CanvasToolOp -> ToolOp Source
A helper for making toolOps from actions on VCanvas
Workspace | |
|
A canvas that can display multiple boxes representing expressions or function definitions or calls