From d4dcff582e80d38d4f36e0e0bcf9f7281b4b830d Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Wed, 29 Apr 2015 10:19:59 +0200 Subject: [PATCH] Extract headless context from api/win32 to platform/windows --- src/api/win32/headless.rs | 40 ------------------------------------- src/api/win32/mod.rs | 2 -- src/platform/windows/mod.rs | 30 ++++++++++++++++++++++++++++ 3 files changed, 30 insertions(+), 42 deletions(-) delete mode 100644 src/api/win32/headless.rs diff --git a/src/api/win32/headless.rs b/src/api/win32/headless.rs deleted file mode 100644 index 6189360e..00000000 --- a/src/api/win32/headless.rs +++ /dev/null @@ -1,40 +0,0 @@ -use super::Window; -use super::init; - -use Api; -use BuilderAttribs; -use CreationError; - -/// -pub struct HeadlessContext(Window); - -impl HeadlessContext { - /// See the docs in the crate root file. - pub fn new(builder: BuilderAttribs) -> Result { - let (builder, _) = builder.extract_non_static(); - init::new_window(builder, None).map(|w| HeadlessContext(w)) - } - - /// See the docs in the crate root file. - pub unsafe fn make_current(&self) { - self.0.make_current() - } - - /// See the docs in the crate root file. - pub fn is_current(&self) -> bool { - self.0.is_current() - } - - /// See the docs in the crate root file. - pub fn get_proc_address(&self, addr: &str) -> *const () { - self.0.get_proc_address(addr) - } - - /// See the docs in the crate root file. - pub fn get_api(&self) -> Api { - Api::OpenGl - } - - pub fn set_window_resize_callback(&mut self, _: Option) { - } -} diff --git a/src/api/win32/mod.rs b/src/api/win32/mod.rs index 41fb6aa0..dd3e685c 100644 --- a/src/api/win32/mod.rs +++ b/src/api/win32/mod.rs @@ -18,7 +18,6 @@ use CursorState; use PixelFormat; use BuilderAttribs; -pub use self::headless::HeadlessContext; pub use self::monitor::{MonitorID, get_available_monitors, get_primary_monitor}; use winapi; @@ -29,7 +28,6 @@ use gdi32; mod callback; mod event; mod gl; -mod headless; mod init; mod make_current_guard; mod monitor; diff --git a/src/platform/windows/mod.rs b/src/platform/windows/mod.rs index c13f4f55..78cbefc5 100644 --- a/src/platform/windows/mod.rs +++ b/src/platform/windows/mod.rs @@ -1,3 +1,33 @@ #![cfg(target_os = "windows")] pub use api::win32::*; + +use Api; +use BuilderAttribs; +use CreationError; + +/// +pub struct HeadlessContext(Window); + +impl HeadlessContext { + pub fn new(mut builder: BuilderAttribs) -> Result { + builder.visible = false; + Window::new(builder).map(|w| HeadlessContext(w)) + } + + pub unsafe fn make_current(&self) { + self.0.make_current() + } + + pub fn is_current(&self) -> bool { + self.0.is_current() + } + + pub fn get_proc_address(&self, addr: &str) -> *const () { + self.0.get_proc_address(addr) + } + + pub fn get_api(&self) -> Api { + self.0.get_api() + } +}