
This PR adds new `Button` and `IconButton` components built on top of our new button abstractions. Both of these buttons are built from the common `ButtonLike` base, and implement the `ButtonCommon` (name TBD) trait in order to provide a common interface. There are still some visual tweaks that we'll need to make to the new buttons, but those should be straightforward to make after we land this. Release Notes: - N/A
22 lines
747 B
Rust
22 lines
747 B
Rust
use gpui::{Div, Render};
|
|
use story::Story;
|
|
|
|
use crate::prelude::*;
|
|
use crate::{Button, ButtonStyle2};
|
|
|
|
pub struct ButtonStory;
|
|
|
|
impl Render for ButtonStory {
|
|
type Element = Div;
|
|
|
|
fn render(&mut self, _cx: &mut ViewContext<Self>) -> Self::Element {
|
|
Story::container()
|
|
.child(Story::title_for::<Button>())
|
|
.child(Story::label("Default"))
|
|
.child(Button::new("default_filled", "Click me"))
|
|
.child(Story::label("Default (Subtle)"))
|
|
.child(Button::new("default_subtle", "Click me").style(ButtonStyle2::Subtle))
|
|
.child(Story::label("Default (Transparent)"))
|
|
.child(Button::new("default_transparent", "Click me").style(ButtonStyle2::Transparent))
|
|
}
|
|
}
|