X11-1.4.2: A binding to the X11 graphics librarySource codeContentsIndex
Graphics.X11.Xlib.Extras
Stabilityexperimental
Contents
Generated by DrIFT : Look, but Don't Touch. *
Description
Synopsis
data Event
= AnyEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
}
| ConfigureRequestEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_parent :: !Window
ev_window :: !Window
ev_x :: !CInt
ev_y :: !CInt
ev_width :: !CInt
ev_height :: !CInt
ev_border_width :: !CInt
ev_above :: !Window
ev_detail :: !NotifyDetail
ev_value_mask :: !CULong
}
| ConfigureEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_event :: !Window
ev_window :: !Window
ev_x :: !CInt
ev_y :: !CInt
ev_width :: !CInt
ev_height :: !CInt
ev_border_width :: !CInt
ev_above :: !Window
ev_override_redirect :: !Bool
}
| MapRequestEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_parent :: !Window
ev_window :: !Window
}
| KeyEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ev_root :: !Window
ev_subwindow :: !Window
ev_time :: !Time
ev_x :: !CInt
ev_y :: !CInt
ev_x_root :: !CInt
ev_y_root :: !CInt
ev_state :: !KeyMask
ev_keycode :: !KeyCode
ev_same_screen :: !Bool
}
| ButtonEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ev_root :: !Window
ev_subwindow :: !Window
ev_time :: !Time
ev_x :: !CInt
ev_y :: !CInt
ev_x_root :: !CInt
ev_y_root :: !CInt
ev_state :: !KeyMask
ev_button :: !Button
ev_same_screen :: !Bool
}
| MotionEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_x :: !CInt
ev_y :: !CInt
ev_window :: !Window
}
| DestroyWindowEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_event :: !Window
ev_window :: !Window
}
| UnmapEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_event :: !Window
ev_window :: !Window
ev_from_configure :: !Bool
}
| MapNotifyEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_event :: !Window
ev_window :: !Window
ev_override_redirect :: !Bool
}
| MappingNotifyEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ev_request :: !MappingRequest
ev_first_keycode :: !KeyCode
ev_count :: !CInt
}
| CrossingEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ev_root :: !Window
ev_subwindow :: !Window
ev_time :: !Time
ev_x :: !CInt
ev_y :: !CInt
ev_x_root :: !CInt
ev_y_root :: !CInt
ev_mode :: !NotifyMode
ev_detail :: !NotifyDetail
ev_same_screen :: !Bool
ev_focus :: !Bool
ev_state :: !Modifier
}
| SelectionRequest {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_owner :: !Window
ev_requestor :: !Window
ev_selection :: !Atom
ev_target :: !Atom
ev_property :: !Atom
ev_time :: !Time
}
| PropertyEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ev_atom :: !Atom
ev_time :: !Time
ev_propstate :: !CInt
}
| ExposeEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ev_x :: !CInt
ev_y :: !CInt
ev_width :: !CInt
ev_height :: !CInt
ev_count :: !CInt
}
| ClientMessageEvent {
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ev_message_type :: !Atom
ev_data :: ![CInt]
}
eventTable :: [(EventType, String)]
eventName :: Event -> String
getEvent :: XEventPtr -> IO Event
data WindowChanges = WindowChanges {
wc_x :: CInt
wc_y :: CInt
wc_width :: CInt
wc_height :: CInt
wc_border_width :: CInt
wc_sibling :: Window
wc_stack_mode :: CInt
}
none :: XID
anyButton :: Button
anyKey :: KeyCode
currentTime :: Time
xConfigureWindow :: Display -> Window -> CULong -> Ptr WindowChanges -> IO CInt
killClient :: Display -> Window -> IO CInt
configureWindow :: Display -> Window -> CULong -> WindowChanges -> IO ()
xFree :: Ptr a -> IO CInt
xQueryTree :: Display -> Window -> Ptr Window -> Ptr Window -> Ptr (Ptr Window) -> Ptr CInt -> IO Status
queryTree :: Display -> Window -> IO (Window, Window, [Window])
data WindowAttributes = WindowAttributes {
wa_x :: CInt
wa_y :: CInt
wa_width :: CInt
wa_height :: CInt
wa_border_width :: CInt
wa_map_state :: CInt
wa_override_redirect :: Bool
}
waIsUnviewable :: CInt
xGetWindowAttributes :: Display -> Window -> Ptr WindowAttributes -> IO Status
getWindowAttributes :: Display -> Window -> IO WindowAttributes
changeWindowAttributes :: Display -> Window -> AttributeMask -> Ptr SetWindowAttributes -> IO ()
withServer :: Display -> IO () -> IO ()
data TextProperty = TextProperty {
tp_value :: CString
tp_encoding :: Atom
tp_format :: CInt
tp_nitems :: Word32
}
xGetTextProperty :: Display -> Window -> Ptr TextProperty -> Atom -> IO Status
getTextProperty :: Display -> Window -> Atom -> IO TextProperty
xwcTextPropertyToTextList :: Display -> Ptr TextProperty -> Ptr (Ptr CWString) -> Ptr CInt -> IO CInt
wcTextPropertyToTextList :: Display -> TextProperty -> IO [String]
wcFreeStringList :: Ptr CWString -> IO ()
newtype FontSet = FontSet (Ptr FontSet)
xCreateFontSet :: Display -> CString -> Ptr (Ptr CString) -> Ptr CInt -> Ptr CString -> IO (Ptr FontSet)
createFontSet :: Display -> String -> IO ([String], String, FontSet)
freeStringList :: Ptr CString -> IO ()
freeFontSet :: Display -> FontSet -> IO ()
xwcTextExtents :: FontSet -> CWString -> CInt -> Ptr Rectangle -> Ptr Rectangle -> IO CInt
wcTextExtents :: FontSet -> String -> (Rectangle, Rectangle)
xwcDrawString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> CWString -> CInt -> IO ()
wcDrawString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> String -> IO ()
xwcDrawImageString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> CWString -> CInt -> IO ()
wcDrawImageString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> String -> IO ()
xwcTextEscapement :: FontSet -> CWString -> CInt -> IO Int32
wcTextEscapement :: FontSet -> String -> Int32
xFetchName :: Display -> Window -> Ptr CString -> IO Status
fetchName :: Display -> Window -> IO (Maybe String)
xGetTransientForHint :: Display -> Window -> Ptr Window -> IO Status
getTransientForHint :: Display -> Window -> IO (Maybe Window)
getWMProtocols :: Display -> Window -> IO [Atom]
xGetWMProtocols :: Display -> Window -> Ptr (Ptr Atom) -> Ptr CInt -> IO Status
setEventType :: XEventPtr -> EventType -> IO ()
setSelectionNotify :: XEventPtr -> Window -> Atom -> Atom -> Atom -> Time -> IO ()
setClientMessageEvent :: XEventPtr -> Window -> Atom -> CInt -> Atom -> Time -> IO ()
setConfigureEvent :: XEventPtr -> Window -> Window -> CInt -> CInt -> CInt -> CInt -> CInt -> Window -> Bool -> IO ()
xSetErrorHandler :: IO ()
refreshKeyboardMapping :: Event -> IO ()
xRefreshKeyboardMapping :: Ptr () -> IO CInt
anyPropertyType :: Atom
xChangeProperty :: Display -> Window -> Atom -> Atom -> CInt -> CInt -> Ptr CUChar -> CInt -> IO Status
xGetWindowProperty :: Display -> Window -> Atom -> CLong -> CLong -> Bool -> Atom -> Ptr Atom -> Ptr CInt -> Ptr CULong -> Ptr CULong -> Ptr (Ptr CUChar) -> IO Status
rawGetWindowProperty :: Storable a => Int -> Display -> Atom -> Window -> IO (Maybe [a])
getWindowProperty8 :: Display -> Atom -> Window -> IO (Maybe [CChar])
getWindowProperty16 :: Display -> Atom -> Window -> IO (Maybe [CShort])
getWindowProperty32 :: Display -> Atom -> Window -> IO (Maybe [CLong])
changeProperty8 :: Display -> Window -> Atom -> Atom -> CInt -> [CChar] -> IO ()
changeProperty16 :: Display -> Window -> Atom -> Atom -> CInt -> [CShort] -> IO ()
changeProperty32 :: Display -> Window -> Atom -> Atom -> CInt -> [CLong] -> IO ()
propModePrepend :: CInt
xUnmapWindow :: Display -> Window -> IO CInt
unmapWindow :: Display -> Window -> IO ()
data SizeHints = SizeHints {
sh_min_size :: Maybe (Dimension, Dimension)
sh_max_size :: Maybe (Dimension, Dimension)
sh_resize_inc :: Maybe (Dimension, Dimension)
sh_aspect :: Maybe ((Dimension, Dimension), (Dimension, Dimension))
sh_base_size :: Maybe (Dimension, Dimension)
sh_win_gravity :: Maybe BitGravity
}
pMaxSizeBit :: Int
xGetWMNormalHints :: Display -> Window -> Ptr SizeHints -> Ptr CLong -> IO Status
getWMNormalHints :: Display -> Window -> IO SizeHints
data ClassHint = ClassHint {
resName :: String
resClass :: String
}
getClassHint :: Display -> Window -> IO ClassHint
xGetClassHint :: Display -> Window -> Ptr ClassHint -> IO Status
normalState :: Int
stateHintBit :: Int
allHintsBitmask :: CLong
data WMHints = WMHints {
wmh_flags :: CLong
wmh_input :: Bool
wmh_initial_state :: CInt
wmh_icon_pixmap :: Pixmap
wmh_icon_window :: Window
wmh_icon_x :: CInt
wmh_icon_y :: CInt
wmh_icon_mask :: Pixmap
wmh_window_group :: XID
}
xGetWMHints :: Display -> Window -> IO (Ptr WMHints)
getWMHints :: Display -> Window -> IO WMHints
xAllocWMHints :: IO (Ptr WMHints)
xSetWMHints :: Display -> Window -> Ptr WMHints -> IO Status
setWMHints :: Display -> Window -> WMHints -> IO Status
isCursorKey :: KeySym -> Bool
isFunctionKey :: KeySym -> Bool
isKeypadKey :: KeySym -> Bool
isMiscFunctionKey :: KeySym -> Bool
isModifierKey :: KeySym -> Bool
isPFKey :: KeySym -> Bool
isPrivateKeypadKey :: KeySym -> Bool
xSetSelectionOwner :: Display -> Atom -> Window -> Time -> IO ()
xGetSelectionOwner :: Display -> Atom -> IO Window
xConvertSelection :: Display -> Atom -> Atom -> Atom -> Window -> Time -> IO ()
type XErrorEventPtr = Ptr ()
type CXErrorHandler = Display -> XErrorEventPtr -> IO CInt
type XErrorHandler = Display -> XErrorEventPtr -> IO ()
data ErrorEvent = ErrorEvent {
ev_type :: !CInt
ev_display :: Display
ev_serialnum :: !CULong
ev_error_code :: !CUChar
ev_request_code :: !CUChar
ev_minor_code :: !CUChar
ev_resourceid :: !XID
}
mkXErrorHandler :: CXErrorHandler -> IO (FunPtr CXErrorHandler)
getXErrorHandler :: FunPtr CXErrorHandler -> CXErrorHandler
_xSetErrorHandler :: FunPtr CXErrorHandler -> IO (FunPtr CXErrorHandler)
setErrorHandler :: XErrorHandler -> IO ()
getErrorEvent :: XErrorEventPtr -> IO ErrorEvent
mapRaised :: Display -> Window -> IO CInt
Documentation
data Event Source
Constructors
AnyEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ConfigureRequestEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_parent :: !Window
ev_window :: !Window
ev_x :: !CInt
ev_y :: !CInt
ev_width :: !CInt
ev_height :: !CInt
ev_border_width :: !CInt
ev_above :: !Window
ev_detail :: !NotifyDetail
ev_value_mask :: !CULong
ConfigureEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_event :: !Window
ev_window :: !Window
ev_x :: !CInt
ev_y :: !CInt
ev_width :: !CInt
ev_height :: !CInt
ev_border_width :: !CInt
ev_above :: !Window
ev_override_redirect :: !Bool
MapRequestEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_parent :: !Window
ev_window :: !Window
KeyEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ev_root :: !Window
ev_subwindow :: !Window
ev_time :: !Time
ev_x :: !CInt
ev_y :: !CInt
ev_x_root :: !CInt
ev_y_root :: !CInt
ev_state :: !KeyMask
ev_keycode :: !KeyCode
ev_same_screen :: !Bool
ButtonEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ev_root :: !Window
ev_subwindow :: !Window
ev_time :: !Time
ev_x :: !CInt
ev_y :: !CInt
ev_x_root :: !CInt
ev_y_root :: !CInt
ev_state :: !KeyMask
ev_button :: !Button
ev_same_screen :: !Bool
MotionEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_x :: !CInt
ev_y :: !CInt
ev_window :: !Window
DestroyWindowEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_event :: !Window
ev_window :: !Window
UnmapEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_event :: !Window
ev_window :: !Window
ev_from_configure :: !Bool
MapNotifyEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_event :: !Window
ev_window :: !Window
ev_override_redirect :: !Bool
MappingNotifyEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ev_request :: !MappingRequest
ev_first_keycode :: !KeyCode
ev_count :: !CInt
CrossingEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ev_root :: !Window
ev_subwindow :: !Window
ev_time :: !Time
ev_x :: !CInt
ev_y :: !CInt
ev_x_root :: !CInt
ev_y_root :: !CInt
ev_mode :: !NotifyMode
ev_detail :: !NotifyDetail
ev_same_screen :: !Bool
ev_focus :: !Bool
ev_state :: !Modifier
SelectionRequest
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_owner :: !Window
ev_requestor :: !Window
ev_selection :: !Atom
ev_target :: !Atom
ev_property :: !Atom
ev_time :: !Time
PropertyEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ev_atom :: !Atom
ev_time :: !Time
ev_propstate :: !CInt
ExposeEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ev_x :: !CInt
ev_y :: !CInt
ev_width :: !CInt
ev_height :: !CInt
ev_count :: !CInt
ClientMessageEvent
ev_event_type :: !EventType
ev_serial :: !CULong
ev_send_event :: !Bool
ev_event_display :: Display
ev_window :: !Window
ev_message_type :: !Atom
ev_data :: ![CInt]
show/hide Instances
eventTable :: [(EventType, String)]Source
eventName :: Event -> StringSource
getEvent ::