2023-10-23 14:21:30 +00:00
|
|
|
|
//! # UI – Zed UI Primitives & Components
|
|
|
|
|
//!
|
|
|
|
|
//! This crate provides a set of UI primitives and components that are used to build all of the elements in Zed's UI.
|
|
|
|
|
//!
|
|
|
|
|
//! ## Work in Progress
|
|
|
|
|
//!
|
|
|
|
|
//! This crate is still a work in progress. The initial primitives and components are built for getting all the UI on the screen,
|
|
|
|
|
//! much of the state and functionality is mocked or hard codeded, and performance has not been a focus.
|
|
|
|
|
//!
|
|
|
|
|
|
2023-11-03 22:19:54 +00:00
|
|
|
|
#![doc = include_str!("../docs/hello-world.md")]
|
|
|
|
|
#![doc = include_str!("../docs/building-ui.md")]
|
|
|
|
|
#![doc = include_str!("../docs/todo.md")]
|
2023-10-25 14:33:33 +00:00
|
|
|
|
// TODO: Fix warnings instead of supressing.
|
2023-10-06 21:07:59 +00:00
|
|
|
|
#![allow(dead_code, unused_variables)]
|
2023-10-06 20:52:05 +00:00
|
|
|
|
|
2023-10-06 21:07:59 +00:00
|
|
|
|
mod components;
|
2023-10-23 15:21:48 +00:00
|
|
|
|
mod elevation;
|
2023-10-06 21:07:59 +00:00
|
|
|
|
pub mod prelude;
|
2023-10-23 09:34:35 +00:00
|
|
|
|
pub mod settings;
|
2023-10-06 21:47:10 +00:00
|
|
|
|
mod static_data;
|
2023-11-08 19:29:38 +00:00
|
|
|
|
mod styled_ext;
|
2023-11-03 21:34:11 +00:00
|
|
|
|
mod to_extract;
|
2023-11-02 14:11:25 +00:00
|
|
|
|
pub mod utils;
|
2023-10-06 20:52:05 +00:00
|
|
|
|
|
2023-10-06 21:07:59 +00:00
|
|
|
|
pub use components::*;
|
2023-11-19 10:41:29 +00:00
|
|
|
|
use gpui::actions;
|
2023-10-06 21:07:59 +00:00
|
|
|
|
pub use prelude::*;
|
2023-10-06 21:47:10 +00:00
|
|
|
|
pub use static_data::*;
|
2023-11-08 19:29:38 +00:00
|
|
|
|
pub use styled_ext::*;
|
2023-11-03 21:34:11 +00:00
|
|
|
|
pub use to_extract::*;
|
2023-10-06 21:07:59 +00:00
|
|
|
|
|
2023-10-19 16:58:17 +00:00
|
|
|
|
// This needs to be fully qualified with `crate::` otherwise we get a panic
|
|
|
|
|
// at:
|
2023-10-21 14:01:47 +00:00
|
|
|
|
// thread '<unnamed>' panicked at crates/gpui2/src/platform/mac/platform.rs:66:81:
|
2023-10-19 16:58:17 +00:00
|
|
|
|
// called `Option::unwrap()` on a `None` value
|
|
|
|
|
//
|
|
|
|
|
// AFAICT this is something to do with conflicting names between crates and modules that
|
|
|
|
|
// interfaces with declaring the `ClassDecl`.
|
|
|
|
|
pub use crate::settings::*;
|
2023-10-10 19:30:16 +00:00
|
|
|
|
|
|
|
|
|
#[cfg(feature = "stories")]
|
|
|
|
|
mod story;
|
|
|
|
|
#[cfg(feature = "stories")]
|
|
|
|
|
pub use story::*;
|
2023-11-19 10:41:29 +00:00
|
|
|
|
actions!(NoAction);
|
|
|
|
|
|
|
|
|
|
pub fn binding(key: &str) -> gpui::KeyBinding {
|
|
|
|
|
gpui::KeyBinding::new(key, NoAction {}, None)
|
|
|
|
|
}
|