56 #include "QtGui/qwindowdefs.h" 57 #include "QtCore/qhash.h" 58 #include "QtCore/qlist.h" 59 #include "QtCore/qvariant.h" 64 #if defined(_XLIB_H_) // crude hack, but... 65 #error "cannot include <X11/Xlib.h> before this file" 67 #define XRegisterIMInstantiateCallback qt_XRegisterIMInstantiateCallback 68 #define XUnregisterIMInstantiateCallback qt_XUnregisterIMInstantiateCallback 69 #define XSetIMValues qt_XSetIMValues 71 #undef XRegisterIMInstantiateCallback 72 #undef XUnregisterIMInstantiateCallback 75 #include <X11/Xutil.h> 90 #endif // Q_OS_VXWORKS 91 #include <X11/Xatom.h> 95 # define XShapeCombineRegion(a,b,c,d,e,f,g) 96 # define XShapeCombineMask(a,b,c,d,e,f,g) 98 # include <X11/extensions/shape.h> 102 #if !defined (QT_NO_TABLET) 103 # include <X11/extensions/XInput.h> 104 #if defined (Q_OS_IRIX) 105 # include <X11/extensions/SGIMisc.h> 108 #endif // QT_NO_TABLET 112 #ifndef QT_NO_XINERAMA 113 # if 0 // ### Xsun, but how to detect it? 122 extern "C" Bool XPanoramiXQueryExtension(
127 extern "C" Status XPanoramiXQueryVersion(
132 extern "C" Status XPanoramiXGetState(
137 extern "C" Status XPanoramiXGetScreenCount(
142 extern "C" Status XPanoramiXGetScreenSize(
151 # include <X11/extensions/Xinerama.h> 154 #endif // QT_NO_XINERAMA 158 # include <X11/extensions/Xrandr.h> 159 #endif // QT_NO_XRANDR 162 #ifndef QT_NO_XRENDER 163 # include <X11/extensions/Xrender.h> 164 #endif // QT_NO_XRENDER 168 # include "X11/extensions/sync.h" 174 # include <X11/XKBlib.h> 178 #if !defined(XlibSpecificationRelease) 189 #elif defined(Q_OS_OSF) && (XlibSpecificationRelease < 6) 192 #elif defined(Q_OS_AIX) 195 #elif defined(QT_NO_DEBUG) && defined(Q_OS_IRIX) 199 #elif defined(Q_OS_HPUX) && defined(__LP64__) 202 #elif defined(Q_OS_SCO) 214 typedef XRectangle *(*PtrXFixesFetchRegion)(
Display *dpy,
XID region,
int *nrectanglesRet);
215 #endif // QT_NO_XFIXES 217 #ifndef QT_NO_XCURSOR 218 #include <X11/Xcursor/Xcursor.h> 220 #endif // QT_NO_XCURSOR 222 #ifndef QT_NO_XINERAMA 225 typedef XineramaScreenInfo *(*PtrXineramaQueryScreens)(
Display *dpy,
int *number);
226 #endif // QT_NO_XINERAMA 233 #endif // QT_NO_XRANDR 237 typedef XDeviceInfo* (*PtrXListInputDevices)(
Display *,
int *);
241 #endif // QT_NO_XINPUT 251 #if !defined(QT_NO_XIM) && (XlibSpecificationRelease >= 6) && \ 252 !defined(Q_OS_SOLARIS) 253 #define USE_X11R6_XIM 262 struct _XrmHashBucketRec*,
271 struct _XrmHashBucketRec*,
282 #ifndef QT_NO_FONTCONFIG 283 #include <fontconfig/fontconfig.h> 289 #define XNResetState "resetState" 291 #ifndef XIMPreserveState 292 #define XIMPreserveState (1L<<1) 298 # include <X11/Xlocale.h> 303 # include <X11/extensions/XShm.h> 304 #endif // QT_NO_MITSHM 356 bool clipboardWaitForEvent(
Window win,
int type,
XEvent *
event,
int timeout,
bool checkManager =
false);
359 QByteArray clipboardReadIncrementalProperty(
Window win,
Atom property,
int nbytes,
bool nullterm);
362 bool dndEnable(
QWidget* w,
bool on);
363 static void xdndSetup();
370 void xdndHandleSelectionRequest(
const XSelectionRequestEvent *);
371 static bool xdndHandleBadwindow();
373 Atom xdndStringToAtom(
const char *);
376 Atom xdndMimeStringToAtom(
const QString &mimeType);
387 void motifdndEnable(
QWidget *,
bool);
388 QVariant motifdndObtainData(
const char *format);
433 #endif // QT_NO_XINPUT 506 #ifndef QT_NO_XRENDER 507 enum { solid_fill_count = 16 };
512 } solid_fills[solid_fill_count];
513 enum { pattern_fill_count = 16 };
521 } pattern_fills[pattern_fill_count];
523 XRenderColor preMultiply(
const QColor &
c);
700 bool isSupportedByWM(
Atom atom);
704 #ifndef QT_NO_XCURSOR 706 #endif // QT_NO_XCURSOR 708 #ifndef QT_NO_XINERAMA 712 #endif // QT_NO_XINERAMA 719 #endif // QT_NO_XRANDR 723 #define ATOM(x) qt_x11Data->atoms[QX11Data::x] 724 #define X11 qt_x11Data 743 #undef RevertToParent 754 #ifndef QT_NO_XRENDER
The QVariant class acts like a union for the most common Qt data types.
PtrXCloseDevice ptrXCloseDevice
The QColor class provides colors based on RGB, HSV or CMYK values.
Bool(* PtrXineramaQueryExtension)(Display *dpy, int *event_base, int *error_base)
Window * net_virtual_root_list
#define QT_END_NAMESPACE
This macro expands to.
DesktopEnvironment desktopEnvironment
The QDrag class provides support for MIME-based drag and drop data transfer.
Status(* PtrXFixesQueryVersion)(Display *, int *, int *)
Q_GUI_EXPORT QX11Data * qt_x11Data
XDeviceInfo *(* PtrXListInputDevices)(Display *, int *)
void(* PtrXFixesDestroyRegion)(Display *dpy, XID region)
The QByteArray class provides an array of bytes.
int(* PtrXCloseDevice)(Display *, XDevice *)
QHash< int, int > bppForDepth
PtrXFixesSetCursorName ptrXFixesSetCursorName
PtrXRRSelectInput ptrXRRSelectInput
PtrXListInputDevices ptrXListInputDevices
int(* PtrXRRUpdateConfiguration)(XEvent *)
long ASN1_INTEGER_get ASN1_INTEGER * a
Atom * net_supported_list
The QString class provides a Unicode character string.
PtrXineramaQueryExtension ptrXineramaQueryExtension
bool compositingManagerRunning
QWidget * embedding_widget
#define QT_BEGIN_NAMESPACE
This macro expands to.
void(* PtrXFreeDeviceList)(XDeviceInfo *)
Bool(* PtrXFixesQueryExtension)(Display *, int *, int *)
static void ignoreBadwindow()
The QStringList class provides a list of strings.
PtrXOpenDevice ptrXOpenDevice
QList< QWidget * > deferred_map
static const char * data(const QByteArray &arr)
PtrXRRRootToScreen ptrXRRRootToScreen
Type
This enum type defines the types of variable that a QVariant can contain.
PtrXineramaIsActive ptrXineramaIsActive
XineramaScreenInfo *(* PtrXineramaQueryScreens)(Display *dpy, int *number)
QList< QXdndDropTransaction > dndDropTransactions
The QMimeData class provides a container for data that records information about its MIME type...
PtrXFixesQueryVersion ptrXFixesQueryVersion
int(* PtrXSelectExtensionEvent)(Display *, Window, XEventClass *, int)
PtrXRRQueryExtension ptrXRRQueryExtension
XID(* PtrXFixesCreateRegionFromWindow)(Display *dpy, Window window, int kind)
Bool(* PtrXineramaIsActive)(Display *dpy)
PtrXFixesSelectSelectionInput ptrXFixesSelectSelectionInput
int(* PtrXRRRootToScreen)(Display *, Window)
PtrXFixesQueryExtension ptrXFixesQueryExtension
void(* PtrXFixesSelectSelectionInput)(Display *dpy, Window win, Atom selection, unsigned long eventMask)
PtrXineramaQueryScreens ptrXineramaQueryScreens
#define XUnregisterIMInstantiateCallback
void(* PtrXFixesSetCursorName)(Display *dpy, Cursor cursor, const char *name)
Bool(* PtrXRRQueryExtension)(Display *, int *, int *)
PtrXSelectExtensionEvent ptrXSelectExtensionEvent
#define XRegisterIMInstantiateCallback
PtrXFreeDeviceList ptrXFreeDeviceList
void(* PtrXRRSelectInput)(Display *, Window, int)
Q_DECLARE_TYPEINFO(XPoint, Q_PRIMITIVE_TYPE)
PtrXcursorLibraryLoadCursor ptrXcursorLibraryLoadCursor
Cursor(* PtrXcursorLibraryLoadCursor)(Display *, const char *)
QList< ScrollInProgress > sip_list
The QList class is a template class that provides lists.
PtrXRRUpdateConfiguration ptrXRRUpdateConfiguration
XDevice *(* PtrXOpenDevice)(Display *, XID)