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

Portabilityportable (depends on GHC)
Safe HaskellSafe-Infered



General enumeration types.



data AccelFlags Source

State of an accelerator


Bounded AccelFlags 
Enum AccelFlags

Arrow directions for the arrow widget

Eq AccelFlags 
Show AccelFlags 
Flags AccelFlags 

data AttachOptions Source

Child widget attach options for table containers



data ButtonBoxStyle Source

Dictate the style that a ButtonBox uses to align it contents

data Click Source

Type of mouse click


data CornerType Source

Specifies in which corner a child widget should be placed

data DestDefaults Source

The DestDefaults enumeration specifies the various types of action that will be taken on behalf of the user for a drag destination site.

  • DestDefaultMotion: If set for a widget, GTK+, during a drag over this widget will check if the drag matches this widget's list of possible targets and actions. GTK+ will then call dragStatus as appropriate.
  • DestDefaultHighlight: If set for a widget, GTK+ will draw a highlight on this widget as long as a drag is over this widget and the widget drag format and action are acceptable.
  • DestDefaultDrop: If set for a widget, when a drop occurs, GTK+ will will check if the drag matches this widget's list of possible targets and actions. If so, GTK+ will call dragGetData on behalf of the widget. Whether or not the drop is successful, GTK+ will call dragFinish. If the action was a move, then if the drag was successful, then True will be passed for the delete parameter to dragFinish
  • DestDefaultAll: If set, specifies that all default actions should be taken.


Bounded DestDefaults 
Enum DestDefaults

Gives an indication why a drag operation failed. The value can by obtained by connecting to the dragFailed signal.

Eq DestDefaults 
Show DestDefaults 
Flags DestDefaults 

data Justification Source

Justification for label and maybe other widgets (text?)

data MatchType Source

Some kind of string search options

data MetricType Source

Units of measure



data Packing Source

Packing parameters of a widget

  • The Packing parameter determines how the child behaves in the horizontal or vertical way in an HBox or VBox, respectively. PackNatural means the child is as big as it reqests. It will stay at the start of the end of a Box if there is more space available. All children packed with PackRepel will be padded on both sides with additional space. PackGrow will increase the size of a widget so that it covers the available space. A menu bar, for instance, should always stay at the top of a window and should only occupy as little space as possible. Hence it should be packed at the start of a VBox with the packing option PackNatural. The working area of a window (e.g. the text area in an editor) should expand when the window is resized. Here the packing option PackGrow is the right choice and it is irrelevant whether the main area is inserted at the start or the end of a box. Finally PackRepel is most useful in a window where no widget can make use of excess space. Examples include a dialog box without list boxes or text fields.

data PackType Source

Packing of widgets at start or end in a box



data PathType Source

Widget identification path

data PositionType Source

Position a scale's value is drawn relative to the trough



data ReliefStyle Source

I don't have a clue.

data ResizeMode Source

Resize mode, for containers

data SelectionMode Source

Mode in which selections can be performed

  • There is a deprecated entry SelectionExtended which should have the same value as SelectionMultiple. C2HS chokes on that construct.

data SubmenuPlacement Source

Submenu placement policies



data SpinType Source

Spin a SpinButton with the following method.

data TargetFlags Source

The TargetFlags enumeration is used to specify constraints on an entry in a TargetList. These flags are only used for drag and drop.

  • If the TargetSameApp flag is set, the target will only be selected for drags within a single application.
  • If the TargetSameWidget flag is set, the target will only be selected for drags within a single widget.


Bounded TargetFlags 
Enum TargetFlags

Is the text written from left to right or the exotic way?

Eq TargetFlags 
Show TargetFlags 
Flags TargetFlags 

data UpdateType Source

Updating types for range widgets (determines when the "connectToValueChanged" signal is emitted by the widget)

data WindowType Source

Interaction of a window with window manager

data WrapMode Source

Determine how lines are wrapped in a TextView.

data EntryIconPosition Source

Specifies the side of the entry at which an icon is placed.

data CapStyle Source

Specify the how the ends of a line is drawn.

data Dither Source

Specify how to dither colors onto the screen.

data DragAction Source

Used in DragContext to indicate what the destination should do with the dropped data.

  • ActionDefault: Initialisation value, should not be used.
  • ActionCopy: Copy the data.
  • ActionMove: Move the data, i.e. first copy it, then delete it from the source.
  • ActionLink: Add a link to the data. Note that this is only useful if source and destination agree on what it means.
  • ActionPrivate: Special action which tells the source that the destination will do something that the source doesn't understand.
  • ActionAsk: Ask the user what to do with the data.

data Modifier Source

Keyboard modifiers that are depressed when the user presses a key or a mouse button.

  • This data type is used to build lists of modifers that were active during an event.
  • The Apple key on Macintoshs is mapped to Alt2 and the Meta key (if available).
  • Since Gtk 2.10, there are also Super, Hyper and Meta modifiers which are simply generated from Alt .. Compose modifier keys, depending on the mapping used by the windowing system. Due to one key being mapped to e.g. Alt2 and Meta, you shouldn't pattern match directly against a certain key but check whether a key is in the list using the elem function, say.

data Fill Source

How objects are filled.


data Function Source

Determine how bitmap operations are carried out.

data InputCondition Source

Specify on what file condition a callback should be done.


Bounded InputCondition 
Enum InputCondition

Determines how adjacent line ends are drawn.

Eq InputCondition 
Flags InputCondition 

data LineStyle Source

Determines if a line is solid or dashed.

data NotifyType Source

Information on from what level of the widget hierarchy the mouse cursor came.

The window is entered from an ancestor or left towards an ancestor.
The pointer moves between an ancestor and an inferior of the window.
The window is entered from an inferior or left towards an inferior.
The window is entered from or left towards a window which is neither an ancestor nor an inferior.
The pointer moves between two windows which are not ancestors of each other and the window is part of the ancestor chain between one of these windows and their least common ancestor.
The level change does not fit into any of the other categories or could not be determined.


Enum NotifyType

Determine if child widget may be overdrawn.

Eq NotifyType 
Show NotifyType 

data ScrollDirection Source

in which direction was scrolled?

data WindowState Source

The state a DrawWindow is in.


Bounded WindowState 
Enum WindowState

These are hints for the window manager that indicate what type of function the window has. The window manager can use this when determining decoration and behaviour of the window. The hint must be set before mapping the window.

See the extended window manager hints specification for more details about window types.

Eq WindowState 
Show WindowState 
Flags WindowState 

data Gravity Source

Defines the reference point of a window and the meaning of coordinates passed to windowMove. See windowMove and the implementation notes section of the extended window manager hints specification for more details.


Enum Gravity

Returned by pointerGrab and keyboardGrab to indicate success or the reason for the failure of the grab attempt.

the resource was successfully grabbed.
the resource is actively grabbed by another client.
the resource was grabbed more recently than the specified time.
the grab window or the confine_to window are not viewable.
the resource is frozen by an active grab of another client.
Eq Gravity 
Show Gravity 

data GrabStatus Source


Enum GrabStatus

Specifies why a selection ownership was changed.

some other application claimed the ownership
the window was destroyed
the client was closed
Eq GrabStatus 
Show GrabStatus