Skip to repository content66 lines · 1.9 KB · rust
tenant.openagents/omega
No repository description is available.
OpenAgents Git authority 2026-07-28T04:40:16.340Z Public web read
NIP-34 coordinate
30617:7649603503856e5148d571eac2766b288a8ff1e9e35d380337a1d2b0015b4f92:omegaMaintainersHidden in public view
References2 branches · 1 tag
Read-only clone
git clone https://openagents.com/git/tenant.openagents/omega.gitBrowse files
uniform_list.rs
1#![cfg_attr(target_family = "wasm", no_main)]
2
3use gpui::{
4 App, Bounds, Context, Window, WindowBounds, WindowOptions, div, prelude::*, px, rgb, size,
5 uniform_list,
6};
7use gpui_platform::application;
8
9struct UniformListExample {}
10
11impl Render for UniformListExample {
12 fn render(&mut self, _window: &mut Window, cx: &mut Context<Self>) -> impl IntoElement {
13 div().size_full().bg(rgb(0xffffff)).child(
14 uniform_list(
15 "entries",
16 50,
17 cx.processor(|_this, range, _window, _cx| {
18 let mut items = Vec::new();
19 for ix in range {
20 let item = ix + 1;
21
22 items.push(
23 div()
24 .id(ix)
25 .px_2()
26 .cursor_pointer()
27 .on_click(move |_event, _window, _cx| {
28 println!("clicked Item {item:?}");
29 })
30 .child(format!("Item {item}")),
31 );
32 }
33 items
34 }),
35 )
36 .h_full(),
37 )
38 }
39}
40
41fn run_example() {
42 application().run(|cx: &mut App| {
43 let bounds = Bounds::centered(None, size(px(300.0), px(300.0)), cx);
44 cx.open_window(
45 WindowOptions {
46 window_bounds: Some(WindowBounds::Windowed(bounds)),
47 ..Default::default()
48 },
49 |_, cx| cx.new(|_| UniformListExample {}),
50 )
51 .unwrap();
52 });
53}
54
55#[cfg(not(target_family = "wasm"))]
56fn main() {
57 run_example();
58}
59
60#[cfg(target_family = "wasm")]
61#[wasm_bindgen::prelude::wasm_bindgen(start)]
62pub fn start() {
63 gpui_platform::web_init();
64 run_example();
65}
66