drivers/native/devices/window_screen/
mod.rs

1mod keyboard;
2mod pointer;
3mod screen;
4mod window;
5mod wrapper;
6
7use std::sync::{Arc, Mutex};
8
9use file_system::{Device, create_device};
10use graphics::Point;
11
12use keyboard::*;
13use pointer::*;
14use screen::*;
15use window::*;
16use wrapper::*;
17
18pub fn new(resolution: Point) -> Result<(Device, Device, Device), String> {
19    let inner = Arc::new(Mutex::new(Inner::new(resolution)?));
20
21    let screen_device = ScreenDevice::new(inner.clone());
22
23    let pointer_device = PointerDevice::new(inner.clone());
24
25    let keyboard_device = KeyboardDevice::new(inner);
26
27    Ok((
28        create_device!(screen_device),
29        create_device!(pointer_device),
30        create_device!(keyboard_device),
31    ))
32}