Up: cl-cffi-gtk3 API documentation
Package gdk
GDK is an intermediate layer which isolates GTK from the details of the
windowing system. This is the API documentation of a Lisp binding to GDK.
About This PackageGdkDisplayManager GdkDisplay GdkScreen GdkSeat GdkMonitor GdkDevice GdkDevicePad Rectangles Pixbufs RGBA Colors Visuals Cursors Windows Frame Clock Frame timings GdkDrawingContext OpenGL context Events Event Structures Key Values Selections Drag and Drop Properties and Atoms Threads Pango Interaction Cairo Interaction X Window System Interaction Application launching Deprecated General
Gets the display name specified in the command line arguments passed to the gdk_init or gdk_parse_args functions, if any. ...
Indicates to the GUI environment that the application has finished loading. ...
Indicates to the GUI environment that the application has finished loading,
using a given startup notification identifier. ...
Sets a list of backends that GDK should try to use. ... The gdk:program-class function gets the program class. ... GdkDisplayManager The purpose of the gdk:display-manager singleton object is to offer
notification when displays appear or disappear or the default display
changes. ... Gets the gdk:display-manager singleton object. ... List all currently open displays. ... Opens a display. ... GdkDisplay The gdk:display object purpose is two fold:
Opens a display named by display-name. ...
Gets the default display. ... Gets the name of the display. ... Gets the number of screens managed by the display. ... Returns a screen object for one of the screens of the display. ... Get the default screen for the display. ...
Returns the device manager associated to the display. ... Returns true if there is an ongoing grab on the device for the
display. ... Emits a short beep on the display. ...
Flushes any requests queued for the windowing system and waits until all
requests have been handled. ...
Flushes any requests queued for the windowing system. ... Closes the connection to the windowing system for the given display,
and cleans up associated resources. ... Finds out if the display has been closed. ...
Gets the next event to be processed for the display, fetching events from
the windowing system if necessary. ...
Gets a copy of the first event in the event queue of the display, without
removing the event from the queue. ...
Appends a copy of the given event onto the front of the event queue for the
display. ...
Returns whether the display has events that are waiting to be processed. ...
Sets the double click time. ...
Sets the double click distance. ... Returns true if multicolored cursors are supported on the display. ... Returns true if cursors can use an 8 bit alpha channel on the display. ... Returns the default size to use for cursors on the display. ... Gets the maximal size to use for cursors on the display. ...
Returns the default group leader window for all toplevel windows on the
display. ... Returns whether gdk:event-owner-change events will be sent when the
owner of a selection changes. ... Request gdk:event-owner-change events for ownership changes of the
selection named by the given atom. ...
Returns whether the specified display supports clipboard persistance. ...
Issues a request to the clipboard manager to store the clipboard data. ... Returns true if the gdk:window-shape-combine-region function can
be used to create shaped windows on the display. ... Returns true if the gdk:window-input-shape-combine-region
function can be used to modify the input shape of windows on the display. ... Returns true if the gdk:window-composited function can be used
to redirect drawing on the window using compositing. ... Returns a gdk:app-launch-context object suitable for launching
applications on the given display. ...
Indicates to the GUI environment that the application has finished loading,
using a given identifier. ...
Returns the default seat object for this display. ... Returns the list of seats known to display. ...
Gets the number of monitors that belong to display . ...
Gets a monitor associated with this display. ...
Gets the primary monitor for the display. ... Gets the monitor in which the point (x,y) is located, or a nearby
monitor if the point is not in any monitor. ...
Gets the monitor in which the largest area of window resides, or a monitor
close to the window if it is outside of all monitors. ... GdkScreen The gdk:screen object is the GDK representation of the screen on
which windows can be displayed and on which the pointer moves. ...
Gets the default screen for the default display. ...
Get the default visual of the system for the screen. ...
Gets a visual to use for creating windows with an alpha channel. ...
Returns whether windows with an RGBA visual can reasonably be expected to
have their alpha channel drawn correctly on the screen. ... Gets the root window of the screen. ... Gets the display to which the screen belongs. ...
Lists the available visuals for the specified screen. ...
Obtains a list of all toplevel windows known to GDK on the screen. ...
Retrieves a desktop wide setting such as double-click time for the screen. ...
Returns a list of windows representing the current window stack. ... GdkSeat
Flags describing the seat capabilities. ...
Grabs the seat so that all events corresponding to the given capabilities
are passed to this application until the seat is ungrabbed with the gdk:seat-ungrab function, or the window becomes hidden. ... Releases a grab added through the gdk:seat-grab function. ...
Returns the master device that routes pointer events. ...
Returns the master device that routes keyboard events. ...
Returns the slave devices that match the given capabilities. ... GdkMonitor
This enumeration describes how the red, green and blue components of
physical pixels on an output device are laid out. ... The gdk:monitor object represents the individual outputs that are associated with a gdk:display object. ...
Gets whether the monitor should be considered primary. ... GdkDevice
An enumeration describing the type of an input device in general terms. ...
An enumeration that describes the mode of an input device. ...
An enumeration describing the way in which a device axis (valuator) maps
onto the predefined valuator types that GTK understands. ...
Flags describing the current capabilities of a device/tool. ...
Indicates the specific type of tool being used being a tablet. Such as an
airbrush, pencil, etc. ...
Indicates the device type. See above for more information about the meaning
of these device types. ...
Defines how device grabs interact with other devices. ... The gdk:time-coord structure stores a single event in a motion
history. ... Returned by the gdk:seat-grab function to indicate success or the
reason for the failure of the grab attempt. ... The physical tool associated to a gdk:device object. ... The gdk:device object represents a single input device, such as a
keyboard, a mouse, a touchpad, etc. ... If the index argument has a valid keyval, the gdk:device-key function will return keyval and modifiers with the keyval
settings. ...
Accessor of the value specifying how the axis is used. ... If the device is of type :master, it will return the list of slave devices attached to it, otherwise it will return nil. ... Returns the number of keys the device currently has. ...
Grabs the device so that all events coming from this device are passed to
this application until the device is ungrabbed with the gdk:device-ungrab function, or the window becomes unviewable. ... Release any grab on the device. ...
Gets the current state of a pointer device relative to the window. ...
Gets the current location of the device. ...
Gets the current location of the device in double precision. ...
Obtains the window underneath the device, returning the location of the
device. ...
Obtains the window underneath the device, returning the location of the
device in double precision. ...
Obtains the motion history for a pointer device. ...
Interprets a list of double floats as axis values for a given device, and
locates the value in the array for a given axis use. ...
Returns a list of strings containing the labels for the axes that the
device currently has. ...
Interprets a list of double floats as axis values for a given device, and
locates the value in the array for a given axis label, as returned by the gdk:device-list-axes function. ...
Gets information about which window the given pointer device is in, based
on events that have been received so far from the display server. ... GdkDevicePad
A pad feature. ... The gdk:device-pad interface is an interface implemented by devices of :tablet-pad type, it allows querying the features provided by the
pad device. ...
Returns the number of groups this pad device has. ...
Returns the number of modes that the group may have. ...
Returns the number of features a tablet pad has. ... Returns the group the given feature and index belong to, or -1 if
feature/index do not exist in pad . ... RectanglesGDK provides the gdk:rectangle data type for representing sets of pixels on the screen. Together with Cairo's cairo:region-t data type, they make up the central types for representing graphical data.
Defines the position and size of a rectangle. ... Copy constructor of a gdk:rectangle structure. ...
Calculates the intersection of two rectangles. ...
Calculates the union of two rectangles. ... Checks if the two given rectangles are equal. ... PixbufsFunctions for obtaining pixbufs.Pixbufs are client-side images. For details on how to create and manipulate pixbufs, see the gdk-pixbuf:pixbuf API documentation. The functions described here allow to obtain pixbufs from gdk:window objects and Cairo surfaces. Transfers image data from a gdk:window object and converts it to an RGB(A) representation inside a gdk-pixbuf:pixbuf object. ... Transfers image data from a cairo:surface-t instance and converts it to an RGB(A) representation inside a gdk-pixbuf:pixbuf object. ... RGBA ColorsIntroduction to RGBA Colors The gdk:rgba structure is a convenient way to pass RGBA colors
around. It is based on Cairo's way to deal with colors and mirrors its
behavior. All values are in the range from 0.0 to 1.0 inclusive. So the
color (gdk:rgba-new :red 0.0 :green 0.0 :blue 0.0 :alpha 0.0)represents transparent black and (gdk:rgba-new :red 1.0 :green 1.0 :blue 1.0 :alpha 1.0)is opaque white. Other values will be clamped to this range when drawing. Types and functions for RGBA Colors The gdk:rgba structure is used to represent a (possibly translucent)
color, in a way that is compatible with Cairo's notion of color. ... Makes a copy of a RGBA color. ...
Parses a textual representation of a color, and returns a RGBA instance filling in the red, green, blue and alpha
fields. ... Compares two RGBA colors. ...
A hash function suitable for using for a hash table that stores
RGBA colors. ... Returns a textual specification of color in the form rgb(r,g,b) or rgba(r,g,b,a), where r, g, b and a
represent the red, green, blue and alpha values respectively. ... Visuals
A set of values that describe the manner in which the pixel values for a
visual are converted into RGB values for display. ...
A set of values describing the possible byte-orders for storing pixel
values in memory. ... The gdk:visual object describes a particular video hardware display
format. ...
This function returns the available bit depths for the default screen. ...
This function returns the available visual types for the default screen. ...
Lists the available visuals for the default screen. ...
Returns the number of significant bits per red, green and blue value. ...
Obtains values that are needed to calculate blue pixel values in TrueColor
and DirectColor. ...
Obtains values that are needed to calculate green pixel values in TrueColor
and DirectColor. ...
Obtains values that are needed to calculate red pixel values in TrueColor
and DirectColor. ...
Returns the byte order of the visual. ...
Returns the size of a colormap for the visual. ... Returns the bit depth of the visual. ...
Returns the type of visual this is (PseudoColor, TrueColor, etc). ...
Get the best available depth for the default GDK screen. ...
Return the best available visual type for the default GDK screen. ...
Get the default visual of the system for the default GDK screen. ...
Get the visual with the most available colors for the default GDK screen. ...
Get the best visual with depth for the default GDK screen. ...
Get the best visual of the given visual type for the default GDK screen. ... Gets the screen to which the visual belongs. ... Cursors
The standard cursors available. ... The gdk:cursor object represents a cursor. ...
Creates a new cursor from the set of builtin cursors for the default display. See the gdk:cursor-new-for-display function. ...
Creates a new cursor from a pixbuf. ...
Creates a new cursor from a cairo image surface. ... Creates a new cursor by looking up name in the current cursor theme. ...
Creates a new cursor from the set of builtin cursors. ... Returns a gdk-pixbuf:pixbuf object with the image used to display
the cursor. ...
Returns a Cairo image surface with the image used to display the cursor. ... WindowsDescribes the kind of the window. ... :input-output windows are the standard kind of window you might
expect. ... Used to indicate which fields of a gdk:geometry instance should
be paid attention to. ...
Defines the reference point of a window and the meaning of coordinates passed to the gtk:window-move function. ... The gdk:geometry structure gives the window manager information
about a window's geometry constraints. ...
Positioning hints for aligning a window relative to a rectangle. ...
Determines a window edge or corner. ...
These are hints for the window manager that indicate what type of function
the window has. ...
Attributes to use for a newly created window. ... Used to indicate which fields in the gdk:window-attr structure
should be honored. ...
Indicates which monitor (in a multi-head setup) a window should span over
when in fullscreen mode. ... This enumeration is used with the gdk:keymap-modifier-mask function
in order to determine what modifiers the currently used windowing system
backend uses for particular purposes. ...
These are hints originally defined by the Motif toolkit. ...
These are hints originally defined by the Motif toolkit. ...
Onscreen display areas in the target window system. ... Creates a new window using the attributes from attributes. ... Destroys the window system resources associated with window and decrements window's reference count. ...
Gets the type of the window. ...
Gets the display associated with a window. ...
Gets the screen associated with a window. ...
Gets the visual describing the pixel format of a window. ...
Obtains the window underneath the mouse pointer, returning the location of that window in xwin, ywin. ... Like the gdk:window-show-unraised function, but also raises the window
to the top of the window stack, moves the window to the front of the
z-order. ...
Shows a window onscreen, but does not modify its stacking order. ...
For toplevel windows, withdraws them, so they will no longer be known to
the window manager. ...
Check to see if a window is destroyed. ... Checks whether the window has been mapped with the gdk:window-show or gdk:window-show-unraised functions. ...
Check if the window and all ancestors of the window are mapped. ...
Determines whether or not the window is an input only window. ...
Determines whether or not the window is shaped. ...
Gets the bitwise OR of the currently active window state flags, from the gdk:window-state enumeration. ...
Withdraws a window, that is, unmaps it and asks the window manager to
forget about it. ...
Asks to iconify (minimize) window. ...
Attempt to deiconify (unminimize) window. ...
"Pins" a window such that it is on all workspaces and does not scroll with
viewports, for window managers that have scrollable viewports. ... Reverse operation for the gdk:window-stick function. ...
Maximizes the window. ...
Unmaximizes the window. ...
Moves the window into fullscreen mode. ...
Moves the window into fullscreen mode on the given monitor. ...
Moves the window out of fullscreen mode. ...
Accessor of the fullscreen mode applied to the window when fullscreen. ...
Set if the window must be kept above other windows. ...
Set if the window must be kept below other windows. ...
Request the windowing system to make window partially transparent, with
opacity 0 being fully transparent and 1 fully opaque. ... The gdk:window-pass-through function returns whether input to the
window is passed through to the window below. ...
Repositions a window relative to its parent window. ...
Resizes the window, for toplevel windows, asks the window manager to
resize the window. ... Equivalent to calling the gdk:window-move and gdk:window-resize
functions, except that both operations are performed at once, avoiding
strange visual effects. ...
Scroll the contents of window, both pixels and children, by the given
amount. ... Moves the window to rect, aligning their anchor points. ...
Move the part of window indicated by region by dy pixels in the y direction
and dx pixels in the x direction. ...
This function does nothing. ...
Checks whether the window has a native window or not. ...
Tries to ensure that there is a window-system native window for this
window. ...
Raises the window to the top of the z-order (stacking order), so that other
windows with the same parent window appear below the window. ...
Lowers the window to the bottom of the z-order (stacking order), so that
other windows with the same parent window appear above the window. ...
Changes the position of the window in the z-order (stacking order), so that it is above sibling, if above is true, or below sibling, if above is false. ... Sets keyboard focus to window. ... Registers a window as a potential drop destination.
Begins a window resize operation for a toplevel window. ...
Begins a window resize operation for a toplevel window. ...
Begins a window move operation for a toplevel window. ...
Begins a window move operation for a toplevel window. ...
Asks the windowing system to show the window menu. ... Constrains a desired width and height according to a set of
geometry hints such as minimum and maximum size. ... Emits a short beep associated to window in the appropriate display,
if supported. ...
Returns the internal scale factor that maps from window coordinates to the
actual device pixels. ...
For optimisation purposes, compositing window managers may like to not draw
obscured regions of windows, or turn off blending during for these regions. ...
Creates a new surface that is as compatible as possible with the given window. ...
Create a new image surface that is efficient to draw on the given window. ...
Computes the region of a window that potentially can be written to by
drawing primitives. ... A convenience wrapper around the gdk:window-begin-paint-region
function which creates a rectangular region for you. ...
Indicates that you are beginning the process of redrawing region. ...
Indicates that the backing store created by the most recent call to the gdk:window-begin-paint-region function should be copied onscreen and
deleted, leaving the next-most-recent backing store or no backing store at
all as the active paint region. ... Indicates that you are beginning the process of redrawing region on window, and provides you with a gdk:drawing-context object. ... Indicates that the drawing of the contents of window started with the gdk:window-begin-draw-frame function has been completed. ...
Computes the region of the window that is potentially visible. This does not
necessarily take into account if the window is obscured by other windows,
but no area outside of this region is visible. A convenience wrapper around the gdk:window-invalidate-region function
which invalidates a rectangular region. ...
A callback function of this type is passed to the gdk:window-invalidate-maybe-recurse function. ...
Adds region to the update area for window. ... Transfers ownership of the update area from window to the caller of
the function. ...
Temporarily freezes a window such that it will not receive expose events. ... Thaws a window frozen with the gdk:window-freeze-updates function. ... Calls the gdk:window-process-updates function for all windows. ...
Sends one or more expose events to window. ...
With update debugging enabled, calls to the gdk:window-invalidate-region function clear the invalidated region of
the screen to a noticeable color, and GDK pauses for a short time before sending exposes to windows during the gdk:window-process-updates
function. ...
Does nothing, present only for compatiblity. ...
Does nothing, present only for compatiblity. ...
Gets the frame clock for the window. ... The gdk:window-user-data function retrieves the user data for window, which is normally the widget that window belongs to. ...
An override redirect window is not under the control of the window manager. ...
Determines whether or not the desktop environment should be hinted that the
window does not want to receive input focus. ...
Whether or not the window wants to receive input focus when it is
mapped. ... Makes pixels in the window outside region be transparent, so that the
window may be nonrectangular. ...
Sets the shape mask of the window to the union of shape masks for all
children of the window, ignoring the shape mask of the window itself. ...
Merges the shape masks for any child windows into the shape mask for the
window. ... Like the gdk:window-shape-combine-region function, but the shape
applies only to event handling. ...
Sets the input shape mask of the window to the union of input shape masks
for all children of window, ignoring the input shape mask of window itself. ...
Merges the input shape masks for any child windows into the input shape mask for window. ...
Set the bit gravity of the given window to static, and flag it so all
children get static subwindow gravity. ...
Sets the title of a toplevel window, to be displayed in the titlebar. ...
Sets the background color of the window. ...
Sets the background color of the window. ... The pattern to use for the background or nil to use the parent's
background. ... The x and y coordinates returned are relative to the parent window of window, which for toplevels usually means relative to the
window decorations (titlebar, etc.) rather than relative to the root window
(screen-size background window). ...
Sets the geometry hints for the window. ...
Returns the width of the given window. ...
Returns the height of the given window. ...
Sets a list of icons for the window. ...
Whether or not the window has the modal hint set. ...
The type hint set for the window. ...
Newer GTK windows using client-side decorations use extra geometry around
their frames for effects like shadows and invisible borders. ...
Toggles whether a window should appear in a task list or window list. ...
Toggles whether a window should appear in a pager, workspace switcher, or
other desktop utility program that displays a small thumbnail representation
of the windows on the desktop. ...
Toggles whether a window needs the user's urgent attention. ...
Obtains the position of the window as reported in the most-recently-processed gdk:event-configure event. ...
Obtains the top-left corner of the window manager frame in root window
coordinates. ...
Obtains the bounding box of the window, including window manager
titlebar/borders if any. ...
Obtains the position of a window in root window coordinates. ...
Obtains the position of a window position in root window coordinates. ...
Obtains the current pointer position and modifier state. The position is
given in coordinates relative to the upper left corner of window. ...
Obtains the current device position and modifier state. ...
Obtains the current device position in doubles and the modifier state. ...
Obtains the parent of window, as known to GDK. ...
Gets the toplevel window that is an ancestor of the window. ...
Gets the list of children of the window known to GDK. ...
Gets the list of children of the window known to GDK with a particular data set on it. ... Like the gdk:window-children function, but does not copy the list
of children, so the list does not need to be freed. ...
Accessor of the event mask for the window. ...
Windows may have a name used while minimized, distinct from the name they
display in their titlebar. ... Indicates to the window manager that window is a transient dialog
associated with the application window parent. ... When using GTK, typically you should use the gtk:window-role function
instead of this low-level function. ... When using GTK, typically you should use the gtk:window-startup-id
function instead of this low-level function. ... The group leader window for window. ...
"Decorations" are the features the window manager adds to a toplevel gdk:window object. ...
Sets hints about the window management functions to make available via
buttons on the window frame. ...
Obtains the root window, parent all other windows are inside, for the
default display and screen. ... The gdk:window-support-multidevice function returns true if the
window is aware of the existence of multiple devices. ... The gdk:window-device-cursor function retrieves a gdk:cursor pointer for the device currently set on the specified gdk:window object, or nil. ... The gdk:window-device-events function returns the event mask for
the window corresponding to an specific device. ... The gdk:window-source-events function returns the event mask for the window corresponding to the device class specified by source. ...
Determines whether or not extra unprocessed motion events in the event
queue can be discarded. ...
Gets the offscreen surface that an offscreen window renders into. ...
This function informs GDK that the geometry of an embedded offscreen window
has changed. ...
Transforms window coordinates from a parent window to a child window, where
the parent window is the normal parent as returned by the gdk:window-parent function for normal windows, and the window's embedder as returned by the gdk:offscreen-window-embedder function
for offscreen windows. ...
Transforms window coordinates from a child window to its parent window,
where the parent window is the normal parent as returned by the gdk:window-parent function for normal windows, and the window's embedder as returned by the gdk:offscreen-window-embedder function
for offscreen windows. ...
Obtains the parent of window, as known to GDK. ... Gets the toplevel window that is an ancestor of window. ... Frame ClockA gdk:frame-clock object tells the application when to update and repaint a window. The gdk:frame-clock-phase enumeration is used to represent the
different paint clock phases that can be requested. ... A gdk:frame-clock object tells the application when to update and
repaint a window. ...
Gets the time that should currently be used for animations. ...
Asks the frame clock to run a particular phase. ...
Starts updates for an animation. ...
Stops updates for an animation. ...
A frame clock maintains a 64-bit counter that increments for each frame
drawn. ... The frame clock internally keeps a history of gdk:frame-timings
objects for recent frames that can be retrieved with the gdk:frame-clock-timings function. ... Retrieves a gdk:frame-timings instance holding timing information for
the current frame or a recent frame. ...
Gets the frame timings for the current frame. ...
Using the frame history stored in the frame clock, finds the last known
presentation time and refresh interval, and assuming that presentation times
are separated by the refresh interval, predicts a presentation time that is
a multiple of the refresh interval after the last presentation time, and later than time. ... Frame timingsObject holding timing information for a single frame. A gdk:frame-timings structure holds timing information for a single
frame of the application’s displays. ...
Gets the frame counter value of the frame clock when this frame was drawn. ... The timing information in a gdk:frame-timings instance is filled in
incrementally as the frame as drawn and passed off to the window system for
processing and display to the user. ...
Returns the frame time for the frame. ...
Returns the presentation time. ...
Gets the natural interval between presentation times for the display that
this frame was displayed on. ...
Gets the predicted time at which this frame will be displayed. ... GdkDrawingContext The gdk:drawing-context object is an object that represents the current drawing state of a gdk:window object. ...
Retrieves a Cairo context to be used to draw on the window that created the
drawing context. ...
Checks whether the given drawing context is valid. ... OpenGL context The gdk:gl-context object is representing the platform-specific
OpenGL drawing context. ...
Retrieves the OpenGL version of the GL context. ... The gdk:gl-context-required-version function retrieves the major and
minor version of OpenGL to request. ... The gdk:gl-context-debug-enabled function retrieves whether debugging
is enabled. ... The gdk:gl-context-forward-compatible function returns whether the
GL context should be forward compatible. ... The gdk:gl-context-use-es function checks whether the context is
using an OpenGL or OpenGL ES profile. ...
Whether the GL context is in legacy mode or not. ...
Realizes the given GL context. ...
Makes the GL context the current one. ...
Retrieves the current GL context. ...
Clears the current GL context. ... EventsFunctions for handling events from the window system. In GTK applications the events are handled automatically in the gtk:main-do-event function and passed on to the appropriate widgets, so these functions are rarely needed. Though some of the fields in the event structures are useful.
Represents the current time, and can be used anywhere a time is expected. ...
This is the priority that the idle handler processing window updates is
given in the GLib Main Loop. ...
Use this value as the return value for continuing the propagation of an
event handler. ...
Use this value as the return value for stopping the propagation of an event
handler. ...
A set of bit-flags to indicate which events a window is to receive. ... The gdk:touchpad-gesture-phase enumeration specifies the current
state of a touchpad gesture. ... The gdk:event-sequence structure is opaque, and has no user visible
fields. ...
Checks if any events are ready to be processed for any display. ...
If there is an event waiting in the event queue of some open display,
returns a copy of it. ...
Checks all open displays for an event to be processed, fetching events from
the windowing system if necessary. ...
Appends a copy of the given event onto the front of the event queue for
the display, or the default event queue if the event has no window. ...
Creates a new event of the given type. ...
Copies an event. ...
Extract the axis value for a particular axis use from an event. ... Extract the button number from an event. ...
Extracts the click count from an event. ...
Extract the event window relative x/y coordinates from an event. ...
Extracts the hardware keycode from an event. ...
Extracts the keyval from an event. ...
Extract the root window relative x/y coordinates from an event. ...
Extracts the scroll direction from an event. ...
Retrieves the scroll deltas from an event. ...
Check whether a scroll event is a stop scroll event. ...
If the event contains a "state" field, returns the value. ...
Returns the current time of the event. ... If the event is of type :touch-begin, :touch-update, :touch-end or :touch-cancel, returns the gdk:event-sequence instance to which the event belongs. ...
Request more motion notifies if the event is a motion notify hint event. ...
If both events contain X/Y information, this function will return the relative angle from event1 to event2. ...
If both events contain X/Y information, the center of both coordinates will
be returned in x and y. ...
If both events have X/Y information, the distance between both coordinates, will be returned, as in a straight line going from event1 to event2. ... This function returns whether a gdk:event-button instance should
trigger a context menu, according to platform conventions. ...
Returns the seat this event was generated for. ...
Gets the keyboard low-level scancode of a key event. ...
Returns whether this event is an 'emulated' pointer event (typically from a
touch event), as opposed to a real one. ...
Specifies the type of callback function passed to the gdk:event-handler-set function to handle all GDK events. ...
Sets the callback function to call to handle all events from GDK. ...
Whether event debugging output is enabled. ...
Accessor of the screen of an event. ...
Accessor of the "device" field of an event. ...
Accessor of the slave device for the event. ...
Accessor of the device tool representing the tool that caused the event. ...
Obtains a desktop-wide setting, such as the double-click time, for the
default screen. ... Event StructuresSpecifies the direction for a gdk:event-scroll event. ...
Specifies the visiblity status of a window for a gdk:event-visibility event. ... Specifies the crossing mode for a gdk:event-crossing event. ... Specifies the kind of crossing for a gdk:event-crossing event. ... Specifies the type of a property change for a gdk:event-property
event. ... Specifies the state of a toplevel window. ...
Specifies the kind of modification applied to a setting in a gdk:event-setting event. ... Specifies why a selection ownership was changed. ...
A set of bit-flags to indicate the state of modifier keys and mouse buttons
in various event types. ... The gdk:event structure contains a union of all of the event
structures, and allows access to the data fields in a number of ways. ... Describes a key press or key release event. ... Used for button press and button release events. ...
Used for touch events. ...
Generated from button presses for the buttons 4 to 7. ...
Generated when the pointer moves. ...
Generated when all or part of a window becomes visible and needs to be
redrawn. ... Generated when the window visibility status has changed. ... Generated when the pointer enters or leaves a window. ... Describes a change of keyboard focus. ...
Generated when a window size or position has changed. ...
Describes a property change on a window. ...
Generated when a selection is requested or ownership of a selection is
taken over by another client application. ...
Generated during DND operations. ...
Proximity events are generated when using the wrapper for the XInput
extension for GDK. ...
Generated when the state of a toplevel window changes. ...
Generated when a setting is modified. ...
Generated when the owner of a selection changes. ...
Generated when a pointer or keyboard grab is broken. ...
Generated during touchpad swipe gestures. ...
Generated during touchpad swipe gestures. ... Generated during :tablet-pad button presses and releases. ... Generated during :tablet-pad interaction with tactile sensors. ... Generated during :tablet-pad mode switches in a group. ... Key ValuesFunctions for manipulating keyboard codes. A gdk:keymap object defines the translation from keyboard state,
including a hardware key, a modifier mask, and active keyboard group, to a
keyval. ...
Returns the keymap attached to the default display. ... Returns the keymap attached to the display. ...
Looks up the keyval mapped to a keycode/group/level triplet. ... Translates the contents of the keycode, state, and group
arguments into a keyval, effective group, and level. ...
Obtains a list of keycode/group/level combinations that will generate keyval. ... Returns the keyvals bound to keycode. ...
Returns the Pango direction of the effective layout of the keymap. ...
Determines if keyboard layouts for both right-to-left and left-to-right
languages are in use. ... Returns whether the Caps Lock modifier is locked. ... Returns whether the Num Lock modifier is locked. ... Returns whether the Scroll Lock modifier is locked. ... Returns the current modifier state. ...
Adds virtual modifiers (i.e. Super, Hyper and Meta) which correspond to the
real modifiers (i.e. Mod2, Mod3, ...) in modifiers and set the corresponding
bits in state. ...
Maps the virtual modifiers, that is Super, Hyper and Meta, which are set in state to their non-virtual counterparts, that is Mod2, Mod3, ..., and
set the corresponding bits in the return value. ...
Returns the modifier mask the windowing system backend of the keymap uses
for a particular purpose. ...
Converts a key value into a symbolic name. ...
Converts a key name to a key value. ... Obtains the upper-case and lower-case versions of keyval. ...
Converts a key value to upper case, if applicable. ...
Converts a key value to lower case, if applicable. ... Returns true if the given key value is in upper case. ... Returns true if the given key value is in lower case. ...
Convert from a GDK key symbol to the corresponding ISO10646 (Unicode)
character. ... Convert from a ISO10646 character to a key symbol. ... SelectionsIntroduction to selections
The X selection mechanism provides a way to transfer arbitrary chunks of
data between programs. A selection is essentially a named clipboard,
identified by a string interned as an atom. By claiming ownership of a
selection, an application indicates that it will be responsible for supplying its contents. The most common selections are "PRIMARY" and "CLIPBOARD". The contents of a selection can be represented in a number of formats, called targets. Each target is identified by an atom. A list of all possible targets supported by the selection owner can be retrieved by requesting the special target "TARGETS". When a selection is retrieved, the data is accompanied by a type, an atom, and a format, an integer, representing the number of bits per item. The functions in this section only contain the lowlevel parts of the selection protocol. A considerably more complicated implementation is needed on top of this. GTK contains such an implementation and programmers should use those functions instead of the ones presented here. If you plan to implement selection handling directly on top of the functions here, you should refer to the X Inter-Client Communication Conventions Manual (ICCCM). The following strings are availabe for selections, targets and selections types. Available selections: "PRIMARY" "SECONDARY" "CLIPBOARD"Available targets: "BITMAP" COLORMAP" "DRAWABLE" "PIXMAP" "STRING"Availabel selection types: "ATOM" "BITMAP" "COLORMAP" "DRAWABLE" "INTEGER" "PIXMAP" "WINDOW" "STRING" Functions for selections
Sets the owner of the given selection. ...
Sets the owner of the given selection. ...
Determines the owner of the given selection. ...
Determine the owner of the given selection. ...
Retrieves the contents of a selection in a given form. ...
Retrieves selection data that was stored in response to a call to the gdk:selection-convert function. ... Sends a response to the :selection-request event. ... Send a response to the :selection-request event. ... Drag and Drop Used in the gdk:drag-context object to indicate the reason of a
cancelled DND operation. ... Used in the gdk:drag-context object to indicate the protocol
according to which DND is done. ... Used in the gdk:drag-context object to indicate what the
destination should do with the dropped data. ... The gdk:drag-context class and the correspondig functions provide a
low level interface for drag and drop. ...
Returns the selection atom for the current source window. ...
Aborts a drag without dropping. ...
Accepts or rejects a drop. ...
Drops on the current destination. ...
Inform GDK if the drop ended successfully. ...
Finds the destination window and DND protocol to use at the given pointer
position. ...
Starts a drag and creates a new drag context for it. ...
Starts a drag and creates a new drag context for it. ...
Starts a drag and creates a new drag context for it. ...
Updates the drag context when the pointer moves or the set of actions
changes. ...
Ends the drag operation after a drop. ...
Selects one of the actions offered by the drag source. ...
Returns whether the dropped data has been successfully transferred. ...
Finds out the DND protocol supported by a window. ...
Determines the bitmask of actions proposed by the source if the gdk:drag-context-suggested-action function returns the :ask
value. ...
Determines the suggested drag action of the drag context. ...
Determines the action chosen by the drag destination. ...
Retrieves the list of targets of the drag context. ...
Associates a device to the drag context, so all drag and drop events for
the drag context are emitted as if they came from this device. ...
Returns the window where the DND operation started. ...
Returns the destination windw for the DND operation. ...
Returns the drag protocol that is used by this drag context. ...
Returns the window on which the drag icon should be rendered during the
drag operation. ...
Sets the position of the drag window that will be kept under the cursor
hotspot. ... Requests the drag and drop operation to be managed by context. ... Properties and AtomsAn atom is a numeric index into a string table on the X server. They are used to transfer strings efficiently between clients without having to transfer the entire string. The gdk:atom-as-string type represents the C GAtom type which
represents a string as an index into a table of strings on the X server. ... ThreadsIndroduction to threads
For thread safety, GDK relies on the thread primitives in GLib, and on
the thread-safe GLib main loop. GLib is completely thread safe, all global data is automatically locked, but individual data structure instances are not automatically locked for performance reasons. So for example, you must coordinate accesses to the same GHashTable from multiple threads. GTK, however, is not thread safe. You should only use GTK and GDK from the thread gtk_init() and gtk_main() were called on. This is usually referred to as the "main thread". Signals on GTK and GDK types, as well as non-signal callbacks, are emitted in the main thread. You can schedule work in the main thread safely from other threads by using the gdk:threads-add-idle and gdk:threads-add-timeout functions. static void worker_thread (void) { ExpensiveData *expensive_data = do_expensive_computation ();You should use the gdk:threads-add-idle and gdk:threads-add-timeout functions instead of the g:idle-add and g:timeout-add functions since libraries not under your control might be using the deprecated GDK locking mechanism. If you are sure that none of the code in your application and libraries use the deprecated gdk_threads_enter() or gdk_threads_leave() methods, then you can safely use the g:idle-add and g:timeout-add functions. For more information on this "worker thread" pattern, you should also look at the g:task API, which gives you high-level tools to perform expensive tasks from worker threads, and will handle thread management for you. Functions for threads
Initializes GDK so that it can be used from multiple threads in conjunction with the gdk:threads-enter and gdk:threads-leave functions. ...
This function marks the beginning of a critical section in which GDK and
GTK functions can be called safely and without causing race conditions.
Only one thread at a time can be in such a critial section. ... Leaves a critical region begun with the gdk:threads-enter function. ...
Adds a function to be called whenever there are no higher priority events
pending. ...
Sets a function to be called at regular intervals holding the GDK lock,
with the given priority. ... A variant of the gdk:threads-add-timeout function with second
granularity. ... Pango InteractionIntroduction to Pango interaction
Pango is the text layout system used by GDK and GTK. The functions and
types in this section are used to obtain clip regions for pango:layout objects, and to get pango:context objects
that can be used with GDK. Creating a pango:layout object is the first step in rendering text, and requires getting a handle to a pango:context. For GTK programs, you will usually want to use the gtk:widget-pango-context, or gtk:widget-create-pango-layout functions, rather than using the lowlevel gdk:pango-context-for-screen function. Once you have a pango:layout object, you can set the text and attributes of it with Pango functions like the pango:layout-text function and get its size with the pango:layout-size function. Note that Pango uses a fixed point system internally, so converting between Pango units and pixels using the pango:+scale+ constant or the pango:pixels function. Rendering a Pango layout is done most simply with the pango:cairo-show-layout function. You can also draw pieces of the layout with the pango:cairo-show-layout-line function. Example: Draw transformed text with Pango and Cairo ![]() (defun example-pango-drawing (&optional (application nil)) (within-main-loop (let ((area (make-instance 'gtk:drawing-area)) (window (make-instance 'gtk:window :type :toplevel :title "Drawing using Pango with Cairo" :application application :default-width 400 :default-height 400)) (circle 100) (n-words 12) (font "Sans Bold 16")) (g:signal-connect window "destroy" (lambda (widget) (declare (ignore widget)) (gtk:leave-gtk-main))) ;; Signals used to handle the backing surface (g:signal-connect area "draw" (lambda (widget cr) (let* ((cr (glib:pointer cr)) (width (gtk:widget-allocated-width widget)) (height (gtk:widget-allocated-height widget)) (radius (- (/ (min width height) 2) 20))) ;; Set up a transformation matrix so that the user space ;; coordinates for where we are drawing are [-RADIUS, RADIUS], ;; [-RADIUS, RADIUS] We first center, then change the scale (cairo:translate cr (+ radius (/ (- width (* 2 radius)) 2)) (+ radius (/ (- height (* 2 radius)) 2))) (cairo:scale cr (/ radius circle) (/ radius circle)) ;; Clear surface (cairo:set-source-rgb cr 1 1 1) (cairo:paint cr) ;; Create a PangoLayout, set the font and text (let* ((context (gtk:widget-pango-context widget)) (layout (pango:layout-new context)) (desc (pango:font-description-from-string font))) (setf (pango:layout-text layout) "Text") (setf (pango:layout-font-description layout) desc) ;; Draw the layout n-words times in a circle (do* ((i 0 (+ i 1)) (angle 0 (/ (* 360 i) n-words)) ;; Gradient from red to blue (red (/ (+ 1 (cos (* (/ pi 180) (- angle 60)))) 2) (/ (+ 1 (cos (* (/ pi 180) (- angle 60)))) 2))) ((>= i n-words)) (cairo:save cr) (cairo:set-source-rgb cr red 0 (- 1 red)) (cairo:rotate cr (/ (* angle pi) 180)) ;; Inform Pango to re-layout the text with the new ;; transformation matrix (pango:cairo-update-layout cr layout) (multiple-value-bind (width height) (pango:layout-size layout) (declare (ignore height)) (cairo:move-to cr (- (/ width 2 pango:+scale+)) (- circle))) (pango:cairo-show-layout cr layout) (cairo:restore cr))) (cairo:destroy cr) t))) (gtk:container-add window area) (gtk:widget-show-all window)))) Functions for Pango interaction
Obtains a clip region which contains the areas where the given ranges of
text would be drawn. ...
Obtains a clip region which contains the areas where the given ranges of
text would be drawn. ... Creates a pango-context instance for the default GDK screen. ...
Creates a Pango context for the screen. ...
Creates a Pango context for the display. ... Cairo InteractionTypes and functions to support using Cairo.Cairo is a graphics library that supports vector graphics and image compositing that can be used with GDK. GTK does all of its drawing using Cairo. GDK does not wrap the Cairo API, instead it allows to create Cairo contexts which can be used to draw on gdk:window objects. Additional functions allow use gdk:rectangle instances with Cairo and to use gdk:color, gdk:rgba, gdk-pixbuf:pixbuf and gdk:window objects as sources for drawing operations. The gdk:cairo-surface structure represents a Cairo surface in GTK. ... The gdk:cairo-context structure represents a Cairo context in GTK. ...
Creates a new surface that is as compatible as possible with the given window. ...
Create a new image surface that is efficient to draw on the given window. ... Creates a Cairo context for drawing to window. ... This is a convenience function around the cairo:clip-extents function. ... Retrieves the drawing context that created the Cairo context cr. ...
Sets the specified color as the source color of the Cairo context. ... Sets the specified rgba color as the source color of the Cairo
context. ...
Creates region that describes covers the area where the given surface is
more than 50% opaque. ...
Creates an image surface with the same contents as the pixbuf. ...
This is the main way to draw GL content in GTK. ... X Window System InteractionX backend-specific functionsApplication launching The gdk:app-launch-context object is an implementation of the g:app-launch-context object that handles launching an application
in a graphical context. ...
Creates a new launch context. ...
Sets the screen on which applications will be launched when using the
launch context. ...
Sets the workspace on which applications will be launched when using the
launch context when running under a window manager that supports multiple
workspaces, as described in the Extended Window Manager Hints. ...
Sets the timestamp of the launch context. ...
Sets the icon for applications that are launched with the launch context. ...
Sets the icon for applications that are launched with the launch context. ... DeprecatedIntroduction to ColorsTypes and functions for Colors The gdk:color structure is used to describe a color, similar to the
XColor structure used in the X11 drawing API. ...
Makes a copy of a color. ...
Parses a textual specification of a color and fill in the red, green, and blue fields of a gdk:color color. ...
Compares two colors. ... Returns a textual specification of color in the hexadecimal form #rrrrggggbbbb, where r, g and b are hex digits
representing the red, green and blue components respectively. ... GdkDeviceManager
Functions for handling input devices.
In addition to a single pointer and keyboard for user interface input, GDK
contains support for a variety of input devices, including graphics tablets,
touchscreens and multiple pointers/keyboards interacting simultaneously
with the user interface. Such input devices often have additional features,
such as sub-pixel positioning information and additional device-dependent
information. ...
Disables multidevice support in GDK. ...
Returns the list of devices currently attached to the device manager. ...
Returns the client pointer, that is, the master pointer that acts as the
core pointer for this application. ... | Exported Symbol Index |