This PR makes the `border` methods require an explicit width instead of
defaulting to 1px.
This breaks convention with Tailwind, but it makes GPUI more consistent
with itself. We already have an edge case where the parameterized method
had to be named `border_width`, since `border` was taken up by an alias
for the 1px variant.
### Before
```rs
div()
.border()
.border_t()
.border_r()
.border_b()
.border_l()
.border_width(px(7.))
```
### After
```rs
div()
.border_1()
.border_t_1()
.border_r_1()
.border_b_1()
.border_l_1()
.border(px(7.))
```
Release Notes:
- N/A
48 lines
1.7 KiB
Rust
48 lines
1.7 KiB
Rust
use gpui::{Render, ViewContext};
|
|
use story::Story;
|
|
|
|
use crate::prelude::*;
|
|
use crate::{h_flex, Checkbox};
|
|
|
|
pub struct CheckboxStory;
|
|
|
|
impl Render for CheckboxStory {
|
|
fn render(&mut self, cx: &mut ViewContext<Self>) -> impl IntoElement {
|
|
Story::container()
|
|
.child(Story::title_for::<Checkbox>())
|
|
.child(Story::label("Default"))
|
|
.child(
|
|
h_flex()
|
|
.p_2()
|
|
.gap_2()
|
|
.rounded_md()
|
|
.border_1()
|
|
.border_color(cx.theme().colors().border)
|
|
.child(Checkbox::new("checkbox-enabled", Selection::Unselected))
|
|
.child(Checkbox::new(
|
|
"checkbox-intermediate",
|
|
Selection::Indeterminate,
|
|
))
|
|
.child(Checkbox::new("checkbox-selected", Selection::Selected)),
|
|
)
|
|
.child(Story::label("Disabled"))
|
|
.child(
|
|
h_flex()
|
|
.p_2()
|
|
.gap_2()
|
|
.rounded_md()
|
|
.border_1()
|
|
.border_color(cx.theme().colors().border)
|
|
.child(Checkbox::new("checkbox-disabled", Selection::Unselected).disabled(true))
|
|
.child(
|
|
Checkbox::new("checkbox-disabled-intermediate", Selection::Indeterminate)
|
|
.disabled(true),
|
|
)
|
|
.child(
|
|
Checkbox::new("checkbox-disabled-selected", Selection::Selected)
|
|
.disabled(true),
|
|
),
|
|
)
|
|
}
|
|
}
|