Crate gdk4[−][src]
Expand description
Rust GDK 4 bindings
The project website is here.
Rust bindings of GDK 4, part of gtk4-rs.
Minimum supported Rust version
Currently, the minimum supported Rust version is 1.54.0
.
Documentation
- The Rust API Stable/Development
- The C API
- GTK Installation instructions
Using
We recommend using crates from crates.io, as demonstrated here.
If you want to track the bleeding edge, use the git dependency instead:
[dependencies]
gdk = { git = "https://github.com/gtk-rs/gtk4-rs.git", package = "gdk4" }
Avoid mixing versioned and git crates like this:
[dependencies]
gtk = {version = "0.1", package = "gtk4"}
gdk = { git = "https://github.com/gtk-rs/gtk4-rs.git", package = "gdk4" }
Features
Feature | Description |
---|---|
v4_4 | Enable the new APIs part of GTK 4.4 |
v4_2 | Enable the new APIs part of GTK 4.2 |
See Also
License
The Rust bindings of gdk4 are available under the MIT License, please refer to it.
Re-exports
Modules
Structs
Positioning hints for aligning a surface relative to a rectangle.
AppLaunchContext
handles launching an application in a graphical context.
Flags describing the current capabilities of a device/tool.
An event related to a button on a pointer device.
CairoContext
is an object representing the platform-specific
draw context.
A builder-pattern type to construct Clipboard
objects.
A ContentDeserializer
is used to deserialize content received via
inter-application data transfers.
The ContentFormats
structure is used to advertise and negotiate the
format of content.
A ContentFormatsBuilder
is an auxiliary struct used to create
new ContentFormats
, and should not be kept around.
A ContentProvider
is used to provide content for the clipboard or
for drag-and-drop operations in a number of formats.
A ContentSerializer
is used to serialize content for
inter-application data transfers.
An event caused by a pointing device moving between surfaces.
A builder-pattern type to construct Cursor
objects.
An event related to drag and drop operations.
An event related to closing a top-level surface.
DevicePad
is an interface implemented by devices of type
InputSource::TabletPad
A physical tool associated to a Device
.
A builder-pattern type to construct DeviceTool
objects.
A singleton object that offers notification when displays appear or disappear.
A DragSurface
is an interface for surfaces used during DND.
Base class for objects implementing different rendering methods.
EventSequence
is an opaque type representing a sequence
of related touch events.
An event related to a keyboard focus change.
A FrameClock
tells the application when to update and repaint
a surface.
Used to represent the different paint clock phases that can be requested.
A FrameTimings
object holds timing information for a single frame
of the application’s displays.
A GdkTexture representing a GL texture object.
An event related to a broken windowing system grab.
An event related to a key-based device.
A Texture
representing image data in memory.
Flags to indicate the state of modifier keys and mouse buttons in events.
An event related to a pointer or touch device motion.
An event related to a pad-based device.
Flags about a paintable object.
The PopupLayout
struct contains information that is
necessary position a Popup
relative to its parent.
An event related to the proximity of a tool to a device.
An event related to a scrolling motion.
Flags describing the seat capabilities.
Base type for snapshot operations.
The ToplevelLayout
struct contains information that
is necessary to present a sovereign window on screen.
The ToplevelSize
struct contains information that is useful
to compute the size of a toplevel.
Specifies the state of a toplevel surface.
An event related to a touch-based device.
An event related to a gesture on a touchpad device.
VulkanContext
is an object representing the platform-specific
Vulkan draw context.
Enums
Defines how device axes are interpreted by GTK.
Specifies the crossing mode for enter and leave events.
A pad feature.
Indicates the specific type of tool being used being a tablet. Such as an airbrush, pencil, etc.
Used in Drag
to the reason of a cancelled DND operation.
Specifies the type of the event.
Indicates which monitor a surface should span over when in fullscreen mode.
Defines the reference point of a surface and is used in PopupLayout
.
An enumeration describing the type of an input device in general terms.
Describes how well an event matches a given keyval and modifiers.
MemoryFormat
describes a format that bytes can have in memory.
Specifies the kind of crossing for enter and leave events.
Specifies the direction for scroll events.
This enumeration describes how the red, green and blue components of physical pixels on an output device are laid out.
Determines a surface edge or corner.
Specifies the current state of a touchpad gesture.
Error enumeration for VulkanContext
.
Constants
Defines all possible DND actions.
The middle button.
The primary button. This is typically the left mouse button, or the right button in a left-handed setup.
The secondary button. This is typically the right mouse button, or the left button in a left-handed setup.
Represents the current time, and can be used anywhere a time is expected.
Use this macro as the return value for continuing the propagation of an event handler.
Use this macro as the return value for stopping the propagation of an event handler.
A mask covering all entries in ModifierType
.
This is the priority that the idle handler processing surface updates is given in the main loop.
Functions
Read content from the given input stream and deserialize it, asynchronously.
Registers a function to deserialize object of a given type.
Registers a function to serialize objects of a given type.
Serialize content and write it to the given output stream, asynchronously.
Canonicalizes the given mime type and interns the result.
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.
Transfers image data from a cairo_surface_t
and converts it
to a gdk_pixbuf::Pixbuf
.
Creates a new pixbuf from texture
.
Sets a list of backends that GDK should try to use.
Convert from a Unicode character to a key symbol.