[package]
edition = "2021"
rust-version = "1.70"
name = "rust_widgets"
version = "0.0.2"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Pure Rust cross-platform native GUI architecture"
homepage = "https://github.com/mikewolfli/rust-widgets"
documentation = "https://docs.rs/rust_widgets"
readme = "README.md"
keywords = [
"gui",
"widgets",
"native",
"cross-platform",
"ffi",
]
categories = [
"gui",
"api-bindings",
]
license = "MIT"
repository = "https://github.com/mikewolfli/rust-widgets"
[features]
chart = []
default = ["full"]
desktop-runtime = [
"dep:serde_json",
"dep:lazy_static",
"dep:roxmltree",
]
embedded = []
full = [
"desktop-runtime",
"print",
"pdf",
"chart",
]
gtk-native = ["gtk"]
harmony-native = []
mobile-api = []
pdf = []
print = []
[lib]
name = "rust_widgets"
crate-type = [
"lib",
"cdylib",
]
path = "src/lib.rs"
[[example]]
name = "demo_button"
path = "demos/demo_button.rs"
[[example]]
name = "demo_canvas"
path = "demos/demo_canvas.rs"
[[example]]
name = "demo_chart"
path = "demos/demo_chart.rs"
[[example]]
name = "demo_checkbox"
path = "demos/demo_checkbox.rs"
[[example]]
name = "demo_combobox"
path = "demos/demo_combobox.rs"
[[example]]
name = "demo_dialog"
path = "demos/demo_dialog.rs"
[[example]]
name = "demo_grid"
path = "demos/demo_grid.rs"
[[example]]
name = "demo_groupbox"
path = "demos/demo_groupbox.rs"
[[example]]
name = "demo_i18n"
path = "demos/demo_i18n.rs"
[[example]]
name = "demo_label"
path = "demos/demo_label.rs"
[[example]]
name = "demo_layout"
path = "demos/demo_layout.rs"
[[example]]
name = "demo_line_edit"
path = "demos/demo_line_edit.rs"
[[example]]
name = "demo_listbox"
path = "demos/demo_listbox.rs"
[[example]]
name = "demo_main"
path = "demos/demo_main.rs"
[[example]]
name = "demo_menu"
path = "demos/demo_menu.rs"
[[example]]
name = "demo_menubar"
path = "demos/demo_menubar.rs"
[[example]]
name = "demo_native_events"
path = "demos/demo_native_events.rs"
[[example]]
name = "demo_p0_e2e_native"
path = "demos/demo_p0_e2e_native.rs"
[[example]]
name = "demo_panel"
path = "demos/demo_panel.rs"
[[example]]
name = "demo_popup"
path = "demos/demo_popup.rs"
[[example]]
name = "demo_progress"
path = "demos/demo_progress.rs"
[[example]]
name = "demo_radiobutton"
path = "demos/demo_radiobutton.rs"
[[example]]
name = "demo_scrollbar"
path = "demos/demo_scrollbar.rs"
[[example]]
name = "demo_slider"
path = "demos/demo_slider.rs"
[[example]]
name = "demo_stack_widget"
path = "demos/demo_stack_widget.rs"
[[example]]
name = "demo_statusbar"
path = "demos/demo_statusbar.rs"
[[example]]
name = "demo_tab_widget"
path = "demos/demo_tab_widget.rs"
[[example]]
name = "demo_table"
path = "demos/demo_table.rs"
[[example]]
name = "demo_text_edit"
path = "demos/demo_text_edit.rs"
[[example]]
name = "demo_toolbar"
path = "demos/demo_toolbar.rs"
[[example]]
name = "demo_treeview"
path = "demos/demo_treeview.rs"
[[example]]
name = "demo_window"
path = "demos/demo_window.rs"
[[example]]
name = "demo_xml"
path = "demos/demo_xml.rs"
[dependencies.crossbeam-channel]
version = "0.5"
[dependencies.lazy_static]
version = "1.4"
optional = true
[dependencies.roxmltree]
version = "0.20"
optional = true
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
optional = true
[dependencies.threadpool]
version = "1.8"
[target.'cfg(target_os = "harmony")'.dependencies]
[target.'cfg(target_os = "linux")'.dependencies.gtk]
version = "0.18"
optional = true
[target.'cfg(target_os = "macos")'.dependencies.cocoa]
version = "0.25"
[target.'cfg(target_os = "macos")'.dependencies.objc]
version = "0.2"
[target.'cfg(target_os = "macos")'.dependencies.objc-foundation]
version = "0.1"
[target.'cfg(target_os = "macos")'.dependencies.objc_id]
version = "0.1"
[target."cfg(windows)".dependencies.winapi]
version = "0.3"
features = [
"winuser",
"commctrl",
]
[lints.rust]
unexpected_cfgs = "allow"