use super::keyboard::Keyboard;
use super::mouse::Mouse;
use super::{Event, Input};
#[derive(Debug, Clone)]
pub struct KeyboardAndMouse {
mouse: Mouse,
keyboard: Keyboard,
}
impl KeyboardAndMouse {
pub fn mouse(&self) -> &Mouse {
&self.mouse
}
pub fn keyboard(&self) -> &Keyboard {
&self.keyboard
}
}
impl Input for KeyboardAndMouse {
fn new() -> KeyboardAndMouse {
KeyboardAndMouse {
mouse: Mouse::new(),
keyboard: Keyboard::new(),
}
}
fn update(&mut self, event: Event) {
self.mouse.update(event);
self.keyboard.update(event);
}
fn clear(&mut self) {
self.mouse.clear();
self.keyboard.clear();
}
}