Files
oak-gpui/crates/gpui_widgets/Cargo.toml
T
Mike-Solar bdb1684de7 feat(gpui_widgets): add scope widgets and audio level meter
W6 of the oak task list. scopes::math is a pure, unit-tested core
(histogram binning, waveform min/max envelopes, vectorscope chroma
projection, meter segment math, peak-hold decay) feeding three canvas
widgets - Histogram, Waveform, Vectorscope - generic over LumaDataSource /
ChromaDataSource traits the host implements over its frame buffers, plus an
AudioLevelMeter over AudioMeterDataSource with lit segments and a peak
marker. examples/scopes.rs drives all four from mock signals. 96 widget
tests pass.
2026-08-09 06:29:06 +08:00

45 lines
961 B
TOML

[package]
name = "gpui_widgets"
version = "0.1.0"
edition.workspace = true
authors = ["Oak <oak@users.noreply.github.com>"]
description = "Form controls, menus, dialogs and NLE widgets built on gpui"
publish = true
license = "Apache-2.0"
[lints]
workspace = true
[dependencies]
anyhow.workspace = true
gpui.workspace = true
gpui_elements = { path = "../gpui_elements" }
thiserror.workspace = true
[dev-dependencies]
gpui = { workspace = true, features = ["test-support"] }
gpui_platform = { workspace = true, features = ["font-kit", "wayland", "x11"] }
[target.'cfg(target_os = "macos")'.dev-dependencies]
core-video.workspace = true
[[example]]
name = "controls"
path = "examples/controls.rs"
[[example]]
name = "menus_dialogs"
path = "examples/menus_dialogs.rs"
[[example]]
name = "viewer"
path = "examples/viewer.rs"
[[example]]
name = "project_explorer"
path = "examples/project_explorer.rs"
[[example]]
name = "scopes"
path = "examples/scopes.rs"