Rename Event to AppEvent and update imports

Rename the generic `Event` enum to `AppEvent` and propagate the change
through `app.rs`, `mod.rs`, and `main.rs`. Adjust function signatures,
imports, and channel usage to use the new name and the `read` helper
from crossterm. Ensure all senders/receivers now work with `AppEvent`.
This commit is contained in:
2026-04-06 10:34:33 +02:00
parent 921596376f
commit dd64ef78f7
3 changed files with 17 additions and 17 deletions
+12 -12
View File
@@ -4,16 +4,16 @@ use crate::{
}; };
use ratatui::{ use ratatui::{
DefaultTerminal, Frame, DefaultTerminal, Frame,
crossterm::event::{self, KeyEvent}, crossterm::event::{Event, KeyEvent, read},
layout::Rect, layout::Rect,
}; };
use std::{ use std::{
io::Result, io::Result,
sync::mpsc::{self, Receiver, RecvTimeoutError}, sync::mpsc::{Receiver, RecvTimeoutError, Sender},
time::Duration, time::Duration,
}; };
pub enum Event { pub enum AppEvent {
Input(KeyEvent), Input(KeyEvent),
Resize(u16, u16), Resize(u16, u16),
} }
@@ -45,7 +45,7 @@ impl App {
self.states.as_mut() self.states.as_mut()
} }
pub fn run(&mut self, terminal: &mut DefaultTerminal, rx: Receiver<Event>) -> Result<()> { pub fn run(&mut self, terminal: &mut DefaultTerminal, rx: Receiver<AppEvent>) -> Result<()> {
while !self.exit { while !self.exit {
terminal.draw(|frame: &mut Frame<'_>| self.draw(frame))?; terminal.draw(|frame: &mut Frame<'_>| self.draw(frame))?;
@@ -57,8 +57,8 @@ impl App {
Err(_) => break, Err(_) => break,
}; };
match event { match event {
Event::Input(key_event) => self.handle_key_event(key_event)?, AppEvent::Input(key_event) => self.handle_key_event(key_event)?,
Event::Resize(_, _) => {} AppEvent::Resize(_, _) => {}
} }
} }
@@ -86,17 +86,17 @@ impl App {
} }
} }
pub fn handle_input_events(tx: mpsc::Sender<Event>) { pub fn handle_input_events(tx: Sender<AppEvent>) {
loop { loop {
match event::read() { match read() {
Ok(ev) => match ev { Ok(ev) => match ev {
event::Event::Key(key) => { Event::Key(key) => {
if tx.send(Event::Input(key)).is_err() { if tx.send(AppEvent::Input(key)).is_err() {
break; break;
} }
} }
event::Event::Resize(c, r) => { Event::Resize(c, r) => {
if tx.send(Event::Resize(c, r)).is_err() { if tx.send(AppEvent::Resize(c, r)).is_err() {
break; break;
} }
} }
+1 -1
View File
@@ -8,7 +8,7 @@ pub mod view;
pub mod views; pub mod views;
pub mod widgets; pub mod widgets;
pub use app::{App, Event, handle_input_events}; pub use app::{App, AppEvent, handle_input_events};
pub use keybind::handle_keybindings; pub use keybind::handle_keybindings;
pub use state::GameStates; pub use state::GameStates;
pub use view::View; pub use view::View;
+4 -4
View File
@@ -1,11 +1,11 @@
use ratatui::{Terminal, prelude::CrosstermBackend}; use ratatui::{Terminal, prelude::CrosstermBackend};
use std::{ use std::{
io::{Result, Stdout}, io::{Result, Stdout},
sync::mpsc::{self, Sender}, sync::mpsc::{Sender, channel},
thread, thread,
}; };
use war_in_tunnels::{ use war_in_tunnels::{
app::{App, Event, handle_input_events}, app::{App, AppEvent, handle_input_events},
cli::{Cli, get_args}, cli::{Cli, get_args},
logs::init_logger, logs::init_logger,
}; };
@@ -24,9 +24,9 @@ fn main() -> Result<()> {
let mut terminal: Terminal<CrosstermBackend<Stdout>> = ratatui::init(); let mut terminal: Terminal<CrosstermBackend<Stdout>> = ratatui::init();
let mut app: App = App::new(args); let mut app: App = App::new(args);
let (event_tx, event_rx) = mpsc::channel::<Event>(); let (event_tx, event_rx) = channel::<AppEvent>();
let tx_to_input_events: Sender<Event> = event_tx.clone(); let tx_to_input_events: Sender<AppEvent> = event_tx.clone();
thread::spawn(move || { thread::spawn(move || {
handle_input_events(tx_to_input_events); handle_input_events(tx_to_input_events);
}); });