Add a transition macro system
This commit is contained in:
parent
f1d70d351e
commit
422b332c1b
17 changed files with 162 additions and 87 deletions
|
|
@ -7,7 +7,7 @@ use std::slice::from_raw_parts;
|
|||
|
||||
use WindowAttributes;
|
||||
|
||||
use events::Event;
|
||||
use events::WindowEvent as Event;
|
||||
|
||||
use super::{events, ffi};
|
||||
use super::XConnection;
|
||||
|
|
@ -123,7 +123,7 @@ impl XInputEventHandler {
|
|||
}
|
||||
|
||||
pub fn translate_key_event(&self, event: &mut ffi::XKeyEvent) -> Vec<Event> {
|
||||
use events::Event::{KeyboardInput, ReceivedCharacter};
|
||||
use events::WindowEvent::{KeyboardInput, ReceivedCharacter};
|
||||
use events::ElementState::{Pressed, Released};
|
||||
|
||||
let mut translated_events = Vec::new();
|
||||
|
|
@ -170,7 +170,7 @@ impl XInputEventHandler {
|
|||
}
|
||||
|
||||
pub fn translate_event(&mut self, cookie: &ffi::XGenericEventCookie) -> Option<Event> {
|
||||
use events::Event::{Focused, MouseEntered, MouseInput, MouseLeft, MouseMoved, MouseWheel};
|
||||
use events::WindowEvent::{Focused, MouseEntered, MouseInput, MouseLeft, MouseMoved, MouseWheel};
|
||||
use events::ElementState::{Pressed, Released};
|
||||
use events::MouseButton::{Left, Right, Middle};
|
||||
use events::MouseScrollDelta::LineDelta;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
use {Event, MouseCursor};
|
||||
use {WindowEvent as Event, MouseCursor};
|
||||
use CreationError;
|
||||
use CreationError::OsError;
|
||||
use libc;
|
||||
|
|
@ -178,7 +178,7 @@ impl<'a> Iterator for PollEventsIterator<'a> {
|
|||
},
|
||||
|
||||
ffi::ClientMessage => {
|
||||
use events::Event::{Closed, Awakened};
|
||||
use events::WindowEvent::{Closed, Awakened};
|
||||
use std::sync::atomic::Ordering::Relaxed;
|
||||
|
||||
let client_msg: &ffi::XClientMessageEvent = unsafe { mem::transmute(&xev) };
|
||||
|
|
@ -192,7 +192,7 @@ impl<'a> Iterator for PollEventsIterator<'a> {
|
|||
},
|
||||
|
||||
ffi::ConfigureNotify => {
|
||||
use events::Event::Resized;
|
||||
use events::WindowEvent::Resized;
|
||||
let cfg_event: &ffi::XConfigureEvent = unsafe { mem::transmute(&xev) };
|
||||
let (current_width, current_height) = self.window.current_size.get();
|
||||
if current_width != cfg_event.width || current_height != cfg_event.height {
|
||||
|
|
@ -202,7 +202,7 @@ impl<'a> Iterator for PollEventsIterator<'a> {
|
|||
},
|
||||
|
||||
ffi::Expose => {
|
||||
use events::Event::Refresh;
|
||||
use events::WindowEvent::Refresh;
|
||||
return Some(Refresh);
|
||||
},
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue