Merge Component
and ComponentPreview
trait (#28365)
- Merge `Component` and `ComponentPreview` trait - Adds a number of component previews - Removes a number of stories Release Notes: - N/A
This commit is contained in:
parent
b15ee1b1cc
commit
c05bf096f8
52 changed files with 3276 additions and 1848 deletions
|
@ -5,7 +5,7 @@
|
|||
//! It can't be located in the `ui` crate because it depends on `editor`.
|
||||
//!
|
||||
|
||||
use component::{ComponentPreview, example_group, single_example};
|
||||
use component::{example_group, single_example};
|
||||
use editor::{Editor, EditorElement, EditorStyle};
|
||||
use gpui::{App, Entity, FocusHandle, Focusable, FontStyle, Hsla, TextStyle};
|
||||
use settings::Settings;
|
||||
|
@ -21,8 +21,7 @@ pub struct SingleLineInputStyle {
|
|||
/// A Text Field that can be used to create text fields like search inputs, form fields, etc.
|
||||
///
|
||||
/// It wraps a single line [`Editor`] and allows for common field properties like labels, placeholders, icons, etc.
|
||||
#[derive(IntoComponent)]
|
||||
#[component(scope = "Input")]
|
||||
#[derive(RegisterComponent)]
|
||||
pub struct SingleLineInput {
|
||||
/// An optional label for the text field.
|
||||
///
|
||||
|
@ -168,17 +167,23 @@ impl Render for SingleLineInput {
|
|||
}
|
||||
}
|
||||
|
||||
impl ComponentPreview for SingleLineInput {
|
||||
fn preview(window: &mut Window, cx: &mut App) -> AnyElement {
|
||||
impl Component for SingleLineInput {
|
||||
fn scope() -> ComponentScope {
|
||||
ComponentScope::Input
|
||||
}
|
||||
|
||||
fn preview(window: &mut Window, cx: &mut App) -> Option<AnyElement> {
|
||||
let input_1 =
|
||||
cx.new(|cx| SingleLineInput::new(window, cx, "placeholder").label("Some Label"));
|
||||
|
||||
v_flex()
|
||||
.gap_6()
|
||||
.children(vec![example_group(vec![single_example(
|
||||
"Default",
|
||||
div().child(input_1.clone()).into_any_element(),
|
||||
)])])
|
||||
.into_any_element()
|
||||
Some(
|
||||
v_flex()
|
||||
.gap_6()
|
||||
.children(vec![example_group(vec![single_example(
|
||||
"Default",
|
||||
div().child(input_1.clone()).into_any_element(),
|
||||
)])])
|
||||
.into_any_element(),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue