Expand description
Graphics Abstractions.
This module contains the abstractions and convenience types used for rendering.
The run-time library also makes use of RenderingCache to store the rendering primitives created by the backend in a type-erased manner.
Re-exports§
pub use euclid;
pub use border_radius::*;
Modules§
- This module contains border radius related types for the run-time library.
- This module contains image and caching related types for the run-time library.
- This module contains a simple helper type to measure the average number of frames rendered per second.
Macros§
- Instantiate a static OpaqueImageVTable for a given type and implements
vtable::HasStaticVTable<OpaqueImageVTable>
for it.
Structs§
- A subset of an originally scalable font that’s rendered ahead of time.
- A pre-rendered glyph with the alpha map and associated metrics
- A set of pre-rendered bitmap glyphs at a fixed pixel size
- This structure contains fields to identify and render an OpenGL texture that Slint borrows from the application code. Use this to embed a native OpenGL texture into a Slint scene.
- Factory to create
slint::Image
from an existing OpenGL texture. - CachedGraphicsData allows the graphics backend to store an arbitrary piece of data associated with an item, which is typically computed by accessing properties. The dependency_tracker is used to allow for a lazy computation. Typically back ends store either compute intensive data or handles that refer to data that’s stored in GPU memory.
- A struct that provides a path as a string as well as the last modification time of the file it points to.
- An entry in the character map of a
BitmapFont
. - Color represents a color in the Slint run-time, represented using 8-bit channels for red, green, blue and the alpha (opacity). It can be conveniently converted using the
to_
andfrom_
(a)rgb helper functions: - The result of the fit function
- FontRequest collects all the developer-configurable properties for fonts, such as family, weight, etc. It is submitted as a request to the platform font system (i.e. CoreText on macOS) and in exchange the backend returns a
Box<dyn Font>
. - GradientStop describes a single color stop in a gradient. The colors between multiple stops are interpolated.
- HsvaColor stores the hue, saturation, value and alpha components of a color in the HSV color space as
f32
fields. This is merely a helper struct for use withColor
. - An image type that can be displayed by the Image element. You can construct Image objects from a path to an image file on disk, using
Self::load_from_path
. - The LinearGradientBrush describes a way of filling a shape with different colors, which are interpolated between different stops. The colors are aligned with a line that’s rotated by the LinearGradient’s angle.
- Error generated if an image cannot be loaded for any reasons.
- Represent a nine-slice image with the base image and the 4 borders
- Invariant, same as vtable::Inner: vtable and ptr has to be valid and ptr an instance matching the vtable
- PathArcTo describes the event of moving the cursor on the path across an arc to the specified x/y coordinates, with the specified x/y radius and additional properties.
- Helper struct containing the offsets of the fields of the struct
PathArcTo
- PathCubicTo describes a smooth Bézier curve from the path’s current position to the specified x/y location, using two control points.
- Helper struct containing the offsets of the fields of the struct
PathCubicTo
- PathDataIterator is a data structure that acts as starting point for iterating through the low-level events of a path. If the path was constructed from said events, then it is a very thin abstraction. If the path was created from higher-level elements, then an intermediate lyon path is required/built.
- PathLineTo describes the event of moving the cursor on the path to the specified location along a straight line.
- Helper struct containing the offsets of the fields of the struct
PathLineTo
- PathMoveTo describes the event of setting the cursor on the path to use as starting point for sub-sequent events, such as
LineTo
. Moving the cursor also implicitly closes sub-paths and therefore beings a new sub-path. - Helper struct containing the offsets of the fields of the struct
PathMoveTo
- PathCubicTo describes a smooth Bézier curve from the path’s current position to the specified x/y location, using one control points.
- Helper struct containing the offsets of the fields of the struct
PathQuadraticTo
- The RadialGradientBrush describes a way of filling a shape with a circular gradient
- The RenderingCache, in combination with CachedGraphicsData, allows back ends to store data that’s either intensive to compute or has bad CPU locality. Back ends typically keep a RenderingCache instance and use the item’s cached_rendering_data() integer as index in the vec_arena::Arena.
- RgbaColor stores the red, green, blue and alpha components of a color with the precision of the generic parameter T. For example if T is f32, the values are normalized between 0 and 1. If T is u8, they values range is 0 to 255. This is merely a helper class for use with
Color
. - SharedPixelBuffer is a container for storing image data as pixels. It is internally reference counted and cheap to clone.
- Some raw pixel data which is typically stored in the binary
- A texture is stored in read-only memory and may be composed of sub-textures.
Enums§
- This enum describes the origin to use when rendering a borrowed OpenGL texture. Use this with
BorrowedOpenGLTextureBuilder::origin
. - A brush is a data structure that is used to describe how a shape, such as a rectangle, path or even text, shall be filled. A brush can also be applied to the outline of a shape, that means the fill of the outline itself.
- ImageCacheKey encapsulates the different ways of indexing images in the cache of decoded images.
- A resource is a reference to binary data, for example images. They can be accessible on the file system or embedded in the resulting binary. Or they might be URLs to a web server and a downloaded is necessary before they can be used. cbindgen:prefix-with-name
- PathData represents a path described by either high-level elements or low-level events and coordinates.
- PathElement describes a single element on a path, such as move-to, line-to, etc.
- The pixel format of a StaticTexture
- Internal enum specify which graphics API should be used, when the backend selector requests that from a built-in backend.
- Internal enum to specify which version of OpenGL to request from the windowing system.
- SharedImageBuffer is a container for images that are stored in CPU accessible memory.
Statics§
- VTable for RC wrapped SVG helper struct.
- VTable for RC wrapped SVG helper struct.
Traits§
- Note: Was generated from the
#[vtable]
macro onOpaqueImageVTable
Functions§
- Return an FitResult that can be used to render an image in a buffer that matches a given ImageFit
- Generate an iterator of
FitResult
for each slice of a nine-slice border image - Returns the start / end points of a gradient within a rectangle of the given size, based on the angle (in degree).
- Load an image from an image embedded in the binary. This is called by the generated code.
Type Aliases§
- 2D Rectangle with integer coordinates
- 2D Size in integer coordinates
- 2D Point
- 2D Rectangle
- Convenience alias for a pixel with three color channels (red, green and blue), each encoded as u8.
- Convenience alias for a pixel with four color channels (red, green, blue and alpha), each encoded as u8.
- 2D Size
- 2D Transform