diff options
author | Tomaka17 <pierre.krieger1708@gmail.com> | 2014-07-31 09:42:50 +0200 |
---|---|---|
committer | Tomaka17 <pierre.krieger1708@gmail.com> | 2014-07-31 09:42:50 +0200 |
commit | 8911e162ce526dd8025b7740fd643041d5624a54 (patch) | |
tree | 2ca40054a63729813f6905cdab8e7a48542c45c8 | |
parent | 270e290af9f83590fe81504ec555d3a7da3cc303 (diff) | |
download | glutin-8911e162ce526dd8025b7740fd643041d5624a54.tar.gz glutin-8911e162ce526dd8025b7740fd643041d5624a54.zip |
MonitorID now defined by the implementations
-rw-r--r-- | src/lib.rs | 8 | ||||
-rw-r--r-- | src/win32/mod.rs | 4 | ||||
-rw-r--r-- | src/x11/mod.rs | 4 |
3 files changed, 13 insertions, 3 deletions
@@ -23,7 +23,8 @@ mod x11; mod events; mod hints; -pub struct MonitorID(uint); +/// Identifier for a monitor. +pub struct MonitorID(winimpl::MonitorID); /// Represents an OpenGL context and the Window or environment around it. /// @@ -85,7 +86,12 @@ impl Window { hints: &Hints, monitor: Option<MonitorID>) -> Result<Window, String> { + // extracting the monitor ID + let monitor = monitor.map(|id| { let MonitorID(id) = id; id }); + + // creating the window let win = try!(winimpl::Window::new(dimensions, title, hints, monitor)); + Ok(Window{ window: win, nosend: std::kinds::marker::NoSend, diff --git a/src/win32/mod.rs b/src/win32/mod.rs index 65374b7..a5df94c 100644 --- a/src/win32/mod.rs +++ b/src/win32/mod.rs @@ -2,7 +2,7 @@ use std::kinds::marker::NoSend; use std::sync::Mutex; use std::sync::atomics::AtomicBool; use std::ptr; -use {Event, Hints, MonitorID}; +use {Event, Hints}; mod event; mod ffi; @@ -17,6 +17,8 @@ pub struct Window { nosend: NoSend, } +pub struct MonitorID(uint); + /// Stores the list of all the windows. /// Only available on callback thread. local_data_key!(pub WINDOWS_LIST: Mutex<Vec<(ffi::HWND, Sender<Event>)>>) diff --git a/src/x11/mod.rs b/src/x11/mod.rs index cc70a01..e00dc50 100644 --- a/src/x11/mod.rs +++ b/src/x11/mod.rs @@ -1,4 +1,4 @@ -use {Event, Hints, MonitorID}; +use {Event, Hints}; use libc; use std::{mem, ptr}; use std::sync::atomics::AtomicBool; @@ -14,6 +14,8 @@ pub struct Window { wm_delete_window: ffi::Atom, } +pub struct MonitorID(uint); + impl Window { pub fn new(dimensions: Option<(uint, uint)>, title: &str, hints: &Hints, _: Option<MonitorID>) -> Result<Window, String> |