X11-1.9.1: A binding to the X11 graphics library

Copyright | 2007 (c) Spencer Janssen
License | BSD3-style (see LICENSE)
Stability | experimental
Safe Haskell | None
Language | Haskell98

Graphics.X11.Xlib.Extras

Description

Synopsis

- 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
  }
- type XErrorHandler = Display -> XErrorEventPtr -> IO ()
- type CXErrorHandler = Display -> XErrorEventPtr -> IO CInt
- type XErrorEventPtr = Ptr ()
- 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
  }
- data ClassHint = ClassHint {
  - resName :: String
  - resClass :: String
  }
- 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
  }
- newtype FontSet = FontSet (Ptr FontSet)
- data TextProperty = TextProperty {
  - tp_value :: CString
  - tp_encoding :: Atom
  - tp_format :: CInt
  - tp_nitems :: Word64
  }
- data WindowAttributes = WindowAttributes {
  - wa_x, wa_y, wa_width, wa_height, wa_border_width :: CInt
  - wa_colormap :: Colormap
  - wa_map_installed :: Bool
  - wa_map_state :: CInt
  - wa_override_redirect :: Bool
  }
- 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
  }
- 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
    }
  - | SelectionClear {
    - ev_event_type :: !EventType
    - ev_serial :: !CULong
    - ev_send_event :: !Bool
    - ev_event_display :: Display
    - ev_window :: !Window
    - ev_selection :: !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]
    }
  - | RRScreenChangeNotifyEvent {
    - ev_event_type :: !EventType
    - ev_serial :: !CULong
    - ev_send_event :: !Bool
    - ev_event_display :: Display
    - ev_window :: !Window
    - ev_root :: !Window
    - ev_timestamp :: !Time
    - ev_config_timestamp :: !Time
    - ev_size_index :: !SizeID
    - ev_subpixel_order :: !SubpixelOrder
    - ev_rotation :: !Rotation
    - ev_width :: !CInt
    - ev_height :: !CInt
    - ev_mwidth :: !CInt
    - ev_mheight :: !CInt
    }
  - | RRNotifyEvent {
    - ev_event_type :: !EventType
    - ev_serial :: !CULong
    - ev_send_event :: !Bool
    - ev_event_display :: Display
    - ev_window :: !Window
    - ev_subtype :: !CInt
    }
  - | RRCrtcChangeNotifyEvent {
    - ev_event_type :: !EventType
    - ev_serial :: !CULong
    - ev_send_event :: !Bool
    - ev_event_display :: Display
    - ev_window :: !Window
    - ev_subtype :: !CInt
    - ev_crtc :: !RRCrtc
    - ev_rr_mode :: !RRMode
    - ev_rotation :: !Rotation
    - ev_x :: !CInt
    - ev_y :: !CInt
    - ev_rr_width :: !CUInt
    - ev_rr_height :: !CUInt
    }
  - | RROutputChangeNotifyEvent {
    - ev_event_type :: !EventType
    - ev_serial :: !CULong
    - ev_send_event :: !Bool
    - ev_event_display :: Display
    - ev_window :: !Window
    - ev_subtype :: !CInt
    - ev_output :: !RROutput
    - ev_crtc :: !RRCrtc
    - ev_rr_mode :: !RRMode
    - ev_rotation :: !Rotation
    - ev_connection :: !Connection
    - ev_subpixel_order :: !SubpixelOrder
    }
  - | RROutputPropertyNotifyEvent {
    - ev_event_type :: !EventType
    - ev_serial :: !CULong
    - ev_send_event :: !Bool
    - ev_event_display :: Display
    - ev_window :: !Window
    - ev_subtype :: !CInt
    - ev_output :: !RROutput
    - ev_property :: !Atom
    - ev_timestamp :: !Time
    - ev_rr_state :: !CInt
    }
  - | ScreenSaverNotifyEvent {
    - ev_event_type :: !EventType
    - ev_serial :: !CULong
    - ev_send_event :: !Bool
    - ev_event_display :: Display
    - ev_window :: !Window
    - ev_root :: !Window
    - ev_ss_state :: !XScreenSaverState
    - ev_ss_kind :: !XScreenSaverKind
    - ev_forced :: !Bool
    - ev_time :: !Time
    }
- xFreeModifiermap :: Ptr () -> IO (Ptr CInt)
- xGetModifierMapping :: Display -> IO (Ptr ())
- xGetCommand :: Display -> Window -> Ptr (Ptr CWString) -> Ptr CInt -> IO Status
- mapRaised :: Display -> Window -> IO CInt
- _xSetErrorHandler :: FunPtr CXErrorHandler -> IO (FunPtr CXErrorHandler)
- getXErrorHandler :: FunPtr CXErrorHandler -> CXErrorHandler
- mkXErrorHandler :: CXErrorHandler -> IO (FunPtr CXErrorHandler)
- xConvertSelection :: Display -> Atom -> Atom -> Atom -> Window -> Time -> IO ()
- xGetSelectionOwner :: Display -> Atom -> IO Window
- xSetSelectionOwner :: Display -> Atom -> Window -> Time -> IO ()
- isPrivateKeypadKey :: KeySym -> Bool
- isPFKey :: KeySym -> Bool
- isModifierKey :: KeySym -> Bool
- isMiscFunctionKey :: KeySym -> Bool
- isKeypadKey :: KeySym -> Bool
- isFunctionKey :: KeySym -> Bool
- isCursorKey :: KeySym -> Bool
- xSetWMHints :: Display -> Window -> Ptr WMHints -> IO Status
- xAllocWMHints :: IO (Ptr WMHints)
- xGetWMHints :: Display -> Window -> IO (Ptr WMHints)
- xGetClassHint :: Display -> Window -> Ptr ClassHint -> IO Status
- xGetWMNormalHints :: Display -> Window -> Ptr SizeHints -> Ptr CLong -> IO Status
- xUnmapWindow :: Display -> Window -> IO CInt
- xGetWindowProperty :: Display -> Window -> Atom -> CLong -> CLong -> Bool -> Atom -> Ptr Atom -> Ptr CInt -> Ptr CULong -> Ptr CULong -> Ptr (Ptr CUChar) -> IO Status
- xDeleteProperty :: Display -> Window -> Atom -> IO Status
- xChangeProperty :: Display -> Window -> Atom -> Atom -> CInt -> CInt -> Ptr CUChar -> CInt -> IO Status
- xRefreshKeyboardMapping :: Ptr () -> IO CInt
- xSetErrorHandler :: IO ()
- xGetWMProtocols :: Display -> Window -> Ptr (Ptr Atom) -> Ptr CInt -> IO Status
- xGetTransientForHint :: Display -> Window -> Ptr Window -> IO Status
- xFetchName :: Display -> Window -> Ptr CString -> IO Status
- xwcTextEscapement :: FontSet -> CWString -> CInt -> IO Int32
- xwcDrawImageString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> CWString -> CInt -> IO ()
- xwcDrawString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> CWString -> CInt -> IO ()
- xwcTextExtents :: FontSet -> CWString -> CInt -> Ptr Rectangle -> Ptr Rectangle -> IO CInt
- freeFontSet :: Display -> FontSet -> IO ()
- freeStringList :: Ptr CString -> IO ()
- xCreateFontSet :: Display -> CString -> Ptr (Ptr CString) -> Ptr CInt -> Ptr CString -> IO (Ptr FontSet)
- wcFreeStringList :: Ptr CWString -> IO ()
- xwcTextPropertyToTextList :: Display -> Ptr TextProperty -> Ptr (Ptr CWString) -> Ptr CInt -> IO CInt
- xGetTextProperty :: Display -> Window -> Ptr TextProperty -> Atom -> IO Status
- changeWindowAttributes :: Display -> Window -> AttributeMask -> Ptr SetWindowAttributes -> IO ()
- xGetWindowAttributes :: Display -> Window -> Ptr WindowAttributes -> IO Status
- xQueryTree :: Display -> Window -> Ptr Window -> Ptr Window -> Ptr (Ptr Window) -> Ptr CInt -> IO Status
- killClient :: Display -> Window -> IO CInt
- xConfigureWindow :: Display -> Window -> CULong -> Ptr WindowChanges -> IO CInt
- eventTable :: [(EventType, String)]
- eventName :: Event -> String
- getEvent :: XEventPtr -> IO Event
- none :: XID
- anyButton :: Button
- anyKey :: KeyCode
- currentTime :: Time
- configureWindow :: Display -> Window -> CULong -> WindowChanges -> IO ()
- queryTree :: Display -> Window -> IO (Window, Window, [Window])
- waIsUnmapped :: CInt
- waIsUnviewable :: CInt
- waIsViewable :: CInt
- getWindowAttributes :: Display -> Window -> IO WindowAttributes
- withServer :: Display -> IO () -> IO ()
- getTextProperty :: Display -> Window -> Atom -> IO TextProperty
- wcTextPropertyToTextList :: Display -> TextProperty -> IO [String]
- createFontSet :: Display -> String -> IO ([String], String, FontSet)
- wcTextExtents :: FontSet -> String -> (Rectangle, Rectangle)
- wcDrawString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> String -> IO ()
- wcDrawImageString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> String -> IO ()
- wcTextEscapement :: FontSet -> String -> Int32
- fetchName :: Display -> Window -> IO (Maybe String)
- getTransientForHint :: Display -> Window -> IO (Maybe Window)
- getWMProtocols :: Display -> Window -> IO [Atom]
- 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 ()
- setKeyEvent :: XEventPtr -> Window -> Window -> Window -> KeyMask -> KeyCode -> Bool -> IO ()
- refreshKeyboardMapping :: Event -> IO ()
- anyPropertyType :: Atom
- 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 ()
- propModeReplace :: CInt
- propModePrepend :: CInt
- propModeAppend :: CInt
- deleteProperty :: Display -> Window -> Atom -> IO ()
- unmapWindow :: Display -> Window -> IO ()
- pMinSizeBit :: Int
- pMaxSizeBit :: Int
- pResizeIncBit :: Int
- pAspectBit :: Int
- pBaseSizeBit :: Int
- pWinGravityBit :: Int
- getWMNormalHints :: Display -> Window -> IO SizeHints
- getClassHint :: Display -> Window -> IO ClassHint
- withdrawnState :: Int
- normalState :: Int
- iconicState :: Int
- inputHintBit :: Int
- stateHintBit :: Int
- iconPixmapHintBit :: Int
- iconWindowHintBit :: Int
- iconPositionHintBit :: Int
- iconMaskHintBit :: Int
- windowGroupHintBit :: Int
- urgencyHintBit :: Int
- allHintsBitmask :: CLong
- getWMHints :: Display -> Window -> IO WMHints
- setWMHints :: Display -> Window -> WMHints -> IO Status
- setErrorHandler :: XErrorHandler -> IO ()
- getErrorEvent :: XErrorEventPtr -> IO ErrorEvent
- getCommand :: Display -> Window -> IO [String]
- getModifierMapping :: Display -> IO [(Modifier, [KeyCode])]
- xFree :: Ptr a -> IO CInt

# Documentation

data ErrorEvent Source #

Constructors

ErrorEvent |

Fields

- ev_type :: !CInt
- ev_display :: Display
- ev_serialnum :: !CULong
- ev_error_code :: !CUChar
- ev_request_code :: !CUChar
- ev_minor_code :: !CUChar
- ev_resourceid :: !XID

type XErrorHandler = Display -> XErrorEventPtr -> IO () Source #

type CXErrorHandler = Display -> XErrorEventPtr -> IO CInt Source #

type XErrorEventPtr = Ptr () Source #

data WMHints Source #

Constructors

WMHints |

Fields

- 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

#### Instances

Instances details

Storable WMHints Source # |
Instance details Defined in Graphics.X11.Xlib.Extras Methods sizeOf :: WMHints -> Int alignment :: WMHints -> Int peekElemOff :: Ptr WMHints -> Int -> IO WMHints pokeElemOff :: Ptr WMHints -> Int -> WMHints -> IO () peekByteOff :: Ptr b -> Int -> IO WMHints pokeByteOff :: Ptr b -> Int -> WMHints -> IO () peek :: Ptr WMHints -> IO WMHints poke :: Ptr WMHints -> WMHints -> IO ()

data ClassHint Source #

Constructors

ClassHint |

Fields

- resName :: String
- resClass :: String

data SizeHints Source #

Constructors

SizeHints |

Fields

- 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

#### Instances

Instances details

Storable SizeHints Source # |

Instance details

Defined in Graphics.X11.Xlib.Extras

Methods

sizeOf :: SizeHints -> Int

alignment :: SizeHints -> Int

peekElemOff :: Ptr SizeHints -> Int -> IO SizeHints

pokeElemOff :: Ptr SizeHints -> Int -> SizeHints -> IO ()

peekByteOff :: Ptr b -> Int -> IO SizeHints

pokeByteOff :: Ptr b -> Int -> SizeHints -> IO ()

peek :: Ptr SizeHints -> IO SizeHints

poke :: Ptr SizeHints -> SizeHints -> IO ()

newtype FontSet Source #

Constructors

FontSet (Ptr FontSet) |

#### Instances

Instances details

Eq FontSet Source # |
Instance details Defined in Graphics.X11.Xlib.Extras Methods (==) :: FontSet -> FontSet -> Bool (/=) :: FontSet -> FontSet -> Bool
Ord FontSet Source # |
Instance details Defined in Graphics.X11.Xlib.Extras Methods compare :: FontSet -> FontSet -> Ordering (<) :: FontSet -> FontSet -> Bool (<=) :: FontSet -> FontSet -> Bool (>) :: FontSet -> FontSet -> Bool (>=) :: FontSet -> FontSet -> Bool max :: FontSet -> FontSet -> FontSet min :: FontSet -> FontSet -> FontSet
Show FontSet Source # |
Instance details Defined in Graphics.X11.Xlib.Extras Methods showsPrec :: Int -> FontSet -> ShowS show :: FontSet -> String showList :: [FontSet] -> ShowS

data TextProperty Source #

Constructors

TextProperty |

Fields

- tp_value :: CString
- tp_encoding :: Atom
- tp_format :: CInt
- tp_nitems :: Word64

#### Instances

Instances details

Storable TextProperty Source # |

Instance details

Defined in Graphics.X11.Xlib.Extras

Methods

sizeOf :: TextProperty -> Int

alignment :: TextProperty -> Int

peekElemOff :: Ptr TextProperty -> Int -> IO TextProperty

pokeElemOff :: Ptr TextProperty -> Int -> TextProperty -> IO ()

peekByteOff :: Ptr b -> Int -> IO TextProperty

pokeByteOff :: Ptr b -> Int -> TextProperty -> IO ()

peek :: Ptr TextProperty -> IO TextProperty

poke :: Ptr TextProperty -> TextProperty -> IO ()

data WindowAttributes Source #

Constructors

WindowAttributes |

Fields

- wa_x, wa_y, wa_width, wa_height, wa_border_width :: CInt
- wa_colormap :: Colormap
- wa_map_installed :: Bool
- wa_map_state :: CInt
- wa_override_redirect :: Bool

#### Instances

Instances details

Storable WindowAttributes Source # |

Instance details

Defined in Graphics.X11.Xlib.Extras

Methods

sizeOf :: WindowAttributes -> Int

alignment :: WindowAttributes -> Int

peekElemOff :: Ptr WindowAttributes -> Int -> IO WindowAttributes

pokeElemOff :: Ptr WindowAttributes -> Int -> WindowAttributes -> IO ()

peekByteOff :: Ptr b -> Int -> IO WindowAttributes

pokeByteOff :: Ptr b -> Int -> WindowAttributes -> IO ()

peek :: Ptr WindowAttributes -> IO WindowAttributes

poke :: Ptr WindowAttributes -> WindowAttributes -> IO ()

data WindowChanges Source #

Constructors

WindowChanges |

Fields

- wc_x :: CInt
- wc_y :: CInt
- wc_width :: CInt
- wc_height :: CInt
- wc_border_width :: CInt
- wc_sibling :: Window
- wc_stack_mode :: CInt

#### Instances

Instances details

Storable WindowChanges Source # |

Instance details

Defined in Graphics.X11.Xlib.Extras

Methods

sizeOf :: WindowChanges -> Int

alignment :: WindowChanges -> Int

peekElemOff :: Ptr WindowChanges -> Int -> IO WindowChanges

pokeElemOff :: Ptr WindowChanges -> Int -> WindowChanges -> IO ()

peekByteOff :: Ptr b -> Int -> IO WindowChanges

pokeByteOff :: Ptr b -> Int -> WindowChanges -> IO ()

peek :: Ptr WindowChanges -> IO WindowChanges

poke :: Ptr WindowChanges -> WindowChanges -> IO ()

data Event Source #

Constructors

AnyEvent |

Fields

- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window

ConfigureRequestEvent |

Fields

- 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 |

Fields

- 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 |

Fields

- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_parent :: !Window
- ev_window :: !Window

KeyEvent |

Fields

- 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 |

Fields

- 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 |

Fields

- 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 |

Fields

- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_event :: !Window
- ev_window :: !Window

UnmapEvent |

Fields

- 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 |

Fields

- 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 |

Fields

- 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 |

Fields

- 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 |

Fields

- 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

SelectionClear |

Fields

- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_selection :: !Atom
- ev_time :: !Time

PropertyEvent |

Fields

- 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 |

Fields

- 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 |

Fields

- 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]

RRScreenChangeNotifyEvent |

Fields

- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_root :: !Window
- ev_timestamp :: !Time
- ev_config_timestamp :: !Time
- ev_size_index :: !SizeID
- ev_subpixel_order :: !SubpixelOrder
- ev_rotation :: !Rotation
- ev_width :: !CInt
- ev_height :: !CInt
- ev_mwidth :: !CInt
- ev_mheight :: !CInt

RRNotifyEvent |

Fields

- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_subtype :: !CInt

RRCrtcChangeNotifyEvent |

Fields

- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_subtype :: !CInt
- ev_crtc :: !RRCrtc
- ev_rr_mode :: !RRMode
- ev_rotation :: !Rotation
- ev_x :: !CInt
- ev_y :: !CInt
- ev_rr_width :: !CUInt
- ev_rr_height :: !CUInt

RROutputChangeNotifyEvent |

Fields

- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_subtype :: !CInt
- ev_output :: !RROutput
- ev_crtc :: !RRCrtc
- ev_rr_mode :: !RRMode
- ev_rotation :: !Rotation
- ev_connection :: !Connection
- ev_subpixel_order :: !SubpixelOrder

RROutputPropertyNotifyEvent |

Fields

- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_subtype :: !CInt
- ev_output :: !RROutput
- ev_property :: !Atom
- ev_timestamp :: !Time
- ev_rr_state :: !CInt

ScreenSaverNotifyEvent |

Fields

- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_root :: !Window
- ev_ss_state :: !XScreenSaverState
- ev_ss_kind :: !XScreenSaverKind
- ev_forced :: !Bool
- ev_time :: !Time

#### Instances

Instances details

Show Event Source # |
Instance details Defined in Graphics.X11.Xlib.Extras Methods showsPrec :: Int -> Event -> ShowS show :: Event -> String showList :: [Event] -> ShowS

xFreeModifiermap :: Ptr () -> IO (Ptr CInt) Source #

xGetModifierMapping :: Display -> IO (Ptr ()) Source #

xGetCommand :: Display -> Window -> Ptr (Ptr CWString) -> Ptr CInt -> IO Status Source #

mapRaised :: Display -> Window -> IO CInt Source #

A binding to XMapRaised.

_xSetErrorHandler :: FunPtr CXErrorHandler -> IO (FunPtr CXErrorHandler) Source #

getXErrorHandler :: FunPtr CXErrorHandler -> CXErrorHandler Source #

mkXErrorHandler :: CXErrorHandler -> IO (FunPtr CXErrorHandler) Source #

xConvertSelection :: Display -> Atom -> Atom -> Atom -> Window -> Time -> IO () Source #

xGetSelectionOwner :: Display -> Atom -> IO Window Source #

xSetSelectionOwner :: Display -> Atom -> Window -> Time -> IO () Source #

isPrivateKeypadKey :: KeySym -> Bool Source #

isPFKey :: KeySym -> Bool Source #

isModifierKey :: KeySym -> Bool Source #

isMiscFunctionKey :: KeySym -> Bool Source #

isKeypadKey :: KeySym -> Bool Source #

isFunctionKey :: KeySym -> Bool Source #

isCursorKey :: KeySym -> Bool Source #

xSetWMHints :: Display -> Window -> Ptr WMHints -> IO Status Source #

xAllocWMHints :: IO (Ptr WMHints) Source #

xGetWMHints :: Display -> Window -> IO (Ptr WMHints) Source #

xGetClassHint :: Display -> Window -> Ptr ClassHint -> IO Status Source #

xGetWMNormalHints :: Display -> Window -> Ptr SizeHints -> Ptr CLong -> IO Status Source #

xUnmapWindow :: Display -> Window -> IO CInt Source #

xGetWindowProperty :: Display -> Window -> Atom -> CLong -> CLong -> Bool -> Atom -> Ptr Atom -> Ptr CInt -> Ptr CULong -> Ptr CULong -> Ptr (Ptr CUChar) -> IO Status Source #

xDeleteProperty :: Display -> Window -> Atom -> IO Status Source #

xChangeProperty :: Display -> Window -> Atom -> Atom -> CInt -> CInt -> Ptr CUChar -> CInt -> IO Status Source #

xRefreshKeyboardMapping :: Ptr () -> IO CInt Source #

xSetErrorHandler :: IO () Source #

xGetWMProtocols :: Display -> Window -> Ptr (Ptr Atom) -> Ptr CInt -> IO Status Source #

xGetTransientForHint :: Display -> Window -> Ptr Window -> IO Status Source #

xFetchName :: Display -> Window -> Ptr CString -> IO Status Source #

xwcTextEscapement :: FontSet -> CWString -> CInt -> IO Int32 Source #

xwcDrawImageString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> CWString -> CInt -> IO () Source #

xwcDrawString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> CWString -> CInt -> IO () Source #

xwcTextExtents :: FontSet -> CWString -> CInt -> Ptr Rectangle -> Ptr Rectangle -> IO CInt Source #

freeFontSet :: Display -> FontSet -> IO () Source #

freeStringList :: Ptr CString -> IO () Source #

xCreateFontSet :: Display -> CString -> Ptr (Ptr CString) -> Ptr CInt -> Ptr CString -> IO (Ptr FontSet) Source #

wcFreeStringList :: Ptr CWString -> IO () Source #

xwcTextPropertyToTextList :: Display -> Ptr TextProperty -> Ptr (Ptr CWString) -> Ptr CInt -> IO CInt Source #

xGetTextProperty :: Display -> Window -> Ptr TextProperty -> Atom -> IO Status Source #

changeWindowAttributes :: Display -> Window -> AttributeMask -> Ptr SetWindowAttributes -> IO () Source #

interface to the X11 library function `XChangeWindowAttributes()`.

xGetWindowAttributes :: Display -> Window -> Ptr WindowAttributes -> IO Status Source #

xQueryTree :: Display -> Window -> Ptr Window -> Ptr Window -> Ptr (Ptr Window) -> Ptr CInt -> IO Status Source #

killClient :: Display -> Window -> IO CInt Source #

xConfigureWindow :: Display -> Window -> CULong -> Ptr WindowChanges -> IO CInt Source #

eventTable :: [(EventType, String)] Source #

eventName :: Event -> String Source #

getEvent :: XEventPtr -> IO Event Source #

none :: XID Source #

anyButton :: Button Source #

anyKey :: KeyCode Source #

currentTime :: Time Source #

configureWindow :: Display -> Window -> CULong -> WindowChanges -> IO () Source #

queryTree :: Display -> Window -> IO (Window, Window, [Window]) Source #

waIsUnmapped :: CInt Source #

waIsUnviewable :: CInt Source #

waIsViewable :: CInt Source #

getWindowAttributes :: Display -> Window -> IO WindowAttributes Source #

withServer :: Display -> IO () -> IO () Source #

Run an action with the server

getTextProperty :: Display -> Window -> Atom -> IO TextProperty Source #

wcTextPropertyToTextList :: Display -> TextProperty -> IO [String] Source #

createFontSet :: Display -> String -> IO ([String], String, FontSet) Source #

wcTextExtents :: FontSet -> String -> (Rectangle, Rectangle) Source #

wcDrawString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> String -> IO () Source #

wcDrawImageString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> String -> IO () Source #

wcTextEscapement :: FontSet -> String -> Int32 Source #

fetchName :: Display -> Window -> IO (Maybe String) Source #

getTransientForHint :: Display -> Window -> IO (Maybe Window) Source #

getWMProtocols :: Display -> Window -> IO [Atom] Source #

The XGetWMProtocols function returns the list of atoms stored in the WM_PROTOCOLS property on the specified window. These atoms describe window manager protocols in which the owner of this window is willing to participate. If the property exists, is of type ATOM, is of format 32, and the atom WM_PROTOCOLS can be interned, XGetWMProtocols sets the protocols_return argument to a list of atoms, sets the count_return argument to the number of elements in the list, and returns a nonzero status. Otherwise, it sets neither of the return arguments and returns a zero status. To release the list of atoms, use XFree.

setEventType :: XEventPtr -> EventType -> IO () Source #

setSelectionNotify :: XEventPtr -> Window -> Atom -> Atom -> Atom -> Time -> IO () Source #

setClientMessageEvent :: XEventPtr -> Window -> Atom -> CInt -> Atom -> Time -> IO () Source #

setConfigureEvent :: XEventPtr -> Window -> Window -> CInt -> CInt -> CInt -> CInt -> CInt -> Window -> Bool -> IO () Source #

setKeyEvent :: XEventPtr -> Window -> Window -> Window -> KeyMask -> KeyCode -> Bool -> IO () Source #

refreshKeyboardMapping :: Event -> IO () Source #

refreshKeyboardMapping. TODO Remove this binding when the fix has been commited to X11

anyPropertyType :: Atom Source #

rawGetWindowProperty :: Storable a => Int -> Display -> Atom -> Window -> IO (Maybe [a]) Source #

getWindowProperty8 :: Display -> Atom -> Window -> IO (Maybe [CChar]) Source #

getWindowProperty16 :: Display -> Atom -> Window -> IO (Maybe [CShort]) Source #

getWindowProperty32 :: Display -> Atom -> Window -> IO (Maybe [CLong]) Source #

changeProperty8 :: Display -> Window -> Atom -> Atom -> CInt -> [CChar] -> IO () Source #

changeProperty16 :: Display -> Window -> Atom -> Atom -> CInt -> [CShort] -> IO () Source #

changeProperty32 :: Display -> Window -> Atom -> Atom -> CInt -> [CLong] -> IO () Source #

propModeReplace :: CInt Source #

propModePrepend :: CInt Source #

propModeAppend :: CInt Source #

deleteProperty :: Display -> Window -> Atom -> IO () Source #

unmapWindow :: Display -> Window -> IO () Source #

pMinSizeBit :: Int Source #

pMaxSizeBit :: Int Source #

pResizeIncBit :: Int Source #

pAspectBit :: Int Source #

pBaseSizeBit :: Int Source #

pWinGravityBit :: Int Source #

getWMNormalHints :: Display -> Window -> IO SizeHints Source #

getClassHint :: Display -> Window -> IO ClassHint Source #

withdrawnState :: Int Source #

normalState :: Int Source #

iconicState :: Int Source #

inputHintBit :: Int Source #

stateHintBit :: Int Source #

iconPixmapHintBit :: Int Source #

iconWindowHintBit :: Int Source #

iconPositionHintBit :: Int Source #

iconMaskHintBit :: Int Source #

windowGroupHintBit :: Int Source #

urgencyHintBit :: Int Source #

allHintsBitmask :: CLong Source #

getWMHints :: Display -> Window -> IO WMHints Source #

setWMHints :: Display -> Window -> WMHints -> IO Status Source #

setErrorHandler :: XErrorHandler -> IO () Source #

A binding to XSetErrorHandler. NOTE: This is pretty experimental because of safe vs. unsafe calls. I changed sync to a safe call, but there *might* be other calls that cause a problem

getErrorEvent :: XErrorEventPtr -> IO ErrorEvent Source #

Retrieves error event data from a pointer to an XErrorEvent and puts it into an ErrorEvent.

getCommand :: Display -> Window -> IO [String] Source #

getModifierMapping :: Display -> IO [(Modifier, [KeyCode])] Source #

xFree :: Ptr a -> IO CInt Source #