diff options
author | tomaka <pierre.krieger1708@gmail.com> | 2015-04-12 19:44:12 +0200 |
---|---|---|
committer | tomaka <pierre.krieger1708@gmail.com> | 2015-04-12 19:44:12 +0200 |
commit | d5138d2708f2448ecda64fc20c00bc9b0a758a36 (patch) | |
tree | 26fbaabee48a2f050412733e6586983f678555dc /src/win32 | |
parent | 253a27d3069b8eb3bdb250a0596dc350996caf89 (diff) | |
parent | 1e94d85d35eca41e2e54ed4880d62ec7473105f0 (diff) | |
download | glutin-d5138d2708f2448ecda64fc20c00bc9b0a758a36.tar.gz glutin-d5138d2708f2448ecda64fc20c00bc9b0a758a36.zip |
Merge pull request #371 from tomaka/get-pixel-format
Adds get_pixel_format() to Window
Diffstat (limited to 'src/win32')
-rw-r--r-- | src/win32/init.rs | 8 | ||||
-rw-r--r-- | src/win32/mod.rs | 8 |
2 files changed, 13 insertions, 3 deletions
diff --git a/src/win32/init.rs b/src/win32/init.rs index 743508e..5cdd6b8 100644 --- a/src/win32/init.rs +++ b/src/win32/init.rs @@ -203,16 +203,17 @@ unsafe fn init(title: Vec<u16>, builder: BuilderAttribs<'static>, }; // calling SetPixelFormat - { + let pixel_format = { let formats = if extra_functions.GetPixelFormatAttribivARB.is_loaded() { enumerate_arb_pixel_formats(&extra_functions, &real_window) } else { enumerate_native_pixel_formats(&real_window) }; - let (id, _) = try!(builder.choose_pixel_format(formats.into_iter().map(|(a, b)| (b, a)))); + let (id, f) = try!(builder.choose_pixel_format(formats.into_iter().map(|(a, b)| (b, a)))); try!(set_pixel_format(&real_window, id)); - } + f + }; // creating the OpenGL context let context = try!(create_context(Some((&extra_functions, &builder)), &real_window, @@ -263,6 +264,7 @@ unsafe fn init(title: Vec<u16>, builder: BuilderAttribs<'static>, events_receiver: events_receiver, is_closed: AtomicBool::new(false), cursor_state: cursor_state, + pixel_format: pixel_format, }) } diff --git a/src/win32/mod.rs b/src/win32/mod.rs index 1f5f3c0..4a9dcbf 100644 --- a/src/win32/mod.rs +++ b/src/win32/mod.rs @@ -13,6 +13,7 @@ use libc; use {CreationError, Event, MouseCursor}; use CursorState; +use PixelFormat; use BuilderAttribs; pub use self::headless::HeadlessContext; @@ -53,6 +54,9 @@ pub struct Window { /// The current cursor state. cursor_state: Arc<Mutex<CursorState>>, + + /// The pixel format that has been used to create this window. + pixel_format: PixelFormat, } unsafe impl Send for Window {} @@ -258,6 +262,10 @@ impl Window { ::Api::OpenGl } + pub fn get_pixel_format(&self) -> PixelFormat { + self.pixel_format.clone() + } + pub fn set_window_resize_callback(&mut self, _: Option<fn(u32, u32)>) { } |