Struct x11rb::protocol::xproto::ChangeGCRequest
source · pub struct ChangeGCRequest<'input> {
pub gc: u32,
pub value_list: Cow<'input, ChangeGCAux>,
}
Expand description
change graphics context components.
Changes the components specified by value_mask
for the specified graphics context.
§Fields
gc
- The graphics context to change.value_list
- Values for each of the components specified in the bitmaskvalue_mask
. The order has to correspond to the order of possiblevalue_mask
bits. See the example.
§Errors
Font
- TODO: reasons?GContext
- TODO: reasons?Match
- TODO: reasons?Pixmap
- TODO: reasons?Value
- TODO: reasons?Alloc
- The X server could not allocate the requested resources (no memory?).
§Example
/*
* Changes the foreground color component of the specified graphics context.
*
*/
void my_example(xcb_connection_t *conn, xcb_gcontext_t gc, uint32_t fg, uint32_t bg) {
/* C99 allows us to use a compact way of changing a single component: */
xcb_change_gc(conn, gc, XCB_GC_FOREGROUND, (uint32_t[]){ fg });
/* The more explicit way. Beware that the order of values is important! */
uint32_t mask = 0;
mask |= XCB_GC_FOREGROUND;
mask |= XCB_GC_BACKGROUND;
uint32_t values[] = {
fg,
bg
};
xcb_change_gc(conn, gc, mask, values);
xcb_flush(conn);
}
Fields§
§gc: u32
§value_list: Cow<'input, ChangeGCAux>
Implementations§
source§impl<'input> ChangeGCRequest<'input>
impl<'input> ChangeGCRequest<'input>
sourcepub fn serialize(self) -> ([Cow<'input, [u8]>; 3], Vec<OwnedFd>)
pub fn serialize(self) -> ([Cow<'input, [u8]>; 3], Vec<OwnedFd>)
Serialize this request into bytes for the provided connection
sourcepub fn into_owned(self) -> ChangeGCRequest<'static>
pub fn into_owned(self) -> ChangeGCRequest<'static>
Clone all borrowed data in this ChangeGCRequest.
Trait Implementations§
source§impl<'input> Clone for ChangeGCRequest<'input>
impl<'input> Clone for ChangeGCRequest<'input>
source§fn clone(&self) -> ChangeGCRequest<'input>
fn clone(&self) -> ChangeGCRequest<'input>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for ChangeGCRequest<'_>
impl Debug for ChangeGCRequest<'_>
source§impl<'input> Default for ChangeGCRequest<'input>
impl<'input> Default for ChangeGCRequest<'input>
source§fn default() -> ChangeGCRequest<'input>
fn default() -> ChangeGCRequest<'input>
Returns the “default value” for a type. Read more
source§impl<'input> Request for ChangeGCRequest<'input>
impl<'input> Request for ChangeGCRequest<'input>
impl<'input> VoidRequest for ChangeGCRequest<'input>
Auto Trait Implementations§
impl<'input> Freeze for ChangeGCRequest<'input>
impl<'input> RefUnwindSafe for ChangeGCRequest<'input>
impl<'input> Send for ChangeGCRequest<'input>
impl<'input> Sync for ChangeGCRequest<'input>
impl<'input> Unpin for ChangeGCRequest<'input>
impl<'input> UnwindSafe for ChangeGCRequest<'input>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)