From 52cccb8ddadbfff338b627d4f8c654840be1840b Mon Sep 17 00:00:00 2001 From: Tomaka17 Date: Sat, 2 Aug 2014 20:49:48 +0200 Subject: Add doc to crate root --- src/lib.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/lib.rs') diff --git a/src/lib.rs b/src/lib.rs index e238b15..f38a4b8 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -2,6 +2,21 @@ #![feature(globs)] #![unstable] +//! The purpose of this library is to provide an OpenGL context on as many +//! platforms as possible. +//! +//! # Building a window +//! +//! There are two ways to create a window: +//! +//! - Calling `Window::new()`. +//! - Calling `let builder = WindowBuilder::new()` then `builder.build()`. +//! +//! The first way is the simpliest way and will give you default values. +//! +//! The second way allows you to customize the way your window and GL context +//! will look and behave. + extern crate libc; pub use events::*; -- cgit v1.2.3 From f4fb699b5242d13482a3c1931e71a52c79a7e535 Mon Sep 17 00:00:00 2001 From: Tomaka17 Date: Sun, 3 Aug 2014 09:25:30 +0200 Subject: Add dummy implementation for OS/X --- .travis.yml | 4 +++ src/lib.rs | 6 +++-- src/osx/mod.rs | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 87 insertions(+), 2 deletions(-) create mode 100644 src/osx/mod.rs (limited to 'src/lib.rs') diff --git a/.travis.yml b/.travis.yml index 22761ba..eab930b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1 +1,5 @@ language: rust + +os: + - linux + - osx diff --git a/src/lib.rs b/src/lib.rs index f38a4b8..914dedc 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -26,10 +26,12 @@ use winimpl = win32; #[cfg(unix)] use winimpl = x11; -#[cfg(windows)] +#[cfg(target_os = "win32")] mod win32; -#[cfg(unix)] +#[cfg(target_os = "linux")] mod x11; +#[cfg(target_os = "macos")] +mod osx; #[allow(dead_code)] //mod egl; diff --git a/src/osx/mod.rs b/src/osx/mod.rs new file mode 100644 index 0000000..dcf714b --- /dev/null +++ b/src/osx/mod.rs @@ -0,0 +1,79 @@ +//! Dummy implementation for OS/X to make gl-init-rs compile on this platform + +use WindowBuilder; + +pub struct Window; + +pub struct MonitorID; + +pub fn get_available_monitors() -> Vec { + unimplemented!() +} + +pub fn get_primary_monitor() -> MonitorID { + unimplemented!() +} + +impl MonitorID { + pub fn get_name(&self) -> Option { + unimplemented!() + } + + pub fn get_dimensions(&self) -> (uint, uint) { + unimplemented!() + } +} + +impl Window { + pub fn new(_builder: WindowBuilder) -> Result { + unimplemented!() + } + + pub fn is_closed(&self) -> bool { + unimplemented!() + } + + pub fn set_title(&self, _title: &str) { + unimplemented!() + } + + pub fn get_position(&self) -> Option<(int, int)> { + unimplemented!() + } + + pub fn set_position(&self, _x: uint, _y: uint) { + unimplemented!() + } + + pub fn get_inner_size(&self) -> Option<(uint, uint)> { + unimplemented!() + } + + pub fn get_outer_size(&self) -> Option<(uint, uint)> { + unimplemented!() + } + + pub fn set_inner_size(&self, _x: uint, _y: uint) { + unimplemented!() + } + + pub fn poll_events(&self) -> Vec { + unimplemented!() + } + + pub fn wait_events(&self) -> Vec { + unimplemented!() + } + + pub unsafe fn make_current(&self) { + unimplemented!() + } + + pub fn get_proc_address(&self, _addr: &str) -> *const () { + unimplemented!() + } + + pub fn swap_buffers(&self) { + unimplemented!() + } +} -- cgit v1.2.3 From 48632619c9e6e8d7a36382285fc505cfc591dd20 Mon Sep 17 00:00:00 2001 From: Tomaka17 Date: Sun, 3 Aug 2014 10:30:04 +0200 Subject: Add static assert for platform not supported --- src/lib.rs | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/lib.rs') diff --git a/src/lib.rs b/src/lib.rs index 914dedc..ee79fd9 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -38,6 +38,10 @@ mod osx; mod events; +#[cfg(not(target_os = "win32"), not(target_os = "linux"), not(target_os = "macos"))] +#[static_assert] +static this_platform_is_not_supposed: bool = false; + /// Identifier for a monitor. pub struct MonitorID(winimpl::MonitorID); -- cgit v1.2.3 From f1993be9eae49ad9a1d5e8e8d2b3749ad4379a70 Mon Sep 17 00:00:00 2001 From: "Felix S. Klock II" Date: Sun, 3 Aug 2014 18:30:31 +0200 Subject: Fix bugs from f4fb699b524 --- src/lib.rs | 4 +++- src/osx/mod.rs | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'src/lib.rs') diff --git a/src/lib.rs b/src/lib.rs index ee79fd9..60ce0aa 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -23,8 +23,10 @@ pub use events::*; #[cfg(windows)] use winimpl = win32; -#[cfg(unix)] +#[cfg(target_os = "linux")] use winimpl = x11; +#[cfg(target_os = "macos")] +use winimpl = osx; #[cfg(target_os = "win32")] mod win32; diff --git a/src/osx/mod.rs b/src/osx/mod.rs index dcf714b..f846cf4 100644 --- a/src/osx/mod.rs +++ b/src/osx/mod.rs @@ -1,6 +1,6 @@ //! Dummy implementation for OS/X to make gl-init-rs compile on this platform -use WindowBuilder; +use {Event, WindowBuilder}; pub struct Window; -- cgit v1.2.3 From d2bd19bc21889e78c18bf64a570677e6330bbad0 Mon Sep 17 00:00:00 2001 From: Tomaka17 Date: Thu, 7 Aug 2014 09:33:28 +0200 Subject: Doc now ignored for doctest --- src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/lib.rs') diff --git a/src/lib.rs b/src/lib.rs index 60ce0aa..3333ebc 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -122,7 +122,7 @@ impl WindowBuilder { /// /// # Example /// -/// ``` +/// ```ignore /// let window = Window::new().unwrap(); /// /// unsafe { window.make_current() }; -- cgit v1.2.3