gdkmm Enums and Flags

## Enumerations

enum | Gdk::Status { Gdk::OK = 0, Gdk::ERROR = -1, Gdk::ERROR_PARAM = -2, Gdk::ERROR_FILE = -3, Gdk::ERROR_MEM = -4 }

enum

Gdk::CursorType {
Gdk::X_CURSOR = 0,
Gdk::ARROW = 2,
Gdk::BASED_ARROW_DOWN = 4,
Gdk::BASED_ARROW_UP = 6,
Gdk::BOAT = 8,
Gdk::BOGOSITY = 10,
Gdk::BOTTOM_LEFT_CORNER = 12,
Gdk::BOTTOM_RIGHT_CORNER = 14,
Gdk::BOTTOM_SIDE = 16,
Gdk::BOTTOM_TEE = 18,
Gdk::BOX_SPIRAL = 20,
Gdk::CENTER_PTR = 22,
Gdk::CIRCLE = 24,
Gdk::CLOCK = 26,
Gdk::COFFEE_MUG = 28,
Gdk::CROSS = 30,
Gdk::CROSS_REVERSE = 32,
Gdk::CROSSHAIR = 34,
Gdk::DIAMOND_CROSS = 36,
Gdk::DOT = 38,
Gdk::DOTBOX = 40,
Gdk::DOUBLE_ARROW = 42,
Gdk::DRAFT_LARGE = 44,
Gdk::DRAFT_SMALL = 46,
Gdk::DRAPED_BOX = 48,
Gdk::EXCHANGE = 50,
Gdk::FLEUR = 52,
Gdk::GOBBLER = 54,
Gdk::GUMBY = 56,
Gdk::HAND1 = 58,
Gdk::HAND2 = 60,
Gdk::HEART = 62,
Gdk::ICON = 64,
Gdk::IRON_CROSS = 66,
Gdk::LEFT_PTR = 68,
Gdk::LEFT_SIDE = 70,
Gdk::LEFT_TEE = 72,
Gdk::LEFTBUTTON = 74,
Gdk::LL_ANGLE = 76,
Gdk::LR_ANGLE = 78,
Gdk::MAN = 80,
Gdk::MIDDLEBUTTON = 82,
Gdk::MOUSE = 84,
Gdk::PENCIL = 86,
Gdk::PIRATE = 88,
Gdk::PLUS = 90,
Gdk::QUESTION_ARROW = 92,
Gdk::RIGHT_PTR = 94,
Gdk::RIGHT_SIDE = 96,
Gdk::RIGHT_TEE = 98,
Gdk::RIGHTBUTTON = 100,
Gdk::RTL_LOGO = 102,
Gdk::SAILBOAT = 104,
Gdk::SB_DOWN_ARROW = 106,
Gdk::SB_H_DOUBLE_ARROW = 108,
Gdk::SB_LEFT_ARROW = 110,
Gdk::SB_RIGHT_ARROW = 112,
Gdk::SB_UP_ARROW = 114,
Gdk::SB_V_DOUBLE_ARROW = 116,
Gdk::SHUTTLE = 118,
Gdk::SIZING = 120,
Gdk::SPIDER = 122,
Gdk::SPRAYCAN = 124,
Gdk::STAR = 126,
Gdk::TARGET = 128,
Gdk::TCROSS = 130,
Gdk::TOP_LEFT_ARROW = 132,
Gdk::TOP_LEFT_CORNER = 134,
Gdk::TOP_RIGHT_CORNER = 136,
Gdk::TOP_SIDE = 138,
Gdk::TOP_TEE = 140,
Gdk::TREK = 142,
Gdk::UL_ANGLE = 144,
Gdk::UMBRELLA = 146,
Gdk::UR_ANGLE = 148,
Gdk::WATCH = 150,
Gdk::XTERM = 152,
Gdk::LAST_CURSOR = 153,
Gdk::BLANK_CURSOR = -2,
Gdk::CURSOR_IS_PIXMAP = -1
}

| Predefined cursors. More...

enum

Gdk::EventMask {
Gdk::EXPOSURE_MASK = 1 << 1,
Gdk::POINTER_MOTION_MASK = 1 << 2,
Gdk::POINTER_MOTION_HINT_MASK = 1 << 3,
Gdk::BUTTON_MOTION_MASK = 1 << 4,
Gdk::BUTTON1_MOTION_MASK = 1 << 5,
Gdk::BUTTON2_MOTION_MASK = 1 << 6,
Gdk::BUTTON3_MOTION_MASK = 1 << 7,
Gdk::BUTTON_PRESS_MASK = 1 << 8,
Gdk::BUTTON_RELEASE_MASK = 1 << 9,
Gdk::KEY_PRESS_MASK = 1 << 10,
Gdk::KEY_RELEASE_MASK = 1 << 11,
Gdk::ENTER_NOTIFY_MASK = 1 << 12,
Gdk::LEAVE_NOTIFY_MASK = 1 << 13,
Gdk::FOCUS_CHANGE_MASK = 1 << 14,
Gdk::STRUCTURE_MASK = 1 << 15,
Gdk::PROPERTY_CHANGE_MASK = 1 << 16,
Gdk::VISIBILITY_NOTIFY_MASK = 1 << 17,
Gdk::PROXIMITY_IN_MASK = 1 << 18,
Gdk::PROXIMITY_OUT_MASK = 1 << 19,
Gdk::SUBSTRUCTURE_MASK = 1 << 20,
Gdk::SCROLL_MASK = 1 << 21,
Gdk::TOUCH_MASK = 1 << 22,
Gdk::SMOOTH_SCROLL_MASK = 1 << 23,
Gdk::TOUCHPAD_GESTURE_MASK = 1 << 24,
Gdk::ALL_EVENTS_MASK = 0xFFFFFE
}

| A set of bit-flags to indicate which events a window is to receive. More...
enum | Gdk::InputMode { Gdk::MODE_DISABLED, Gdk::MODE_SCREEN, Gdk::MODE_WINDOW }
| An enumeration that describes the mode of an input device. More...
enum | Gdk::InputSource { Gdk::SOURCE_MOUSE, Gdk::SOURCE_PEN, Gdk::SOURCE_ERASER, Gdk::SOURCE_CURSOR, Gdk::SOURCE_KEYBOARD, Gdk::SOURCE_TOUCHSCREEN, Gdk::SOURCE_TOUCHPAD }
| An enumeration describing the type of an input device in general terms. More...
enum | DeviceType
| Indicates the device type. More...
enum | Gdk::GrabOwnership { Gdk::OWNERSHIP_NONE, Gdk::OWNERSHIP_WINDOW, Gdk::OWNERSHIP_APPLICATION }
| Defines how device grabs interact with other devices. More...
enum | Gdk::GrabStatus { Gdk::GRAB_SUCCESS, Gdk::GRAB_ALREADY_GRABBED, Gdk::GRAB_INVALID_TIME, Gdk::GRAB_NOT_VIEWABLE, Gdk::GRAB_FROZEN, Gdk::GRAB_FAILED }
| Returned by Gdk::Device::grab(), gdk_pointer_grab() and gdk_keyboard_grab() to indicate success or the reason for the failure of the grab attempt. More...
enum | Gdk::DragAction { Gdk::ACTION_DEFAULT = 1 << 0, Gdk::ACTION_COPY = 1 << 1, Gdk::ACTION_MOVE = 1 << 2, Gdk::ACTION_LINK = 1 << 3, Gdk::ACTION_PRIVATE = 1 << 4, Gdk::ACTION_ASK = 1 << 5 }
| Used in Gdk::DragContext to indicate what the destination should do with the dropped data. More...
enum | Gdk::DragProtocol { Gdk::DRAG_PROTO_NONE, Gdk::DRAG_PROTO_MOTIF, Gdk::DRAG_PROTO_XDND, Gdk::DRAG_PROTO_ROOTWIN, Gdk::DRAG_PROTO_WIN32_DROPFILES, Gdk::DRAG_PROTO_OLE2, Gdk::DRAG_PROTO_LOCAL, Gdk::DRAG_PROTO_WAYLAND }
| Used in Gdk::DragContext to indicate the protocol according to which DND is done. More...

enum

Gdk::EventType {
Gdk::NOTHING = -1,
Gdk::DELETE = 0,
Gdk::DESTROY = 1,
Gdk::EXPOSE = 2,
Gdk::MOTION_NOTIFY = 3,
Gdk::BUTTON_PRESS = 4,
Gdk::DOUBLE_BUTTON_PRESS = 5,
Gdk::TRIPLE_BUTTON_PRESS = 6,
Gdk::BUTTON_RELEASE = 7,
Gdk::KEY_PRESS = 8,
Gdk::KEY_RELEASE = 9,
Gdk::ENTER_NOTIFY = 10,
Gdk::LEAVE_NOTIFY = 11,
Gdk::FOCUS_CHANGE = 12,
Gdk::CONFIGURE = 13,
Gdk::MAP = 14,
Gdk::UNMAP = 15,
Gdk::PROPERTY_NOTIFY = 16,
Gdk::SELECTION_CLEAR = 17,
Gdk::SELECTION_REQUEST = 18,
Gdk::SELECTION_NOTIFY = 19,
Gdk::PROXIMITY_IN = 20,
Gdk::PROXIMITY_OUT = 21,
Gdk::DRAG_ENTER = 22,
Gdk::DRAG_LEAVE = 23,
Gdk::DRAG_MOTION = 24,
Gdk::DRAG_STATUS = 25,
Gdk::DROP_START = 26,
Gdk::DROP_FINISHED = 27,
Gdk::CLIENT_EVENT = 28,
Gdk::VISIBILITY_NOTIFY = 29,
Gdk::SCROLL = 31,
Gdk::WINDOW_STATE = 32,
Gdk::SETTING = 33,
Gdk::OWNER_CHANGE = 34,
Gdk::GRAB_BROKEN = 35,
Gdk::DAMAGE = 36,
Gdk::TOUCH_BEGIN = 37,
Gdk::TOUCH_UPDATE = 38,
Gdk::TOUCH_END = 39,
Gdk::TOUCH_CANCEL = 40,
Gdk::TOUCHPAD_SWIPE = 41,
Gdk::TOUCHPAD_PINCH = 42,
Gdk::EVENT_LAST = 43
}

| Specifies the type of the event. More...
enum | Gdk::AxisUse { Gdk::AXIS_IGNORE, Gdk::AXIS_X, Gdk::AXIS_Y, Gdk::AXIS_PRESSURE, Gdk::AXIS_XTILT, Gdk::AXIS_YTILT, Gdk::AXIS_WHEEL, Gdk::AXIS_LAST }
| An enumeration describing the way in which a device axis (valuator) maps onto the predefined valuator types that GTK+ understands. More...
enum | Gdk::Colorspace { Gdk::COLORSPACE_RGB }
| This enumeration defines the color spaces that are supported by the gdk-pixbuf library. More...
enum | Gdk::InterpType { Gdk::INTERP_NEAREST, Gdk::INTERP_TILES, Gdk::INTERP_BILINEAR, Gdk::INTERP_HYPER }
| This enumeration describes the different interpolation modes that can be used with the scaling functions. More...
enum | Gdk::PixbufAlphaMode { Gdk::PIXBUF_ALPHA_BILEVEL, Gdk::PIXBUF_ALPHA_FULL }
| These values can be passed to gdk_pixbuf_render_to_drawable_alpha() to control how the alpha channel of an image should be handled. More...
enum | Gdk::PixbufRotation { Gdk::PIXBUF_ROTATE_NONE = 0, Gdk::PIXBUF_ROTATE_COUNTERCLOCKWISE = 90, Gdk::PIXBUF_ROTATE_UPSIDEDOWN = 180, Gdk::PIXBUF_ROTATE_CLOCKWISE = 270 }
| The possible rotations which can be passed to Gdk::Pixbuf::rotate_simple(). More...

enum

Gdk::ModifierType {
Gdk::SHIFT_MASK = 1 << 0,
Gdk::LOCK_MASK = 1 << 1,
Gdk::CONTROL_MASK = 1 << 2,
Gdk::MOD1_MASK = 1 << 3,
Gdk::MOD2_MASK = 1 << 4,
Gdk::MOD3_MASK = 1 << 5,
Gdk::MOD4_MASK = 1 << 6,
Gdk::MOD5_MASK = 1 << 7,
Gdk::BUTTON1_MASK = 1 << 8,
Gdk::BUTTON2_MASK = 1 << 9,
Gdk::BUTTON3_MASK = 1 << 10,
Gdk::BUTTON4_MASK = 1 << 11,
Gdk::BUTTON5_MASK = 1 << 12,
Gdk::MODIFIER_RESERVED_13_MASK = 1 << 13,
Gdk::MODIFIER_RESERVED_14_MASK = 1 << 14,
Gdk::MODIFIER_RESERVED_15_MASK = 1 << 15,
Gdk::MODIFIER_RESERVED_16_MASK = 1 << 16,
Gdk::MODIFIER_RESERVED_17_MASK = 1 << 17,
Gdk::MODIFIER_RESERVED_18_MASK = 1 << 18,
Gdk::MODIFIER_RESERVED_19_MASK = 1 << 19,
Gdk::MODIFIER_RESERVED_20_MASK = 1 << 20,
Gdk::MODIFIER_RESERVED_21_MASK = 1 << 21,
Gdk::MODIFIER_RESERVED_22_MASK = 1 << 22,
Gdk::MODIFIER_RESERVED_23_MASK = 1 << 23,
Gdk::MODIFIER_RESERVED_24_MASK = 1 << 24,
Gdk::MODIFIER_RESERVED_25_MASK = 1 << 25,
Gdk::SUPER_MASK = 1 << 26,
Gdk::HYPER_MASK = 1 << 27,
Gdk::META_MASK = 1 << 28,
Gdk::MODIFIER_RESERVED_29_MASK = 1 << 29,
Gdk::RELEASE_MASK = 1 << 30,
Gdk::MODIFIER_MASK = 0x5c001fff
}

| A set of bit-flags to indicate the state of modifier keys and mouse buttons in various event types. More...
enum | Gdk::ModifierIntent { Gdk::MODIFIER_INTENT_PRIMARY_ACCELERATOR, Gdk::MODIFIER_INTENT_CONTEXT_MENU, Gdk::MODIFIER_INTENT_EXTEND_SELECTION, Gdk::MODIFIER_INTENT_MODIFY_SELECTION, Gdk::MODIFIER_INTENT_NO_TEXT_INPUT, Gdk::MODIFIER_INTENT_SHIFT_GROUP, Gdk::MODIFIER_INTENT_DEFAULT_MOD_MASK }
| This enum is used with Gdk::Keymap::get_modifier_mask() in order to determine what modifiers the currently used windowing system backend uses for particular purposes. More...
enum | Gdk::VisualType { Gdk::VISUAL_STATIC_GRAY, Gdk::VISUAL_GRAYSCALE, Gdk::VISUAL_STATIC_COLOR, Gdk::VISUAL_PSEUDO_COLOR, Gdk::VISUAL_TRUE_COLOR, Gdk::VISUAL_DIRECT_COLOR }
| A set of values that describe the manner in which the pixel values for a visual are converted into RGB values for display. More...
enum | Gdk::WindowState { Gdk::WINDOW_STATE_WITHDRAWN = 1 << 0, Gdk::WINDOW_STATE_ICONIFIED = 1 << 1, Gdk::WINDOW_STATE_MAXIMIZED = 1 << 2, Gdk::WINDOW_STATE_STICKY = 1 << 3, Gdk::WINDOW_STATE_FULLSCREEN = 1 << 4, Gdk::WINDOW_STATE_ABOVE = 1 << 5, Gdk::WINDOW_STATE_BELOW = 1 << 6, Gdk::WINDOW_STATE_FOCUSED = 1 << 7, Gdk::WINDOW_STATE_TILED = 1 << 8 }
| Specifies the state of a toplevel window. More...
enum | Gdk::WindowType { Gdk::WINDOW_ROOT, Gdk::WINDOW_TOPLEVEL, Gdk::WINDOW_CHILD, Gdk::WINDOW_TEMP, Gdk::WINDOW_FOREIGN, Gdk::WINDOW_OFFSCREEN, Gdk::WINDOW_SUBSURFACE }
| Describes the kind of window. More...
enum | Gdk::WindowAttributesType { Gdk::WA_TITLE = 1 << 1, Gdk::WA_X = 1 << 2, Gdk::WA_Y = 1 << 3, Gdk::WA_CURSOR = 1 << 4, Gdk::WA_VISUAL = 1 << 5, Gdk::WA_WMCLASS = 1 << 6, Gdk::WA_NOREDIR = 1 << 7, Gdk::WA_TYPE_HINT = 1 << 8 }
| Used to indicate which fields in the Gdk::WindowAttr struct should be honored. More...
enum | Gdk::WindowHints { Gdk::HINT_POS = 1 << 0, Gdk::HINT_MIN_SIZE = 1 << 1, Gdk::HINT_MAX_SIZE = 1 << 2, Gdk::HINT_BASE_SIZE = 1 << 3, Gdk::HINT_ASPECT = 1 << 4, Gdk::HINT_RESIZE_INC = 1 << 5, Gdk::HINT_WIN_GRAVITY = 1 << 6, Gdk::HINT_USER_POS = 1 << 7, Gdk::HINT_USER_SIZE = 1 << 8 }
| Used to indicate which fields of a Gdk::Geometry struct should be paid attention to. More...

enum

Gdk::WindowTypeHint {
Gdk::WINDOW_TYPE_HINT_NORMAL,
Gdk::WINDOW_TYPE_HINT_DIALOG,
Gdk::WINDOW_TYPE_HINT_MENU,
Gdk::WINDOW_TYPE_HINT_TOOLBAR,
Gdk::WINDOW_TYPE_HINT_SPLASHSCREEN,
Gdk::WINDOW_TYPE_HINT_UTILITY,
Gdk::WINDOW_TYPE_HINT_DOCK,
Gdk::WINDOW_TYPE_HINT_DESKTOP,
Gdk::WINDOW_TYPE_HINT_DROPDOWN_MENU,
Gdk::WINDOW_TYPE_HINT_POPUP_MENU,
Gdk::WINDOW_TYPE_HINT_TOOLTIP,
Gdk::WINDOW_TYPE_HINT_NOTIFICATION,
Gdk::WINDOW_TYPE_HINT_COMBO,
Gdk::WINDOW_TYPE_HINT_DND
}

| These are hints for the window manager that indicate what type of function the window has. More...
enum | Gdk::WMDecoration { Gdk::DECOR_ALL = 1 << 0, Gdk::DECOR_BORDER = 1 << 1, Gdk::DECOR_RESIZEH = 1 << 2, Gdk::DECOR_TITLE = 1 << 3, Gdk::DECOR_MENU = 1 << 4, Gdk::DECOR_MINIMIZE = 1 << 5, Gdk::DECOR_MAXIMIZE = 1 << 6 }
| These are hints originally defined by the Motif toolkit. More...
enum | Gdk::WMFunction { Gdk::FUNC_ALL = 1 << 0, Gdk::FUNC_RESIZE = 1 << 1, Gdk::FUNC_MOVE = 1 << 2, Gdk::FUNC_MINIMIZE = 1 << 3, Gdk::FUNC_MAXIMIZE = 1 << 4, Gdk::FUNC_CLOSE = 1 << 5 }
| These are hints originally defined by the Motif toolkit. More...
enum | Gdk::WindowEdge { Gdk::WINDOW_EDGE_NORTH_WEST, Gdk::WINDOW_EDGE_NORTH, Gdk::WINDOW_EDGE_NORTH_EAST, Gdk::WINDOW_EDGE_WEST, Gdk::WINDOW_EDGE_EAST, Gdk::WINDOW_EDGE_SOUTH_WEST, Gdk::WINDOW_EDGE_SOUTH, Gdk::WINDOW_EDGE_SOUTH_EAST }
| Determines a window edge or corner. More...
enum | Gravity
| Defines the reference point of a window and the meaning of coordinates passed to gtk_window_move(). More...
enum | Gdk::FullscreenMode { Gdk::FULLSCREEN_ON_CURRENT_MONITOR, Gdk::FULLSCREEN_ON_ALL_MONITORS }
| Indicates which monitor (in a multi-head setup) a window should span over when in fullscreen mode. More...

## Functions

EventMask | Gdk::operator| (EventMask lhs, EventMask rhs)
EventMask | Gdk::operator& (EventMask lhs, EventMask rhs)
EventMask | Gdk::operator^ (EventMask lhs, EventMask rhs)
EventMask | Gdk::operator~ (EventMask flags)
EventMask& | Gdk::operator|= (EventMask& lhs, EventMask rhs)
EventMask& | Gdk::operator&= (EventMask& lhs, EventMask rhs)
EventMask& | Gdk::operator^= (EventMask& lhs, EventMask rhs)
DragAction | Gdk::operator| (DragAction lhs, DragAction rhs)
DragAction | Gdk::operator& (DragAction lhs, DragAction rhs)
DragAction | Gdk::operator^ (DragAction lhs, DragAction rhs)
DragAction | Gdk::operator~ (DragAction flags)
DragAction& | Gdk::operator|= (DragAction& lhs, DragAction rhs)
DragAction& | Gdk::operator&= (DragAction& lhs, DragAction rhs)
DragAction& | Gdk::operator^= (DragAction& lhs, DragAction rhs)
ModifierType | Gdk::operator| (ModifierType lhs, ModifierType rhs)
ModifierType | Gdk::operator& (ModifierType lhs, ModifierType rhs)
ModifierType | Gdk::operator^ (ModifierType lhs, ModifierType rhs)
ModifierType | Gdk::operator~ (ModifierType flags)
ModifierType& | Gdk::operator|= (ModifierType& lhs, ModifierType rhs)
ModifierType& | Gdk::operator&= (ModifierType& lhs, ModifierType rhs)
ModifierType& | Gdk::operator^= (ModifierType& lhs, ModifierType rhs)
WindowState | Gdk::operator| (WindowState lhs, WindowState rhs)
WindowState | Gdk::operator& (WindowState lhs, WindowState rhs)
WindowState | Gdk::operator^ (WindowState lhs, WindowState rhs)
WindowState | Gdk::operator~ (WindowState flags)
WindowState& | Gdk::operator|= (WindowState& lhs, WindowState rhs)
WindowState& | Gdk::operator&= (WindowState& lhs, WindowState rhs)
WindowState& | Gdk::operator^= (WindowState& lhs, WindowState rhs)
WindowAttributesType | Gdk::operator| (WindowAttributesType lhs, WindowAttributesType rhs)
WindowAttributesType | Gdk::operator& (WindowAttributesType lhs, WindowAttributesType rhs)
WindowAttributesType | Gdk::operator^ (WindowAttributesType lhs, WindowAttributesType rhs)
WindowAttributesType | Gdk::operator~ (WindowAttributesType flags)
WindowAttributesType& | Gdk::operator|= (WindowAttributesType& lhs, WindowAttributesType rhs)
WindowAttributesType& | Gdk::operator&= (WindowAttributesType& lhs, WindowAttributesType rhs)
WindowAttributesType& | Gdk::operator^= (WindowAttributesType& lhs, WindowAttributesType rhs)
WindowHints | Gdk::operator| (WindowHints lhs, WindowHints rhs)
WindowHints | Gdk::operator& (WindowHints lhs, WindowHints rhs)
WindowHints | Gdk::operator^ (WindowHints lhs, WindowHints rhs)
WindowHints | Gdk::operator~ (WindowHints flags)
WindowHints& | Gdk::operator|= (WindowHints& lhs, WindowHints rhs)
WindowHints& | Gdk::operator&= (WindowHints& lhs, WindowHints rhs)
WindowHints& | Gdk::operator^= (WindowHints& lhs, WindowHints rhs)
WMDecoration | Gdk::operator| (WMDecoration lhs, WMDecoration rhs)
WMDecoration | Gdk::operator& (WMDecoration lhs, WMDecoration rhs)
WMDecoration | Gdk::operator^ (WMDecoration lhs, WMDecoration rhs)
WMDecoration | Gdk::operator~ (WMDecoration flags)
WMDecoration& | Gdk::operator|= (WMDecoration& lhs, WMDecoration rhs)
WMDecoration& | Gdk::operator&= (WMDecoration& lhs, WMDecoration rhs)
WMDecoration& | Gdk::operator^= (WMDecoration& lhs, WMDecoration rhs)
WMFunction | Gdk::operator| (WMFunction lhs, WMFunction rhs)
WMFunction | Gdk::operator& (WMFunction lhs, WMFunction rhs)
WMFunction | Gdk::operator^ (WMFunction lhs, WMFunction rhs)
WMFunction | Gdk::operator~ (WMFunction flags)
WMFunction& | Gdk::operator|= (WMFunction& lhs, WMFunction rhs)
WMFunction& | Gdk::operator&= (WMFunction& lhs, WMFunction rhs)
WMFunction& | Gdk::operator^= (WMFunction& lhs, WMFunction rhs)

## Detailed Description

## Enumeration Type Documentation

enum Gdk::AxisUse

An enumeration describing the way in which a device axis (valuator) maps onto the predefined valuator types that GTK+ understands.

Enumerator
AXIS_IGNORE | The axis is ignored.
AXIS_X | The axis is used as the x axis.
AXIS_Y | The axis is used as the y axis.
AXIS_PRESSURE | The axis is used for pressure information.
AXIS_XTILT | The axis is used for x tilt information.
AXIS_YTILT | The axis is used for y tilt information.
AXIS_WHEEL | The axis is used for wheel information.
AXIS_LAST | A constant equal to the numerically highest axis value.

enum Gdk::Colorspace

This enumeration defines the color spaces that are supported by the gdk-pixbuf library.

Currently only RGB is supported.

Enumerator
COLORSPACE_RGB | Indicates a red/green/blue additive color space.

enum Gdk::CursorType

Predefined cursors.

Note that these IDs are directly taken from the X cursor font, and many of these cursors are either not useful, or are not available on other platforms.

The recommended way to create cursors is to use Gdk::Cursor::new_from_name().

Enumerator
X_CURSOR | .
ARROW | .
BASED_ARROW_DOWN | .
BASED_ARROW_UP | .
BOAT | .
BOGOSITY | .
BOTTOM_LEFT_CORNER | .
BOTTOM_RIGHT_CORNER | .
BOTTOM_SIDE | .
BOTTOM_TEE | .
BOX_SPIRAL | .
CENTER_PTR | .
CIRCLE | .
CLOCK | .
COFFEE_MUG | .
CROSS | .
CROSS_REVERSE | .
CROSSHAIR | .
DIAMOND_CROSS | .
DOT | .
DOTBOX | .
DOUBLE_ARROW | .
DRAFT_LARGE | .
DRAFT_SMALL | .
DRAPED_BOX | .
EXCHANGE | .
FLEUR | .
GOBBLER | .
GUMBY | .
HAND1 | .
HAND2 | .
HEART | .
ICON | .
IRON_CROSS | .
LEFT_PTR | .
LEFT_SIDE | .
LEFT_TEE | .
LEFTBUTTON | .
LL_ANGLE | .
LR_ANGLE | .
MAN | .
MIDDLEBUTTON | .
MOUSE | .
PENCIL | .
PIRATE | .
PLUS | .
QUESTION_ARROW | .
RIGHT_PTR | .
RIGHT_SIDE | .
RIGHT_TEE | .
RIGHTBUTTON | .
RTL_LOGO | .
SAILBOAT | .
SB_DOWN_ARROW | .
SB_H_DOUBLE_ARROW | .
SB_LEFT_ARROW | .
SB_RIGHT_ARROW | .
SB_UP_ARROW | .
SB_V_DOUBLE_ARROW | .
SHUTTLE | .
SIZING | .
SPIDER | .
SPRAYCAN | .
STAR | .
TARGET | .
TCROSS | .
TOP_LEFT_ARROW | .
TOP_LEFT_CORNER | .
TOP_RIGHT_CORNER | .
TOP_SIDE | .
TOP_TEE | .
TREK | .
UL_ANGLE | .
UMBRELLA | .
UR_ANGLE | .
WATCH | .
XTERM | .
LAST_CURSOR | Last cursor type.

BLANK_CURSOR

Blank cursor.

Since gtkmm 2.16:

CURSOR_IS_PIXMAP | Type of cursors constructed with Gdk::Cursor::new_from_pixbuf().

enum Gdk::DragAction

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

Bitwise operators:
  `DragAction operator|(DragAction, DragAction)`
  `DragAction operator&(DragAction, DragAction)`
  `DragAction operator^(DragAction, DragAction)`
  `DragAction operator~(DragAction)`
  `DragAction& operator|=(DragAction&, DragAction)`
  `DragAction& operator&=(DragAction&, DragAction)`
  `DragAction& operator^=(DragAction&, DragAction)`

Enumerator
ACTION_DEFAULT | Means nothing, and should not be used.
ACTION_COPY | Copy the data.
ACTION_MOVE | Move the data, i.e. first copy it, then delete it from the source using the DELETE target of the X selection protocol.
ACTION_LINK | Add a link to the data. Note that this is only useful if source and destination agree on what it means.
ACTION_PRIVATE | Special action which tells the source that the destination will do something that the source doesn’t understand.
ACTION_ASK | Ask the user what to do with the data.

enum Gdk::DragProtocol

Used in Gdk::DragContext to indicate the protocol according to which DND is done.

Enumerator
DRAG_PROTO_NONE | No protocol.
DRAG_PROTO_MOTIF | The Motif DND protocol. No longer supported.
DRAG_PROTO_XDND | The Xdnd protocol.
DRAG_PROTO_ROOTWIN | An extension to the Xdnd protocol for unclaimed root window drops.
DRAG_PROTO_WIN32_DROPFILES | The simple WM_DROPFILES protocol.
DRAG_PROTO_OLE2 | The complex OLE2 DND protocol (not implemented).
DRAG_PROTO_LOCAL | Intra-application DND.
DRAG_PROTO_WAYLAND | Wayland DND protocol.

enum Gdk::EventMask

A set of bit-flags to indicate which events a window is to receive.

Most of these masks map onto one or more of the Gdk::EventType event types above.

See the [input handling overview][chap-input-handling] for details of [event masks][event-masks] and [event propagation][event-propagation].

Gdk::POINTER_MOTION_HINT_MASK is deprecated. It is a special mask to reduce the number of Gdk::MOTION_NOTIFY events received. When using Gdk::POINTER_MOTION_HINT_MASK, fewer Gdk::MOTION_NOTIFY events will be sent, some of which are marked as a hint (the is_hint member is `true`). To receive more motion events after a motion hint event, the application needs to asks for more, by calling Gdk::Event::request_motions().

Since GTK 3.8, motion events are already compressed by default, independent of this mechanism. This compression can be disabled with Gdk::Window::set_event_compression(). See the documentation of that function for details.

If Gdk::TOUCH_MASK is enabled, the window will receive touch events from touch-enabled devices. Those will come as sequences of Gdk::EventTouch with type Gdk::TOUCH_UPDATE, enclosed by two events with type Gdk::TOUCH_BEGIN and Gdk::TOUCH_END (or Gdk::TOUCH_CANCEL). Gdk::Event::get_event_sequence() returns the event sequence for these events, so different sequences may be distinguished.

Bitwise operators:
  `EventMask operator|(EventMask, EventMask)`
  `EventMask operator&(EventMask, EventMask)`
  `EventMask operator^(EventMask, EventMask)`
  `EventMask operator~(EventMask)`
  `EventMask& operator|=(EventMask&, EventMask)`
  `EventMask& operator&=(EventMask&, EventMask)`
  `EventMask& operator^=(EventMask&, EventMask)`

Enumerator
EXPOSURE_MASK | Receive expose events.
POINTER_MOTION_MASK | Receive all pointer motion events.
POINTER_MOTION_HINT_MASK | Deprecated. see the explanation above.
BUTTON_MOTION_MASK | Receive pointer motion events while any button is pressed.
BUTTON1_MOTION_MASK | Receive pointer motion events while 1 button is pressed.
BUTTON2_MOTION_MASK | Receive pointer motion events while 2 button is pressed.
BUTTON3_MOTION_MASK | Receive pointer motion events while 3 button is pressed.
BUTTON_PRESS_MASK | Receive button press events.
BUTTON_RELEASE_MASK | Receive button release events.
KEY_PRESS_MASK | Receive key press events.
KEY_RELEASE_MASK | Receive key release events.
ENTER_NOTIFY_MASK | Receive window enter events.
LEAVE_NOTIFY_MASK | Receive window leave events.
FOCUS_CHANGE_MASK | Receive focus change events.
STRUCTURE_MASK | Receive events about window configuration change.
PROPERTY_CHANGE_MASK | Receive property change events.
VISIBILITY_NOTIFY_MASK | Receive visibility change events.
PROXIMITY_IN_MASK | Receive proximity in events.
PROXIMITY_OUT_MASK | Receive proximity out events.
SUBSTRUCTURE_MASK | Receive events about window configuration changes of child windows.
SCROLL_MASK | Receive scroll events.

TOUCH_MASK

Receive touch events.

Since gtkmm 3.4:

SMOOTH_SCROLL_MASK

Receive smooth scrolling events.

Since gtkmm 3.4:

TOUCHPAD_GESTURE_MASK |
ALL_EVENTS_MASK | The combination of all the above event masks.

enum Gdk::EventType

Specifies the type of the event.

Do not confuse these events with the signals that GTK+ widgets emit. Although many of these events result in corresponding signals being emitted, the events are often transformed or filtered along the way.

In some language bindings, the values Gdk::2BUTTON_PRESS and Gdk::3BUTTON_PRESS would translate into something syntactically invalid (eg `Gdk.EventType.2ButtonPress`, where a symbol is not allowed to start with a number). In that case, the aliases Gdk::DOUBLE_BUTTON_PRESS and Gdk::TRIPLE_BUTTON_PRESS can be used instead.

Enumerator
NOTHING | A special code to indicate a null event.
DELETE | The window manager has requested that the toplevel window be hidden or destroyed, usually when the user clicks on a special icon in the title bar.
DESTROY | The window has been destroyed.
EXPOSE | All or part of the window has become visible and needs to be redrawn.
MOTION_NOTIFY | The pointer (usually a mouse) has moved.
BUTTON_PRESS | A mouse button has been pressed.
DOUBLE_BUTTON_PRESS | A mouse button has been double-clicked (clicked twice within a short period of time). Note that each click also generates a Gdk::BUTTON_PRESS event.
TRIPLE_BUTTON_PRESS | A mouse button has been clicked 3 times in a short period of time. Note that each click also generates a Gdk::BUTTON_PRESS event.
BUTTON_RELEASE | A mouse button has been released.
KEY_PRESS | A key has been pressed.
KEY_RELEASE | A key has been released.
ENTER_NOTIFY | The pointer has entered the window.
LEAVE_NOTIFY | The pointer has left the window.
FOCUS_CHANGE | The keyboard focus has entered or left the window.
CONFIGURE | The size, position or stacking order of the window has changed. Note that GTK+ discards these events for Gdk::WINDOW_CHILD windows.
MAP | The window has been mapped.
UNMAP | The window has been unmapped.
PROPERTY_NOTIFY | A property on the window has been changed or deleted.
SELECTION_CLEAR | The application has lost ownership of a selection.
SELECTION_REQUEST | Another application has requested a selection.
SELECTION_NOTIFY | A selection has been received.
PROXIMITY_IN | An input device has moved into contact with a sensing surface (e.g. a touchscreen or graphics tablet).
PROXIMITY_OUT | An input device has moved out of contact with a sensing surface.
DRAG_ENTER | The mouse has entered the window while a drag is in progress.
DRAG_LEAVE | The mouse has left the window while a drag is in progress.
DRAG_MOTION | The mouse has moved in the window while a drag is in progress.
DRAG_STATUS | The status of the drag operation initiated by the window has changed.
DROP_START | A drop operation onto the window has started.
DROP_FINISHED | The drop operation initiated by the window has completed.
CLIENT_EVENT | A message has been received from another application.
VISIBILITY_NOTIFY | The window visibility status has changed.
SCROLL | The scroll wheel was turned.
WINDOW_STATE | The state of a window has changed. See Gdk::WindowState for the possible window states.
SETTING | A setting has been modified.
OWNER_CHANGE | The owner of a selection has changed. This event type was added in 2.6.
GRAB_BROKEN | A pointer or keyboard grab was broken. This event type was added in 2.8.
DAMAGE | The content of the window has been changed. This event type was added in 2.14.
TOUCH_BEGIN | A new touch event sequence has just started. This event type was added in 3.4.
TOUCH_UPDATE | A touch event sequence has been updated. This event type was added in 3.4.
TOUCH_END | A touch event sequence has finished. This event type was added in 3.4.
TOUCH_CANCEL | A touch event sequence has been canceled. This event type was added in 3.4.
TOUCHPAD_SWIPE | A touchpad swipe gesture event, the current state is determined by its phase field. This event type was added in 3.18.
TOUCHPAD_PINCH | A touchpad pinch gesture event, the current state is determined by its phase field. This event type was added in 3.18.
EVENT_LAST | Marks the end of the GdkEventType enumeration. Added in 2.18.

enum Gdk::FullscreenMode

Indicates which monitor (in a multi-head setup) a window should span over when in fullscreen mode.

Since gtkmm 3.8:

Enumerator
FULLSCREEN_ON_CURRENT_MONITOR | Fullscreen on current monitor only.
FULLSCREEN_ON_ALL_MONITORS | Span across all monitors when fullscreen.

enum Gdk::GrabOwnership

Defines how device grabs interact with other devices.

Enumerator
OWNERSHIP_NONE | All other devices’ events are allowed.
OWNERSHIP_WINDOW | Other devices’ events are blocked for the grab window.
OWNERSHIP_APPLICATION | Other devices’ events are blocked for the whole application.

enum Gdk::GrabStatus

Returned by Gdk::Device::grab(), gdk_pointer_grab() and gdk_keyboard_grab() to indicate success or the reason for the failure of the grab attempt.

Enumerator
GRAB_SUCCESS | The resource was successfully grabbed.
GRAB_ALREADY_GRABBED | The resource is actively grabbed by another client.
GRAB_INVALID_TIME | The resource was grabbed more recently than the specified time.
GRAB_NOT_VIEWABLE | The grab window or the confine_to window are not viewable.
GRAB_FROZEN | The resource is frozen by an active grab of another client.
GRAB_FAILED | The grab failed for some other reason.

enum Gdk::InputMode

An enumeration that describes the mode of an input device.

Enumerator
MODE_DISABLED | The device is disabled and will not report any events.
MODE_SCREEN | The device is enabled. The device’s coordinate space maps to the entire screen.
MODE_WINDOW | The device is enabled. The device’s coordinate space is mapped to a single window. The manner in which this window is chosen is undefined, but it will typically be the same way in which the focus window for key events is determined.

enum Gdk::InputSource

An enumeration describing the type of an input device in general terms.

Enumerator
SOURCE_MOUSE | The device is a mouse. (This will be reported for the core pointer, even if it is something else, such as a trackball.).
SOURCE_PEN | The device is a stylus of a graphics tablet or similar device.
SOURCE_ERASER | The device is an eraser. Typically, this would be the other end of a stylus on a graphics tablet.
SOURCE_CURSOR | The device is a graphics tablet “puck” or similar device.
SOURCE_KEYBOARD | The device is a keyboard.
SOURCE_TOUCHSCREEN | The device is a direct-input touch device, such as a touchscreen or tablet. This device type has been added in 3.4.
SOURCE_TOUCHPAD | The device is an indirect touch device, such as a touchpad. This device type has been added in 3.4.

enum Gdk::InterpType

This enumeration describes the different interpolation modes that can be used with the scaling functions.

GDK_INTERP_NEAREST is the fastest scaling method, but has horrible quality when scaling down. GDK_INTERP_BILINEAR is the best choice if you aren't sure what to choose, it has a good speed/quality balance.

<note> Cubic filtering is missing from the list; hyperbolic interpolation is just as fast and results in higher quality. </note>

Enumerator
INTERP_NEAREST | Nearest neighbor sampling; this is the fastest and lowest quality mode. Quality is normally unacceptable when scaling down, but may be OK when scaling up.
INTERP_TILES | This is an accurate simulation of the PostScript image operator without any interpolation enabled. Each pixel is rendered as a tiny parallelogram of solid color, the edges of which are implemented with antialiasing. It resembles nearest neighbor for enlargement, and bilinear for reduction.
INTERP_BILINEAR | Best quality/speed balance; use this mode by default. Bilinear interpolation. For enlargement, it is equivalent to point-sampling the ideal bilinear-interpolated image. For reduction, it is equivalent to laying down small tiles and integrating over the coverage area.
INTERP_HYPER | This is the slowest and highest quality reconstruction function. It is derived from the hyperbolic filters in Wolberg's "Digital Image Warping", and is formally defined as the hyperbolic-filter sampling the ideal hyperbolic-filter interpolated image (the filter is designed to be idempotent for 1:1 pixel mapping).

enum Gdk::ModifierIntent

This enum is used with Gdk::Keymap::get_modifier_mask() in order to determine what modifiers the currently used windowing system backend uses for particular purposes.

For example, on X11/Windows, the Control key is used for invoking menu shortcuts (accelerators), whereas on Apple computers it’s the Command key (which correspond to Gdk::CONTROL_MASK and Gdk::MOD2_MASK, respectively).

Since gtkmm 3.4:

Enumerator
MODIFIER_INTENT_PRIMARY_ACCELERATOR | The primary modifier used to invoke menu accelerators.
MODIFIER_INTENT_CONTEXT_MENU | The modifier used to invoke context menus. Note that mouse button 3 always triggers context menus. When this modifier is not 0, it additionally triggers context menus when used with mouse button 1.
MODIFIER_INTENT_EXTEND_SELECTION | The modifier used to extend selections using `modifier`-click or `modifier`-cursor-key.
MODIFIER_INTENT_MODIFY_SELECTION | The modifier used to modify selections, which in most cases means toggling the clicked item into or out of the selection.
MODIFIER_INTENT_NO_TEXT_INPUT | When any of these modifiers is pressed, the key event cannot produce a symbol directly. This is meant to be used for input methods, and for use cases like typeahead search.
MODIFIER_INTENT_SHIFT_GROUP | The modifier that switches between keyboard groups (AltGr on X11/Windows and Option/Alt on OS X).
MODIFIER_INTENT_DEFAULT_MOD_MASK | The set of modifier masks accepted as modifiers in accelerators. Needed because Command is mapped to MOD2 on OSX, which is widely used, but on X11 MOD2 is NumLock and using that for a mod key is problematic at best. Ref: https://bugzilla.gnome.org/show_bug.cgi?id=736125.

enum Gdk::ModifierType

A set of bit-flags to indicate the state of modifier keys and mouse buttons in various event types.

Typical modifier keys are Shift, Control, Meta, Super, Hyper, Alt, Compose, Apple, CapsLock or ShiftLock.

Like the X Window System, GDK supports 8 modifier keys and 5 mouse buttons.

Since 2.10, GDK recognizes which of the Meta, Super or Hyper keys are mapped to Mod2 - Mod5, and indicates this by setting Gdk::SUPER_MASK, Gdk::HYPER_MASK or Gdk::META_MASK in the state field of key events.

Note that GDK may add internal values to events which include reserved values such as Gdk::MODIFIER_RESERVED_13_MASK. Your code should preserve and ignore them. You can use Gdk::MODIFIER_MASK to remove all reserved values.

Also note that the GDK X backend interprets button press events for button 4-7 as scroll events, so Gdk::BUTTON4_MASK and Gdk::BUTTON5_MASK will never be set.

Bitwise operators:
  `ModifierType operator|(ModifierType, ModifierType)`
  `ModifierType operator&(ModifierType, ModifierType)`
  `ModifierType operator^(ModifierType, ModifierType)`
  `ModifierType operator~(ModifierType)`
  `ModifierType& operator|=(ModifierType&, ModifierType)`
  `ModifierType& operator&=(ModifierType&, ModifierType)`
  `ModifierType& operator^=(ModifierType&, ModifierType)`

Enumerator
SHIFT_MASK | The Shift key.
LOCK_MASK | A Lock key (depending on the modifier mapping of the X server this may either be CapsLock or ShiftLock).
CONTROL_MASK | The Control key.
MOD1_MASK | The fourth modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier, but normally it is the Alt key).
MOD2_MASK | The fifth modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier).
MOD3_MASK | The sixth modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier).
MOD4_MASK | The seventh modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier).
MOD5_MASK | The eighth modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier).
BUTTON1_MASK | The first mouse button.
BUTTON2_MASK | The second mouse button.
BUTTON3_MASK | The third mouse button.
BUTTON4_MASK | The fourth mouse button.
BUTTON5_MASK | The fifth mouse button.
MODIFIER_RESERVED_13_MASK | A reserved bit flag; do not use in your own code.
MODIFIER_RESERVED_14_MASK | A reserved bit flag; do not use in your own code.
MODIFIER_RESERVED_15_MASK | A reserved bit flag; do not use in your own code.
MODIFIER_RESERVED_16_MASK | A reserved bit flag; do not use in your own code.
MODIFIER_RESERVED_17_MASK | A reserved bit flag; do not use in your own code.
MODIFIER_RESERVED_18_MASK | A reserved bit flag; do not use in your own code.
MODIFIER_RESERVED_19_MASK | A reserved bit flag; do not use in your own code.
MODIFIER_RESERVED_20_MASK | A reserved bit flag; do not use in your own code.
MODIFIER_RESERVED_21_MASK | A reserved bit flag; do not use in your own code.
MODIFIER_RESERVED_22_MASK | A reserved bit flag; do not use in your own code.
MODIFIER_RESERVED_23_MASK | A reserved bit flag; do not use in your own code.
MODIFIER_RESERVED_24_MASK | A reserved bit flag; do not use in your own code.
MODIFIER_RESERVED_25_MASK | A reserved bit flag; do not use in your own code.

SUPER_MASK

The Super modifier.

Since gtkmm 2.10:

HYPER_MASK

The Hyper modifier.

Since gtkmm 2.10:

META_MASK

The Meta modifier.

Since gtkmm 2.10:

MODIFIER_RESERVED_29_MASK | A reserved bit flag; do not use in your own code.
RELEASE_MASK | Not used in GDK itself. GTK+ uses it to differentiate between (keyval, modifiers) pairs from key press and release events.
MODIFIER_MASK | A mask covering all modifier types.

enum Gdk::PixbufAlphaMode

These values can be passed to gdk_pixbuf_render_to_drawable_alpha() to control how the alpha channel of an image should be handled.

This function can create a bilevel clipping mask (black and white) and use it while painting the image. In the future, when the X Window System gets an alpha channel extension, it will be possible to do full alpha compositing onto arbitrary drawables. For now both cases fall back to a bilevel clipping mask.

Enumerator
PIXBUF_ALPHA_BILEVEL | A bilevel clipping mask (black and white) will be created and used to draw the image. Pixels below 0.5 opacity will be considered fully transparent, and all others will be considered fully opaque.
PIXBUF_ALPHA_FULL | For now falls back to Gdk::PIXBUF_ALPHA_BILEVEL. In the future it will do full alpha compositing.

enum Gdk::PixbufRotation

The possible rotations which can be passed to Gdk::Pixbuf::rotate_simple().

To make them easier to use, their numerical values are the actual degrees.

Enumerator
PIXBUF_ROTATE_NONE | No rotation.
PIXBUF_ROTATE_COUNTERCLOCKWISE | Rotate by 90 degrees.
PIXBUF_ROTATE_UPSIDEDOWN | Rotate by 180 degrees.
PIXBUF_ROTATE_CLOCKWISE | Rotate by 270 degrees.

enum Gdk::Status

Enumerator
OK |
ERROR |
ERROR_PARAM |
ERROR_FILE |
ERROR_MEM |

enum Gdk::VisualType

A set of values that describe the manner in which the pixel values for a visual are converted into RGB values for display.

Enumerator
VISUAL_STATIC_GRAY | Each pixel value indexes a grayscale value directly.
VISUAL_GRAYSCALE | Each pixel is an index into a color map that maps pixel values into grayscale values. The color map can be changed by an application.
VISUAL_STATIC_COLOR | Each pixel value is an index into a predefined, unmodifiable color map that maps pixel values into RGB values.
VISUAL_PSEUDO_COLOR | Each pixel is an index into a color map that maps pixel values into rgb values. The color map can be changed by an application.
VISUAL_TRUE_COLOR | Each pixel value directly contains red, green, and blue components. Use Gdk::Visual::get_red_pixel_details(), etc, to obtain information about how the components are assembled into a pixel value.
VISUAL_DIRECT_COLOR | Each pixel value contains red, green, and blue components as for Gdk::VISUAL_TRUE_COLOR, but the components are mapped via a color table into the final output table instead of being converted directly.

enum Gdk::WindowAttributesType

Used to indicate which fields in the Gdk::WindowAttr struct should be honored.

For example, if you filled in the “cursor” and “x” fields of Gdk::WindowAttr, pass “ GDK_WA_X | GDK_WA_CURSOR” to Gdk::Window::new(). Fields in Gdk::WindowAttr not covered by a bit in this enum are required; for example, the width/ height, wclass, and window_type fields are required, they have no corresponding flag in Gdk::WindowAttributesType.

Bitwise operators:
  `WindowAttributesType operator|(WindowAttributesType, WindowAttributesType)`
  `WindowAttributesType operator&(WindowAttributesType, WindowAttributesType)`
  `WindowAttributesType operator^(WindowAttributesType, WindowAttributesType)`
  `WindowAttributesType operator~(WindowAttributesType)`
  `WindowAttributesType& operator|=(WindowAttributesType&, WindowAttributesType)`
  `WindowAttributesType& operator&=(WindowAttributesType&, WindowAttributesType)`
  `WindowAttributesType& operator^=(WindowAttributesType&, WindowAttributesType)`

Enumerator
WA_TITLE | Honor the title field.
WA_X | Honor the X coordinate field.
WA_Y | Honor the Y coordinate field.
WA_CURSOR | Honor the cursor field.
WA_VISUAL | Honor the visual field.
WA_WMCLASS | Honor the wmclass_class and wmclass_name fields.
WA_NOREDIR | Honor the override_redirect field.
WA_TYPE_HINT | Honor the type_hint field.

enum Gdk::WindowEdge

Determines a window edge or corner.

Enumerator
WINDOW_EDGE_NORTH_WEST | The top left corner.
WINDOW_EDGE_NORTH | The top edge.
WINDOW_EDGE_NORTH_EAST | The top right corner.
WINDOW_EDGE_WEST | The left edge.
WINDOW_EDGE_EAST | The right edge.
WINDOW_EDGE_SOUTH_WEST | The lower left corner.
WINDOW_EDGE_SOUTH | The lower edge.
WINDOW_EDGE_SOUTH_EAST | The lower right corner.

enum Gdk::WindowHints

Used to indicate which fields of a Gdk::Geometry struct should be paid attention to.

Also, the presence/absence of GDK_HINT_POS, GDK_HINT_USER_POS, and GDK_HINT_USER_SIZE is significant, though they don't directly refer to Gdk::Geometry fields. GDK_HINT_USER_POS will be set automatically by Gtk::Window if you call gtk_window_move(). GDK_HINT_USER_POS and GDK_HINT_USER_SIZE should be set if the user specified a size/position using a –geometry command-line argument; gtk_window_parse_geometry() automatically sets these flags.

Bitwise operators:
  `WindowHints operator|(WindowHints, WindowHints)`
  `WindowHints operator&(WindowHints, WindowHints)`
  `WindowHints operator^(WindowHints, WindowHints)`
  `WindowHints operator~(WindowHints)`
  `WindowHints& operator|=(WindowHints&, WindowHints)`
  `WindowHints& operator&=(WindowHints&, WindowHints)`
  `WindowHints& operator^=(WindowHints&, WindowHints)`

Enumerator
HINT_POS | Indicates that the program has positioned the window.
HINT_MIN_SIZE | Min size fields are set.
HINT_MAX_SIZE | Max size fields are set.
HINT_BASE_SIZE | Base size fields are set.
HINT_ASPECT | Aspect ratio fields are set.
HINT_RESIZE_INC | Resize increment fields are set.
HINT_WIN_GRAVITY | Window gravity field is set.
HINT_USER_POS | Indicates that the window’s position was explicitly set by the user.
HINT_USER_SIZE | Indicates that the window’s size was explicitly set by the user.

enum Gdk::WindowState

Specifies the state of a toplevel window.

Bitwise operators:
  `WindowState operator|(WindowState, WindowState)`
  `WindowState operator&(WindowState, WindowState)`
  `WindowState operator^(WindowState, WindowState)`
  `WindowState operator~(WindowState)`
  `WindowState& operator|=(WindowState&, WindowState)`
  `WindowState& operator&=(WindowState&, WindowState)`
  `WindowState& operator^=(WindowState&, WindowState)`

Enumerator
WINDOW_STATE_WITHDRAWN | The window is not shown.
WINDOW_STATE_ICONIFIED | The window is minimized.
WINDOW_STATE_MAXIMIZED | The window is maximized.
WINDOW_STATE_STICKY | The window is sticky.
WINDOW_STATE_FULLSCREEN | The window is maximized without decorations.
WINDOW_STATE_ABOVE | The window is kept above other windows.
WINDOW_STATE_BELOW | The window is kept below other windows.
WINDOW_STATE_FOCUSED | The window is presented as focused (with active decorations).

WINDOW_STATE_TILED

The window is in a tiled state,.

Since gtkmm 3.10:

enum Gdk::WindowType

Describes the kind of window.

A Gtk::Window can be one of these types.

Most things you’d consider a “window” should have type Gtk::WINDOW_TOPLEVEL; windows with this type are managed by the window manager and have a frame by default (call Gtk::Window::set_decorated() to toggle the frame). Windows with type Gtk::WINDOW_POPUP are ignored by the window manager; window manager keybindings won’t work on them, the window manager won’t decorate the window with a frame, many GTK+ features that rely on the window manager will not work (e.g. resize grips and maximization/minimization). Gtk::WINDOW_POPUP is used to implement widgets such as Gtk::Menu or tooltips that you normally don’t think of as windows per se. Nearly all windows should be Gtk::WINDOW_TOPLEVEL. In particular, do not use Gtk::WINDOW_POPUP just to turn off the window borders; use Gtk::Window::set_decorated() for that.

Enumerator
WINDOW_ROOT | Root window; this window has no parent, covers the entire screen, and is created by the window system.
WINDOW_TOPLEVEL | Toplevel window (used to implement Gtk::Window).
WINDOW_CHILD | Child window (used to implement e.g. Gtk::Entry).
WINDOW_TEMP | Override redirect temporary window (used to implement Gtk::Menu).
WINDOW_FOREIGN | Foreign window (see gdk_window_foreign_new()).

WINDOW_OFFSCREEN

Offscreen window (see [Offscreen Windows][OFFSCREEN-WINDOWS]).

Since gtkmm 2.18:

WINDOW_SUBSURFACE

Subsurface-based window; This window is visually tied to a toplevel, and is moved/stacked with it.

Currently this window type is only implemented in Wayland.

Since gtkmm 3.14:

enum Gdk::WindowTypeHint

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.

Enumerator
WINDOW_TYPE_HINT_NORMAL | Normal toplevel window.
WINDOW_TYPE_HINT_DIALOG | Dialog window.
WINDOW_TYPE_HINT_MENU | Window used to implement a menu; GTK+ uses this hint only for torn-off menus, see Gtk::TearoffMenuItem.
WINDOW_TYPE_HINT_TOOLBAR | Window used to implement toolbars.
WINDOW_TYPE_HINT_SPLASHSCREEN | Window used to display a splash screen during application startup.
WINDOW_TYPE_HINT_UTILITY | Utility windows which are not detached toolbars or dialogs.
WINDOW_TYPE_HINT_DOCK | Used for creating dock or panel windows.
WINDOW_TYPE_HINT_DESKTOP | Used for creating the desktop background window.
WINDOW_TYPE_HINT_DROPDOWN_MENU | A menu that belongs to a menubar.
WINDOW_TYPE_HINT_POPUP_MENU | A menu that does not belong to a menubar, e.g. a context menu.
WINDOW_TYPE_HINT_TOOLTIP | A tooltip.
WINDOW_TYPE_HINT_NOTIFICATION | A notification - typically a “bubble” that belongs to a status icon.
WINDOW_TYPE_HINT_COMBO | A popup from a combo box.
WINDOW_TYPE_HINT_DND | A window that is used to implement a DND cursor.

enum Gdk::WMDecoration

These are hints originally defined by the Motif toolkit.

The window manager can use them when determining how to decorate the window. The hint must be set before mapping the window.

Bitwise operators:
  `WMDecoration operator|(WMDecoration, WMDecoration)`
  `WMDecoration operator&(WMDecoration, WMDecoration)`
  `WMDecoration operator^(WMDecoration, WMDecoration)`
  `WMDecoration operator~(WMDecoration)`
  `WMDecoration& operator|=(WMDecoration&, WMDecoration)`
  `WMDecoration& operator&=(WMDecoration&, WMDecoration)`
  `WMDecoration& operator^=(WMDecoration&, WMDecoration)`

Enumerator
DECOR_ALL | All decorations should be applied.
DECOR_BORDER | A frame should be drawn around the window.
DECOR_RESIZEH | The frame should have resize handles.
DECOR_TITLE | A titlebar should be placed above the window.
DECOR_MENU | A button for opening a menu should be included.
DECOR_MINIMIZE | A minimize button should be included.
DECOR_MAXIMIZE | A maximize button should be included.

enum Gdk::WMFunction

These are hints originally defined by the Motif toolkit.

The window manager can use them when determining the functions to offer for the window. The hint must be set before mapping the window.

Bitwise operators:
  `WMFunction operator|(WMFunction, WMFunction)`
  `WMFunction operator&(WMFunction, WMFunction)`
  `WMFunction operator^(WMFunction, WMFunction)`
  `WMFunction operator~(WMFunction)`
  `WMFunction& operator|=(WMFunction&, WMFunction)`
  `WMFunction& operator&=(WMFunction&, WMFunction)`
  `WMFunction& operator^=(WMFunction&, WMFunction)`

Enumerator
FUNC_ALL | All functions should be offered.
FUNC_RESIZE | The window should be resizable.
FUNC_MOVE | The window should be movable.
FUNC_MINIMIZE | The window should be minimizable.
FUNC_MAXIMIZE | The window should be maximizable.
FUNC_CLOSE | The window should be closable.

## Function Documentation

DragAction Gdk::operator& | ( | DragAction | lhs,
|  | DragAction | rhs
| ) |  |

inline

WindowState Gdk::operator& | ( | WindowState | lhs,
|  | WindowState | rhs
| ) |  |

inline

EventMask Gdk::operator& | ( | EventMask | lhs,
|  | EventMask | rhs
| ) |  |

inline

WindowAttributesType Gdk::operator& | ( | WindowAttributesType | lhs,
|  | WindowAttributesType | rhs
| ) |  |

inline

ModifierType Gdk::operator& | ( | ModifierType | lhs,
|  | ModifierType | rhs
| ) |  |

inline

WindowHints Gdk::operator& | ( | WindowHints | lhs,
|  | WindowHints | rhs
| ) |  |

inline

WMDecoration Gdk::operator& | ( | WMDecoration | lhs,
|  | WMDecoration | rhs
| ) |  |

inline

WMFunction Gdk::operator& | ( | WMFunction | lhs,
|  | WMFunction | rhs
| ) |  |

inline

DragAction& Gdk::operator&= | ( | DragAction& | lhs,
|  | DragAction | rhs
| ) |  |

inline

WindowState& Gdk::operator&= | ( | WindowState& | lhs,
|  | WindowState | rhs
| ) |  |

inline

EventMask& Gdk::operator&= | ( | EventMask& | lhs,
|  | EventMask | rhs
| ) |  |

inline

WindowAttributesType& Gdk::operator&= | ( | WindowAttributesType& | lhs,
|  | WindowAttributesType | rhs
| ) |  |

inline

ModifierType& Gdk::operator&= | ( | ModifierType& | lhs,
|  | ModifierType | rhs
| ) |  |

inline

WindowHints& Gdk::operator&= | ( | WindowHints& | lhs,
|  | WindowHints | rhs
| ) |  |

inline

WMDecoration& Gdk::operator&= | ( | WMDecoration& | lhs,
|  | WMDecoration | rhs
| ) |  |

inline

WMFunction& Gdk::operator&= | ( | WMFunction& | lhs,
|  | WMFunction | rhs
| ) |  |

inline

DragAction Gdk::operator^ | ( | DragAction | lhs,
|  | DragAction | rhs
| ) |  |

inline

WindowState Gdk::operator^ | ( | WindowState | lhs,
|  | WindowState | rhs
| ) |  |

inline

EventMask Gdk::operator^ | ( | EventMask | lhs,
|  | EventMask | rhs
| ) |  |

inline

WindowAttributesType Gdk::operator^ | ( | WindowAttributesType | lhs,
|  | WindowAttributesType | rhs
| ) |  |

inline

ModifierType Gdk::operator^ | ( | ModifierType | lhs,
|  | ModifierType | rhs
| ) |  |

inline

WindowHints Gdk::operator^ | ( | WindowHints | lhs,
|  | WindowHints | rhs
| ) |  |

inline

WMDecoration Gdk::operator^ | ( | WMDecoration | lhs,
|  | WMDecoration | rhs
| ) |  |

inline

WMFunction Gdk::operator^ | ( | WMFunction | lhs,
|  | WMFunction | rhs
| ) |  |

inline

DragAction& Gdk::operator^= | ( | DragAction& | lhs,
|  | DragAction | rhs
| ) |  |

inline

WindowState& Gdk::operator^= | ( | WindowState& | lhs,
|  | WindowState | rhs
| ) |  |

inline

EventMask& Gdk::operator^= | ( | EventMask& | lhs,
|  | EventMask | rhs
| ) |  |

inline

WindowAttributesType& Gdk::operator^= | ( | WindowAttributesType& | lhs,
|  | WindowAttributesType | rhs
| ) |  |

inline

ModifierType& Gdk::operator^= | ( | ModifierType& | lhs,
|  | ModifierType | rhs
| ) |  |

inline

WindowHints& Gdk::operator^= | ( | WindowHints& | lhs,
|  | WindowHints | rhs
| ) |  |

inline

WMDecoration& Gdk::operator^= | ( | WMDecoration& | lhs,
|  | WMDecoration | rhs
| ) |  |

inline

WMFunction& Gdk::operator^= | ( | WMFunction& | lhs,
|  | WMFunction | rhs
| ) |  |

inline

DragAction Gdk::operator| | ( | DragAction | lhs,
|  | DragAction | rhs
| ) |  |

inline

WindowState Gdk::operator| | ( | WindowState | lhs,
|  | WindowState | rhs
| ) |  |

inline

EventMask Gdk::operator| | ( | EventMask | lhs,
|  | EventMask | rhs
| ) |  |

inline

WindowAttributesType Gdk::operator| | ( | WindowAttributesType | lhs,
|  | WindowAttributesType | rhs
| ) |  |

inline

ModifierType Gdk::operator| | ( | ModifierType | lhs,
|  | ModifierType | rhs
| ) |  |

inline

WindowHints Gdk::operator| | ( | WindowHints | lhs,
|  | WindowHints | rhs
| ) |  |

inline

WMDecoration Gdk::operator| | ( | WMDecoration | lhs,
|  | WMDecoration | rhs
| ) |  |

inline

WMFunction Gdk::operator| | ( | WMFunction | lhs,
|  | WMFunction | rhs
| ) |  |

inline

DragAction& Gdk::operator|= | ( | DragAction& | lhs,
|  | DragAction | rhs
| ) |  |

inline

WindowState& Gdk::operator|= | ( | WindowState& | lhs,
|  | WindowState | rhs
| ) |  |

inline

EventMask& Gdk::operator|= | ( | EventMask& | lhs,
|  | EventMask | rhs
| ) |  |

inline

WindowAttributesType& Gdk::operator|= | ( | WindowAttributesType& | lhs,
|  | WindowAttributesType | rhs
| ) |  |

inline

ModifierType& Gdk::operator|= | ( | ModifierType& | lhs,
|  | ModifierType | rhs
| ) |  |

inline

WindowHints& Gdk::operator|= | ( | WindowHints& | lhs,
|  | WindowHints | rhs
| ) |  |

inline

WMDecoration& Gdk::operator|= | ( | WMDecoration& | lhs,
|  | WMDecoration | rhs
| ) |  |

inline

WMFunction& Gdk::operator|= | ( | WMFunction& | lhs,
|  | WMFunction | rhs
| ) |  |

inline

DragAction Gdk::operator~ | ( | DragAction | flags | ) |

inline

WindowState Gdk::operator~ | ( | WindowState | flags | ) |

inline

EventMask Gdk::operator~ | ( | EventMask | flags | ) |

inline

WindowAttributesType Gdk::operator~ | ( | WindowAttributesType | flags | ) |

inline

ModifierType Gdk::operator~ | ( | ModifierType | flags | ) |

inline

WindowHints Gdk::operator~ | ( | WindowHints | flags | ) |

inline

WMDecoration Gdk::operator~ | ( | WMDecoration | flags | ) |

inline

WMFunction Gdk::operator~ | ( | WMFunction | flags | ) |

inline