X11-1.10.3: A binding to the X11 graphics library

Copyright | (c) Alastair Reid 1999-2003
License | BSD-style (see the file libraries/base/LICENSE)
Maintainer | libraries@haskell.org
Stability | provisional
Portability | portable
Safe Haskell | None
Language | Haskell98

Graphics.X11.Xlib

Contents

- Conventions
- Types
- X11 library functions

Description

A collection of FFI declarations for interfacing with Xlib.

The library aims to provide a direct translation of the X binding into Haskell so the most important documentation you should read is The Xlib Programming Manual, available online at http://tronche.com/gui/x/xlib/. Let me say that again because it is very important. Get hold of this documentation and read it: it tells you almost everything you need to know to use this library.

Synopsis

- module Graphics.X11.Types
- newtype Display = Display (Ptr Display)
- data Screen
- data Visual
- data GC
- data SetWindowAttributes
- data VisualInfo = VisualInfo {
  - visualInfo_visual :: Visual
  - visualInfo_visualID :: VisualID
  - visualInfo_screen :: ScreenNumber
  - visualInfo_depth :: CInt
  - visualInfo_class :: CInt
  - visualInfo_redMask :: CULong
  - visualInfo_greenMask :: CULong
  - visualInfo_blueMask :: CULong
  - visualInfo_colormapSize :: CInt
  - visualInfo_bitsPerRGB :: CInt
  }
- data Point = Point {
  - pt_x :: !Position
  - pt_y :: !Position
  }
- data Rectangle = Rectangle {
  - rect_x :: !Position
  - rect_y :: !Position
  - rect_width :: !Dimension
  - rect_height :: !Dimension
  }
- data Arc = Arc {
  - arc_x :: Position
  - arc_y :: Position
  - arc_width :: Dimension
  - arc_height :: Dimension
  - arc_angle1 :: Angle
  - arc_angle2 :: Angle
  }
- data Segment = Segment {
  - seg_x1 :: Position
  - seg_y1 :: Position
  - seg_x2 :: Position
  - seg_y2 :: Position
  }
- data Color = Color {
  - color_pixel :: Pixel
  - color_red :: Word16
  - color_green :: Word16
  - color_blue :: Word16
  - color_flags :: Word8
  }
- type Pixel = Word64
- type Position = Int32
- type Dimension = Word32
- type Angle = CInt
- type ScreenNumber = Word32
- type Buffer = CInt
- module Graphics.X11.Xlib.Event
- module Graphics.X11.Xlib.Display
- module Graphics.X11.Xlib.Screen
- module Graphics.X11.Xlib.Window
- module Graphics.X11.Xlib.Context
- module Graphics.X11.Xlib.Color
- module Graphics.X11.Xlib.Cursor
- module Graphics.X11.Xlib.Font
- module Graphics.X11.Xlib.Atom
- module Graphics.X11.Xlib.Region
- module Graphics.X11.Xlib.Image
- module Graphics.X11.Xlib.Misc

# Conventions

In translating the library, we had to change names to conform with Haskell's lexical syntax: function names and names of constants must start with a lowercase letter; type names must start with an uppercase letter. The case of the remaining letters is unchanged.

In addition, we chose to take advantage of Haskell's module system to allow us to drop common prefixes (`X`, `XA_`, etc.) attached to X11 identifiers.

We named enumeration types so that function types would be easier to understand. For example, we added `Status`, `WindowClass`, etc. Note that the types are synonyms for `Int` so no extra typesafety was obtained.

We consistently raise exceptions when a function returns an error code. In practice, this only affects the following functions because most Xlib functions do not return error codes: `allocColor`, `allocNamedColor`, `fetchBuffer`, `fetchBytes`, `fontFromGC`, `getGeometry`, `getIconName`, `iconifyWindow`, `loadQueryFont`, `lookupColor`, `openDisplay`, `parseColor`, `queryBestCursor`, `queryBestSize`, `queryBestStipple`, `queryBestTile`, `rotateBuffers`, `selectInput`, `storeBuffer`, `storeBytes`, `withdrawWindow`.

# Types

module Graphics.X11.Types

newtype Display #

pointer to an X11 `Display` structure

Constructors

Display (Ptr Display) |

#### Instances

Instances details

Data Display # |

Instance details

Defined in Graphics.X11.Xlib.Types

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Display -> c Display #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Display #

toConstr :: Display -> Constr #

dataTypeOf :: Display -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Display) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Display) #

gmapT :: (forall b. Data b => b -> b) -> Display -> Display #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Display -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Display -> r #

gmapQ :: (forall d. Data d => d -> u) -> Display -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Display -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Display -> m Display #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Display -> m Display #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Display -> m Display #

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

data Screen #

pointer to an X11 `Screen` structure

#### Instances

Instances details

Data Screen # |

Instance details

Defined in Graphics.X11.Xlib.Types

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Screen -> c Screen #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Screen #

toConstr :: Screen -> Constr #

dataTypeOf :: Screen -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Screen) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Screen) #

gmapT :: (forall b. Data b => b -> b) -> Screen -> Screen #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Screen -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Screen -> r #

gmapQ :: (forall d. Data d => d -> u) -> Screen -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Screen -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Screen -> m Screen #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Screen -> m Screen #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Screen -> m Screen #

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

data Visual #

pointer to an X11 `Visual` structure

#### Instances

Instances details

Data Visual # |

Instance details

Defined in Graphics.X11.Xlib.Types

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Visual -> c Visual #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Visual #

toConstr :: Visual -> Constr #

dataTypeOf :: Visual -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Visual) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Visual) #

gmapT :: (forall b. Data b => b -> b) -> Visual -> Visual #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Visual -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Visual -> r #

gmapQ :: (forall d. Data d => d -> u) -> Visual -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Visual -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Visual -> m Visual #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Visual -> m Visual #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Visual -> m Visual #

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

data GC #

pointer to an X11 `GC` structure

#### Instances

Instances details

Data GC # |

Instance details

Defined in Graphics.X11.Xlib.Types

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> GC -> c GC #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c GC #

toConstr :: GC -> Constr #

dataTypeOf :: GC -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c GC) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GC) #

gmapT :: (forall b. Data b => b -> b) -> GC -> GC #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> GC -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> GC -> r #

gmapQ :: (forall d. Data d => d -> u) -> GC -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> GC -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> GC -> m GC #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> GC -> m GC #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> GC -> m GC #

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

data SetWindowAttributes #

pointer to an X11 `XSetWindowAttributes` structure

#### Instances

Instances details

Data SetWindowAttributes # |

Instance details

Defined in Graphics.X11.Xlib.Types

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SetWindowAttributes -> c SetWindowAttributes #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SetWindowAttributes #

toConstr :: SetWindowAttributes -> Constr #

dataTypeOf :: SetWindowAttributes -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SetWindowAttributes) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SetWindowAttributes) #

gmapT :: (forall b. Data b => b -> b) -> SetWindowAttributes -> SetWindowAttributes #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SetWindowAttributes -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SetWindowAttributes -> r #

gmapQ :: (forall d. Data d => d -> u) -> SetWindowAttributes -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SetWindowAttributes -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SetWindowAttributes -> m SetWindowAttributes #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SetWindowAttributes -> m SetWindowAttributes #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SetWindowAttributes -> m SetWindowAttributes #

Show SetWindowAttributes # |
Instance details Defined in Graphics.X11.Xlib.Types Methods showsPrec :: Int -> SetWindowAttributes -> ShowS # show :: SetWindowAttributes -> String # showList :: [SetWindowAttributes] -> ShowS #
Eq SetWindowAttributes # |
Instance details Defined in Graphics.X11.Xlib.Types Methods (==) :: SetWindowAttributes -> SetWindowAttributes -> Bool # (/=) :: SetWindowAttributes -> SetWindowAttributes -> Bool #
Ord SetWindowAttributes # |

Instance details

Defined in Graphics.X11.Xlib.Types

Methods

compare :: SetWindowAttributes -> SetWindowAttributes -> Ordering #

(<) :: SetWindowAttributes -> SetWindowAttributes -> Bool #

(<=) :: SetWindowAttributes -> SetWindowAttributes -> Bool #

(>) :: SetWindowAttributes -> SetWindowAttributes -> Bool #

(>=) :: SetWindowAttributes -> SetWindowAttributes -> Bool #

max :: SetWindowAttributes -> SetWindowAttributes -> SetWindowAttributes #

min :: SetWindowAttributes -> SetWindowAttributes -> SetWindowAttributes #

data VisualInfo #

counterpart of an X11 `XVisualInfo` structure

Constructors

VisualInfo |

Fields

- visualInfo_visual :: Visual
- visualInfo_visualID :: VisualID
- visualInfo_screen :: ScreenNumber
- visualInfo_depth :: CInt
- visualInfo_class :: CInt
- visualInfo_redMask :: CULong
- visualInfo_greenMask :: CULong
- visualInfo_blueMask :: CULong
- visualInfo_colormapSize :: CInt
- visualInfo_bitsPerRGB :: CInt

#### Instances

Instances details

Default VisualInfo # |
Instance details Defined in Graphics.X11.Xlib.Types Methods def :: VisualInfo #
Storable VisualInfo # |

Instance details

Defined in Graphics.X11.Xlib.Types

Methods

sizeOf :: VisualInfo -> Int #

alignment :: VisualInfo -> Int #

peekElemOff :: Ptr VisualInfo -> Int -> IO VisualInfo #

pokeElemOff :: Ptr VisualInfo -> Int -> VisualInfo -> IO () #

peekByteOff :: Ptr b -> Int -> IO VisualInfo #

pokeByteOff :: Ptr b -> Int -> VisualInfo -> IO () #

peek :: Ptr VisualInfo -> IO VisualInfo #

poke :: Ptr VisualInfo -> VisualInfo -> IO () #

Show VisualInfo # |
Instance details Defined in Graphics.X11.Xlib.Types Methods showsPrec :: Int -> VisualInfo -> ShowS # show :: VisualInfo -> String # showList :: [VisualInfo] -> ShowS #
Eq VisualInfo # |
Instance details Defined in Graphics.X11.Xlib.Types Methods (==) :: VisualInfo -> VisualInfo -> Bool # (/=) :: VisualInfo -> VisualInfo -> Bool #

data Point #

counterpart of an X11 `XPoint` structure

Constructors

Point |

Fields

- pt_x :: !Position
- pt_y :: !Position

#### Instances

Instances details

Data Point # |

Instance details

Defined in Graphics.X11.Xlib.Types

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Point -> c Point #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Point #

toConstr :: Point -> Constr #

dataTypeOf :: Point -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Point) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Point) #

gmapT :: (forall b. Data b => b -> b) -> Point -> Point #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Point -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Point -> r #

gmapQ :: (forall d. Data d => d -> u) -> Point -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Point -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Point -> m Point #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Point -> m Point #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Point -> m Point #

Storable Point # |
Instance details Defined in Graphics.X11.Xlib.Types Methods sizeOf :: Point -> Int # alignment :: Point -> Int # peekElemOff :: Ptr Point -> Int -> IO Point # pokeElemOff :: Ptr Point -> Int -> Point -> IO () # peekByteOff :: Ptr b -> Int -> IO Point # pokeByteOff :: Ptr b -> Int -> Point -> IO () # peek :: Ptr Point -> IO Point # poke :: Ptr Point -> Point -> IO () #
Show Point # |
Instance details Defined in Graphics.X11.Xlib.Types Methods showsPrec :: Int -> Point -> ShowS # show :: Point -> String # showList :: [Point] -> ShowS #
Eq Point # |
Instance details Defined in Graphics.X11.Xlib.Types Methods (==) :: Point -> Point -> Bool # (/=) :: Point -> Point -> Bool #

data Rectangle #

counterpart of an X11 `XRectangle` structure

Constructors

Rectangle |

Fields

- rect_x :: !Position
- rect_y :: !Position
- rect_width :: !Dimension
- rect_height :: !Dimension

#### Instances

Instances details

Data Rectangle # |

Instance details

Defined in Graphics.X11.Xlib.Types

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Rectangle -> c Rectangle #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Rectangle #

toConstr :: Rectangle -> Constr #

dataTypeOf :: Rectangle -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Rectangle) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Rectangle) #

gmapT :: (forall b. Data b => b -> b) -> Rectangle -> Rectangle #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Rectangle -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Rectangle -> r #

gmapQ :: (forall d. Data d => d -> u) -> Rectangle -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Rectangle -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Rectangle -> m Rectangle #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Rectangle -> m Rectangle #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Rectangle -> m Rectangle #

Storable Rectangle # |

Instance details

Defined in Graphics.X11.Xlib.Types

Methods

sizeOf :: Rectangle -> Int #

alignment :: Rectangle -> Int #

peekElemOff :: Ptr Rectangle -> Int -> IO Rectangle #

pokeElemOff :: Ptr Rectangle -> Int -> Rectangle -> IO () #

peekByteOff :: Ptr b -> Int -> IO Rectangle #

pokeByteOff :: Ptr b -> Int -> Rectangle -> IO () #

peek :: Ptr Rectangle -> IO Rectangle #

poke :: Ptr Rectangle -> Rectangle -> IO () #

Read Rectangle # |
Instance details Defined in Graphics.X11.Xlib.Types Methods readsPrec :: Int -> ReadS Rectangle # readList :: ReadS [Rectangle] # readPrec :: ReadPrec Rectangle # readListPrec :: ReadPrec [Rectangle] #
Show Rectangle # |
Instance details Defined in Graphics.X11.Xlib.Types Methods showsPrec :: Int -> Rectangle -> ShowS # show :: Rectangle -> String # showList :: [Rectangle] -> ShowS #
Eq Rectangle # |
Instance details Defined in Graphics.X11.Xlib.Types Methods (==) :: Rectangle -> Rectangle -> Bool # (/=) :: Rectangle -> Rectangle -> Bool #

data Arc #

counterpart of an X11 `XArc` structure

Constructors

Arc |

Fields

- arc_x :: Position
- arc_y :: Position
- arc_width :: Dimension
- arc_height :: Dimension
- arc_angle1 :: Angle
- arc_angle2 :: Angle

#### Instances

Instances details

Storable Arc # |
Instance details Defined in Graphics.X11.Xlib.Types Methods sizeOf :: Arc -> Int # alignment :: Arc -> Int # peekElemOff :: Ptr Arc -> Int -> IO Arc # pokeElemOff :: Ptr Arc -> Int -> Arc -> IO () # peekByteOff :: Ptr b -> Int -> IO Arc # pokeByteOff :: Ptr b -> Int -> Arc -> IO () # peek :: Ptr Arc -> IO Arc # poke :: Ptr Arc -> Arc -> IO () #
Show Arc # |
Instance details Defined in Graphics.X11.Xlib.Types Methods showsPrec :: Int -> Arc -> ShowS # show :: Arc -> String # showList :: [Arc] -> ShowS #
Eq Arc # |
Instance details Defined in Graphics.X11.Xlib.Types Methods (==) :: Arc -> Arc -> Bool # (/=) :: Arc -> Arc -> Bool #

data Segment #

counterpart of an X11 `XSegment` structure

Constructors

Segment |

Fields

- seg_x1 :: Position
- seg_y1 :: Position
- seg_x2 :: Position
- seg_y2 :: Position

#### Instances

Instances details

Data Segment # |

Instance details

Defined in Graphics.X11.Xlib.Types

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Segment -> c Segment #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Segment #

toConstr :: Segment -> Constr #

dataTypeOf :: Segment -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Segment) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Segment) #

gmapT :: (forall b. Data b => b -> b) -> Segment -> Segment #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Segment -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Segment -> r #

gmapQ :: (forall d. Data d => d -> u) -> Segment -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Segment -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Segment -> m Segment #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Segment -> m Segment #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Segment -> m Segment #

Storable Segment # |
Instance details Defined in Graphics.X11.Xlib.Types Methods sizeOf :: Segment -> Int # alignment :: Segment -> Int # peekElemOff :: Ptr Segment -> Int -> IO Segment # pokeElemOff :: Ptr Segment -> Int -> Segment -> IO () # peekByteOff :: Ptr b -> Int -> IO Segment # pokeByteOff :: Ptr b -> Int -> Segment -> IO () # peek :: Ptr Segment -> IO Segment # poke :: Ptr Segment -> Segment -> IO () #
Show Segment # |
Instance details Defined in Graphics.X11.Xlib.Types Methods showsPrec :: Int -> Segment -> ShowS # show :: Segment -> String # showList :: [Segment] -> ShowS #
Eq Segment # |
Instance details Defined in Graphics.X11.Xlib.Types Methods (==) :: Segment -> Segment -> Bool # (/=) :: Segment -> Segment -> Bool #

data Color #

counterpart of an X11 `XColor` structure

Constructors

Color |

Fields

- color_pixel :: Pixel
- color_red :: Word16
- color_green :: Word16
- color_blue :: Word16
- color_flags :: Word8

#### Instances

Instances details

Data Color # |

Instance details

Defined in Graphics.X11.Xlib.Types

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Color -> c Color #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Color #

toConstr :: Color -> Constr #

dataTypeOf :: Color -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Color) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Color) #

gmapT :: (forall b. Data b => b -> b) -> Color -> Color #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Color -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Color -> r #

gmapQ :: (forall d. Data d => d -> u) -> Color -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Color -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Color -> m Color #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Color -> m Color #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Color -> m Color #

Storable Color # |
Instance details Defined in Graphics.X11.Xlib.Types Methods sizeOf :: Color -> Int # alignment :: Color -> Int # peekElemOff :: Ptr Color -> Int -> IO Color # pokeElemOff :: Ptr Color -> Int -> Color -> IO () # peekByteOff :: Ptr b -> Int -> IO Color # pokeByteOff :: Ptr b -> Int -> Color -> IO () # peek :: Ptr Color -> IO Color # poke :: Ptr Color -> Color -> IO () #
Show Color # |
Instance details Defined in Graphics.X11.Xlib.Types Methods showsPrec :: Int -> Color -> ShowS # show :: Color -> String # showList :: [Color] -> ShowS #
Eq Color # |
Instance details Defined in Graphics.X11.Xlib.Types Methods (==) :: Color -> Color -> Bool # (/=) :: Color -> Color -> Bool #

type Pixel = Word64 #

type Position = Int32 #

type Dimension = Word32 #

type Angle = CInt #

type ScreenNumber = Word32 #

type Buffer = CInt #

# X11 library functions

module Graphics.X11.Xlib.Event

module Graphics.X11.Xlib.Display

module Graphics.X11.Xlib.Screen

module Graphics.X11.Xlib.Window

module Graphics.X11.Xlib.Context

module Graphics.X11.Xlib.Color

module Graphics.X11.Xlib.Cursor

module Graphics.X11.Xlib.Font

module Graphics.X11.Xlib.Atom

module Graphics.X11.Xlib.Region

module Graphics.X11.Xlib.Image

module Graphics.X11.Xlib.Misc