Cargo Features

[dependencies]
slint-interpreter = { version = "1.4.1", default-features = false, features = ["compat-1-2", "compat-1-0", "display-diagnostics", "ffi", "highlight", "std", "backend-qt", "backend-winit", "backend-winit-x11", "backend-winit-wayland", "backend-linuxkms", "backend-linuxkms-noseat", "renderer-femtovg", "renderer-skia", "renderer-skia-opengl", "renderer-skia-vulkan", "renderer-software", "renderer-winit-femtovg", "renderer-winit-skia", "renderer-winit-skia-opengl", "renderer-winit-skia-vulkan", "renderer-winit-software", "accessibility", "internal", "document-features"] }
default = accessibility, backend-qt, backend-winit, compat-1-2, renderer-femtovg

These default features are set whenever slint-interpreter is added without default-features = false somewhere in the dependency tree.

compat-1-2 default compat-1-0?

Mandatory feature:
This feature is required to keep the compatibility with Slint 1.2
Newer patch version may put current functionality behind a new feature that would be enabled by default only if this feature was added

compat-1-0 = compat-1-2
display-diagnostics

enable the print_diagnostics function to show diagnostic in the console output

Enables display-diagnostics of i-slint-compiler

Affects api::print_diagnostics

ffi = spin_on

(internal) export C++ FFI functions

Enables ffi of i-slint-core

highlight

(internal) Draw an highlight on a specified element
NOTE: this is not a semver compatible feature

Affects slint-interpreter::highlight

std backend-linuxkms? backend-linuxkms-noseat? backend-qt backend-winit backend-winit-wayland? backend-winit-x11? renderer-femtovg renderer-skia? renderer-skia-opengl? renderer-skia-vulkan?

unused (std is mandatory for the interpreter)

backend-qt default = std

Backends

See the documentation of the slint crate

The Qt backend feature uses Qt for the windowing system integration and rendering. This backend also provides the native style. It requires Qt 5.15 or later to be installed. If Qt is not installed, the backend will not be operational

Enables i-slint-backend-qt of i-slint-backend-selector

backend-winit default = std

The winit crate is used for the event loop and windowing system integration. With this feature, both x11 and wayland windowing systems are supported. For a smaller build, omit this feature and select one of the other specific backend-winit-XX features.

Enables backend-winit of i-slint-backend-selector

backend-winit-x11 = std

Simliar to backend-winit this enables the winit based event loop but only with support for the X Window System on Unix.

Enables backend-winit-x11 of i-slint-backend-selector

backend-winit-wayland = std

Simliar to backend-winit this enables the winit based event loop but only with support for the Wayland window system on Unix.

Enables backend-winit-wayland of i-slint-backend-selector

backend-linuxkms = std

KMS with Vulkan or EGL and libinput on Linux are used to render the application in full screen mode, without any windowing system. Requires libseat. If you don't have libseat, select backend-linuxkms-noseat instead. (Experimental)

Enables backend-linuxkms of i-slint-backend-selector

backend-linuxkms-noseat = std

KMS with Vulkan or EGL and libinput on Linux are used to render the application in full screen mode, without any windowing system. Requires libseat. (Experimental)

Enables backend-linuxkms-noseat of i-slint-backend-selector

renderer-femtovg default renderer-winit-femtovg? = std

Make the winit backend capable of rendering using the femtovg crate.

Enables renderer-femtovg of i-slint-backend-selector

renderer-skia renderer-winit-skia? = std

Make the winit backend capable of rendering using Skia. Must be used in combination with backend-winit, backend-winit-x11, or backend-winit-wayland.

Enables renderer-skia of i-slint-backend-selector

renderer-skia-opengl renderer-winit-skia-opengl? = std

Same as renderer-skia, but Skia will always use OpenGL.

Enables renderer-skia-opengl of i-slint-backend-selector

renderer-skia-vulkan renderer-winit-skia-vulkan? = std

Same as renderer-skia, but Skia will always use Vulkan.

Enables renderer-skia-vulkan of i-slint-backend-selector

renderer-software renderer-winit-software?

Make the winit backend capable of rendering using the software renderer.

Enables renderer-software of i-slint-backend-selector

renderer-winit-femtovg = renderer-femtovg

deprecated aliases

renderer-winit-skia = renderer-skia
renderer-winit-skia-opengl = renderer-skia-opengl
renderer-winit-skia-vulkan = renderer-skia-vulkan
renderer-winit-software = renderer-software
accessibility default

Enable integration with operating system provided accessibility APIs (default: enabled)

Enabling this feature will try to expose the tree of UI elements to OS provided accessibility APIs to support screen readers and other assistive technologies.

Enables accessibility of i-slint-backend-selector

internal

Features used internally by Slint tooling that are not stable and come without any stability guarantees whatsoever.

Affects api::spawn_event_loop

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features.

document-features implicit feature

Enables document-features

document-features:

Extract documentation for the feature flags from comments in Cargo.toml

spin_on ffi?