qwindowdefs.h
上传用户:detong
上传日期:2022-06-22
资源大小:20675k
文件大小:5k
源码类别:

系统编程

开发平台:

Unix_Linux

  1. /****************************************************************************
  2. **
  3. ** Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies).
  4. ** Contact: Qt Software Information (qt-info@nokia.com)
  5. **
  6. ** This file is part of the QtGui module of the Qt Toolkit.
  7. **
  8. ** Commercial Usage
  9. ** Licensees holding valid Qt Commercial licenses may use this file in
  10. ** accordance with the Qt Commercial License Agreement provided with the
  11. ** Software or, alternatively, in accordance with the terms contained in
  12. ** a written agreement between you and Nokia.
  13. **
  14. **
  15. ** GNU General Public License Usage
  16. ** Alternatively, this file may be used under the terms of the GNU
  17. ** General Public License versions 2.0 or 3.0 as published by the Free
  18. ** Software Foundation and appearing in the file LICENSE.GPL included in
  19. ** the packaging of this file.  Please review the following information
  20. ** to ensure GNU General Public Licensing requirements will be met:
  21. ** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
  22. ** http://www.gnu.org/copyleft/gpl.html.  In addition, as a special
  23. ** exception, Nokia gives you certain additional rights. These rights
  24. ** are described in the Nokia Qt GPL Exception version 1.3, included in
  25. ** the file GPL_EXCEPTION.txt in this package.
  26. **
  27. ** Qt for Windows(R) Licensees
  28. ** As a special exception, Nokia, as the sole copyright holder for Qt
  29. ** Designer, grants users of the Qt/Eclipse Integration plug-in the
  30. ** right for the Qt/Eclipse Integration to link to functionality
  31. ** provided by Qt Designer and its related libraries.
  32. **
  33. ** If you are unsure which license is appropriate for your use, please
  34. ** contact the sales department at qt-sales@nokia.com.
  35. **
  36. ****************************************************************************/
  37. #ifndef QWINDOWDEFS_H
  38. #define QWINDOWDEFS_H
  39. #include <QtCore/qobjectdefs.h>
  40. #include <QtCore/qnamespace.h>
  41. QT_BEGIN_HEADER
  42. QT_BEGIN_NAMESPACE
  43. QT_MODULE(Gui)
  44. // Class forward definitions
  45. class QPaintDevice;
  46. class QWidget;
  47. class QDialog;
  48. class QColor;
  49. class QPalette;
  50. #ifdef QT3_SUPPORT
  51. class QColorGroup;
  52. #endif
  53. class QCursor;
  54. class QPoint;
  55. class QSize;
  56. class QRect;
  57. class QPolygon;
  58. class QPainter;
  59. class QRegion;
  60. class QFont;
  61. class QFontMetrics;
  62. class QFontInfo;
  63. class QPen;
  64. class QBrush;
  65. class QMatrix;
  66. class QPixmap;
  67. class QBitmap;
  68. class QMovie;
  69. class QImage;
  70. class QPicture;
  71. class QPrinter;
  72. class QTimer;
  73. class QTime;
  74. class QClipboard;
  75. class QString;
  76. class QByteArray;
  77. class QApplication;
  78. template<typename T> class QList;
  79. typedef QList<QWidget *> QWidgetList;
  80. QT_END_NAMESPACE
  81. QT_END_HEADER
  82. // Window system dependent definitions
  83. #if defined(Q_WS_MAC) && !defined(Q_WS_QWS)
  84. #if (MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_2)
  85. typedef struct OpaqueEventLoopTimerRef* EventLoopTimerRef;
  86. typedef struct OpaqueMenuHandle *MenuRef;
  87. #else
  88. typedef struct __EventLoopTimer *EventLoopTimerRef;
  89. typedef struct OpaqueMenuRef *MenuRef;
  90. #endif
  91. typedef char **MenuBarHandle;
  92. typedef struct OpaqueDragRef *DragRef;
  93. typedef struct OpaqueControlRef* ControlRef;
  94. typedef ControlRef HIViewRef;
  95. typedef struct CGImage *CGImageRef;
  96. typedef struct CGContext *CGContextRef;
  97. typedef struct OpaqueIconRef *IconRef;
  98. typedef struct OpaqueWindowGroupRef *WindowGroupRef;
  99. typedef struct OpaqueGrafPtr *CGrafPtr;
  100. typedef struct OpaquePMPrintSession *PMPrintSession;
  101. typedef struct OpaquePMPrintSettings *PMPrintSettings;
  102. typedef struct OpaquePMPageFormat *PMPageFormat;
  103. typedef struct OpaqueEventHandlerRef *EventHandlerRef;
  104. typedef struct OpaqueEventHandlerCallRef *EventHandlerCallRef;
  105. typedef struct OpaqueEventRef *EventRef;
  106. #ifdef Q_WS_MAC32
  107. typedef long int OSStatus;
  108. typedef int WId;
  109. #else
  110. typedef int OSStatus;
  111. typedef long WId;
  112. #endif
  113. typedef struct OpaqueScrapRef *ScrapRef;
  114. typedef struct OpaqueRgnHandle *RgnHandle;
  115. typedef struct OpaqueWindowPtr *WindowPtr;
  116. typedef WindowPtr WindowRef;
  117. typedef struct OpaqueGrafPtr *GWorldPtr;
  118. typedef GWorldPtr GrafPtr;
  119. typedef struct GDevice **GDHandle;
  120. typedef void * MSG;
  121. typedef struct AEDesc AppleEvent;
  122. #endif // Q_WS_MAC
  123. #if defined(Q_WS_WIN)
  124. #include <QtGui/qwindowdefs_win.h>
  125. #endif // Q_WS_WIN
  126. #if defined(Q_WS_X11)
  127. typedef struct _XDisplay Display;
  128. typedef union  _XEvent XEvent;
  129. typedef struct _XGC *GC;
  130. typedef struct _XRegion *Region;
  131. typedef unsigned long  WId;
  132. #endif // Q_WS_X11
  133. #if defined(Q_WS_QWS)
  134. typedef unsigned long  WId;
  135. QT_BEGIN_HEADER
  136. QT_BEGIN_NAMESPACE
  137. struct QWSEvent;
  138. QT_END_NAMESPACE
  139. QT_END_HEADER
  140. #endif // Q_WS_QWS
  141. QT_BEGIN_HEADER
  142. QT_BEGIN_NAMESPACE
  143. template<class K, class V> class QHash;
  144. typedef QHash<WId, QWidget *> QWidgetMapper;
  145. template<class V> class QSet;
  146. typedef QSet<QWidget *> QWidgetSet;
  147. QT_END_NAMESPACE
  148. QT_END_HEADER
  149. #if defined(QT_NEEDS_QMAIN)
  150. #define main qMain
  151. #endif
  152. // Global platform-independent types and functions
  153. #endif // QWINDOWDEFS_H