few changes
This commit is contained in:
+23
-6
@@ -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();
|
||||
|
||||
Reference in New Issue
Block a user