few changes

This commit is contained in:
2025-06-27 15:02:13 -05:00
parent 3cacd42421
commit 9715630d9f
8 changed files with 78 additions and 34 deletions
+23 -6
View File
@@ -1,7 +1,10 @@
use osui::{
element::input::{Input, InputUpdateEvent},
element::{
input::{Input, InputKeyPress},
rect::Rect,
},
events::{Close, EventManager},
extensions::{keypress::KeyPressExtension, ExtensionManager},
extensions::{keypress::KeyPressExtension, tick_rate::TickRate, ExtensionManager},
style::Transform,
Screen,
};
@@ -11,13 +14,27 @@ fn main() {
let mut extensions = ExtensionManager::new();
let mut events = EventManager::new();
extensions.add(KeyPressExtension);
extensions.add(TickRate(255));
screen.draw(Input::new()).component(Transform::center());
screen
.draw(Rect(0xffffff))
.component(Transform::center().dimensions(30, 3));
events.on(|events, event: Box<InputUpdateEvent>| {
if event.0 == "quit" {
events.dispatch(Close);
screen
.draw(format!("Type quit to quit"))
.component(Transform::new().bottom());
screen
.draw(Input::new())
.component(Transform::new().bottom());
events.on(|events, event: Box<InputKeyPress>| match event.1.code {
crossterm::event::KeyCode::Enter => {
if event.0 == "quit" {
events.dispatch(Close);
}
}
_ => {}
});
screen.run(&mut events, &mut extensions).unwrap();