1XCreateWindow(3)                XLIB FUNCTIONS                XCreateWindow(3)
2
3
4

NAME

6       XCreateWindow,  XCreateSimpleWindow, XSetWindowAttributes - create win‐
7       dows and window attributes structure
8

SYNTAX

10       Window XCreateWindow(Display *display, Window parent,  int  x,  int  y,
11              unsigned  int  width,  unsigned  int  height,  unsigned int bor‐
12              der_width,  int  depth,  unsigned  int  class,  Visual  *visual,
13              unsigned long valuemask, XSetWindowAttributes *attributes);
14
15       Window  XCreateSimpleWindow(Display *display, Window parent, int x, int
16              y, unsigned int width, unsigned int height,  unsigned  int  bor‐
17              der_width, unsigned long border, unsigned long background);
18

ARGUMENTS

20       attributes
21                 Specifies  the  structure from which the values (as specified
22                 by the value mask) are to be taken.  The  value  mask  should
23                 have  the  appropriate  bits set to indicate which attributes
24                 have been set in the structure.
25
26       background
27                 Specifies the background pixel value of the window.
28
29
30       border    Specifies the border pixel value of the window.
31
32       border_width
33                 Specifies the width of the created window's border in pixels.
34
35       class     Specifies the created window's class.  You can pass InputOut‐
36                 put, InputOnly, or CopyFromParent.  A class of CopyFromParent
37                 means the class is taken from the parent.
38
39       depth     Specifies the window's  depth.   A  depth  of  CopyFromParent
40                 means the depth is taken from the parent.
41
42       display   Specifies the connection to the X server.
43
44       parent    Specifies the parent window.
45
46       valuemask Specifies   which   window  attributes  are  defined  in  the
47                 attributes argument.  This mask is the bitwise  inclusive  OR
48                 of  the valid attribute mask bits.  If valuemask is zero, the
49                 attributes are ignored and are not referenced.
50
51       visual    Specifies the visual type.  A visual of CopyFromParent  means
52                 the visual type is taken from the parent.
53
54       width
55       height    Specify  the width and height, which are the created window's
56                 inside dimensions and do not  include  the  created  window's
57                 borders.
58
59       x
60       y         Specify  the x and y coordinates, which are the top-left out‐
61                 side corner of the window's borders and are relative  to  the
62                 inside of the parent window's borders.
63

DESCRIPTION

65       The  XCreateWindow  function creates an unmapped subwindow for a speci‐
66       fied parent window, returns the window ID of the  created  window,  and
67       causes the X server to generate a CreateNotify event.  The created win‐
68       dow is placed on top in the stacking order with respect to siblings.
69
70       The coordinate system has the X axis horizontal and the Y axis vertical
71       with the origin [0, 0] at the upper-left corner.  Coordinates are inte‐
72       gral, in terms of pixels, and coincide with pixel centers.  Each window
73       and  pixmap has its own coordinate system.  For a window, the origin is
74       inside the border at the inside, upper-left corner.
75
76       The border_width for an InputOnly window must be zero,  or  a  BadMatch
77       error  results.   For class InputOutput, the visual type and depth must
78       be a combination supported for the screen, or a BadMatch error results.
79       The  depth  need not be the same as the parent, but the parent must not
80       be a window of class InputOnly, or a BadMatch error  results.   For  an
81       InputOnly  window,  the  depth must be zero, and the visual must be one
82       supported by the screen.  If either condition is not  met,  a  BadMatch
83       error  results.   The  parent  window,  however, may have any depth and
84       class.  If you specify any invalid window attribute  for  a  window,  a
85       BadMatch error results.
86
87       The created window is not yet displayed (mapped) on the user's display.
88       To display the window, call XMapWindow.  The new window initially  uses
89       the same cursor as its parent.  A new cursor can be defined for the new
90       window by calling XDefineCursor.  The window will not be visible on the
91       screen  unless  it  and  all  of its ancestors are mapped and it is not
92       obscured by any of its ancestors.
93
94       XCreateWindow can generate BadAlloc BadColor, BadCursor, BadMatch, Bad‐
95       Pixmap, BadValue, and BadWindow errors.
96
97       The  XCreateSimpleWindow  function creates an unmapped InputOutput sub‐
98       window for a specified parent window, returns the window ID of the cre‐
99       ated  window, and causes the X server to generate a CreateNotify event.
100       The created window is placed on top in the stacking order with  respect
101       to  siblings.   Any  part of the window that extends outside its parent
102       window is clipped.  The border_width for an InputOnly  window  must  be
103       zero,  or  a  BadMatch error results.  XCreateSimpleWindow inherits its
104       depth, class, and visual from its parent.  All other window attributes,
105       except background and border, have their default values.
106
107       XCreateSimpleWindow can generate BadAlloc, BadMatch, BadValue, and Bad‐
108       Window errors.
109

STRUCTURES

111       The XSetWindowAttributes structure contains:
112
113       /* Window attribute value mask bits */
114
115       #define   CWBackPixmap                (1L<<0)
116       #define   CWBackPixel                 (1L<<1)
117       #define   CWBorderPixmap              (1L<<2)
118       #define   CWBorderPixel               (1L<<3)
119       #define   CWBitGravity                (1L<<4)
120       #define   CWWinGravity                (1L<<5)
121       #define   CWBackingStore              (1L<<6)
122       #define   CWBackingPlanes             (1L<<7)
123       #define   CWBackingPixel              (1L<<8)
124       #define   CWOverrideRedirect          (1L<<9)
125       #define   CWSaveUnder                 (1L<<10)
126       #define   CWEventMask                 (1L<<11)
127       #define   CWDontPropagate             (1L<<12)
128       #define   CWColormap                  (1L<<13)
129       #define   CWCursor                    (1L<<14)
130       /* Values */
131
132       typedef struct {
133               Pixmap background_pixmap;       /* background, None, or ParentRelative */
134               unsigned long background_pixel; /* background pixel */
135               Pixmap border_pixmap;           /* border of the window or CopyFromParent */
136               unsigned long border_pixel;     /* border pixel value */
137               int bit_gravity;        /* one of bit gravity values */
138               int win_gravity;        /* one of the window gravity values */
139               int backing_store;      /* NotUseful, WhenMapped, Always */
140               unsigned long backing_planes;   /* planes to be preserved if possible */
141               unsigned long backing_pixel;    /* value to use in restoring planes */
142               Bool save_under;        /* should bits under be saved? (popups) */
143               long event_mask;        /* set of events that should be saved */
144               long do_not_propagate_mask;     /* set of events that should not propagate */
145               Bool override_redirect; /* boolean value for override_redirect */
146               Colormap colormap;      /* color map to be associated with window */
147               Cursor cursor;          /* cursor to be displayed (or None) */
148       } XSetWindowAttributes;
149
150       For a detailed explanation of the members of this structure, see Xlib -
151       C Language X Interface.
152

DIAGNOSTICS

154       BadAlloc  The server failed  to  allocate  the  requested  resource  or
155                 server memory.
156
157       BadColor  A  value for a Colormap argument does not name a defined Col‐
158                 ormap.
159
160       BadCursor A value for a Cursor argument does not name a defined Cursor.
161
162       BadMatch  The values do not exist for an InputOnly window.
163
164       BadMatch  Some argument or pair of arguments has the correct  type  and
165                 range  but  fails  to match in some other way required by the
166                 request.
167
168       BadPixmap A value for a Pixmap argument does not name a defined Pixmap.
169
170       BadValue  Some numeric value falls outside the range of values accepted
171                 by  the request.  Unless a specific range is specified for an
172                 argument, the full range defined by the  argument's  type  is
173                 accepted.   Any argument defined as a set of alternatives can
174                 generate this error.
175
176       BadWindow A value for a Window argument does not name a defined Window.
177

SEE ALSO

179       XChangeWindowAttributes(3), XConfigureWindow(3), XDefineCursor(3), XDe‐
180       stroyWindow(3), XMapWindow(3), XRaiseWindow(3), XUnmapWindow(3)
181       Xlib - C Language X Interface
182
183
184
185X Version 11                     libX11 1.6.12                XCreateWindow(3)
Impressum