Expand description
Rust GSK 4 bindings
The project website is here.
Rust bindings of GSK 4, part of gtk4-rs.
GSK is an intermediate layer that isolates GTK from the details of the OpenGL or Vulkan implementation.
Minimum supported Rust version
Currently, the minimum supported Rust version is 1.63.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]
gsk = { git = "https://github.com/gtk-rs/gtk4-rs.git", package = "gsk4" }
Avoid mixing versioned and git crates like this:
# This will not compile
[dependencies]
gdk = {version = "0.1", package = "gdk4"}
gsk = { git = "https://github.com/gtk-rs/gtk4-rs.git", package = "gsk4" }
Features
Feature | Description |
---|---|
broadway | Enable broadway Renderer. Only if GTK is compiled with Broadway support |
v4_6 | Enable the new APIs part of GTK 4.6 |
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 gsk4 are available under the MIT License, please refer to it.
Re-exports
Modules
Structs
A render node applying a blending function between its two child nodes.
A render node applying a blur effect to its single child.
A render node for a border.
BroadwayRenderer
broadway
Implements
A render node for a Cairo surface.
A GSK renderer that is using cairo.
A render node applying a rectangular clip to its single child node.
A render node controlling the color matrix of its single child node.
A render node for a solid color.
A color stop in a gradient node.
A render node for a conic gradient.
A render node that can contain other render nodes.
A render node cross fading between two child nodes.
A render node that emits a debugging message when drawing its
child node.
Implements
A
GLShader
is a snippet of GLSL that is meant to run in the
fragment shader of the rendering pipeline.A render node using a GL shader when drawing its children nodes.
A render node for an inset shadow.
A render node for a linear gradient.
NglRenderer
v4_2
Implements
A render node controlling the opacity of its single child node.
A render node for an outset shadow.
A location in a parse buffer.
A render node for a radial gradient.
RenderNode
is the basic block in a scene graph to be
rendered using Renderer
.Renderer
is a class that renders a scene graph defined via a
tree of RenderNode
instances.A render node repeating its single child node.
A render node for a repeating linear gradient.
A render node for a repeating radial gradient.
A render node applying a rounded rectangle clip to its single child.
A rectangular region with rounded corners.
An object to build the uniforms data for a
GLShader
.The shadow parameters in a shadow node.
A render node drawing one or more shadows behind its single child node.
A render node drawing a set of glyphs.
A render node for a
gdk::Texture
.A render node applying a
Transform
to its single child node.Enums
The blend modes available for render nodes.
The corner indices used by
RoundedRect
.This defines the types of the uniforms that
GskGLShaders
declare.The type of a node determines what the node is rendering.
The filters used when scaling texture data.
Errors that can happen during (de)serialization.
The categories of matrices relevant for GSK and GTK.