Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
godotengine
GitHub Repository: godotengine/godot
Path: blob/master/thirdparty/linuxbsd_headers/X11/Xutil.h
9898 views
1
2
/***********************************************************
3
4
Copyright 1987, 1998 The Open Group
5
6
Permission to use, copy, modify, distribute, and sell this software and its
7
documentation for any purpose is hereby granted without fee, provided that
8
the above copyright notice appear in all copies and that both that
9
copyright notice and this permission notice appear in supporting
10
documentation.
11
12
The above copyright notice and this permission notice shall be included in
13
all copies or substantial portions of the Software.
14
15
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
19
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
20
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21
22
Except as contained in this notice, the name of The Open Group shall not be
23
used in advertising or otherwise to promote the sale, use or other dealings
24
in this Software without prior written authorization from The Open Group.
25
26
27
Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts.
28
29
All Rights Reserved
30
31
Permission to use, copy, modify, and distribute this software and its
32
documentation for any purpose and without fee is hereby granted,
33
provided that the above copyright notice appear in all copies and that
34
both that copyright notice and this permission notice appear in
35
supporting documentation, and that the name of Digital not be
36
used in advertising or publicity pertaining to distribution of the
37
software without specific, written prior permission.
38
39
DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
40
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
41
DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
42
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
43
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
44
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
45
SOFTWARE.
46
47
******************************************************************/
48
49
#ifndef _X11_XUTIL_H_
50
#define _X11_XUTIL_H_
51
52
/* You must include <X11/Xlib.h> before including this file */
53
#include <X11/Xlib.h>
54
#include <X11/keysym.h>
55
56
/* The Xlib structs are full of implicit padding to properly align members.
57
We can't clean that up without breaking ABI, so tell clang not to bother
58
complaining about it. */
59
#ifdef __clang__
60
#pragma clang diagnostic push
61
#pragma clang diagnostic ignored "-Wpadded"
62
#endif
63
64
/*
65
* Bitmask returned by XParseGeometry(). Each bit tells if the corresponding
66
* value (x, y, width, height) was found in the parsed string.
67
*/
68
#define NoValue 0x0000
69
#define XValue 0x0001
70
#define YValue 0x0002
71
#define WidthValue 0x0004
72
#define HeightValue 0x0008
73
#define AllValues 0x000F
74
#define XNegative 0x0010
75
#define YNegative 0x0020
76
77
/*
78
* new version containing base_width, base_height, and win_gravity fields;
79
* used with WM_NORMAL_HINTS.
80
*/
81
typedef struct {
82
long flags; /* marks which fields in this structure are defined */
83
int x, y; /* obsolete for new window mgrs, but clients */
84
int width, height; /* should set so old wm's don't mess up */
85
int min_width, min_height;
86
int max_width, max_height;
87
int width_inc, height_inc;
88
struct {
89
int x; /* numerator */
90
int y; /* denominator */
91
} min_aspect, max_aspect;
92
int base_width, base_height; /* added by ICCCM version 1 */
93
int win_gravity; /* added by ICCCM version 1 */
94
} XSizeHints;
95
96
/*
97
* The next block of definitions are for window manager properties that
98
* clients and applications use for communication.
99
*/
100
101
/* flags argument in size hints */
102
#define USPosition (1L << 0) /* user specified x, y */
103
#define USSize (1L << 1) /* user specified width, height */
104
105
#define PPosition (1L << 2) /* program specified position */
106
#define PSize (1L << 3) /* program specified size */
107
#define PMinSize (1L << 4) /* program specified minimum size */
108
#define PMaxSize (1L << 5) /* program specified maximum size */
109
#define PResizeInc (1L << 6) /* program specified resize increments */
110
#define PAspect (1L << 7) /* program specified min and max aspect ratios */
111
#define PBaseSize (1L << 8) /* program specified base for incrementing */
112
#define PWinGravity (1L << 9) /* program specified window gravity */
113
114
/* obsolete */
115
#define PAllHints (PPosition|PSize|PMinSize|PMaxSize|PResizeInc|PAspect)
116
117
118
119
typedef struct {
120
long flags; /* marks which fields in this structure are defined */
121
Bool input; /* does this application rely on the window manager to
122
get keyboard input? */
123
int initial_state; /* see below */
124
Pixmap icon_pixmap; /* pixmap to be used as icon */
125
Window icon_window; /* window to be used as icon */
126
int icon_x, icon_y; /* initial position of icon */
127
Pixmap icon_mask; /* icon mask bitmap */
128
XID window_group; /* id of related window group */
129
/* this structure may be extended in the future */
130
} XWMHints;
131
132
/* definition for flags of XWMHints */
133
134
#define InputHint (1L << 0)
135
#define StateHint (1L << 1)
136
#define IconPixmapHint (1L << 2)
137
#define IconWindowHint (1L << 3)
138
#define IconPositionHint (1L << 4)
139
#define IconMaskHint (1L << 5)
140
#define WindowGroupHint (1L << 6)
141
#define AllHints (InputHint|StateHint|IconPixmapHint|IconWindowHint| \
142
IconPositionHint|IconMaskHint|WindowGroupHint)
143
#define XUrgencyHint (1L << 8)
144
145
/* definitions for initial window state */
146
#define WithdrawnState 0 /* for windows that are not mapped */
147
#define NormalState 1 /* most applications want to start this way */
148
#define IconicState 3 /* application wants to start as an icon */
149
150
/*
151
* Obsolete states no longer defined by ICCCM
152
*/
153
#define DontCareState 0 /* don't know or care */
154
#define ZoomState 2 /* application wants to start zoomed */
155
#define InactiveState 4 /* application believes it is seldom used; */
156
/* some wm's may put it on inactive menu */
157
158
159
/*
160
* new structure for manipulating TEXT properties; used with WM_NAME,
161
* WM_ICON_NAME, WM_CLIENT_MACHINE, and WM_COMMAND.
162
*/
163
typedef struct {
164
unsigned char *value; /* same as Property routines */
165
Atom encoding; /* prop type */
166
int format; /* prop data format: 8, 16, or 32 */
167
unsigned long nitems; /* number of data items in value */
168
} XTextProperty;
169
170
#define XNoMemory -1
171
#define XLocaleNotSupported -2
172
#define XConverterNotFound -3
173
174
typedef enum {
175
XStringStyle, /* STRING */
176
XCompoundTextStyle, /* COMPOUND_TEXT */
177
XTextStyle, /* text in owner's encoding (current locale)*/
178
XStdICCTextStyle, /* STRING, else COMPOUND_TEXT */
179
/* The following is an XFree86 extension, introduced in November 2000 */
180
XUTF8StringStyle /* UTF8_STRING */
181
} XICCEncodingStyle;
182
183
typedef struct {
184
int min_width, min_height;
185
int max_width, max_height;
186
int width_inc, height_inc;
187
} XIconSize;
188
189
typedef struct {
190
char *res_name;
191
char *res_class;
192
} XClassHint;
193
194
#ifdef XUTIL_DEFINE_FUNCTIONS
195
extern int XDestroyImage(
196
XImage *ximage);
197
extern unsigned long XGetPixel(
198
XImage *ximage,
199
int x, int y);
200
extern int XPutPixel(
201
XImage *ximage,
202
int x, int y,
203
unsigned long pixel);
204
extern XImage *XSubImage(
205
XImage *ximage,
206
int x, int y,
207
unsigned int width, unsigned int height);
208
extern int XAddPixel(
209
XImage *ximage,
210
long value);
211
#else
212
/*
213
* These macros are used to give some sugar to the image routines so that
214
* naive people are more comfortable with them.
215
*/
216
#define XDestroyImage(ximage) \
217
((*((ximage)->f.destroy_image))((ximage)))
218
#define XGetPixel(ximage, x, y) \
219
((*((ximage)->f.get_pixel))((ximage), (x), (y)))
220
#define XPutPixel(ximage, x, y, pixel) \
221
((*((ximage)->f.put_pixel))((ximage), (x), (y), (pixel)))
222
#define XSubImage(ximage, x, y, width, height) \
223
((*((ximage)->f.sub_image))((ximage), (x), (y), (width), (height)))
224
#define XAddPixel(ximage, value) \
225
((*((ximage)->f.add_pixel))((ximage), (value)))
226
#endif
227
228
/*
229
* Compose sequence status structure, used in calling XLookupString.
230
*/
231
typedef struct _XComposeStatus {
232
XPointer compose_ptr; /* state table pointer */
233
int chars_matched; /* match state */
234
} XComposeStatus;
235
236
/*
237
* Keysym macros, used on Keysyms to test for classes of symbols
238
*/
239
#define IsKeypadKey(keysym) \
240
(((KeySym)(keysym) >= XK_KP_Space) && ((KeySym)(keysym) <= XK_KP_Equal))
241
242
#define IsPrivateKeypadKey(keysym) \
243
(((KeySym)(keysym) >= 0x11000000) && ((KeySym)(keysym) <= 0x1100FFFF))
244
245
#define IsCursorKey(keysym) \
246
(((KeySym)(keysym) >= XK_Home) && ((KeySym)(keysym) < XK_Select))
247
248
#define IsPFKey(keysym) \
249
(((KeySym)(keysym) >= XK_KP_F1) && ((KeySym)(keysym) <= XK_KP_F4))
250
251
#define IsFunctionKey(keysym) \
252
(((KeySym)(keysym) >= XK_F1) && ((KeySym)(keysym) <= XK_F35))
253
254
#define IsMiscFunctionKey(keysym) \
255
(((KeySym)(keysym) >= XK_Select) && ((KeySym)(keysym) <= XK_Break))
256
257
#ifdef XK_XKB_KEYS
258
#define IsModifierKey(keysym) \
259
((((KeySym)(keysym) >= XK_Shift_L) && ((KeySym)(keysym) <= XK_Hyper_R)) \
260
|| (((KeySym)(keysym) >= XK_ISO_Lock) && \
261
((KeySym)(keysym) <= XK_ISO_Level5_Lock)) \
262
|| ((KeySym)(keysym) == XK_Mode_switch) \
263
|| ((KeySym)(keysym) == XK_Num_Lock))
264
#else
265
#define IsModifierKey(keysym) \
266
((((KeySym)(keysym) >= XK_Shift_L) && ((KeySym)(keysym) <= XK_Hyper_R)) \
267
|| ((KeySym)(keysym) == XK_Mode_switch) \
268
|| ((KeySym)(keysym) == XK_Num_Lock))
269
#endif
270
/*
271
* opaque reference to Region data type
272
*/
273
typedef struct _XRegion *Region;
274
275
/* Return values from XRectInRegion() */
276
277
#define RectangleOut 0
278
#define RectangleIn 1
279
#define RectanglePart 2
280
281
282
/*
283
* Information used by the visual utility routines to find desired visual
284
* type from the many visuals a display may support.
285
*/
286
287
typedef struct {
288
Visual *visual;
289
VisualID visualid;
290
int screen;
291
int depth;
292
#if defined(__cplusplus) || defined(c_plusplus)
293
int c_class; /* C++ */
294
#else
295
int class;
296
#endif
297
unsigned long red_mask;
298
unsigned long green_mask;
299
unsigned long blue_mask;
300
int colormap_size;
301
int bits_per_rgb;
302
} XVisualInfo;
303
304
#define VisualNoMask 0x0
305
#define VisualIDMask 0x1
306
#define VisualScreenMask 0x2
307
#define VisualDepthMask 0x4
308
#define VisualClassMask 0x8
309
#define VisualRedMaskMask 0x10
310
#define VisualGreenMaskMask 0x20
311
#define VisualBlueMaskMask 0x40
312
#define VisualColormapSizeMask 0x80
313
#define VisualBitsPerRGBMask 0x100
314
#define VisualAllMask 0x1FF
315
316
/*
317
* This defines a window manager property that clients may use to
318
* share standard color maps of type RGB_COLOR_MAP:
319
*/
320
typedef struct {
321
Colormap colormap;
322
unsigned long red_max;
323
unsigned long red_mult;
324
unsigned long green_max;
325
unsigned long green_mult;
326
unsigned long blue_max;
327
unsigned long blue_mult;
328
unsigned long base_pixel;
329
VisualID visualid; /* added by ICCCM version 1 */
330
XID killid; /* added by ICCCM version 1 */
331
} XStandardColormap;
332
333
#define ReleaseByFreeingColormap ((XID) 1L) /* for killid field above */
334
335
336
/*
337
* return codes for XReadBitmapFile and XWriteBitmapFile
338
*/
339
#define BitmapSuccess 0
340
#define BitmapOpenFailed 1
341
#define BitmapFileInvalid 2
342
#define BitmapNoMemory 3
343
344
/****************************************************************
345
*
346
* Context Management
347
*
348
****************************************************************/
349
350
351
/* Associative lookup table return codes */
352
353
#define XCSUCCESS 0 /* No error. */
354
#define XCNOMEM 1 /* Out of memory */
355
#define XCNOENT 2 /* No entry in table */
356
357
typedef int XContext;
358
359
#define XUniqueContext() ((XContext) XrmUniqueQuark())
360
#define XStringToContext(string) ((XContext) XrmStringToQuark(string))
361
362
_XFUNCPROTOBEGIN
363
364
/* The following declarations are alphabetized. */
365
366
extern XClassHint *XAllocClassHint (
367
void
368
);
369
370
extern XIconSize *XAllocIconSize (
371
void
372
);
373
374
extern XSizeHints *XAllocSizeHints (
375
void
376
);
377
378
extern XStandardColormap *XAllocStandardColormap (
379
void
380
);
381
382
extern XWMHints *XAllocWMHints (
383
void
384
);
385
386
extern int XClipBox(
387
Region /* r */,
388
XRectangle* /* rect_return */
389
);
390
391
extern Region XCreateRegion(
392
void
393
);
394
395
extern const char *XDefaultString (void);
396
397
extern int XDeleteContext(
398
Display* /* display */,
399
XID /* rid */,
400
XContext /* context */
401
);
402
403
extern int XDestroyRegion(
404
Region /* r */
405
);
406
407
extern int XEmptyRegion(
408
Region /* r */
409
);
410
411
extern int XEqualRegion(
412
Region /* r1 */,
413
Region /* r2 */
414
);
415
416
extern int XFindContext(
417
Display* /* display */,
418
XID /* rid */,
419
XContext /* context */,
420
XPointer* /* data_return */
421
);
422
423
extern Status XGetClassHint(
424
Display* /* display */,
425
Window /* w */,
426
XClassHint* /* class_hints_return */
427
);
428
429
extern Status XGetIconSizes(
430
Display* /* display */,
431
Window /* w */,
432
XIconSize** /* size_list_return */,
433
int* /* count_return */
434
);
435
436
extern Status XGetNormalHints(
437
Display* /* display */,
438
Window /* w */,
439
XSizeHints* /* hints_return */
440
);
441
442
extern Status XGetRGBColormaps(
443
Display* /* display */,
444
Window /* w */,
445
XStandardColormap** /* stdcmap_return */,
446
int* /* count_return */,
447
Atom /* property */
448
);
449
450
extern Status XGetSizeHints(
451
Display* /* display */,
452
Window /* w */,
453
XSizeHints* /* hints_return */,
454
Atom /* property */
455
);
456
457
extern Status XGetStandardColormap(
458
Display* /* display */,
459
Window /* w */,
460
XStandardColormap* /* colormap_return */,
461
Atom /* property */
462
);
463
464
extern Status XGetTextProperty(
465
Display* /* display */,
466
Window /* window */,
467
XTextProperty* /* text_prop_return */,
468
Atom /* property */
469
);
470
471
extern XVisualInfo *XGetVisualInfo(
472
Display* /* display */,
473
long /* vinfo_mask */,
474
XVisualInfo* /* vinfo_template */,
475
int* /* nitems_return */
476
);
477
478
extern Status XGetWMClientMachine(
479
Display* /* display */,
480
Window /* w */,
481
XTextProperty* /* text_prop_return */
482
);
483
484
extern XWMHints *XGetWMHints(
485
Display* /* display */,
486
Window /* w */
487
);
488
489
extern Status XGetWMIconName(
490
Display* /* display */,
491
Window /* w */,
492
XTextProperty* /* text_prop_return */
493
);
494
495
extern Status XGetWMName(
496
Display* /* display */,
497
Window /* w */,
498
XTextProperty* /* text_prop_return */
499
);
500
501
extern Status XGetWMNormalHints(
502
Display* /* display */,
503
Window /* w */,
504
XSizeHints* /* hints_return */,
505
long* /* supplied_return */
506
);
507
508
extern Status XGetWMSizeHints(
509
Display* /* display */,
510
Window /* w */,
511
XSizeHints* /* hints_return */,
512
long* /* supplied_return */,
513
Atom /* property */
514
);
515
516
extern Status XGetZoomHints(
517
Display* /* display */,
518
Window /* w */,
519
XSizeHints* /* zhints_return */
520
);
521
522
extern int XIntersectRegion(
523
Region /* sra */,
524
Region /* srb */,
525
Region /* dr_return */
526
);
527
528
extern void XConvertCase(
529
KeySym /* sym */,
530
KeySym* /* lower */,
531
KeySym* /* upper */
532
);
533
534
extern int XLookupString(
535
XKeyEvent* /* event_struct */,
536
char* /* buffer_return */,
537
int /* bytes_buffer */,
538
KeySym* /* keysym_return */,
539
XComposeStatus* /* status_in_out */
540
);
541
542
extern Status XMatchVisualInfo(
543
Display* /* display */,
544
int /* screen */,
545
int /* depth */,
546
int /* class */,
547
XVisualInfo* /* vinfo_return */
548
);
549
550
extern int XOffsetRegion(
551
Region /* r */,
552
int /* dx */,
553
int /* dy */
554
);
555
556
extern Bool XPointInRegion(
557
Region /* r */,
558
int /* x */,
559
int /* y */
560
);
561
562
extern Region XPolygonRegion(
563
XPoint* /* points */,
564
int /* n */,
565
int /* fill_rule */
566
);
567
568
extern int XRectInRegion(
569
Region /* r */,
570
int /* x */,
571
int /* y */,
572
unsigned int /* width */,
573
unsigned int /* height */
574
);
575
576
extern int XSaveContext(
577
Display* /* display */,
578
XID /* rid */,
579
XContext /* context */,
580
_Xconst char* /* data */
581
);
582
583
extern int XSetClassHint(
584
Display* /* display */,
585
Window /* w */,
586
XClassHint* /* class_hints */
587
);
588
589
extern int XSetIconSizes(
590
Display* /* display */,
591
Window /* w */,
592
XIconSize* /* size_list */,
593
int /* count */
594
);
595
596
extern int XSetNormalHints(
597
Display* /* display */,
598
Window /* w */,
599
XSizeHints* /* hints */
600
);
601
602
extern void XSetRGBColormaps(
603
Display* /* display */,
604
Window /* w */,
605
XStandardColormap* /* stdcmaps */,
606
int /* count */,
607
Atom /* property */
608
);
609
610
extern int XSetSizeHints(
611
Display* /* display */,
612
Window /* w */,
613
XSizeHints* /* hints */,
614
Atom /* property */
615
);
616
617
extern int XSetStandardProperties(
618
Display* /* display */,
619
Window /* w */,
620
_Xconst char* /* window_name */,
621
_Xconst char* /* icon_name */,
622
Pixmap /* icon_pixmap */,
623
char** /* argv */,
624
int /* argc */,
625
XSizeHints* /* hints */
626
);
627
628
extern void XSetTextProperty(
629
Display* /* display */,
630
Window /* w */,
631
XTextProperty* /* text_prop */,
632
Atom /* property */
633
);
634
635
extern void XSetWMClientMachine(
636
Display* /* display */,
637
Window /* w */,
638
XTextProperty* /* text_prop */
639
);
640
641
extern int XSetWMHints(
642
Display* /* display */,
643
Window /* w */,
644
XWMHints* /* wm_hints */
645
);
646
647
extern void XSetWMIconName(
648
Display* /* display */,
649
Window /* w */,
650
XTextProperty* /* text_prop */
651
);
652
653
extern void XSetWMName(
654
Display* /* display */,
655
Window /* w */,
656
XTextProperty* /* text_prop */
657
);
658
659
extern void XSetWMNormalHints(
660
Display* /* display */,
661
Window /* w */,
662
XSizeHints* /* hints */
663
);
664
665
extern void XSetWMProperties(
666
Display* /* display */,
667
Window /* w */,
668
XTextProperty* /* window_name */,
669
XTextProperty* /* icon_name */,
670
char** /* argv */,
671
int /* argc */,
672
XSizeHints* /* normal_hints */,
673
XWMHints* /* wm_hints */,
674
XClassHint* /* class_hints */
675
);
676
677
extern void XmbSetWMProperties(
678
Display* /* display */,
679
Window /* w */,
680
_Xconst char* /* window_name */,
681
_Xconst char* /* icon_name */,
682
char** /* argv */,
683
int /* argc */,
684
XSizeHints* /* normal_hints */,
685
XWMHints* /* wm_hints */,
686
XClassHint* /* class_hints */
687
);
688
689
extern void Xutf8SetWMProperties(
690
Display* /* display */,
691
Window /* w */,
692
_Xconst char* /* window_name */,
693
_Xconst char* /* icon_name */,
694
char** /* argv */,
695
int /* argc */,
696
XSizeHints* /* normal_hints */,
697
XWMHints* /* wm_hints */,
698
XClassHint* /* class_hints */
699
);
700
701
extern void XSetWMSizeHints(
702
Display* /* display */,
703
Window /* w */,
704
XSizeHints* /* hints */,
705
Atom /* property */
706
);
707
708
extern int XSetRegion(
709
Display* /* display */,
710
GC /* gc */,
711
Region /* r */
712
);
713
714
extern void XSetStandardColormap(
715
Display* /* display */,
716
Window /* w */,
717
XStandardColormap* /* colormap */,
718
Atom /* property */
719
);
720
721
extern int XSetZoomHints(
722
Display* /* display */,
723
Window /* w */,
724
XSizeHints* /* zhints */
725
);
726
727
extern int XShrinkRegion(
728
Region /* r */,
729
int /* dx */,
730
int /* dy */
731
);
732
733
extern Status XStringListToTextProperty(
734
char** /* list */,
735
int /* count */,
736
XTextProperty* /* text_prop_return */
737
);
738
739
extern int XSubtractRegion(
740
Region /* sra */,
741
Region /* srb */,
742
Region /* dr_return */
743
);
744
745
extern int XmbTextListToTextProperty(
746
Display* display,
747
char** list,
748
int count,
749
XICCEncodingStyle style,
750
XTextProperty* text_prop_return
751
);
752
753
extern int XwcTextListToTextProperty(
754
Display* display,
755
wchar_t** list,
756
int count,
757
XICCEncodingStyle style,
758
XTextProperty* text_prop_return
759
);
760
761
extern int Xutf8TextListToTextProperty(
762
Display* display,
763
char** list,
764
int count,
765
XICCEncodingStyle style,
766
XTextProperty* text_prop_return
767
);
768
769
extern void XwcFreeStringList(
770
wchar_t** list
771
);
772
773
extern Status XTextPropertyToStringList(
774
XTextProperty* /* text_prop */,
775
char*** /* list_return */,
776
int* /* count_return */
777
);
778
779
extern int XmbTextPropertyToTextList(
780
Display* display,
781
const XTextProperty* text_prop,
782
char*** list_return,
783
int* count_return
784
);
785
786
extern int XwcTextPropertyToTextList(
787
Display* display,
788
const XTextProperty* text_prop,
789
wchar_t*** list_return,
790
int* count_return
791
);
792
793
extern int Xutf8TextPropertyToTextList(
794
Display* display,
795
const XTextProperty* text_prop,
796
char*** list_return,
797
int* count_return
798
);
799
800
extern int XUnionRectWithRegion(
801
XRectangle* /* rectangle */,
802
Region /* src_region */,
803
Region /* dest_region_return */
804
);
805
806
extern int XUnionRegion(
807
Region /* sra */,
808
Region /* srb */,
809
Region /* dr_return */
810
);
811
812
extern int XWMGeometry(
813
Display* /* display */,
814
int /* screen_number */,
815
_Xconst char* /* user_geometry */,
816
_Xconst char* /* default_geometry */,
817
unsigned int /* border_width */,
818
XSizeHints* /* hints */,
819
int* /* x_return */,
820
int* /* y_return */,
821
int* /* width_return */,
822
int* /* height_return */,
823
int* /* gravity_return */
824
);
825
826
extern int XXorRegion(
827
Region /* sra */,
828
Region /* srb */,
829
Region /* dr_return */
830
);
831
832
#ifdef __clang__
833
#pragma clang diagnostic pop
834
#endif
835
836
_XFUNCPROTOEND
837
838
#endif /* _X11_XUTIL_H_ */
839
840