-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Graphs binding -- @package uni-uDrawGraph @version 2.2.0.3 -- | This file was taken from Sven Panne's page on 31st July 2001. I have -- since changed it a little. The version before these changes may be -- found in DaVinciTypes.hs.orig. module UDrawGraph.Types data DaVinciCmd Graph :: GraphCmd -> DaVinciCmd Multi :: MultiCmd -> DaVinciCmd Menu :: MenuCmd -> DaVinciCmd AppMenu :: AppMenuCmd -> DaVinciCmd DVSet :: SetCmd -> DaVinciCmd Window :: WindowCmd -> DaVinciCmd Tcl :: TclCmd -> DaVinciCmd Special :: SpecialCmd -> DaVinciCmd DVNothing :: DaVinciCmd Visual :: VisualCmd -> DaVinciCmd DragAndDrop :: DragAndDropCmd -> DaVinciCmd data GraphCmd New :: [Node] -> GraphCmd NewPlaced :: [Node] -> GraphCmd Update :: [NodeUpdate] -> [EdgeUpdate] -> GraphCmd ChangeAttr :: [AttrChange] -> GraphCmd UpdateAndChangeAttr :: [NodeUpdate] -> [EdgeUpdate] -> [AttrChange] -> GraphCmd UpdateMixed :: [MixedUpdate] -> GraphCmd UpdateAndChangeAttrMixed :: [MixedUpdate] -> [AttrChange] -> GraphCmd ChangeType :: [TypeChange] -> GraphCmd data MultiCmd NewContext :: MultiCmd OpenContext :: ContextId -> MultiCmd SetContext :: ContextId -> MultiCmd SetContextWindow :: ContextId -> WindowId -> MultiCmd data MenuCmd File :: FileMenuCmd -> MenuCmd View :: ViewMenuCmd -> MenuCmd Navigation :: NavigationMenuCmd -> MenuCmd Abstraction :: AbstractionMenuCmd -> MenuCmd Layout :: LayoutMenuCmd -> MenuCmd data FileMenuCmd ClearGraph :: FileMenuCmd OpenGraph :: Filename -> FileMenuCmd OpenGraphPlaced :: Filename -> FileMenuCmd OpenStatus :: Filename -> FileMenuCmd SaveGraph :: Filename -> FileMenuCmd SaveStatus :: Filename -> FileMenuCmd Print :: (Maybe Filename) -> FileMenuCmd Close :: FileMenuCmd Exit :: FileMenuCmd data ViewMenuCmd OpenNewView :: ViewMenuCmd OpenSurveyView :: ViewMenuCmd FullScale :: ViewMenuCmd FitScaleToWindow :: ViewMenuCmd Scale :: (Maybe Int) -> ViewMenuCmd GraphInfo :: ViewMenuCmd DaVinciInfo :: ViewMenuCmd data NavigationMenuCmd SelectParents :: [NodeId] -> NavigationMenuCmd SelectSiblings :: [NodeId] -> NavigationMenuCmd SelectChilds :: [NodeId] -> NavigationMenuCmd SelectChildren :: [NodeId] -> NavigationMenuCmd Navigator :: (Maybe (NodeId, Direction, Bool)) -> NavigationMenuCmd Find :: (Maybe (String, Bool, Bool)) -> NavigationMenuCmd data AbstractionMenuCmd HideSubgraph :: [NodeId] -> AbstractionMenuCmd ShowSubgraph :: [NodeId] -> AbstractionMenuCmd RestoreAllSubgraphs :: AbstractionMenuCmd HideEdges :: [NodeId] -> AbstractionMenuCmd ShowEdges :: [NodeId] -> AbstractionMenuCmd RestoreAllEdges :: AbstractionMenuCmd data LayoutMenuCmd ImproveAll :: LayoutMenuCmd ImproveVisible :: LayoutMenuCmd CompactAll :: LayoutMenuCmd Orientation :: Orient -> LayoutMenuCmd data AppMenuCmd CreateMenus :: [MenuEntry] -> AppMenuCmd CreateIcons :: [IconEntry] -> AppMenuCmd ActivateMenus :: [MenuId] -> AppMenuCmd ActivateIcons :: [IconId] -> AppMenuCmd ControlFileEvents :: AppMenuCmd data SetCmd LayoutAccuracy :: Int -> SetCmd KeepNodesAtLevels :: Bool -> SetCmd FontSize :: Int -> SetCmd GapWidth :: Int -> SetCmd GapHeight :: Int -> SetCmd MultiEdgeGap :: Int -> SetCmd SelfEdgeRadius :: Int -> SetCmd ScrollingOnSelection :: Bool -> SetCmd AnimationSpeed :: Int -> SetCmd NoCache :: Bool -> SetCmd RulesFirst :: Bool -> SetCmd data WindowCmd Title :: String -> WindowCmd ShowMessage :: String -> WindowCmd ShowStatus :: String -> WindowCmd Position :: Int -> Int -> WindowCmd Size :: Int -> Int -> WindowCmd Raise :: WindowCmd Iconify :: WindowCmd Deiconify :: WindowCmd Activate :: WindowCmd Deactivate :: WindowCmd FileBrowser :: Bool -> String -> String -> String -> String -> [Btype] -> Bool -> WindowCmd data TclCmd DVEval :: String -> TclCmd EvalFile :: Filename -> TclCmd data SpecialCmd SelectNodes :: [NodeId] -> SpecialCmd SelectEdge :: EdgeId -> SpecialCmd FocusNode :: NodeId -> SpecialCmd FocusNodeAnimated :: NodeId -> SpecialCmd ShowUrl :: String -> SpecialCmd Version :: SpecialCmd data VisualCmd NewRules :: [VisualRule] -> VisualCmd AddRules :: [VisualRule] -> VisualCmd data DragAndDropCmd DraggingOn :: DragAndDropCmd DragAndDropOn :: DragAndDropCmd DraggingOff :: DragAndDropCmd NewNodeAtCoord :: NodeUpdate -> DragAndDropCmd NewEdgeAndNodeAtCoord :: NodeUpdate -> EdgeUpdate -> DragAndDropCmd data DaVinciAnswer Ok :: DaVinciAnswer CommunicationError :: String -> DaVinciAnswer NodeSelectionsLabels :: [NodeId] -> DaVinciAnswer NodeDoubleClick :: DaVinciAnswer EdgeSelectionLabel :: EdgeId -> DaVinciAnswer EdgeSelectionLabels :: NodeId -> NodeId -> DaVinciAnswer EdgeDoubleClick :: DaVinciAnswer MenuSelection :: MenuId -> DaVinciAnswer IconSelection :: IconId -> DaVinciAnswer Context :: ContextId -> DaVinciAnswer TclAnswer :: String -> DaVinciAnswer BrowserAnswer :: String -> String -> DaVinciAnswer Disconnect :: DaVinciAnswer Closed :: DaVinciAnswer Quit :: DaVinciAnswer PopupSelectionNode :: NodeId -> MenuId -> DaVinciAnswer PopupSelectionEdge :: EdgeId -> MenuId -> DaVinciAnswer CreateNode :: DaVinciAnswer CreateNodeAndEdge :: NodeId -> DaVinciAnswer CreateEdge :: NodeId -> NodeId -> DaVinciAnswer DropNode :: NodeId -> ContextId -> WindowId -> NodeId -> DaVinciAnswer ContextWindow :: ContextId -> WindowId -> DaVinciAnswer OpenWindow :: DaVinciAnswer CloseWindow :: WindowId -> DaVinciAnswer Versioned :: String -> DaVinciAnswer data Node N :: NodeId -> Type -> [Attribute] -> [Edge] -> Node R :: NodeId -> Node data Edge E :: EdgeId -> Type -> [Attribute] -> Node -> Edge data Attribute A :: String -> String -> Attribute M :: [MenuEntry] -> Attribute data NodeUpdate DeleteNode :: NodeId -> NodeUpdate NewNode :: NodeId -> Type -> [Attribute] -> NodeUpdate data EdgeUpdate DeleteEdge :: EdgeId -> EdgeUpdate NewEdge :: EdgeId -> Type -> [Attribute] -> NodeId -> NodeId -> EdgeUpdate NewEdgeBehind :: EdgeId -> EdgeId -> Type -> [Attribute] -> NodeId -> NodeId -> EdgeUpdate data AttrChange Node :: NodeId -> [Attribute] -> AttrChange Edge :: EdgeId -> [Attribute] -> AttrChange data MixedUpdate NU :: NodeUpdate -> MixedUpdate EU :: EdgeUpdate -> MixedUpdate data TypeChange NodeType :: NodeId -> Type -> TypeChange EdgeType :: EdgeId -> Type -> TypeChange data MenuEntry MenuEntry :: MenuId -> MenuLabel -> MenuEntry MenuEntryMne :: MenuId -> MenuLabel -> MenuMne -> MenuMod -> MenuAcc -> MenuEntry SubmenuEntry :: MenuId -> MenuLabel -> [MenuEntry] -> MenuEntry SubmenuEntryMne :: MenuId -> MenuLabel -> [MenuEntry] -> MenuMne -> MenuEntry BlankMenuEntry :: MenuEntry MenuEntryDisabled :: MenuId -> MenuLabel -> MenuEntry SubmenuEntryDisabled :: MenuId -> MenuLabel -> [MenuEntry] -> MenuEntry data IconEntry IconEntry :: IconId -> Filename -> String -> IconEntry BlankIconEntry :: IconEntry data VisualRule NR :: Type -> [Attribute] -> VisualRule ER :: Type -> [Attribute] -> VisualRule newtype NodeId NodeId :: String -> NodeId newtype EdgeId EdgeId :: String -> EdgeId newtype MenuId MenuId :: String -> MenuId newtype MenuLabel MenuLabel :: String -> MenuLabel newtype MenuMne MenuMne :: String -> MenuMne newtype MenuAcc MenuAcc :: String -> MenuAcc newtype IconId IconId :: String -> IconId newtype Type Type :: String -> Type newtype Filename Filename :: String -> Filename newtype ContextId ContextId :: String -> ContextId newtype WindowId WindowId :: String -> WindowId data Orient TopDown :: Orient BottomUp :: Orient LeftRight :: Orient RightLeft :: Orient data Direction Up :: Direction Down :: Direction DVLeft :: Direction DVRight :: Direction data Btype Bt :: String -> String -> String -> Btype data MenuMod Alternate :: MenuMod Shift :: MenuMod Control :: MenuMod Meta :: MenuMod None :: MenuMod instance Eq ViewMenuCmd instance Eq SetCmd instance Eq NodeId instance Ord NodeId instance Eq AbstractionMenuCmd instance Eq EdgeId instance Ord EdgeId instance Eq SpecialCmd instance Eq MenuId instance Ord MenuId instance Eq MenuLabel instance Eq MenuMne instance Eq MenuAcc instance Eq IconId instance Ord IconId instance Eq Type instance Ord Type instance Eq TypeChange instance Eq Filename instance Eq IconEntry instance Eq TclCmd instance Eq FileMenuCmd instance Eq ContextId instance Ord ContextId instance Eq WindowId instance Ord WindowId instance Eq DaVinciAnswer instance Ord DaVinciAnswer instance Eq MultiCmd instance Eq Orient instance Eq LayoutMenuCmd instance Eq Direction instance Eq NavigationMenuCmd instance Eq MenuCmd instance Eq Btype instance Eq WindowCmd instance Eq MenuMod instance Eq MenuEntry instance Eq Attribute instance Eq VisualRule instance Eq VisualCmd instance Eq AttrChange instance Eq EdgeUpdate instance Eq NodeUpdate instance Eq MixedUpdate instance Eq DragAndDropCmd instance Eq Node instance Eq Edge instance Eq GraphCmd instance Eq AppMenuCmd instance Eq DaVinciCmd instance Show MenuMod instance Show Btype instance Show Direction instance Show Orient instance Show WindowId instance Show ContextId instance Show Filename instance Show Type instance Show IconId instance Show MenuAcc instance Show MenuMne instance Show MenuLabel instance Show MenuId instance Show EdgeId instance Show NodeId instance Show VisualRule instance Show IconEntry instance Show MenuEntry instance Show TypeChange instance Show AttrChange instance Show MixedUpdate instance Show EdgeUpdate instance Show NodeUpdate instance Show Attribute instance Show Edge instance Show Node instance Read DaVinciAnswer instance Show DaVinciAnswer instance Show DragAndDropCmd instance Show VisualCmd instance Show SpecialCmd instance Show TclCmd instance Show WindowCmd instance Show SetCmd instance Show AppMenuCmd instance Show LayoutMenuCmd instance Show AbstractionMenuCmd instance Show NavigationMenuCmd instance Show ViewMenuCmd instance Show FileMenuCmd instance Show MenuCmd instance Show MultiCmd instance Show GraphCmd instance Show DaVinciCmd -- | DaVinciBasic contains the code to do the following things: (1) get -- daVinci going (it calls it via a ChildProcess). (2) open new contexts. -- (3) pass on events and sort answers out for particular contexts. It -- uses the DaVinciTypes module to parse the different results, but makes -- minimal attempts to interpret the different datatypes (the main reason -- for doing so is to interpret DaVinciAnswer to work out what to do with -- a particular answer). module UDrawGraph.Basic data Context newContext :: (DaVinciAnswer -> IO ()) -> IO Context doInContextGeneral :: DaVinciCmd -> Context -> IO DaVinciAnswer doInContext :: DaVinciCmd -> Context -> IO () withHandler :: (DaVinciAnswer -> IO ()) -> Context -> IO a -> IO a newType :: Context -> IO Type newNodeId :: Context -> IO NodeId newEdgeId :: Context -> IO EdgeId newMenuId :: Context -> IO MenuId daVinciVersion :: Maybe String exitDaVinci :: Context -> IO () instance Ord Context instance Eq Context instance Destructible Context instance Destroyable Context instance Object DaVinci instance Destroyable DaVinci -- | This is the implementation of modules GraphDisp and GraphConfigure for -- daVinci. See those files for explanation of the names. We encode, for -- example, the type parameter node as DaVinciNode, and so on for other -- type parameters, prefixing with "DaVinci" and capitalising the next -- letter. But the only variable you should normally need from this -- module is daVinciSort. module UDrawGraph.Graph daVinciSort :: Graph DaVinciGraph DaVinciGraphParms DaVinciNode DaVinciNodeType DaVinciNodeTypeParms DaVinciArc DaVinciArcType DaVinciArcTypeParms data DaVinciGraph data DaVinciGraphParms data DaVinciNode value -- | Tiresomely we need to make the "real" node type untyped. This is so -- that the interactor which handles drag-and-drop can get the type out -- without knowing what it is. data DaVinciNodeType value data DaVinciNodeTypeParms value data DaVinciArc value data DaVinciArcType value data DaVinciArcTypeParms value getDaVinciGraphContext :: DaVinciGraph -> Context instance [overlap ok] Typeable DaVinciNode instance [overlap ok] Typeable DaVinciNodeType instance [overlap ok] Typeable DaVinciArc instance [overlap ok] Typeable DaVinciArcType instance [overlap ok] Typeable DaVinciGraph instance [overlap ok] HasConfigValue LocalMenu Attributes instance [overlap ok] HasConfigValue Att Attributes instance [overlap ok] HasConfigValue ValueTitle DaVinciArcTypeParms instance [overlap ok] HasConfigValue DoubleClickAction DaVinciArcTypeParms instance [overlap ok] ArcTypeConfig arcTypeConfig => HasConfigValue arcTypeConfig DaVinciArcTypeParms instance [overlap ok] HasConfigValue LocalMenu DaVinciArcTypeParms instance [overlap ok] HasConfigValue EdgePattern DaVinciArcTypeParms instance [overlap ok] HasConfigValue Head DaVinciArcTypeParms instance [overlap ok] HasConfigValue EdgeDir DaVinciArcTypeParms instance [overlap ok] HasConfigValue Color DaVinciArcTypeParms instance [overlap ok] ArcTypeParms DaVinciArcTypeParms instance [overlap ok] NewArcType DaVinciGraph DaVinciArcType DaVinciArcTypeParms instance [overlap ok] ArcTypeClass DaVinciArcType instance [overlap ok] Ord1 DaVinciArcType instance [overlap ok] Eq1 DaVinciArcType instance [overlap ok] ArcClass DaVinciArc instance [overlap ok] DeleteArc DaVinciGraph DaVinciArc instance [overlap ok] SetArcType DaVinciGraph DaVinciArc DaVinciArcType instance [overlap ok] NewArc DaVinciGraph DaVinciNode DaVinciNode DaVinciArc DaVinciArcType instance [overlap ok] Ord1 DaVinciArc instance [overlap ok] Eq1 DaVinciArc instance [overlap ok] HasConfigValue NodeDragAndDrop DaVinciNodeTypeParms instance [overlap ok] HasConfigValue NodeGesture DaVinciNodeTypeParms instance [overlap ok] HasModifyValue (String, String) DaVinciGraph DaVinciNode instance [overlap ok] HasModifyValue Attribute DaVinciGraph DaVinciNode instance [overlap ok] HasModifyValue NodeArcsHidden DaVinciGraph DaVinciNode instance [overlap ok] HasConfigValue DoubleClickAction DaVinciNodeTypeParms instance [overlap ok] HasConfigValue LocalMenu DaVinciNodeTypeParms instance [overlap ok] HasConfigValue Color DaVinciNodeTypeParms instance [overlap ok] HasConfigValue Shape DaVinciNodeTypeParms instance [overlap ok] HasConfigValue BorderSource DaVinciNodeTypeParms instance [overlap ok] HasConfigValue FontStyleSource DaVinciNodeTypeParms instance [overlap ok] HasConfigValue ValueTitleSource DaVinciNodeTypeParms instance [overlap ok] HasConfigValue ValueTitle DaVinciNodeTypeParms instance [overlap ok] NodeTypeConfig graphConfig => HasConfigValue graphConfig DaVinciNodeTypeParms instance [overlap ok] NodeTypeParms DaVinciNodeTypeParms instance [overlap ok] NewNodeType DaVinciGraph DaVinciNodeType DaVinciNodeTypeParms instance [overlap ok] NodeTypeClass DaVinciNodeType instance [overlap ok] NodeClass DaVinciNode instance [overlap ok] SetNodeFocus DaVinciGraph DaVinciNode instance [overlap ok] DeleteNode DaVinciGraph DaVinciNode instance [overlap ok] NewNode DaVinciGraph DaVinciNode DaVinciNodeType instance [overlap ok] Eq1 DaVinciNodeType instance [overlap ok] Ord1 DaVinciNode instance [overlap ok] Eq1 DaVinciNode instance [overlap ok] GraphConfig graphConfig => HasConfig graphConfig DaVinciGraphParms instance [overlap ok] HasConfig GraphGesture DaVinciGraphParms instance [overlap ok] HasConfig GlobalMenu DaVinciGraphParms instance [overlap ok] HasConfig AllowDragging DaVinciGraphParms instance [overlap ok] HasConfig ActionWrapper DaVinciGraphParms instance [overlap ok] HasConfig Orientation DaVinciGraphParms instance [overlap ok] HasConfig (FileMenuOption, Maybe (DaVinciGraph -> IO ())) DaVinciGraphParms instance [overlap ok] HasConfig FileMenuAct DaVinciGraphParms instance [overlap ok] HasConfig AllowClose DaVinciGraphParms instance [overlap ok] HasConfig SurveyView DaVinciGraphParms instance [overlap ok] HasConfig OptimiseLayout DaVinciGraphParms instance [overlap ok] HasConfig (SimpleSource GraphTitle) DaVinciGraphParms instance [overlap ok] HasConfig Delayer DaVinciGraphParms instance [overlap ok] HasConfig GraphTitle DaVinciGraphParms instance [overlap ok] GraphParms DaVinciGraphParms instance [overlap ok] NewGraph DaVinciGraph DaVinciGraphParms instance [overlap ok] GraphClass DaVinciGraph instance [overlap ok] HasDelayer DaVinciGraph instance [overlap ok] Destructible DaVinciGraph instance [overlap ok] Destroyable DaVinciGraph instance [overlap ok] Ord DaVinciGraph instance [overlap ok] Eq DaVinciGraph instance [overlap ok] GraphAllConfig DaVinciGraph DaVinciGraphParms DaVinciNode DaVinciNodeType DaVinciNodeTypeParms DaVinciArc DaVinciArcType DaVinciArcTypeParms