Go to the first, previous, next, last section, table of contents.

ComponentHandles - active components

The ComponentHandle represent a realised, active user interface component. The ComponentHandle interface defines a number of operations for communicating via these handles, see Representing interactive components for more inexampleion.


 {- 
   A simple sink for ComponentHandle requests and commands.
 -}
nullCH  :: IO ComponentHandle

 {-
  Return the geometric requirements, nat size and current size.
 -}
getGeometry  :: ComponentHandle -> IO Geometry
getNatSize   :: ComponentHandle -> IO Size
getSize      :: ComponentHandle -> IO Size

 {-
   Send system command to every component in the list,
   starting at the front
 -} 
broadcastWComm :: [ComponentHandle] -> WComm -> IO ()

 {-
   Tell the component to take on new size.
 -}
resizeCH     :: ComponentHandle -> Unit -> Unit -> IO ()

 {-
  redraw the contents of the component using a different painter
  (used to dump the UI to PostScript)
 -}
drawCH       :: ComponentHandle -> Painter -> IO ()
 {-
  ask component to repair a part of its bounding box
 -}
repairCH     :: ComponentHandle -> Portion Region -> IO ()
 {-
  Set the current clipping region for a component, i.e.,
  the visible region. If the region is empty, then the
  component is `unmapped'.
 -}
clipCH	     :: ComponentHandle -> Portion Region -> IO ()
 {-
  Command to shutdown activity.
 -}
closeCH	     :: ComponentHandle -> IO ()
 {-
  Tell the lose or take on keyboard input focus.
 -}
focusCH	     :: ComponentHandle -> Bool -> IO ()

 {-
   Set the UpHandler, see Child requests for more.
  -}

setUpHandler :: ComponentHandle -> UpHandler -> IO ()
 
 {-
  Send user input events to components, see Section Event type for more.
 -}
sendButtonEv :: ComponentHandle -> ButtonEv -> Int -> ModState -> Coord -> IO ()
sendMotionEv :: ComponentHandle -> MotionEv -> ModState -> Coord -> IO ()
sendKeyEv    :: ComponentHandle -> KeyEv -> KeyValue -> ModState -> Coord -> IO ()
sendEnterEv  :: ComponentHandle -> ModState -> Coord -> IO ()
sendLeaveEv  :: ComponentHandle -> ModState -> Coord -> IO ()
sendDevEv    :: ComponentHandle -> DeviceEvent -> IO ()


Go to the first, previous, next, last section, table of contents.