2018-09-10 06:52:54 +00:00
|
|
|
#[derive(Debug, Fail)]
|
|
|
|
pub enum ScreenshotError {
|
2018-09-11 01:31:25 +00:00
|
|
|
#[fail(display = "x11 error")]
|
|
|
|
X11Error(#[cause] ::xlib::X11Error),
|
2018-09-10 08:15:42 +00:00
|
|
|
|
2018-09-11 04:13:33 +00:00
|
|
|
#[fail(display = "imlib2 error")]
|
|
|
|
ImlibError(#[cause] ::imlib2::Error),
|
|
|
|
|
2018-09-10 08:15:42 +00:00
|
|
|
#[fail(display = "io error")]
|
|
|
|
IOError(#[cause] ::std::io::Error),
|
|
|
|
|
|
|
|
#[fail(display = "png encoding error")]
|
|
|
|
PngEncodingError(#[cause] ::png::EncodingError),
|
|
|
|
|
2018-09-10 06:52:54 +00:00
|
|
|
#[fail(display = "error")]
|
|
|
|
Error,
|
2018-05-13 21:42:19 +00:00
|
|
|
}
|
2018-09-10 08:15:42 +00:00
|
|
|
|
|
|
|
impl From<::std::io::Error> for ScreenshotError {
|
|
|
|
fn from(err: ::std::io::Error) -> Self {
|
|
|
|
ScreenshotError::IOError(err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2018-09-11 01:31:25 +00:00
|
|
|
impl From<::xlib::X11Error> for ScreenshotError {
|
|
|
|
fn from(err: ::xlib::X11Error) -> Self {
|
|
|
|
ScreenshotError::X11Error(err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2018-09-11 04:13:33 +00:00
|
|
|
impl From<::imlib2::Error> for ScreenshotError {
|
|
|
|
fn from(err: ::imlib2::Error) -> Self {
|
|
|
|
ScreenshotError::ImlibError(err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2018-09-10 08:15:42 +00:00
|
|
|
impl From<::png::EncodingError> for ScreenshotError {
|
|
|
|
fn from(err: ::png::EncodingError) -> Self {
|
|
|
|
ScreenshotError::PngEncodingError(err)
|
|
|
|
}
|
|
|
|
}
|