Rsx
This commit is contained in:
+15
-14
@@ -1,26 +1,27 @@
|
||||
use osui::{dependency::Dependency, elements::state::use_state, style::Transform, Screen};
|
||||
use std::sync::Arc;
|
||||
|
||||
use osui::{elements::state::use_state, frontend::Rsx, rsx, Screen};
|
||||
|
||||
fn main() -> std::io::Result<()> {
|
||||
let screen = Screen::new();
|
||||
|
||||
app().draw(&screen);
|
||||
|
||||
screen.run()
|
||||
}
|
||||
|
||||
fn app() -> Rsx {
|
||||
let count = use_state(0);
|
||||
|
||||
std::thread::spawn({
|
||||
let count = count.clone();
|
||||
move || loop {
|
||||
std::thread::sleep(std::time::Duration::from_millis(1000));
|
||||
**count.get() += 500;
|
||||
std::thread::sleep(std::time::Duration::from_millis(50));
|
||||
**count.get() += 1;
|
||||
}
|
||||
});
|
||||
|
||||
screen
|
||||
.draw(
|
||||
Dependency::new({
|
||||
let count = count.clone();
|
||||
move || format!("{count}")
|
||||
})
|
||||
.add(count.clone()),
|
||||
)
|
||||
.component(Transform::center());
|
||||
|
||||
screen.run()
|
||||
rsx! {
|
||||
%count "{count}"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user