NAME

X11::Xlib::XSetWindowAttributes - Struct defining window attributes

DESCRIPTION

This struct contains various attributes of a window, to be applied with calls like XCreateWindow or XChangeWindowAttributes.

ATTRIBUTES

(copied from X11 docs)

Pixmap background_pixmap;       /* background, None, or ParentRelative */
unsigned long background_pixel; /* background pixel */
Pixmap border_pixmap;           /* border of the window or CopyFromParent */
unsigned long border_pixel;     /* border pixel value */
int bit_gravity;                /* one of bit gravity values */
int win_gravity;                /* one of the window gravity values */
int backing_store;              /* NotUseful, WhenMapped, Always */
unsigned long backing_planes;   /* planes to be preserved if possible */
unsigned long backing_pixel;    /* value to use in restoring planes */
Bool save_under;                /* should bits under be saved? (popups) */
long event_mask;                /* set of events that should be saved */
long do_not_propagate_mask;     /* set of events that should not propagate */
Bool override_redirect;         /* boolean value for override_redirect */
Colormap colormap;              /* color map to be associated with window */
Cursor cursor;                  /* cursor to be displayed (or None) */

Several Xlib functions allow you to specify which fields are defined rather than forcing you to apply all attributes at once. The constants to indicate which fields are use can be exported with

use X11::Xlib ':const_winattr';

# CWBackPixel CWBackPixmap CWBackingPixel CWBackingPlanes CWBackingStore
# CWBitGravity CWBorderPixel CWBorderPixmap CWColormap CWCursor
# CWDontPropagate CWEventMask CWOverrideRedirect CWSaveUnder CWWinGravity

METHODS

See parent class X11::Xlib::Struct

background_pixel
background_pixmap
backing_pixel
backing_planes
backing_store
bit_gravity
border_pixel
border_pixmap
colormap
cursor
do_not_propagate_mask
event_mask
override_redirect
save_under
win_gravity

AUTHOR

Olivier Thauvin, <nanardon@nanardon.zarb.org>

Michael Conrad, <mike@nrdvana.net>

COPYRIGHT AND LICENSE

Copyright (C) 2009-2010 by Olivier Thauvin

Copyright (C) 2017-2023 by Michael Conrad

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.0 or, at your option, any later version of Perl 5 you may have available.