forked from rust-windowing/winit
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Refine function names and type signatures (rust-windowing#886)
* First name consistency pass. More to come! * Remove multitouch variable (hopefully this compiles!) * Remove CreationError::NotSupported * Add new error handling types * Remove `get_` prefix from getters. This is as per the Rust naming conventions recommended in https://rust-lang-nursery.github.io/api-guidelines/naming.html#getter-names-follow-rust-convention-c-getter * Make changes to Window position and size function signatures * Remove CreationError in favor of OsError * Begin updating iOS backend * Change MonitorHandle::outer_position to just position * Fix build on Windows and Linux * Add Display and Error implementations to Error types * Attempt to fix iOS build. I can't actually check that this works since I can't cross-compile to iOS on a Windows machine (thanks apple :/) but this should be one of several commits to get it working. * Attempt to fix iOS errors, and muck up Travis to make debugging easier * More iOS fixins * Add Debug and Display impls to OsError * Fix Display impl * Fix unused code warnings and travis * Rename set_ime_spot to set_ime_position * Add CHANGELOG entry * Rename set_cursor to set_cursor_icon and MouseCursor to CursorIcon * Organize Window functions into multiple, categorized impls * Improve clarity of function ordering and docs in EventLoop
- Loading branch information
Showing
53 changed files
with
1,242 additions
and
1,243 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
use std::fmt; | ||
use std::error; | ||
|
||
use platform_impl; | ||
|
||
/// An error whose cause it outside Winit's control. | ||
#[derive(Debug)] | ||
pub enum ExternalError { | ||
/// The operation is not supported by the backend. | ||
NotSupported(NotSupportedError), | ||
/// The OS cannot perform the operation. | ||
Os(OsError), | ||
} | ||
|
||
/// The error type for when the requested operation is not supported by the backend. | ||
#[derive(Clone)] | ||
pub struct NotSupportedError { | ||
_marker: (), | ||
} | ||
|
||
/// The error type for when the OS cannot perform the requested operation. | ||
#[derive(Debug)] | ||
pub struct OsError { | ||
line: u32, | ||
file: &'static str, | ||
error: platform_impl::OsError, | ||
} | ||
|
||
impl NotSupportedError { | ||
#[inline] | ||
#[allow(dead_code)] | ||
pub(crate) fn new() -> NotSupportedError { | ||
NotSupportedError { | ||
_marker: () | ||
} | ||
} | ||
} | ||
|
||
impl OsError { | ||
#[allow(dead_code)] | ||
pub(crate) fn new(line: u32, file: &'static str, error: platform_impl::OsError) -> OsError { | ||
OsError { | ||
line, | ||
file, | ||
error, | ||
} | ||
} | ||
} | ||
|
||
#[allow(unused_macros)] | ||
macro_rules! os_error { | ||
($error:expr) => {{ | ||
crate::error::OsError::new(line!(), file!(), $error) | ||
}} | ||
} | ||
|
||
impl fmt::Display for OsError { | ||
fn fmt(&self, formatter: &mut fmt::Formatter) -> Result<(), fmt::Error> { | ||
formatter.pad(&format!("os error at {}:{}: {}", self.file, self.line, self.error)) | ||
} | ||
} | ||
|
||
impl fmt::Display for ExternalError { | ||
fn fmt(&self, formatter: &mut fmt::Formatter) -> Result<(), fmt::Error> { | ||
match self { | ||
ExternalError::NotSupported(e) => e.fmt(formatter), | ||
ExternalError::Os(e) => e.fmt(formatter), | ||
} | ||
} | ||
} | ||
|
||
impl fmt::Debug for NotSupportedError { | ||
fn fmt(&self, formatter: &mut fmt::Formatter) -> Result<(), fmt::Error> { | ||
formatter.debug_struct("NotSupportedError").finish() | ||
} | ||
} | ||
|
||
impl fmt::Display for NotSupportedError { | ||
fn fmt(&self, formatter: &mut fmt::Formatter) -> Result<(), fmt::Error> { | ||
formatter.pad("the requested operation is not supported by Winit") | ||
} | ||
} | ||
|
||
impl error::Error for OsError {} | ||
impl error::Error for ExternalError {} | ||
impl error::Error for NotSupportedError {} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.