aboutsummaryrefslogtreecommitdiffstats
path: root/src/platform/windows
diff options
context:
space:
mode:
authortomaka <pierre.krieger1708@gmail.com>2015-04-29 11:05:09 +0200
committertomaka <pierre.krieger1708@gmail.com>2015-04-29 11:05:09 +0200
commitc752142e045156c6869a43183032030dd1d0439d (patch)
tree9000c8162cc7ca2c8cbd447aaeb88caf67c3fc14 /src/platform/windows
parentc02072c9b16f5b897e0c5299969812ae2baf3151 (diff)
parentd4dcff582e80d38d4f36e0e0bcf9f7281b4b830d (diff)
downloadglutin-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.rs30
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()
+ }
+}