diff options
author | tomaka <pierre.krieger1708@gmail.com> | 2015-04-29 11:05:09 +0200 |
---|---|---|
committer | tomaka <pierre.krieger1708@gmail.com> | 2015-04-29 11:05:09 +0200 |
commit | c752142e045156c6869a43183032030dd1d0439d (patch) | |
tree | 9000c8162cc7ca2c8cbd447aaeb88caf67c3fc14 /src/platform/windows | |
parent | c02072c9b16f5b897e0c5299969812ae2baf3151 (diff) | |
parent | d4dcff582e80d38d4f36e0e0bcf9f7281b4b830d (diff) | |
download | glutin-c752142e045156c6869a43183032030dd1d0439d.tar.gz glutin-c752142e045156c6869a43183032030dd1d0439d.zip |
Merge pull request #404 from tomaka/headless-win32
Extract headless context from api/win32 to platform/windows
Diffstat (limited to 'src/platform/windows')
-rw-r--r-- | src/platform/windows/mod.rs | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/platform/windows/mod.rs b/src/platform/windows/mod.rs index c13f4f5..78cbefc 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<HeadlessContext, CreationError> { + 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() + } +} |