From 1b25d705ce2110b097b98f37f5e7dd9dc3a9d82c Mon Sep 17 00:00:00 2001 From: Victor Berger Date: Tue, 8 Dec 2015 22:54:06 +0100 Subject: api/wayland: move window and monitor to mods. --- src/api/wayland/mod.rs | 223 +-------------------------------------------- src/api/wayland/monitor.rs | 28 ++++++ src/api/wayland/window.rs | 180 ++++++++++++++++++++++++++++++++++++ 3 files changed, 213 insertions(+), 218 deletions(-) create mode 100644 src/api/wayland/monitor.rs create mode 100644 src/api/wayland/window.rs diff --git a/src/api/wayland/mod.rs b/src/api/wayland/mod.rs index 86bd749..246a9e4 100644 --- a/src/api/wayland/mod.rs +++ b/src/api/wayland/mod.rs @@ -1,228 +1,15 @@ #![cfg(any(target_os = "linux", target_os = "dragonfly", target_os = "freebsd"))] -use std::collections::VecDeque; - -use ContextError; -use CreationError; -use Event; -use PixelFormat; -use CursorState; -use MouseCursor; -use GlAttributes; -use GlContext; -use PixelFormatRequirements; -use WindowAttributes; - -use api::egl::Context as EglContext; -use libc; -use platform::MonitorId as PlatformMonitorId; +pub use self::monitor::{MonitorId, get_available_monitors, get_primary_monitor}; +pub use self::window::{PollEventsIterator, WaitEventsIterator, Window, WindowProxy}; extern crate wayland_kbd; extern crate wayland_window; +mod monitor; +mod window; + #[inline] pub fn is_available() -> bool { false } - -pub struct Window { - pub context: EglContext, -} - -#[derive(Clone)] -pub struct WindowProxy; - -impl WindowProxy { - #[inline] - pub fn wakeup_event_loop(&self) { - unimplemented!() - } -} - -#[derive(Clone)] -pub struct MonitorId; - -#[inline] -pub fn get_available_monitors() -> VecDeque { - unimplemented!() -} -#[inline] -pub fn get_primary_monitor() -> MonitorId { - unimplemented!() -} - -impl MonitorId { - pub fn get_name(&self) -> Option { - unimplemented!() - } - - #[inline] - pub fn get_native_identifier(&self) -> ::native_monitor::NativeMonitorId { - unimplemented!() - } - - pub fn get_dimensions(&self) -> (u32, u32) { - unimplemented!() - } -} - - -pub struct PollEventsIterator<'a> { - window: &'a Window, -} - -impl<'a> Iterator for PollEventsIterator<'a> { - type Item = Event; - - fn next(&mut self) -> Option { - unimplemented!() - } -} - -pub struct WaitEventsIterator<'a> { - window: &'a Window, -} - -impl<'a> Iterator for WaitEventsIterator<'a> { - type Item = Event; - - fn next(&mut self) -> Option { - unimplemented!() - } -} - -impl Window { - pub fn new(window: &WindowAttributes, pf_reqs: &PixelFormatRequirements, - opengl: &GlAttributes<&Window>) -> Result - { - // not implemented - assert!(window.min_dimensions.is_none()); - assert!(window.max_dimensions.is_none()); - - unimplemented!() - } - - pub fn set_title(&self, title: &str) { - unimplemented!() - } - - #[inline] - pub fn show(&self) { - unimplemented!() - } - - #[inline] - pub fn hide(&self) { - unimplemented!() - } - - #[inline] - pub fn get_position(&self) -> Option<(i32, i32)> { - unimplemented!() - } - - #[inline] - pub fn set_position(&self, _x: i32, _y: i32) { - unimplemented!() - } - - pub fn get_inner_size(&self) -> Option<(u32, u32)> { - unimplemented!() - } - - #[inline] - pub fn get_outer_size(&self) -> Option<(u32, u32)> { - unimplemented!() - } - - #[inline] - pub fn set_inner_size(&self, x: u32, y: u32) { - unimplemented!() - } - - #[inline] - pub fn create_window_proxy(&self) -> WindowProxy { - WindowProxy - } - - #[inline] - pub fn poll_events(&self) -> PollEventsIterator { - PollEventsIterator { - window: self - } - } - - #[inline] - pub fn wait_events(&self) -> WaitEventsIterator { - WaitEventsIterator { - window: self - } - } - - #[inline] - pub fn set_window_resize_callback(&mut self, callback: Option) { - unimplemented!() - } - - #[inline] - pub fn set_cursor(&self, cursor: MouseCursor) { - unimplemented!() - } - - #[inline] - pub fn set_cursor_state(&self, state: CursorState) -> Result<(), String> { - unimplemented!() - } - - #[inline] - pub fn hidpi_factor(&self) -> f32 { - 1.0 - } - - #[inline] - pub fn set_cursor_position(&self, x: i32, y: i32) -> Result<(), ()> { - unimplemented!() - } - - #[inline] - pub fn platform_display(&self) -> *mut libc::c_void { - unimplemented!() - } - - #[inline] - pub fn platform_window(&self) -> *mut libc::c_void { - unimplemented!() - } -} - -impl GlContext for Window { - #[inline] - unsafe fn make_current(&self) -> Result<(), ContextError> { - self.context.make_current() - } - - #[inline] - fn is_current(&self) -> bool { - self.context.is_current() - } - - #[inline] - fn get_proc_address(&self, addr: &str) -> *const () { - self.context.get_proc_address(addr) - } - - #[inline] - fn swap_buffers(&self) -> Result<(), ContextError> { - self.context.swap_buffers() - } - - #[inline] - fn get_api(&self) -> ::Api { - self.context.get_api() - } - - #[inline] - fn get_pixel_format(&self) -> PixelFormat { - self.context.get_pixel_format().clone() - } -} diff --git a/src/api/wayland/monitor.rs b/src/api/wayland/monitor.rs new file mode 100644 index 0000000..3a42f1f --- /dev/null +++ b/src/api/wayland/monitor.rs @@ -0,0 +1,28 @@ +use std::collections::VecDeque; + +#[derive(Clone)] +pub struct MonitorId; + +#[inline] +pub fn get_available_monitors() -> VecDeque { + unimplemented!() +} +#[inline] +pub fn get_primary_monitor() -> MonitorId { + unimplemented!() +} + +impl MonitorId { + pub fn get_name(&self) -> Option { + unimplemented!() + } + + #[inline] + pub fn get_native_identifier(&self) -> ::native_monitor::NativeMonitorId { + unimplemented!() + } + + pub fn get_dimensions(&self) -> (u32, u32) { + unimplemented!() + } +} \ No newline at end of file diff --git a/src/api/wayland/window.rs b/src/api/wayland/window.rs new file mode 100644 index 0000000..df50731 --- /dev/null +++ b/src/api/wayland/window.rs @@ -0,0 +1,180 @@ +use {ContextError, CreationError, CursorState, Event, GlAttributes, GlContext, + MouseCursor, PixelFormat, PixelFormatRequirements, WindowAttributes}; + +use api::egl::Context as EglContext; + +use libc; + +#[derive(Clone)] +pub struct WindowProxy; + +impl WindowProxy { + #[inline] + pub fn wakeup_event_loop(&self) { + unimplemented!() + } +} + +pub struct Window { + pub context: EglContext, +} + +pub struct PollEventsIterator<'a> { + window: &'a Window, +} + +impl<'a> Iterator for PollEventsIterator<'a> { + type Item = Event; + + fn next(&mut self) -> Option { + unimplemented!() + } +} + +pub struct WaitEventsIterator<'a> { + window: &'a Window, +} + +impl<'a> Iterator for WaitEventsIterator<'a> { + type Item = Event; + + fn next(&mut self) -> Option { + unimplemented!() + } +} + +impl Window { + pub fn new(window: &WindowAttributes, pf_reqs: &PixelFormatRequirements, + opengl: &GlAttributes<&Window>) -> Result + { + // not implemented + assert!(window.min_dimensions.is_none()); + assert!(window.max_dimensions.is_none()); + + unimplemented!() + } + + pub fn set_title(&self, title: &str) { + unimplemented!() + } + + #[inline] + pub fn show(&self) { + unimplemented!() + } + + #[inline] + pub fn hide(&self) { + unimplemented!() + } + + #[inline] + pub fn get_position(&self) -> Option<(i32, i32)> { + unimplemented!() + } + + #[inline] + pub fn set_position(&self, _x: i32, _y: i32) { + unimplemented!() + } + + pub fn get_inner_size(&self) -> Option<(u32, u32)> { + unimplemented!() + } + + #[inline] + pub fn get_outer_size(&self) -> Option<(u32, u32)> { + unimplemented!() + } + + #[inline] + pub fn set_inner_size(&self, x: u32, y: u32) { + unimplemented!() + } + + #[inline] + pub fn create_window_proxy(&self) -> WindowProxy { + WindowProxy + } + + #[inline] + pub fn poll_events(&self) -> PollEventsIterator { + PollEventsIterator { + window: self + } + } + + #[inline] + pub fn wait_events(&self) -> WaitEventsIterator { + WaitEventsIterator { + window: self + } + } + + #[inline] + pub fn set_window_resize_callback(&mut self, callback: Option) { + unimplemented!() + } + + #[inline] + pub fn set_cursor(&self, cursor: MouseCursor) { + unimplemented!() + } + + #[inline] + pub fn set_cursor_state(&self, state: CursorState) -> Result<(), String> { + unimplemented!() + } + + #[inline] + pub fn hidpi_factor(&self) -> f32 { + 1.0 + } + + #[inline] + pub fn set_cursor_position(&self, x: i32, y: i32) -> Result<(), ()> { + unimplemented!() + } + + #[inline] + pub fn platform_display(&self) -> *mut libc::c_void { + unimplemented!() + } + + #[inline] + pub fn platform_window(&self) -> *mut libc::c_void { + unimplemented!() + } +} + +impl GlContext for Window { + #[inline] + unsafe fn make_current(&self) -> Result<(), ContextError> { + self.context.make_current() + } + + #[inline] + fn is_current(&self) -> bool { + self.context.is_current() + } + + #[inline] + fn get_proc_address(&self, addr: &str) -> *const () { + self.context.get_proc_address(addr) + } + + #[inline] + fn swap_buffers(&self) -> Result<(), ContextError> { + self.context.swap_buffers() + } + + #[inline] + fn get_api(&self) -> ::Api { + self.context.get_api() + } + + #[inline] + fn get_pixel_format(&self) -> PixelFormat { + self.context.get_pixel_format().clone() + } +} -- cgit v1.2.3