Struct xcb::x::GetProperty
source · pub struct GetProperty {
pub delete: bool,
pub window: Window,
pub property: Atom,
pub type: Atom,
pub long_offset: u32,
pub long_length: u32,
}
Expand description
Gets a window property
Gets the specified property
from the specified window
. Properties are for
example the window title (WM_NAME
) or its minimum size (WM_NORMAL_HINTS
).
Protocols such as EWMH also use properties - for example EWMH defines the
window title, encoded as UTF-8 string, in the _NET_WM_NAME
property.
TODO: talk about type
TODO: talk about delete
TODO: talk about the offset/length thing. what’s a valid use case?
§Example
// Get the WM_NAME property of the window
let cookie = conn.send_request(&x::GetProperty {
delete: false,
window,
property: x::ATOM_WM_NAME,
r#type: x::ATOM_STRING,
long_offset: 0,
long_length: 0,
});
let reply = conn.wait_for_reply(cookie)?;
// value() returns &[u8]
let title = str::from_utf8(reply.value()).expect("The WM_NAME property is not valid UTF-8");
This request replies GetPropertyReply.
Associated cookie types are GetPropertyCookie and GetPropertyCookieUnchecked.
Fields§
§delete: bool
Whether the property should actually be deleted. For deleting a property, the
specified type
has to match the actual property type.
window: Window
The window whose property you want to get.
property: Atom
The property you want to get (an atom).
type: Atom
The type of the property you want to get (an atom).
long_offset: u32
Specifies the offset (in 32-bit multiples) in the specified property where the data is to be retrieved.
long_length: u32
Specifies how many 32-bit multiples of data should be retrieved (e.g. if you
set long_length
to 4, you will receive 16 bytes of data).
Trait Implementations§
source§impl Clone for GetProperty
impl Clone for GetProperty
source§fn clone(&self) -> GetProperty
fn clone(&self) -> GetProperty
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more