buffer.rs

 1use gpui2::geometry::rems;
 2use ui::prelude::*;
 3use ui::{
 4    empty_buffer_example, hello_world_rust_buffer_example,
 5    hello_world_rust_buffer_with_status_example, Buffer,
 6};
 7
 8use crate::story::Story;
 9
10#[derive(Element, Default)]
11pub struct BufferStory {}
12
13impl BufferStory {
14    fn render<V: 'static>(&mut self, _: &mut V, cx: &mut ViewContext<V>) -> impl IntoElement<V> {
15        let theme = theme(cx);
16
17        Story::container(cx)
18            .child(Story::title_for::<_, Buffer>(cx))
19            .child(Story::label(cx, "Default"))
20            .child(div().w(rems(64.)).h_96().child(empty_buffer_example()))
21            .child(Story::label(cx, "Hello World (Rust)"))
22            .child(
23                div()
24                    .w(rems(64.))
25                    .h_96()
26                    .child(hello_world_rust_buffer_example(&theme)),
27            )
28            .child(Story::label(cx, "Hello World (Rust) with Status"))
29            .child(
30                div()
31                    .w(rems(64.))
32                    .h_96()
33                    .child(hello_world_rust_buffer_with_status_example(&theme)),
34            )
35    }
36}