63 #include "scrnintstr.h"
65 #include "picturestr.h"
69 #include <GL/glxint.h>
186 __GLXvisualConfig *glxVisuals;
191 __GLXFBConfig *fbconfigs;
287 extern Bool dmxGLXSwapGroupSupport;
292 extern Bool dmxGLXSyncSwap;
297 extern Bool dmxGLXFinishSwap;
325 #define DMX_WRAP(_entry, _newfunc, _saved, _actual) \
327 (_saved)->_entry = (_actual)->_entry; \
328 (_actual)->_entry = (_newfunc); \
332 #define DMX_UNWRAP(_entry, _saved, _actual) \
334 (_actual)->_entry = (_saved)->_entry; \
340 #define MAXSCREEN_MAKECONSTSTR1(x) #x
341 #define MAXSCREEN_MAKECONSTSTR2(x) MAXSCREEN_MAKECONSTSTR1(x)
343 #define MAXSCREEN_FAILED_TXT "Failed at [" \
344 MAXSCREEN_MAKECONSTSTR2(__LINE__) ":" __FILE__ "] to allocate object: "
346 #define _MAXSCREENSALLOCF(o,size,fatal) \
349 o = calloc((size), sizeof(*(o))); \
350 if (!o && fatal) FatalError(MAXSCREEN_FAILED_TXT #o); \
353 #define _MAXSCREENSALLOCR(o,size,retval) \
356 o = calloc((size), sizeof(*(o))); \
357 if (!o) return retval; \
361 #define MAXSCREENSFREE(o) \
367 #define MAXSCREENSALLOC(o) _MAXSCREENSALLOCF(o,MAXSCREENS, 0)
368 #define MAXSCREENSALLOC_FATAL(o) _MAXSCREENSALLOCF(o,MAXSCREENS, 1)
369 #define MAXSCREENSALLOC_RETURN(o,r) _MAXSCREENSALLOCR(o,MAXSCREENS, (r))
370 #define MAXSCREENSALLOCPLUSONE(o) _MAXSCREENSALLOCF(o,MAXSCREENS+1,0)
371 #define MAXSCREENSALLOCPLUSONE_FATAL(o) _MAXSCREENSALLOCF(o,MAXSCREENS+1,1)
372 #define MAXSCREENSCALLOC(o,m) _MAXSCREENSALLOCF(o,MAXSCREENS*(m),0)
373 #define MAXSCREENSCALLOC_FATAL(o,m) _MAXSCREENSALLOCF(o,MAXSCREENS*(m),1)
378 #define dmxGCPrivateKey (&dmxGCPrivateKeyRec)
380 extern DevPrivateKeyRec dmxWinPrivateKeyRec;
382 #define dmxWinPrivateKey (&dmxWinPrivateKeyRec)
384 extern DevPrivateKeyRec dmxPixPrivateKeyRec;
386 #define dmxPixPrivateKey (&dmxPixPrivateKeyRec)
388 extern int dmxFontPrivateIndex;
390 extern DevPrivateKeyRec dmxScreenPrivateKeyRec;
392 #define dmxScreenPrivateKey (&dmxScreenPrivateKeyRec)
394 extern DevPrivateKeyRec dmxColormapPrivateKeyRec;
396 #define dmxColormapPrivateKey (&dmxColormapPrivateKeyRec)
398 extern DevPrivateKeyRec dmxPictPrivateKeyRec;
400 #define dmxPictPrivateKey (&dmxPictPrivateKeyRec)
402 extern DevPrivateKeyRec dmxGlyphSetPrivateKeyRec;
404 #define dmxGlyphSetPrivateKey (&dmxGlyphSetPrivateKeyRec)
406 void DMXExtensionInit(void);
int scrnY
Definition: dmx.h:125
Bool dmxSubdividePrimitives
Definition: dmxinit.c:92
int dpmsOff
Definition: dmx.h:178
CreateColormapProcPtr CreateColormap
Definition: dmx.h:227
GetSpansProcPtr GetSpans
Definition: dmx.h:218
int index
Definition: dmx.h:93
UnrealizeFontProcPtr UnrealizeFont
Definition: dmx.h:225
ResizeWindowProcPtr ResizeWindow
Definition: dmx.h:212
int whereRefScreen
Definition: dmx.h:171
int rootYOrigin
Definition: dmx.h:146
int dpmsStandby
Definition: dmx.h:176
ReparentWindowProcPtr ReparentWindow
Definition: dmx.h:213
DMXStatInfo * stat
Definition: dmx.h:180
struct _DMXScreenInfo * next
Definition: dmx.h:134
ChangeBorderWidthProcPtr ChangeBorderWidth
Definition: dmx.h:215
PositionWindowProcPtr PositionWindow
Definition: dmx.h:204
int rootY
Definition: dmx.h:141
RealizeFontProcPtr RealizeFont
Definition: dmx.h:224
CreateGCProcPtr CreateGC
Definition: dmx.h:200
ChangeWindowAttributesProcPtr ChangeWindowAttributes
Definition: dmx.h:205
CreatePixmapProcPtr CreatePixmap
Definition: dmx.h:220
InitIndexedProcPtr InitIndexed
Definition: dmx.h:246
static Bool dmxGLXProxy
Definition: dmxinit.c:101
XlibGC shadowGC
Definition: dmx.h:151
CloseIndexedProcPtr CloseIndexed
Definition: dmx.h:247
struct _DMXScreenInfo * over
Definition: dmx.h:135
PositionType
Definition: dmx.h:72
int beNumVisuals
Definition: dmx.h:111
XErrorEvent dmxLastErrorEvent
Definition: dmxinit.c:85
CreatePictureProcPtr CreatePicture
Definition: dmx.h:234
CursorPtr cursor
Definition: dmx.h:164
int dpmsEnabled
Definition: dmx.h:175
Pixel beBlackPixel
Definition: dmx.h:118
int beDepth
Definition: dmx.h:100
ChangePictureClipProcPtr ChangePictureClip
Definition: dmx.h:236
int whereX
Definition: dmx.h:169
int beBPP
Definition: dmx.h:101
int dmxNumScreens
Definition: dmxinit.c:79
int scrnYSign
Definition: dmx.h:129
RealizeWindowProcPtr RealizeWindow
Definition: dmx.h:206
GlyphsProcPtr Glyphs
Definition: dmx.h:243
int beXDPI
Definition: dmx.h:102
Window scrnWin
Definition: dmx.h:123
int scrnX
Definition: dmx.h:124
int beNumDefColormaps
Definition: dmx.h:115
struct _DMXScreenInfo DMXScreenInfo
SetShapeProcPtr SetShape
Definition: dmx.h:232
Bool dmxAddRemoveScreens
Definition: dmxinit.c:116
Bool dmxOffScreenOpt
Definition: dmxinit.c:90
GetImageProcPtr GetImage
Definition: dmx.h:217
int beWidth
Definition: dmx.h:98
int scrnXSign
Definition: dmx.h:128
ChangePictureProcPtr ChangePicture
Definition: dmx.h:239
CloseScreenProcPtr CloseScreen
Definition: dmx.h:197
Bool needsSync
Definition: dmx.h:181
CompositeProcPtr Composite
Definition: dmx.h:242
Bool WMRunningOnBE
Definition: dmx.h:158
SaveScreenProcPtr SaveScreen
Definition: dmx.h:198
DestroyColormapProcPtr DestroyColormap
Definition: dmx.h:228
InstallColormapProcPtr InstallColormap
Definition: dmx.h:229
int cursorVisible
Definition: dmx.h:165
DestroyWindowProcPtr DestroyWindow
Definition: dmx.h:203
DevPrivateKeyRec dmxGCPrivateKeyRec
Definition: dmxscrinit.c:67
int beYDPI
Definition: dmx.h:103
int dmxDepth
Definition: dmxinit.c:98
int scrnWidth
Definition: dmx.h:126
int whereY
Definition: dmx.h:170
int rootHeight
Definition: dmx.h:143
WindowExposuresProcPtr WindowExposures
Definition: dmx.h:209
Pixel beWhitePixel
Definition: dmx.h:119
Display * beDisplay
Definition: dmx.h:97
XPixmapFormatValues * bePixmapFormats
Definition: dmx.h:109
int rootXOrigin
Definition: dmx.h:145
TrianglesProcPtr Triangles
Definition: dmx.h:251
Colormap * beDefColormaps
Definition: dmx.h:116
BitmapToRegionProcPtr BitmapToRegion
Definition: dmx.h:222
int dpmsCapable
Definition: dmx.h:174
CreateWindowProcPtr CreateWindow
Definition: dmx.h:202
Bool dmxErrorOccurred
Definition: dmxinit.c:86
StoreColorsProcPtr StoreColors
Definition: dmx.h:230
Window rootWin
Definition: dmx.h:139
DestroyPictureClipProcPtr DestroyPictureClip
Definition: dmx.h:237
CopyWindowProcPtr CopyWindow
Definition: dmx.h:210
void * shadow
Definition: dmx.h:150
CompositeRectsProcPtr CompositeRects
Definition: dmx.h:244
int rootX
Definition: dmx.h:140
int rootWidth
Definition: dmx.h:142
DestroyPictureProcPtr DestroyPicture
Definition: dmx.h:235
Bool dmxIgnoreBadFontPaths
Definition: dmxinit.c:114
XVisualInfo * beVisuals
Definition: dmx.h:112
Bool dmxLazyWindowCreation
Definition: dmxinit.c:94
int beNumPixmapFormats
Definition: dmx.h:108
int beDefVisualIndex
Definition: dmx.h:113
int cursorNotShared
Definition: dmx.h:166
UpdateIndexedProcPtr UpdateIndexed
Definition: dmx.h:248
int beNumDepths
Definition: dmx.h:105
Cursor curCursor
Definition: dmx.h:161
int savedTimeout
Definition: dmx.h:173
Drawable scrnDefDrawables[MAXFORMATS]
Definition: dmx.h:132
const char * name
Definition: dmx.h:92
TrapezoidsProcPtr Trapezoids
Definition: dmx.h:250
int beHeight
Definition: dmx.h:99
RestackWindowProcPtr RestackWindow
Definition: dmx.h:208
ValidatePictureProcPtr ValidatePicture
Definition: dmx.h:240
Bool dmxUseXKB
Definition: dmxinit.c:96
int shared
Definition: dmx.h:156
char * dmxFontPath
Definition: dmxinit.c:88
DestroyPixmapProcPtr DestroyPixmap
Definition: dmx.h:221
UnrealizeWindowProcPtr UnrealizeWindow
Definition: dmx.h:207
int scrnHeight
Definition: dmx.h:127
int dpmsSuspend
Definition: dmx.h:177
PositionType where
Definition: dmx.h:168
XImage * shadowFBImage
Definition: dmx.h:152
DMXScreenInfo * dmxScreens
Definition: dmxinit.c:80
Cursor noCursor
Definition: dmx.h:160
int * beDepths
Definition: dmx.h:106