lemur/src/window.rs

40 lines
1003 B
Rust
Raw Normal View History

2024-12-15 05:00:22 +00:00
pub use about::AboutWindow;
2024-11-26 05:38:03 +00:00
use egui::{Context, ViewportBuilder, ViewportId};
2024-11-28 15:27:18 +00:00
pub use game::GameWindow;
2024-12-31 02:55:30 +00:00
pub use gdb::GdbServerWindow;
2024-11-28 15:27:18 +00:00
pub use input::InputWindow;
2025-02-18 04:21:16 +00:00
pub use vram::{BgMapWindow, CharacterDataWindow, FrameBufferWindow, ObjectWindow, WorldWindow};
2024-11-28 15:27:18 +00:00
use winit::event::KeyEvent;
2024-11-26 05:38:03 +00:00
2025-01-10 04:00:46 +00:00
use crate::emulator::SimId;
2024-12-15 05:00:22 +00:00
mod about;
2024-11-26 05:38:03 +00:00
mod game;
mod game_screen;
2024-12-31 02:55:30 +00:00
mod gdb;
2024-11-26 05:38:03 +00:00
mod input;
2025-02-07 04:17:11 +00:00
mod utils;
2025-02-02 23:33:59 +00:00
mod vram;
2024-11-26 05:38:03 +00:00
2024-11-28 15:27:18 +00:00
pub trait AppWindow {
2024-11-26 05:38:03 +00:00
fn viewport_id(&self) -> ViewportId;
2025-01-10 04:00:46 +00:00
fn sim_id(&self) -> SimId {
SimId::Player1
}
2024-11-26 05:38:03 +00:00
fn initial_viewport(&self) -> ViewportBuilder;
fn show(&mut self, ctx: &Context);
fn on_init(&mut self, ctx: &Context, render_state: &egui_wgpu::RenderState) {
let _ = ctx;
2024-11-28 15:27:18 +00:00
let _ = render_state;
}
fn on_destroy(&mut self) {}
fn handle_key_event(&mut self, event: &KeyEvent) -> bool {
2024-11-26 05:38:03 +00:00
let _ = event;
false
2024-11-26 05:38:03 +00:00
}
fn handle_gamepad_event(&mut self, event: &gilrs::Event) -> bool {
2024-11-29 23:54:26 +00:00
let _ = event;
false
2024-11-29 23:54:26 +00:00
}
2024-11-26 05:38:03 +00:00
}