Graphics.UI.Gtk.Gdk.Cursor

gtk-0.12.4: Binding to the Gtk+ graphical user interface library.

Portability | portable (depends on GHC)
Stability | provisional
Maintainer | gtk2hs-users@lists.sourceforge.net
Safe Haskell | None

Graphics.UI.Gtk.Gdk.Cursor

Contents

- Types
- Enums
- Constructors
- Methods

Description

Cursors | Standard and pixmap cursors.

Synopsis

- newtype Cursor = Cursor (ForeignPtr Cursor)
- data CursorType
  - = XCursor
  - | Arrow
  - | BasedArrowDown
  - | BasedArrowUp
  - | Boat
  - | Bogosity
  - | BottomLeftCorner
  - | BottomRightCorner
  - | BottomSide
  - | BottomTee
  - | BoxSpiral
  - | CenterPtr
  - | Circle
  - | Clock
  - | CoffeeMug
  - | Cross
  - | CrossReverse
  - | Crosshair
  - | DiamondCross
  - | Dot
  - | Dotbox
  - | DoubleArrow
  - | DraftLarge
  - | DraftSmall
  - | DrapedBox
  - | Exchange
  - | Fleur
  - | Gobbler
  - | Gumby
  - | Hand1
  - | Hand2
  - | Heart
  - | Icon
  - | IronCross
  - | LeftPtr
  - | LeftSide
  - | LeftTee
  - | Leftbutton
  - | LlAngle
  - | LrAngle
  - | Man
  - | Middlebutton
  - | Mouse
  - | Pencil
  - | Pirate
  - | Plus
  - | QuestionArrow
  - | RightPtr
  - | RightSide
  - | RightTee
  - | Rightbutton
  - | RtlLogo
  - | Sailboat
  - | SbDownArrow
  - | SbHDoubleArrow
  - | SbLeftArrow
  - | SbRightArrow
  - | SbUpArrow
  - | SbVDoubleArrow
  - | Shuttle
  - | Sizing
  - | Spider
  - | Spraycan
  - | Star
  - | Target
  - | Tcross
  - | TopLeftArrow
  - | TopLeftCorner
  - | TopRightCorner
  - | TopSide
  - | TopTee
  - | Trek
  - | UlAngle
  - | Umbrella
  - | UrAngle
  - | Watch
  - | Xterm
  - | LastCursor
  - | BlankCursor
  - | CursorIsPixmap
- cursorNew :: CursorType -> IO Cursor
- cursorNewFromPixmap :: Pixmap -> Pixmap -> Color -> Color -> Int -> Int -> IO Cursor
- cursorNewFromPixbuf :: Display -> Pixbuf -> Int -> Int -> IO Cursor
- cursorNewFromName :: Display -> String -> IO (Maybe Cursor)
- cursorNewForDisplay :: Display -> CursorType -> IO Cursor
- cursorGetDisplay :: Cursor -> IO Display
- cursorGetImage :: Cursor -> IO (Maybe Pixbuf)

# Types

newtype Cursor

Constructors

Cursor (ForeignPtr Cursor) |

# Enums

data CursorType

Cursor types.

Constructors

XCursor |
Arrow |
BasedArrowDown |
BasedArrowUp |
Boat |
Bogosity |
BottomLeftCorner |
BottomRightCorner |
BottomSide |
BottomTee |
BoxSpiral |
CenterPtr |
Circle |
Clock |
CoffeeMug |
Cross |
CrossReverse |
Crosshair |
DiamondCross |
Dot |
Dotbox |
DoubleArrow |
DraftLarge |
DraftSmall |
DrapedBox |
Exchange |
Fleur |
Gobbler |
Gumby |
Hand1 |
Hand2 |
Heart |
Icon |
IronCross |
LeftPtr |
LeftSide |
LeftTee |
Leftbutton |
LlAngle |
LrAngle |
Man |
Middlebutton |
Mouse |
Pencil |
Pirate |
Plus |
QuestionArrow |
RightPtr |
RightSide |
RightTee |
Rightbutton |
RtlLogo |
Sailboat |
SbDownArrow |
SbHDoubleArrow |
SbLeftArrow |
SbRightArrow |
SbUpArrow |
SbVDoubleArrow |
Shuttle |
Sizing |
Spider |
Spraycan |
Star |
Target |
Tcross |
TopLeftArrow |
TopLeftCorner |
TopRightCorner |
TopSide |
TopTee |
Trek |
UlAngle |
Umbrella |
UrAngle |
Watch |
Xterm |
LastCursor |
BlankCursor |
CursorIsPixmap |

Instances

Bounded CursorType |
Enum CursorType |
Eq CursorType |
Show CursorType |

# Constructors

cursorNew

Arguments

:: CursorType | `cursorType` cursor to create
-> IO Cursor | return a new `Cursor`

Creates a new cursor from the set of builtin cursors for the default display. See `cursorNewForDisplay`. To make the cursor invisible, use `BlankCursor`.

# Methods

cursorNewFromPixmap

Arguments

:: Pixmap | `source` - the pixmap specifying the cursor.
-> Pixmap | `mask` - the pixmap specifying the mask, which must be the same size as source.
-> Color | `fg` - the foreground color, used for the bits in the source which are 1. The color does not have to be allocated first.
-> Color | `bg` - the background color, used for the bits in the source which are 0. The color does not have to be allocated first.
-> Int | `x` - the horizontal offset of the 'hotspot' of the cursor.
-> Int | `y` - the vertical offset of the 'hotspot' of the cursor.
-> IO Cursor |

Creates a new cursor from a given pixmap and mask. Both the pixmap and mask must have a depth of 1 (i.e. each pixel has only 2 values - on or off). The standard cursor size is 16 by 16 pixels.

cursorNewFromPixbuf

Arguments

:: Display | `display` the `Display` for which the cursor will be created
-> Pixbuf | `pixbuf` the `Pixbuf` containing the cursor image
-> Int | `x` the horizontal offset of the `hotspot` of the cursor.
-> Int | `y` the vertical offset of the `hotspot` of the cursor.
-> IO Cursor | return a new `Cursor`.

Creates a new cursor from a pixbuf. Not all GDK backends support RGBA cursors. If they are not supported, a monochrome approximation will be displayed. The functions `displaySupportsCursorAlpha` and `displaySupportsCursorColor` can be used to determine whether RGBA cursors are supported; `displayGetDefaultCursorSize` and `displayGetMaximalCursorSize` give information about cursor sizes.

On the X backend, support for RGBA cursors requires a sufficently new version of the X Render extension.

cursorNewFromName

Arguments

:: Display | `display` the `Display` for which the cursor will be created
-> String | `name` the name of the cursor
-> IO (Maybe Cursor) | return a new `Cursor`, or `Nothing` if there is no cursor with the given name

Creates a new cursor by looking up name in the current cursor theme.

cursorNewForDisplay

Arguments

:: Display | `display` the `Display` for which the cursor will be created
-> CursorType | `cursorType` cursor to create
-> IO Cursor | return a new `Cursor`

Creates a new cursor from the set of builtin cursors.

cursorGetDisplay

Arguments

:: Cursor | `cursor` `Cursor`
-> IO Display | return the `Display` associated to cursor

Returns the display on which the GdkCursor is defined.

cursorGetImage

Arguments

:: Cursor | `cursor` `Cursor`
-> IO (Maybe Pixbuf) | a `Pixbuf` representing cursor, or `Nothing`

Returns a `Pixbuf` with the image used to display the cursor. Note that depending on the capabilities of the windowing system and on the cursor, GDK may not be able to obtain the image data. In this case, `Nothing` is returned.