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
+5 -7
View File
@@ -1,4 +1,4 @@
use crossterm::event::{KeyCode, KeyEvent, KeyModifiers};
use crossterm::event::KeyEvent;
use crate::{
events::{Close, Event, EventManager},
@@ -34,15 +34,13 @@ impl Extension for KeyPressExtension {
fn tick_start(&mut self, _: &mut Screen, _: &mut EventManager) {}
fn tick_end(&mut self, _: &mut Screen, events: &mut EventManager) {
match crossterm::event::read().unwrap() {
crossterm::event::Event::Key(e) => {
if e.modifiers.contains(KeyModifiers::CONTROL) && e.code == KeyCode::Char('c') {
events.dispatch(Close);
} else {
if crossterm::event::poll(std::time::Duration::from_millis(13)).unwrap() {
match crossterm::event::read().unwrap() {
crossterm::event::Event::Key(e) => {
events.dispatch(e);
}
_ => {}
}
_ => {}
}
}
}
+1
View File
@@ -1,4 +1,5 @@
pub mod keypress;
pub mod tick_rate;
use crate::{events::EventManager, Screen};
+13
View File
@@ -0,0 +1,13 @@
use crate::extensions::Extension;
pub struct TickRate(pub u8);
impl Extension for TickRate {
fn init(&mut self, _: &mut crate::Screen, _: &mut crate::events::EventManager) {}
fn tick_end(&mut self, _: &mut crate::Screen, _: &mut crate::events::EventManager) {
std::thread::sleep(std::time::Duration::from_millis(1000 / self.0 as u64));
}
fn tick_start(&mut self, _: &mut crate::Screen, _: &mut crate::events::EventManager) {}
}