pub struct WindowWrapper<C: RequestConnection>(/* private fields */);
Expand description
A RAII-like wrapper around a Window.
Instances of this struct represent a Window that is freed in Drop
.
Any errors during Drop
are silently ignored. Most likely an error here means that your
X11 connection is broken and later requests will also fail.
Implementations§
Source§impl<C: RequestConnection> WindowWrapper<C>
impl<C: RequestConnection> WindowWrapper<C>
Sourcepub fn for_window(conn: C, id: Window) -> Self
pub fn for_window(conn: C, id: Window) -> Self
Assume ownership of the given resource and destroy it in Drop
.
Sourcepub fn into_window(self) -> Window
pub fn into_window(self) -> Window
Assume ownership of the XID of the wrapped resource
This function destroys this wrapper without freeing the underlying resource.
Source§impl<'c, C: X11Connection> WindowWrapper<&'c C>
impl<'c, C: X11Connection> WindowWrapper<&'c C>
Create a new Window and return a Window wrapper and a cookie.
This is a thin wrapper around create_window that allocates an id for the Window.
This function returns the resulting WindowWrapper
that owns the created Window and frees
it in Drop
. This also returns a VoidCookie
that comes from the call to
create_window.
Errors can come from the call to X11Connection::generate_id or create_window.
Source§impl<C: X11Connection> WindowWrapper<C>
impl<C: X11Connection> WindowWrapper<C>
Sourcepub fn create_window(
conn: C,
depth: u8,
parent: Window,
x: i16,
y: i16,
width: u16,
height: u16,
border_width: u16,
class: WindowClass,
visual: Visualid,
value_list: &CreateWindowAux,
) -> Result<Self, ReplyOrIdError>
pub fn create_window( conn: C, depth: u8, parent: Window, x: i16, y: i16, width: u16, height: u16, border_width: u16, class: WindowClass, visual: Visualid, value_list: &CreateWindowAux, ) -> Result<Self, ReplyOrIdError>
Create a new Window and return a Window wrapper
This is a thin wrapper around create_window that allocates an id for the Window.
This function returns the resulting WindowWrapper
that owns the created Window and frees
it in Drop
.
Errors can come from the call to X11Connection::generate_id or create_window.