/
Cargo.toml
118 lines (89 loc) · 4.85 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
# Copyright © SixtyFPS GmbH <info@slint-ui.com>
# SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-commercial
[package]
name = "slint-interpreter"
version = "1.0.3"
authors = ["Slint Developers <info@slint-ui.com>"]
edition = "2021"
license = "GPL-3.0-only OR LicenseRef-Slint-commercial"
description = "Interpreter library for Slint"
repository = "https://github.com/slint-ui/slint"
homepage = "https://slint.rs"
categories = ["gui", "rendering::engine"]
keywords = ["gui", "toolkit", "graphics", "design", "ui"]
rust-version.workspace = true
[lib]
path = "lib.rs"
[features]
default = ["std", "backend-winit", "renderer-winit-femtovg", "backend-qt", "compat-1-0"]
## Mandatory feature:
## This feature is required to keep the compatibility with Slint 1.0
## 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" = []
## enable the [`print_diagnostics`] function to show diagnostic in the console output
display-diagnostics = ["i-slint-compiler/display-diagnostics"]
# (internal) export C++ FFI functions
ffi = ["spin_on", "i-slint-core/ffi"]
# (internal) Draw an highlight on a specified element
# NOTE: this is not a semver compatible feature
highlight = []
## Enable use of the Rust standard library.
std = ["i-slint-core/std"]
#! ### Backends
#! See the documentation of the [`slint` crate](https://docs.rs/slint/latest/slint/#backends)
## 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
backend-qt = ["i-slint-backend-selector/i-slint-backend-qt", "std"]
## The [winit](https://crates.io/crates/log) 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.
backend-winit = ["i-slint-backend-selector/backend-winit", "std"]
## Simliar to `backend-winit` this enables the winit based event loop but only
## with support for the X Window System on Unix.
backend-winit-x11 = ["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 Wayland window system on Unix.
backend-winit-wayland = ["i-slint-backend-selector/backend-winit-wayland", "std"]
## Make the winit backend capable of rendering using the [femtovg](https://crates.io/crates/femtovg) crate.
## Must be used in combination with `backend-winit`, `backend-winit-x11`, or `backend-winit-wayland`.
renderer-winit-femtovg = ["i-slint-backend-selector/renderer-winit-femtovg", "std"]
## Make the winit backend capable of rendering using [Skia](https://skia.org/).
## Must be used in combination with `backend-winit`, `backend-winit-x11`, or `backend-winit-wayland`.
renderer-winit-skia = ["i-slint-backend-selector/renderer-winit-skia", "std"]
## Same as `renderer-winit-skia`, but Skia will always use OpenGL.
renderer-winit-skia-opengl = ["i-slint-backend-selector/renderer-winit-skia-opengl", "std"]
## Same as `renderer-winit-skia`, but Skia will always use Vulkan.
renderer-winit-skia-vulkan = ["i-slint-backend-selector/renderer-winit-skia-vulkan", "std"]
## Make the winit backend capable of rendering using the software renderer.
## Must be used in combination with `backend-winit`, `backend-winit-x11`, or `backend-winit-wayland`.
renderer-winit-software = ["i-slint-backend-selector/renderer-winit-software"]
## 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.
accessibility = ["i-slint-backend-selector/accessibility"]
[dependencies]
i-slint-compiler = { version = "=1.0.3", path = "../compiler" }
i-slint-common = { version = "=1.0.3", path = "../common" }
i-slint-core = { version = "=1.0.3", path = "../core", features = ["rtti"] }
i-slint-backend-selector = { version = "=1.0.3", path = "../../internal/backends/selector", features = ["rtti"] }
vtable = { version = "0.1.6", path="../../helper_crates/vtable" }
derive_more = "0.99.5"
generativity = "1"
lyon_path = { version = "1.0" }
once_cell = "1.5"
thiserror = "1"
document-features = { version = "0.2.0", optional = true }
[dependencies.spin_on]
version = "0.1"
optional = true
[target.'cfg(target_arch = "wasm32")'.dependencies]
i-slint-backend-winit = { version = "=1.0.3", path = "../../internal/backends/winit" }
[dev-dependencies]
i-slint-backend-testing = { path = "../../internal/backends/testing" }
spin_on = "0.1"
[package.metadata.docs.rs]
features = ["display-diagnostics", "document-features"]