src/video/x11/SDL_x11sym.h
author Alex Baines <alex@abaines.me.uk>
Fri, 28 Oct 2016 01:28:58 +0100
changeset 10562 b48d8a98e261
parent 10548 aea47b61c640
child 10569 9429d331668e
permissions -rw-r--r--
Fix double events / no repeat flag on key events when built withoutibus/fcitx

Uses XkbSetDetectableKeyRepeat, and falls back to forcing @im=none if it's not
supported.
slouken@1950
     1
/*
slouken@5535
     2
  Simple DirectMedia Layer
slouken@9998
     3
  Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org>
slouken@1950
     4
slouken@5535
     5
  This software is provided 'as-is', without any express or implied
slouken@5535
     6
  warranty.  In no event will the authors be held liable for any damages
slouken@5535
     7
  arising from the use of this software.
slouken@1950
     8
slouken@5535
     9
  Permission is granted to anyone to use this software for any purpose,
slouken@5535
    10
  including commercial applications, and to alter it and redistribute it
slouken@5535
    11
  freely, subject to the following restrictions:
slouken@1950
    12
slouken@5535
    13
  1. The origin of this software must not be misrepresented; you must not
slouken@5535
    14
     claim that you wrote the original software. If you use this software
slouken@5535
    15
     in a product, an acknowledgment in the product documentation would be
slouken@5535
    16
     appreciated but is not required.
slouken@5535
    17
  2. Altered source versions must be plainly marked as such, and must not be
slouken@5535
    18
     misrepresented as being the original software.
slouken@5535
    19
  3. This notice may not be removed or altered from any source distribution.
slouken@1950
    20
*/
slouken@1950
    21
slouken@1952
    22
/* *INDENT-OFF* */
slouken@1952
    23
icculus@10079
    24
#ifndef SDL_X11_MODULE
icculus@10079
    25
#define SDL_X11_MODULE(modname)
icculus@10079
    26
#endif
icculus@10079
    27
icculus@10079
    28
#ifndef SDL_X11_SYM
icculus@10079
    29
#define SDL_X11_SYM(rc,fn,params,args,ret)
icculus@10079
    30
#endif
icculus@10079
    31
slouken@1950
    32
SDL_X11_MODULE(BASEXLIB)
slouken@1952
    33
SDL_X11_SYM(XSizeHints*,XAllocSizeHints,(void),(),return)
urkle@6462
    34
SDL_X11_SYM(XWMHints*,XAllocWMHints,(void),(),return)
urkle@6462
    35
SDL_X11_SYM(XClassHint*,XAllocClassHint,(void),(),return)
bob@2299
    36
SDL_X11_SYM(int,XAutoRepeatOn,(Display* a),(a),return)
bob@2299
    37
SDL_X11_SYM(int,XAutoRepeatOff,(Display* a),(a),return)
slouken@1952
    38
SDL_X11_SYM(int,XChangePointerControl,(Display* a,Bool b,Bool c,int d,int e,int f),(a,b,c,d,e,f),return)
slouken@1952
    39
SDL_X11_SYM(int,XChangeProperty,(Display* a,Window b,Atom c,Atom d,int e,int f,_Xconst unsigned char* g,int h),(a,b,c,d,e,f,g,h),return)
icculus@6422
    40
SDL_X11_SYM(Bool,XCheckIfEvent,(Display* a,XEvent *b,Bool (*c)(Display*,XEvent*,XPointer),XPointer d),(a,b,c,d),return)
icculus@6467
    41
SDL_X11_SYM(int,XClearWindow,(Display* a,Window b),(a,b),return)
slouken@1952
    42
SDL_X11_SYM(int,XCloseDisplay,(Display* a),(a),return)
slouken@4508
    43
SDL_X11_SYM(int,XConvertSelection,(Display* a,Atom b,Atom c,Atom d,Window e,Time f),(a,b,c,d,e,f),return)
slouken@4862
    44
SDL_X11_SYM(Pixmap,XCreateBitmapFromData,(Display *dpy,Drawable d,_Xconst char *data,unsigned int width,unsigned int height),(dpy,d,data,width,height),return)
slouken@1952
    45
SDL_X11_SYM(Colormap,XCreateColormap,(Display* a,Window b,Visual* c,int d),(a,b,c,d),return)
slouken@1952
    46
SDL_X11_SYM(Cursor,XCreatePixmapCursor,(Display* a,Pixmap b,Pixmap c,XColor* d,XColor* e,unsigned int f,unsigned int g),(a,b,c,d,e,f,g),return)
mikesart@6675
    47
SDL_X11_SYM(Cursor,XCreateFontCursor,(Display* a,unsigned int b),(a,b),return)
icculus@6723
    48
SDL_X11_SYM(XFontSet,XCreateFontSet,(Display* a, _Xconst char* b, char*** c, int* d, char**	e),(a,b,c,d,e),return)
slouken@1952
    49
SDL_X11_SYM(GC,XCreateGC,(Display* a,Drawable b,unsigned long c,XGCValues* d),(a,b,c,d),return)
slouken@1952
    50
SDL_X11_SYM(XImage*,XCreateImage,(Display* a,Visual* b,unsigned int c,int d,int e,char* f,unsigned int g,unsigned int h,int i,int j),(a,b,c,d,e,f,g,h,i,j),return)
slouken@1952
    51
SDL_X11_SYM(Window,XCreateWindow,(Display* a,Window b,int c,int d,unsigned int e,unsigned int f,unsigned int g,int h,unsigned int i,Visual* j,unsigned long k,XSetWindowAttributes* l),(a,b,c,d,e,f,g,h,i,j,k,l),return)
slouken@1952
    52
SDL_X11_SYM(int,XDefineCursor,(Display* a,Window b,Cursor c),(a,b,c),return)
slouken@1952
    53
SDL_X11_SYM(int,XDeleteProperty,(Display* a,Window b,Atom c),(a,b,c),return)
slouken@1952
    54
SDL_X11_SYM(int,XDestroyWindow,(Display* a,Window b),(a,b),return)
slouken@2305
    55
SDL_X11_SYM(int,XDisplayKeycodes,(Display* a,int* b,int* c),(a,b,c),return)
slouken@6602
    56
SDL_X11_SYM(int,XDrawRectangle,(Display* a,Drawable b,GC c,int d,int e,unsigned int f,unsigned int g),(a,b,c,d,e,f,g),return)
slouken@1952
    57
SDL_X11_SYM(char*,XDisplayName,(_Xconst char* a),(a),return)
slouken@6602
    58
SDL_X11_SYM(int,XDrawString,(Display* a,Drawable b,GC c,int d,int e,_Xconst char* f,int g),(a,b,c,d,e,f,g),return)
slouken@1952
    59
SDL_X11_SYM(int,XEventsQueued,(Display* a,int b),(a,b),return)
slouken@6602
    60
SDL_X11_SYM(int,XFillRectangle,(Display* a,Drawable b,GC c,int d,int e,unsigned int f,unsigned int g),(a,b,c,d,e,f,g),return)
bob@2185
    61
SDL_X11_SYM(Bool,XFilterEvent,(XEvent *event,Window w),(event,w),return)
slouken@1952
    62
SDL_X11_SYM(int,XFlush,(Display* a),(a),return)
slouken@1952
    63
SDL_X11_SYM(int,XFree,(void*a),(a),return)
slouken@1952
    64
SDL_X11_SYM(int,XFreeCursor,(Display* a,Cursor b),(a,b),return)
icculus@6723
    65
SDL_X11_SYM(void,XFreeFontSet,(Display* a, XFontSet b),(a,b),)
slouken@1952
    66
SDL_X11_SYM(int,XFreeGC,(Display* a,GC b),(a,b),return)
icculus@6723
    67
SDL_X11_SYM(int,XFreeFont,(Display* a, XFontStruct* b),(a,b),return)
slouken@1952
    68
SDL_X11_SYM(int,XFreeModifiermap,(XModifierKeymap* a),(a),return)
slouken@1952
    69
SDL_X11_SYM(int,XFreePixmap,(Display* a,Pixmap b),(a,b),return)
icculus@6723
    70
SDL_X11_SYM(void,XFreeStringList,(char** a),(a),)
slouken@4518
    71
SDL_X11_SYM(char*,XGetAtomName,(Display *a,Atom b),(a,b),return)
icculus@6025
    72
SDL_X11_SYM(int,XGetInputFocus,(Display *a,Window *b,int *c),(a,b,c),return)
slouken@1952
    73
SDL_X11_SYM(int,XGetErrorDatabaseText,(Display* a,_Xconst char* b,_Xconst char* c,_Xconst char* d,char* e,int f),(a,b,c,d,e,f),return)
slouken@1952
    74
SDL_X11_SYM(XModifierKeymap*,XGetModifierMapping,(Display* a),(a),return)
slouken@1952
    75
SDL_X11_SYM(int,XGetPointerControl,(Display* a,int* b,int* c,int* d),(a,b,c,d),return)
slouken@4508
    76
SDL_X11_SYM(Window,XGetSelectionOwner,(Display* a,Atom b),(a,b),return)
slouken@1952
    77
SDL_X11_SYM(XVisualInfo*,XGetVisualInfo,(Display* a,long b,XVisualInfo* c,int* d),(a,b,c,d),return)
slouken@1952
    78
SDL_X11_SYM(Status,XGetWindowAttributes,(Display* a,Window b,XWindowAttributes* c),(a,b,c),return)
slouken@3077
    79
SDL_X11_SYM(int,XGetWindowProperty,(Display* a,Window b,Atom c,long d,long e,Bool f,Atom g,Atom* h,int* i,unsigned long* j,unsigned long *k,unsigned char **l),(a,b,c,d,e,f,g,h,i,j,k,l),return)
slouken@4508
    80
SDL_X11_SYM(XWMHints*,XGetWMHints,(Display* a,Window b),(a,b),return)
slouken@5534
    81
SDL_X11_SYM(Status,XGetWMNormalHints,(Display *a,Window b, XSizeHints *c, long *d),(a,b,c,d),return)
slouken@6336
    82
SDL_X11_SYM(int,XIfEvent,(Display* a,XEvent *b,Bool (*c)(Display*,XEvent*,XPointer),XPointer d),(a,b,c,d),return)
slouken@1952
    83
SDL_X11_SYM(int,XGrabKeyboard,(Display* a,Window b,Bool c,int d,int e,Time f),(a,b,c,d,e,f),return)
slouken@1952
    84
SDL_X11_SYM(int,XGrabPointer,(Display* a,Window b,Bool c,unsigned int d,int e,int f,Window g,Cursor h,Time i),(a,b,c,d,e,f,g,h,i),return)
bob@2185
    85
SDL_X11_SYM(int,XGrabServer,(Display* a),(a),return)
slouken@1952
    86
SDL_X11_SYM(Status,XIconifyWindow,(Display* a,Window b,int c),(a,b,c),return)
slouken@1952
    87
SDL_X11_SYM(KeyCode,XKeysymToKeycode,(Display* a,KeySym b),(a,b),return)
slouken@2305
    88
SDL_X11_SYM(char*,XKeysymToString,(KeySym a),(a),return)
icculus@6467
    89
SDL_X11_SYM(int,XInstallColormap,(Display* a,Colormap b),(a,b),return)
slouken@1952
    90
SDL_X11_SYM(Atom,XInternAtom,(Display* a,_Xconst char* b,Bool c),(a,b,c),return)
slouken@1952
    91
SDL_X11_SYM(XPixmapFormatValues*,XListPixmapFormats,(Display* a,int* b),(a,b),return)
icculus@6723
    92
SDL_X11_SYM(XFontStruct*,XLoadQueryFont,(Display* a,_Xconst char* b),(a,b),return)
bob@2300
    93
SDL_X11_SYM(KeySym,XLookupKeysym,(XKeyEvent* a,int b),(a,b),return)
slouken@1952
    94
SDL_X11_SYM(int,XLookupString,(XKeyEvent* a,char* b,int c,KeySym* d,XComposeStatus* e),(a,b,c,d,e),return)
slouken@1952
    95
SDL_X11_SYM(int,XMapRaised,(Display* a,Window b),(a,b),return)
slouken@1952
    96
SDL_X11_SYM(Status,XMatchVisualInfo,(Display* a,int b,int c,int d,XVisualInfo* e),(a,b,c,d,e),return)
slouken@1952
    97
SDL_X11_SYM(int,XMissingExtension,(Display* a,_Xconst char* b),(a,b),return)
slouken@1952
    98
SDL_X11_SYM(int,XMoveWindow,(Display* a,Window b,int c,int d),(a,b,c,d),return)
slouken@1952
    99
SDL_X11_SYM(int,XNextEvent,(Display* a,XEvent* b),(a,b),return)
slouken@1952
   100
SDL_X11_SYM(Display*,XOpenDisplay,(_Xconst char* a),(a),return)
mikesart@6569
   101
SDL_X11_SYM(Status,XInitThreads,(void),(),return)
slouken@1952
   102
SDL_X11_SYM(int,XPeekEvent,(Display* a,XEvent* b),(a,b),return)
slouken@1952
   103
SDL_X11_SYM(int,XPending,(Display* a),(a),return)
slouken@1952
   104
SDL_X11_SYM(int,XPutImage,(Display* a,Drawable b,GC c,XImage* d,int e,int f,int g,int h,unsigned int i,unsigned int j),(a,b,c,d,e,f,g,h,i,j),return)
slouken@1952
   105
SDL_X11_SYM(int,XQueryKeymap,(Display* a,char *b),(a,b),return)
slouken@1952
   106
SDL_X11_SYM(Bool,XQueryPointer,(Display* a,Window b,Window* c,Window* d,int* e,int* f,int* g,int* h,unsigned int* i),(a,b,c,d,e,f,g,h,i),return)
slouken@1952
   107
SDL_X11_SYM(int,XRaiseWindow,(Display* a,Window b),(a,b),return)
icculus@6467
   108
SDL_X11_SYM(int,XReparentWindow,(Display* a,Window b,Window c,int d,int e),(a,b,c,d,e),return)
slouken@3025
   109
SDL_X11_SYM(int,XResetScreenSaver,(Display* a),(a),return)
slouken@1952
   110
SDL_X11_SYM(int,XResizeWindow,(Display* a,Window b,unsigned int c,unsigned int d),(a,b,c,d),return)
slouken@1952
   111
SDL_X11_SYM(int,XSelectInput,(Display* a,Window b,long c),(a,b,c),return)
slouken@1952
   112
SDL_X11_SYM(Status,XSendEvent,(Display* a,Window b,Bool c,long d,XEvent* e),(a,b,c,d,e),return)
slouken@1952
   113
SDL_X11_SYM(XErrorHandler,XSetErrorHandler,(XErrorHandler a),(a),return)
slouken@6602
   114
SDL_X11_SYM(int,XSetForeground,(Display* a,GC b,unsigned long c),(a,b,c),return)
slouken@1952
   115
SDL_X11_SYM(XIOErrorHandler,XSetIOErrorHandler,(XIOErrorHandler a),(a),return)
icculus@6423
   116
SDL_X11_SYM(int,XSetInputFocus,(Display *a,Window b,int c,Time d),(a,b,c,d),return)
slouken@4508
   117
SDL_X11_SYM(int,XSetSelectionOwner,(Display* a,Atom b,Window c,Time d),(a,b,c,d),return)
slouken@1952
   118
SDL_X11_SYM(int,XSetTransientForHint,(Display* a,Window b,Window c),(a,b,c),return)
slouken@1952
   119
SDL_X11_SYM(void,XSetTextProperty,(Display* a,Window b,XTextProperty* c,Atom d),(a,b,c,d),)
icculus@6467
   120
SDL_X11_SYM(int,XSetWindowBackground,(Display* a,Window b,unsigned long c),(a,b,c),return)
slouken@6168
   121
SDL_X11_SYM(void,XSetWMProperties,(Display* a,Window b,XTextProperty* c,XTextProperty* d,char** e,int f,XSizeHints* g,XWMHints* h,XClassHint* i),(a,b,c,d,e,f,g,h,i),)
slouken@4508
   122
SDL_X11_SYM(void,XSetWMNormalHints,(Display* a,Window b,XSizeHints* c),(a,b,c),)
slouken@4508
   123
SDL_X11_SYM(Status,XSetWMProtocols,(Display* a,Window b,Atom* c,int d),(a,b,c,d),return)
slouken@1952
   124
SDL_X11_SYM(int,XStoreColors,(Display* a,Colormap b,XColor* c,int d),(a,b,c,d),return)
slouken@6602
   125
SDL_X11_SYM(int,XStoreName,(Display* a,Window b,_Xconst char* c),(a,b,c),return)
slouken@1952
   126
SDL_X11_SYM(Status,XStringListToTextProperty,(char** a,int b,XTextProperty* c),(a,b,c),return)
slouken@1952
   127
SDL_X11_SYM(int,XSync,(Display* a,Bool b),(a,b),return)
slouken@6602
   128
SDL_X11_SYM(int,XTextExtents,(XFontStruct* a,_Xconst char* b,int c,int* d,int* e,int* f,XCharStruct* g),(a,b,c,d,e,f,g),return)
slouken@6602
   129
SDL_X11_SYM(Bool,XTranslateCoordinates,(Display *a,Window b,Window c,int d,int e,int* f,int* g,Window* h),(a,b,c,d,e,f,g,h),return)
slouken@5470
   130
SDL_X11_SYM(int,XUndefineCursor,(Display* a,Window b),(a,b),return)
slouken@1952
   131
SDL_X11_SYM(int,XUngrabKeyboard,(Display* a,Time b),(a,b),return)
slouken@1952
   132
SDL_X11_SYM(int,XUngrabPointer,(Display* a,Time b),(a,b),return)
bob@2185
   133
SDL_X11_SYM(int,XUngrabServer,(Display* a),(a),return)
icculus@6573
   134
SDL_X11_SYM(int,XUninstallColormap,(Display* a,Colormap b),(a,b),return)
slouken@6602
   135
SDL_X11_SYM(int,XUnloadFont,(Display* a,Font b),(a,b),return)
bob@2185
   136
SDL_X11_SYM(int,XWarpPointer,(Display* a,Window b,Window c,int d,int e,unsigned int f,unsigned int g,int h,int i),(a,b,c,d,e,f,g,h,i),return)
slouken@6602
   137
SDL_X11_SYM(int,XWindowEvent,(Display* a,Window b,long c,XEvent* d),(a,b,c,d),return)
slouken@7522
   138
SDL_X11_SYM(Status,XWithdrawWindow,(Display* a,Window b,int c),(a,b,c),return)
slouken@1952
   139
SDL_X11_SYM(VisualID,XVisualIDFromVisual,(Visual* a),(a),return)
slouken@6313
   140
#if SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY
slouken@6311
   141
SDL_X11_SYM(XExtDisplayInfo*,XextAddDisplay,(XExtensionInfo* a,Display* b,_Xconst char* c,XExtensionHooks* d,int e,XPointer f),(a,b,c,d,e,f),return)
slouken@6313
   142
#else
slouken@6313
   143
SDL_X11_SYM(XExtDisplayInfo*,XextAddDisplay,(XExtensionInfo* a,Display* b,char* c,XExtensionHooks* d,int e,XPointer f),(a,b,c,d,e,f),return)
slouken@6313
   144
#endif
slouken@1952
   145
SDL_X11_SYM(XExtensionInfo*,XextCreateExtension,(void),(),return)
slouken@1952
   146
SDL_X11_SYM(void,XextDestroyExtension,(XExtensionInfo* a),(a),)
slouken@1952
   147
SDL_X11_SYM(XExtDisplayInfo*,XextFindDisplay,(XExtensionInfo* a,Display* b),(a,b),return)
slouken@1952
   148
SDL_X11_SYM(int,XextRemoveDisplay,(XExtensionInfo* a,Display* b),(a,b),return)
slouken@1952
   149
SDL_X11_SYM(Bool,XQueryExtension,(Display* a,_Xconst char* b,int* c,int* d,int* e),(a,b,c,d,e),return)
slouken@1952
   150
SDL_X11_SYM(char *,XDisplayString,(Display* a),(a),return)
slouken@1952
   151
SDL_X11_SYM(int,XGetErrorText,(Display* a,int b,char* c,int d),(a,b,c,d),return)
slouken@1952
   152
SDL_X11_SYM(void,_XEatData,(Display* a,unsigned long b),(a,b),)
slouken@1952
   153
SDL_X11_SYM(void,_XFlush,(Display* a),(a),)
slouken@1952
   154
SDL_X11_SYM(void,_XFlushGCCache,(Display* a,GC b),(a,b),)
slouken@1952
   155
SDL_X11_SYM(int,_XRead,(Display* a,char* b,long c),(a,b,c),return)
slouken@1952
   156
SDL_X11_SYM(void,_XReadPad,(Display* a,char* b,long c),(a,b,c),)
slouken@1952
   157
SDL_X11_SYM(void,_XSend,(Display* a,_Xconst char* b,long c),(a,b,c),)
slouken@1952
   158
SDL_X11_SYM(Status,_XReply,(Display* a,xReply* b,int c,Bool d),(a,b,c,d),return)
slouken@1952
   159
SDL_X11_SYM(unsigned long,_XSetLastRequestRead,(Display* a,xGenericReply* b),(a,b),return)
slouken@1952
   160
SDL_X11_SYM(SDL_X11_XSynchronizeRetType,XSynchronize,(Display* a,Bool b),(a,b),return)
slouken@1952
   161
SDL_X11_SYM(SDL_X11_XESetWireToEventRetType,XESetWireToEvent,(Display* a,int b,SDL_X11_XESetWireToEventRetType c),(a,b,c),return)
slouken@1952
   162
SDL_X11_SYM(SDL_X11_XESetEventToWireRetType,XESetEventToWire,(Display* a,int b,SDL_X11_XESetEventToWireRetType c),(a,b,c),return)
icculus@9788
   163
SDL_X11_SYM(void,XRefreshKeyboardMapping,(XMappingEvent *a),(a),)
icculus@10386
   164
SDL_X11_SYM(int,XQueryTree,(Display* a,Window b,Window* c,Window* d,Window** e,unsigned int* f),(a,b,c,d,e,f),return)
slouken@1952
   165
slouken@6311
   166
#if SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS
slouken@6311
   167
SDL_X11_SYM(Bool,XGetEventData,(Display* a,XGenericEventCookie* b),(a,b),return)
slouken@6311
   168
SDL_X11_SYM(void,XFreeEventData,(Display* a,XGenericEventCookie* b),(a,b),)    
slouken@6311
   169
#endif
slouken@6311
   170
dimitris@6318
   171
#if SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM
alex@10494
   172
SDL_X11_SYM(Bool,XkbQueryExtension,(Display* a,int * b,int * c,int * d,int * e, int *f),(a,b,c,d,e,f),return)
dimitris@6318
   173
#if NeedWidePrototypes
dimitris@6318
   174
SDL_X11_SYM(KeySym,XkbKeycodeToKeysym,(Display* a,unsigned int b,int c,int d),(a,b,c,d),return)
dimitris@6318
   175
#else
dimitris@6318
   176
SDL_X11_SYM(KeySym,XkbKeycodeToKeysym,(Display* a,KeyCode b,int c,int d),(a,b,c,d),return)
dimitris@6318
   177
#endif
jwyatt@9842
   178
SDL_X11_SYM(Status,XkbGetState,(Display* a,unsigned int b,XkbStatePtr c),(a,b,c),return)
slouken@10439
   179
SDL_X11_SYM(Status,XkbGetUpdatedMap,(Display* a,unsigned int b,XkbDescPtr c),(a,b,c),return)
slouken@10439
   180
SDL_X11_SYM(XkbDescPtr,XkbGetMap,(Display* a,unsigned int b,unsigned int c),(a,b,c),return)
slouken@10439
   181
SDL_X11_SYM(void,XkbFreeClientMap,(XkbDescPtr a,unsigned int b, Bool c),(a,b,c),)
alex@10562
   182
SDL_X11_SYM(BOOL,XkbSetDetectableAutoRepeat,(Display* a, BOOL b, BOOL* c),(a,b,c),return)
dimitris@6318
   183
#endif
dimitris@6318
   184
slouken@1950
   185
#if NeedWidePrototypes
slouken@1952
   186
SDL_X11_SYM(KeySym,XKeycodeToKeysym,(Display* a,unsigned int b,int c),(a,b,c),return)
slouken@1950
   187
#else
slouken@1952
   188
SDL_X11_SYM(KeySym,XKeycodeToKeysym,(Display* a,KeyCode b,int c),(a,b,c),return)
slouken@1950
   189
#endif
slouken@1952
   190
slouken@1950
   191
#ifdef X_HAVE_UTF8_STRING
slouken@1950
   192
SDL_X11_MODULE(UTF8)
slouken@1952
   193
SDL_X11_SYM(int,Xutf8TextListToTextProperty,(Display* a,char** b,int c,XICCEncodingStyle d,XTextProperty* e),(a,b,c,d,e),return)
slouken@1952
   194
SDL_X11_SYM(int,Xutf8LookupString,(XIC a,XKeyPressedEvent* b,char* c,int d,KeySym* e,Status* f),(a,b,c,d,e,f),return)
gabomdq@7678
   195
/* SDL_X11_SYM(XIC,XCreateIC,(XIM, ...),return)  !!! ARGH! */
slouken@1952
   196
SDL_X11_SYM(void,XDestroyIC,(XIC a),(a),)
gabomdq@7678
   197
/* SDL_X11_SYM(char*,XGetICValues,(XIC, ...),return)  !!! ARGH! */
slouken@1952
   198
SDL_X11_SYM(void,XSetICFocus,(XIC a),(a),)
slouken@1952
   199
SDL_X11_SYM(void,XUnsetICFocus,(XIC a),(a),)
slouken@1952
   200
SDL_X11_SYM(XIM,XOpenIM,(Display* a,struct _XrmHashBucketRec* b,char* c,char* d),(a,b,c,d),return)
slouken@1952
   201
SDL_X11_SYM(Status,XCloseIM,(XIM a),(a),return)
icculus@6723
   202
SDL_X11_SYM(void,Xutf8DrawString,(Display *a, Drawable b, XFontSet c, GC d, int e, int f, _Xconst char *g, int h),(a,b,c,d,e,f,g,h),)
icculus@6723
   203
SDL_X11_SYM(int,Xutf8TextExtents,(XFontSet a, _Xconst char*	b, int c, XRectangle* d, XRectangle* e),(a,b,c,d,e),return)
alex@10436
   204
SDL_X11_SYM(char*,XSetLocaleModifiers,(const char *a),(a),return)
slouken@10548
   205
SDL_X11_SYM(char*,Xutf8ResetIC,(XIC a),(a),return)
slouken@1950
   206
#endif
slouken@1952
   207
slouken@1950
   208
#ifndef NO_SHARED_MEMORY
slouken@1950
   209
SDL_X11_MODULE(SHM)
slouken@1952
   210
SDL_X11_SYM(Status,XShmAttach,(Display* a,XShmSegmentInfo* b),(a,b),return)
slouken@1952
   211
SDL_X11_SYM(Status,XShmDetach,(Display* a,XShmSegmentInfo* b),(a,b),return)
slouken@1952
   212
SDL_X11_SYM(Status,XShmPutImage,(Display* a,Drawable b,GC c,XImage* d,int e,int f,int g,int h,unsigned int i,unsigned int j,Bool k),(a,b,c,d,e,f,g,h,i,j,k),return)
slouken@1952
   213
SDL_X11_SYM(XImage*,XShmCreateImage,(Display* a,Visual* b,unsigned int c,int d,char* e,XShmSegmentInfo* f,unsigned int g,unsigned int h),(a,b,c,d,e,f,g,h),return)
sunnysachanandani@4580
   214
SDL_X11_SYM(Pixmap,XShmCreatePixmap,(Display *a,Drawable b,char* c,XShmSegmentInfo* d, unsigned int e, unsigned int f, unsigned int g),(a,b,c,d,e,f,g),return)
slouken@1952
   215
SDL_X11_SYM(Bool,XShmQueryExtension,(Display* a),(a),return)
slouken@1950
   216
#endif
slouken@1952
   217
slouken@1950
   218
/*
slouken@1950
   219
 * Not required...these only exist in code in headers on some 64-bit platforms,
slouken@1950
   220
 *  and are removed via macros elsewhere, so it's safe for them to be missing.
slouken@1950
   221
 */
slouken@1950
   222
#ifdef LONG64
slouken@1950
   223
SDL_X11_MODULE(IO_32BIT)
azamat@7266
   224
SDL_X11_SYM(int,_XData32,(Display *dpy,register _Xconst long *data,unsigned len),(dpy,data,len),return)
slouken@1952
   225
SDL_X11_SYM(void,_XRead32,(Display *dpy,register long *data,long len),(dpy,data,len),)
slouken@1950
   226
#endif
slouken@1952
   227
slouken@1950
   228
/*
slouken@1950
   229
 * These only show up on some variants of Unix.
slouken@1950
   230
 */
slouken@1950
   231
#if defined(__osf__)
slouken@1950
   232
SDL_X11_MODULE(OSF_ENTRY_POINTS)
slouken@1952
   233
SDL_X11_SYM(void,_SmtBufferOverflow,(Display *dpy,register smtDisplayPtr p),(dpy,p),)
bob@2185
   234
SDL_X11_SYM(void,_SmtIpError,(Display *dpy,register smtDisplayPtr p,int i),(dpy,p,i),)
bob@2185
   235
SDL_X11_SYM(int,ipAllocateData,(ChannelPtr a,IPCard b,IPDataPtr * c),(a,b,c),return)
bob@2185
   236
SDL_X11_SYM(int,ipUnallocateAndSendData,(ChannelPtr a,IPCard b),(a,b),return)
slouken@1950
   237
#endif
slouken@1952
   238
slouken@5471
   239
/* XCursor support */
slouken@5471
   240
#if SDL_VIDEO_DRIVER_X11_XCURSOR
slouken@5471
   241
SDL_X11_MODULE(XCURSOR)
icculus@5981
   242
SDL_X11_SYM(XcursorImage*,XcursorImageCreate,(int a,int b),(a,b),return)
slouken@5471
   243
SDL_X11_SYM(void,XcursorImageDestroy,(XcursorImage *a),(a),)
icculus@5981
   244
SDL_X11_SYM(Cursor,XcursorImageLoadCursor,(Display *a,const XcursorImage *b),(a,b),return)
slouken@5471
   245
#endif
slouken@5471
   246
icculus@9657
   247
/* Xdbe support */
icculus@9657
   248
#if SDL_VIDEO_DRIVER_X11_XDBE
icculus@9657
   249
SDL_X11_MODULE(XDBE)
icculus@9657
   250
SDL_X11_SYM(Status,XdbeQueryExtension,(Display *dpy,int *major_version_return,int *minor_version_return),(dpy,major_version_return,minor_version_return),return)
icculus@9657
   251
SDL_X11_SYM(XdbeBackBuffer,XdbeAllocateBackBufferName,(Display *dpy,Window window,XdbeSwapAction swap_action),(dpy,window,swap_action),return)
icculus@9657
   252
SDL_X11_SYM(Status,XdbeDeallocateBackBufferName,(Display *dpy,XdbeBackBuffer buffer),(dpy,buffer),return)
icculus@9657
   253
SDL_X11_SYM(Status,XdbeSwapBuffers,(Display *dpy,XdbeSwapInfo *swap_info,int num_windows),(dpy,swap_info,num_windows),return)
icculus@9657
   254
SDL_X11_SYM(Status,XdbeBeginIdiom,(Display *dpy),(dpy),return)
icculus@9657
   255
SDL_X11_SYM(Status,XdbeEndIdiom,(Display *dpy),(dpy),return)
icculus@9657
   256
SDL_X11_SYM(XdbeScreenVisualInfo*,XdbeGetVisualInfo,(Display *dpy,Drawable *screen_specifiers,int *num_screens),(dpy,screen_specifiers,num_screens),return)
icculus@9657
   257
SDL_X11_SYM(void,XdbeFreeVisualInfo,(XdbeScreenVisualInfo *visual_info),(visual_info),)
icculus@9657
   258
SDL_X11_SYM(XdbeBackBufferAttributes*,XdbeGetBackBufferAttributes,(Display *dpy,XdbeBackBuffer buffer),(dpy,buffer),return)
icculus@9657
   259
#endif
icculus@9657
   260
slouken@5408
   261
/* Xinerama support */
slouken@5408
   262
#if SDL_VIDEO_DRIVER_X11_XINERAMA
slouken@5408
   263
SDL_X11_MODULE(XINERAMA)
icculus@5981
   264
SDL_X11_SYM(Bool,XineramaIsActive,(Display *a),(a),return)
icculus@5981
   265
SDL_X11_SYM(Bool,XineramaQueryExtension,(Display *a,int *b,int *c),(a,b,c),return)
icculus@6027
   266
SDL_X11_SYM(Status,XineramaQueryVersion,(Display *a,int *b,int *c),(a,b,c),return)
icculus@5981
   267
SDL_X11_SYM(XineramaScreenInfo*,XineramaQueryScreens,(Display *a, int *b),(a,b),return)
slouken@5408
   268
#endif
slouken@5408
   269
slouken@6311
   270
/* XInput2 support for multiple mice, tablets, etc. */
slouken@6311
   271
#if SDL_VIDEO_DRIVER_X11_XINPUT2
slouken@6311
   272
SDL_X11_MODULE(XINPUT2)
slouken@6311
   273
SDL_X11_SYM(XIDeviceInfo*,XIQueryDevice,(Display *a,int b,int *c),(a,b,c),return)
slouken@6311
   274
SDL_X11_SYM(void,XIFreeDeviceInfo,(XIDeviceInfo *a),(a),)
slouken@6311
   275
SDL_X11_SYM(int,XISelectEvents,(Display *a,Window b,XIEventMask *c,int d),(a,b,c,d),return)
slouken@6311
   276
SDL_X11_SYM(Status,XIQueryVersion,(Display *a,int *b,int *c),(a,b,c),return)
slouken@6311
   277
SDL_X11_SYM(XIEventMask*,XIGetSelectedEvents,(Display *a,Window b,int *c),(a,b,c),return)
slouken@5408
   278
#endif
slouken@5408
   279
slouken@5408
   280
/* XRandR support */
slouken@1950
   281
#if SDL_VIDEO_DRIVER_X11_XRANDR
slouken@1950
   282
SDL_X11_MODULE(XRANDR)
slouken@1952
   283
SDL_X11_SYM(Status,XRRQueryVersion,(Display *dpy,int *major_versionp,int *minor_versionp),(dpy,major_versionp,minor_versionp),return)
slouken@1952
   284
SDL_X11_SYM(XRRScreenConfiguration *,XRRGetScreenInfo,(Display *dpy,Drawable draw),(dpy,draw),return)
slouken@1952
   285
SDL_X11_SYM(SizeID,XRRConfigCurrentConfiguration,(XRRScreenConfiguration *config,Rotation *rotation),(config,rotation),return)
slouken@2873
   286
SDL_X11_SYM(short,XRRConfigCurrentRate,(XRRScreenConfiguration *config),(config),return)
slouken@2873
   287
SDL_X11_SYM(short *,XRRConfigRates,(XRRScreenConfiguration *config,int sizeID,int *nrates),(config,sizeID,nrates),return)
bob@2185
   288
SDL_X11_SYM(XRRScreenSize *,XRRConfigSizes,(XRRScreenConfiguration *config,int *nsizes),(config,nsizes),return)
slouken@2873
   289
SDL_X11_SYM(Status,XRRSetScreenConfigAndRate,(Display *dpy,XRRScreenConfiguration *config,Drawable draw,int size_index,Rotation rotation,short rate,Time timestamp),(dpy,config,draw,size_index,rotation,rate,timestamp),return)
slouken@1952
   290
SDL_X11_SYM(void,XRRFreeScreenConfigInfo,(XRRScreenConfiguration *config),(config),)
slouken@6537
   291
SDL_X11_SYM(void,XRRSetScreenSize,(Display *dpy, Window window,int width, int height,int mmWidth, int mmHeight),(dpy,window,width,height,mmWidth,mmHeight),)
slouken@6537
   292
SDL_X11_SYM(Status,XRRGetScreenSizeRange,(Display *dpy, Window window,int *minWidth, int *minHeight, int *maxWidth, int *maxHeight),(dpy,window,minWidth,minHeight,maxWidth,maxHeight),return)
slouken@6537
   293
SDL_X11_SYM(XRRScreenResources *,XRRGetScreenResources,(Display *dpy, Window window),(dpy, window),return)
slouken@6537
   294
SDL_X11_SYM(void,XRRFreeScreenResources,(XRRScreenResources *resources),(resources),)
slouken@6537
   295
SDL_X11_SYM(XRROutputInfo *,XRRGetOutputInfo,(Display *dpy, XRRScreenResources *resources, RROutput output),(dpy,resources,output),return)
slouken@6537
   296
SDL_X11_SYM(void,XRRFreeOutputInfo,(XRROutputInfo *outputInfo),(outputInfo),)
slouken@6537
   297
SDL_X11_SYM(XRRCrtcInfo *,XRRGetCrtcInfo,(Display *dpy, XRRScreenResources *resources, RRCrtc crtc),(dpy,resources,crtc),return)
slouken@6537
   298
SDL_X11_SYM(void,XRRFreeCrtcInfo,(XRRCrtcInfo *crtcInfo),(crtcInfo),)
slouken@6537
   299
SDL_X11_SYM(Status,XRRSetCrtcConfig,(Display *dpy, XRRScreenResources *resources, RRCrtc crtc, Time timestamp, int x, int y, RRMode mode, Rotation rotation, RROutput *outputs, int noutputs),(dpy,resources,crtc,timestamp,x,y,mode,rotation,outputs,noutputs),return)
slouken@6796
   300
SDL_X11_SYM(Atom*,XRRListOutputProperties,(Display *dpy, RROutput output, int *nprop),(dpy,output,nprop),return)
slouken@6796
   301
SDL_X11_SYM(XRRPropertyInfo*,XRRQueryOutputProperty,(Display *dpy,RROutput output, Atom property),(dpy,output,property),return)
slouken@6796
   302
SDL_X11_SYM(int,XRRGetOutputProperty,(Display *dpy,RROutput output, Atom property, long offset, long length, Bool _delete, Bool pending, Atom req_type, Atom *actual_type, int *actual_format, unsigned long *nitems, unsigned long *bytes_after, unsigned char **prop),(dpy,output,property,offset,length, _delete, pending, req_type, actual_type, actual_format, nitems, bytes_after, prop),return)
icculus@9834
   303
SDL_X11_SYM(RROutput,XRRGetOutputPrimary,(Display *dpy,Window window),(dpy,window),return)
slouken@1950
   304
#endif
slouken@1952
   305
slouken@3025
   306
/* MIT-SCREEN-SAVER support */
slouken@5408
   307
#if SDL_VIDEO_DRIVER_X11_XSCRNSAVER
slouken@3025
   308
SDL_X11_MODULE(XSS)
slouken@3025
   309
SDL_X11_SYM(Bool,XScreenSaverQueryExtension,(Display *dpy,int *event_base,int *error_base),(dpy,event_base,error_base),return)
slouken@3025
   310
SDL_X11_SYM(Status,XScreenSaverQueryVersion,(Display *dpy,int *major_versionp,int *minor_versionp),(dpy,major_versionp,minor_versionp),return)
slouken@3025
   311
SDL_X11_SYM(void,XScreenSaverSuspend,(Display *dpy,Bool suspend),(dpy,suspend),return)
slouken@3025
   312
#endif
slouken@3025
   313
icculus@4794
   314
#if SDL_VIDEO_DRIVER_X11_XSHAPE
icculus@4790
   315
SDL_X11_MODULE(XSHAPE)
icculus@4790
   316
SDL_X11_SYM(void,XShapeCombineMask,(Display *dpy,Window dest,int dest_kind,int x_off,int y_off,Pixmap src,int op),(dpy,dest,dest_kind,x_off,y_off,src,op),)
icculus@4790
   317
#endif
icculus@4790
   318
slouken@5408
   319
#if SDL_VIDEO_DRIVER_X11_XVIDMODE
slouken@5408
   320
SDL_X11_MODULE(XVIDMODE)
icculus@5981
   321
SDL_X11_SYM(Bool,XF86VidModeGetAllModeLines,(Display *a,int b,int *c,XF86VidModeModeInfo ***d),(a,b,c,d),return)
icculus@5981
   322
SDL_X11_SYM(Bool,XF86VidModeGetModeLine,(Display *a,int b,int *c,XF86VidModeModeLine *d),(a,b,c,d),return)
icculus@5981
   323
SDL_X11_SYM(Bool,XF86VidModeGetViewPort,(Display *a,int b,int *c,int *d),(a,b,c,d),return)
icculus@5981
   324
SDL_X11_SYM(Bool,XF86VidModeQueryExtension,(Display *a,int *b,int *c),(a,b,c),return)
icculus@5981
   325
SDL_X11_SYM(Bool,XF86VidModeQueryVersion,(Display *a,int *b,int *c),(a,b,c),return)
icculus@5981
   326
SDL_X11_SYM(Bool,XF86VidModeSwitchToMode,(Display *a,int b,XF86VidModeModeInfo *c),(a,b,c),return)
icculus@6467
   327
SDL_X11_SYM(Bool,XF86VidModeLockModeSwitch,(Display *a,int b,int c),(a,b,c),return)
slouken@5408
   328
#endif
slouken@5408
   329
icculus@10079
   330
#undef SDL_X11_MODULE
icculus@10079
   331
#undef SDL_X11_SYM
icculus@10079
   332
slouken@1952
   333
/* *INDENT-ON* */
slouken@1952
   334
slouken@1950
   335
/* vi: set ts=4 sw=4 expandtab: */