Crate gsk4[][src]

Expand description

Rust GSK 4 bindings

This library contains safe Rust bindings for GSK4.

GSK is an intermediate layer that isolates GTK from the details of the OpenGL or Vulkan implementation.

Re-exports

pub use cairo;
pub use ffi;
pub use gdk;
pub use glib;
pub use graphene;
pub use pango;

Modules

prelude

Traits intended for blanket imports.

Structs

BlendNode

A render node applying a blending function between its two child nodes.

BlurNode

A render node applying a blur effect to its single child.

BorderNode

A render node for a border.

BroadwayRenderer

Implements

CairoNode

A render node for a Cairo surface.

CairoRenderer

A GSK renderer that is using cairo.

ClipNode

A render node applying a rectangular clip to its single child node.

ColorMatrixNode

A render node controlling the color matrix of its single child node.

ColorNode

A render node for a solid color.

ColorStop

A color stop in a gradient node.

ConicGradientNode

A render node for a conic gradient.

ContainerNode

A render node that can contain other render nodes.

CrossFadeNode

A render node cross fading between two child nodes.

DebugNode

A render node that emits a debugging message when drawing its child node.

GLRenderer

A GSK renderer that is using OpenGL.

GLShader

A GLShader is a snippet of GLSL that is meant to run in the fragment shader of the rendering pipeline.

GLShaderBuilder

A builder-pattern type to construct GLShader objects.

GLShaderNode

A render node using a GL shader when drawing its children nodes.

InsetShadowNode

A render node for an inset shadow.

LinearGradientNode

A render node for a linear gradient.

NglRenderer

Implements

OpacityNode

A render node controlling the opacity of its single child node.

OutsetShadowNode

A render node for an outset shadow.

ParseLocation

A location in a parse buffer.

RadialGradientNode

A render node for a radial gradient.

RenderNode

RenderNode is the basic block in a scene graph to be rendered using Renderer.

Renderer

Renderer is a class that renders a scene graph defined via a tree of RenderNode instances.

RepeatNode

A render node repeating its single child node.

RepeatingLinearGradientNode

A render node for a repeating linear gradient.

RepeatingRadialGradientNode

A render node for a repeating radial gradient.

RoundedClipNode

A render node applying a rounded rectangle clip to its single child.

RoundedRect

A rectangular region with rounded corners.

ShaderArgsBuilder

An object to build the uniforms data for a GLShader.

Shadow

The shadow parameters in a shadow node.

ShadowNode

A render node drawing one or more shadows behind its single child node.

TextNode

A render node drawing a set of glyphs.

TextureNode

A render node for a gdk::Texture.

Transform

Transform is an object to describe transform matrices.

TransformNode

A render node applying a Transform to its single child node.

VulkanRenderer

A GSK renderer that is using Vulkan.

Enums

BlendMode

The blend modes available for render nodes.

Corner

The corner indices used by RoundedRect.

GLUniformType

This defines the types of the uniforms that GskGLShaders declare.

RenderNodeType

The type of a node determines what the node is rendering.

ScalingFilter

The filters used when scaling texture data.

SerializationError

Errors that can happen during (de)serialization.

TransformCategory

The categories of matrices relevant for GSK and GTK.

Constants

NONE_RENDERER
NONE_RENDER_NODE

Traits

IsRenderNode