1 /****************************************************************************
3 ** Copyright (C) 2015 The Qt Company Ltd.
4 ** Copyright (C) 2016 Ivailo Monev
6 ** This file is part of the tools applications of the Katie Toolkit.
8 ** $QT_BEGIN_LICENSE:LGPL$
10 ** GNU Lesser General Public License Usage
11 ** This file may be used under the terms of the GNU Lesser
12 ** General Public License version 2.1 as published by the Free Software
13 ** Foundation and appearing in the file LICENSE.LGPL included in the
14 ** packaging of this file. Please review the following information to
15 ** ensure the GNU Lesser General Public License version 2.1 requirements
16 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
20 ****************************************************************************/
22 #include "cppwriteincludes.h"
27 #include <QtCore/QDebug>
28 #include <QtCore/QFileInfo>
29 #include <QtCore/QTextStream>
35 #define DEBUG_WRITE_INCLUDES 0
36 #define WARN_HEADER_GENERATOR 0
40 // generated by genmap.py
41 static const struct ClassTblData {
42 const QLatin1String klass;
43 const QLatin1String header;
45 { QLatin1String("ActionProviderBase"), QLatin1String("QtDesigner/default_actionprovider.h") },
46 { QLatin1String("BlockSizeManager"), QLatin1String("QtCore/qtconcurrentiteratekernel.h") },
47 { QLatin1String("BuddyEditor"), QLatin1String("QtDesigner/buddyeditor.h") },
48 { QLatin1String("BuddyEditorPlugin"), QLatin1String("QtDesigner/buddyeditor_plugin.h") },
49 { QLatin1String("BuddyEditorTool"), QLatin1String("QtDesigner/buddyeditor_tool.h") },
50 { QLatin1String("ConverterState"), QLatin1String("QtCore/qtextcodec.h") },
51 { QLatin1String("Exception"), QLatin1String("QtCore/qtconcurrentexception.h") },
52 { QLatin1String("ExceptionStore"), QLatin1String("QtCore/qtconcurrentexception.h") },
53 { QLatin1String("FormEditor"), QLatin1String("QtDesigner/formeditor.h") },
54 { QLatin1String("FormWindow"), QLatin1String("QtDesigner/formwindow.h") },
55 { QLatin1String("FormWindowCursor"), QLatin1String("QtDesigner/formwindowcursor.h") },
56 { QLatin1String("FormWindowManager"), QLatin1String("QtDesigner/formwindowmanager.h") },
57 { QLatin1String("FormWindowWidgetStack"), QLatin1String("QtDesigner/formwindow_widgetstack.h") },
58 { QLatin1String("IconCache"), QLatin1String("QtDesigner/iconcache.h") },
59 { QLatin1String("NewDynamicPropertyDialog"), QLatin1String("QtDesigner/newdynamicpropertydialog.h") },
60 { QLatin1String("ObjectInspector"), QLatin1String("QtDesigner/objectinspector.h") },
61 { QLatin1String("PaletteEditorButton"), QLatin1String("QtDesigner/paletteeditorbutton.h") },
62 { QLatin1String("PropertyEditor"), QLatin1String("QtDesigner/propertyeditor.h") },
63 { QLatin1String("QAbstractAnimation"), QLatin1String("QtGui/qabstractanimation.h") },
64 { QLatin1String("QAbstractButton"), QLatin1String("QtGui/qabstractbutton.h") },
65 { QLatin1String("QAbstractEventDispatcher"), QLatin1String("QtCore/qabstracteventdispatcher.h") },
66 { QLatin1String("QAbstractFileEngine"), QLatin1String("QtCore/qabstractfileengine.h") },
67 { QLatin1String("QAbstractFileEngineIterator"), QLatin1String("QtCore/qabstractfileengine.h") },
68 { QLatin1String("QAbstractFormBuilder"), QLatin1String("QtUiTools/abstractformbuilder.h") },
69 { QLatin1String("QAbstractGraphicsShapeItem"), QLatin1String("QtGui/qgraphicsitem.h") },
70 { QLatin1String("QAbstractItemDelegate"), QLatin1String("QtGui/qabstractitemdelegate.h") },
71 { QLatin1String("QAbstractItemModel"), QLatin1String("QtCore/qabstractitemmodel.h") },
72 { QLatin1String("QAbstractItemView"), QLatin1String("QtGui/qabstractitemview.h") },
73 { QLatin1String("QAbstractListModel"), QLatin1String("QtCore/qabstractitemmodel.h") },
74 { QLatin1String("QAbstractNetworkCache"), QLatin1String("QtNetwork/qabstractnetworkcache.h") },
75 { QLatin1String("QAbstractPageSetupDialog"), QLatin1String("QtGui/qabstractpagesetupdialog.h") },
76 { QLatin1String("QAbstractPrintDialog"), QLatin1String("QtGui/qabstractprintdialog.h") },
77 { QLatin1String("QAbstractProxyModel"), QLatin1String("QtGui/qabstractproxymodel.h") },
78 { QLatin1String("QAbstractScrollArea"), QLatin1String("QtGui/qabstractscrollarea.h") },
79 { QLatin1String("QAbstractSlider"), QLatin1String("QtGui/qabstractslider.h") },
80 { QLatin1String("QAbstractSocket"), QLatin1String("QtNetwork/qabstractsocket.h") },
81 { QLatin1String("QAbstractSpinBox"), QLatin1String("QtGui/qabstractspinbox.h") },
82 { QLatin1String("QAbstractTableModel"), QLatin1String("QtCore/qabstractitemmodel.h") },
83 { QLatin1String("QAbstractTextDocumentLayout"), QLatin1String("QtGui/qabstracttextdocumentlayout.h") },
84 { QLatin1String("QAbstractUndoItem"), QLatin1String("QtGui/qtextdocument.h") },
85 { QLatin1String("QAccessible"), QLatin1String("QtGui/qaccessible.h") },
86 { QLatin1String("QAccessible2Interface"), QLatin1String("QtGui/qaccessible2.h") },
87 { QLatin1String("QAccessibleActionInterface"), QLatin1String("QtGui/qaccessible2.h") },
88 { QLatin1String("QAccessibleApplication"), QLatin1String("QtGui/qaccessibleobject.h") },
89 { QLatin1String("QAccessibleBridgeFactoryInterface"), QLatin1String("QtGui/qaccessiblebridge.h") },
90 { QLatin1String("QAccessibleBridgePlugin"), QLatin1String("QtGui/qaccessiblebridge.h") },
91 { QLatin1String("QAccessibleEditableTextInterface"), QLatin1String("QtGui/qaccessible2.h") },
92 { QLatin1String("QAccessibleEvent"), QLatin1String("QtGui/qaccessible.h") },
93 { QLatin1String("QAccessibleFactoryInterface"), QLatin1String("QtGui/qaccessibleplugin.h") },
94 { QLatin1String("QAccessibleImageInterface"), QLatin1String("QtGui/qaccessible2.h") },
95 { QLatin1String("QAccessibleInterface"), QLatin1String("QtGui/qaccessible.h") },
96 { QLatin1String("QAccessibleObject"), QLatin1String("QtGui/qaccessibleobject.h") },
97 { QLatin1String("QAccessiblePlugin"), QLatin1String("QtGui/qaccessibleplugin.h") },
98 { QLatin1String("QAccessibleSimpleEditableTextInterface"), QLatin1String("QtGui/qaccessible2.h") },
99 { QLatin1String("QAccessibleTable2CellInterface"), QLatin1String("QtGui/qaccessible2.h") },
100 { QLatin1String("QAccessibleTable2Interface"), QLatin1String("QtGui/qaccessible2.h") },
101 { QLatin1String("QAccessibleTableInterface"), QLatin1String("QtGui/qaccessible2.h") },
102 { QLatin1String("QAccessibleTextInterface"), QLatin1String("QtGui/qaccessible2.h") },
103 { QLatin1String("QAccessibleValueInterface"), QLatin1String("QtGui/qaccessible2.h") },
104 { QLatin1String("QAccessibleWidget"), QLatin1String("QtGui/qaccessiblewidget.h") },
105 { QLatin1String("QAction"), QLatin1String("QtGui/qaction.h") },
106 { QLatin1String("QActionEvent"), QLatin1String("QtGui/qevent.h") },
107 { QLatin1String("QActionGroup"), QLatin1String("QtGui/qactiongroup.h") },
108 { QLatin1String("QAnimationDriver"), QLatin1String("QtGui/qabstractanimation.h") },
109 { QLatin1String("QAnimationGroup"), QLatin1String("QtGui/qanimationgroup.h") },
110 { QLatin1String("QApplication"), QLatin1String("QtGui/qapplication.h") },
111 { QLatin1String("QAtomicInt"), QLatin1String("QtCore/qatomic.h") },
112 { QLatin1String("QAtomicPointer"), QLatin1String("QtCore/qatomic.h") },
113 { QLatin1String("QAuthenticator"), QLatin1String("QtNetwork/qauthenticator.h") },
114 { QLatin1String("QBasicTimer"), QLatin1String("QtCore/qbasictimer.h") },
115 { QLatin1String("QBenchmarkIterationController"), QLatin1String("QtTest/qbenchmark.h") },
116 { QLatin1String("QBitArray"), QLatin1String("QtCore/qbitarray.h") },
117 { QLatin1String("QBitRef"), QLatin1String("QtCore/qbitarray.h") },
118 { QLatin1String("QBitmap"), QLatin1String("QtGui/qbitmap.h") },
119 { QLatin1String("QBoxLayout"), QLatin1String("QtGui/qboxlayout.h") },
120 { QLatin1String("QBrush"), QLatin1String("QtGui/qbrush.h") },
121 { QLatin1String("QBuffer"), QLatin1String("QtCore/qbuffer.h") },
122 { QLatin1String("QButtonGroup"), QLatin1String("QtGui/qbuttongroup.h") },
123 { QLatin1String("QByteArray"), QLatin1String("QtCore/qbytearray.h") },
124 { QLatin1String("QByteArrayMatcher"), QLatin1String("QtCore/qbytearraymatcher.h") },
125 { QLatin1String("QByteRef"), QLatin1String("QtCore/qbytearray.h") },
126 { QLatin1String("QCache"), QLatin1String("QtCore/qcache.h") },
127 { QLatin1String("QCalendarWidget"), QLatin1String("QtGui/qcalendarwidget.h") },
128 { QLatin1String("QChar"), QLatin1String("QtCore/qchar.h") },
129 { QLatin1String("QCharRef"), QLatin1String("QtCore/qstring.h") },
130 { QLatin1String("QCheckBox"), QLatin1String("QtGui/qcheckbox.h") },
131 { QLatin1String("QChildEvent"), QLatin1String("QtCore/qcoreevent.h") },
132 { QLatin1String("QCleanlooksStyle"), QLatin1String("QtGui/qcleanlooksstyle.h") },
133 { QLatin1String("QClipboard"), QLatin1String("QtGui/qclipboard.h") },
134 { QLatin1String("QCloseEvent"), QLatin1String("QtGui/qevent.h") },
135 { QLatin1String("QColor"), QLatin1String("QtGui/qcolor.h") },
136 { QLatin1String("QColorDialog"), QLatin1String("QtGui/qcolordialog.h") },
137 { QLatin1String("QColormap"), QLatin1String("QtGui/qcolormap.h") },
138 { QLatin1String("QColumnView"), QLatin1String("QtGui/qcolumnview.h") },
139 { QLatin1String("QComboBox"), QLatin1String("QtGui/qcombobox.h") },
140 { QLatin1String("QCommandLinkButton"), QLatin1String("QtGui/qcommandlinkbutton.h") },
141 { QLatin1String("QCommonStyle"), QLatin1String("QtGui/qcommonstyle.h") },
142 { QLatin1String("QCompleter"), QLatin1String("QtGui/qcompleter.h") },
143 { QLatin1String("QContextMenuEvent"), QLatin1String("QtGui/qevent.h") },
144 { QLatin1String("QContiguousCache"), QLatin1String("QtCore/qcontiguouscache.h") },
145 { QLatin1String("QContiguousCacheData"), QLatin1String("QtCore/qcontiguouscache.h") },
146 { QLatin1String("QCoreApplication"), QLatin1String("QtCore/qcoreapplication.h") },
147 { QLatin1String("QCryptographicHash"), QLatin1String("QtNetwork/qcryptographichash.h") },
148 { QLatin1String("QCursor"), QLatin1String("QtGui/qcursor.h") },
149 { QLatin1String("QDBusAbstractAdaptor"), QLatin1String("QtDBus/qdbusabstractadaptor.h") },
150 { QLatin1String("QDBusAbstractInterface"), QLatin1String("QtDBus/qdbusabstractinterface.h") },
151 { QLatin1String("QDBusAbstractInterfaceBase"), QLatin1String("QtDBus/qdbusabstractinterface.h") },
152 { QLatin1String("QDBusArgument"), QLatin1String("QtDBus/qdbusargument.h") },
153 { QLatin1String("QDBusConnection"), QLatin1String("QtDBus/qdbusconnection.h") },
154 { QLatin1String("QDBusConnectionInterface"), QLatin1String("QtDBus/qdbusconnectioninterface.h") },
155 { QLatin1String("QDBusContext"), QLatin1String("QtDBus/qdbuscontext.h") },
156 { QLatin1String("QDBusError"), QLatin1String("QtDBus/qdbuserror.h") },
157 { QLatin1String("QDBusInterface"), QLatin1String("QtDBus/qdbusinterface.h") },
158 { QLatin1String("QDBusMessage"), QLatin1String("QtDBus/qdbusmessage.h") },
159 { QLatin1String("QDBusMetaType"), QLatin1String("QtDBus/qdbusmetatype.h") },
160 { QLatin1String("QDBusObjectPath"), QLatin1String("QtDBus/qdbusextratypes.h") },
161 { QLatin1String("QDBusPendingCall"), QLatin1String("QtDBus/qdbuspendingcall.h") },
162 { QLatin1String("QDBusPendingCallWatcher"), QLatin1String("QtDBus/qdbuspendingcall.h") },
163 { QLatin1String("QDBusPendingReplyData"), QLatin1String("QtDBus/qdbuspendingreply.h") },
164 { QLatin1String("QDBusReply"), QLatin1String("QtDBus/qdbusreply.h") },
165 { QLatin1String("QDBusServer"), QLatin1String("QtDBus/qdbusserver.h") },
166 { QLatin1String("QDBusServiceWatcher"), QLatin1String("QtDBus/qdbusservicewatcher.h") },
167 { QLatin1String("QDBusSignature"), QLatin1String("QtDBus/qdbusextratypes.h") },
168 { QLatin1String("QDBusUnixFileDescriptor"), QLatin1String("QtDBus/qdbusunixfiledescriptor.h") },
169 { QLatin1String("QDBusVariant"), QLatin1String("QtDBus/qdbusextratypes.h") },
170 { QLatin1String("QDataStream"), QLatin1String("QtCore/qdatastream.h") },
171 { QLatin1String("QDataWidgetMapper"), QLatin1String("QtGui/qdatawidgetmapper.h") },
172 { QLatin1String("QDate"), QLatin1String("QtCore/qdatetime.h") },
173 { QLatin1String("QDateEdit"), QLatin1String("QtGui/qdatetimeedit.h") },
174 { QLatin1String("QDateTime"), QLatin1String("QtCore/qdatetime.h") },
175 { QLatin1String("QDateTimeEdit"), QLatin1String("QtGui/qdatetimeedit.h") },
176 { QLatin1String("QDebug"), QLatin1String("QtCore/qdebug.h") },
177 { QLatin1String("QDeclarativeComponent"), QLatin1String("QtDeclarative/qdeclarativecomponent.h") },
178 { QLatin1String("QDeclarativeContext"), QLatin1String("QtDeclarative/qdeclarativecontext.h") },
179 { QLatin1String("QDeclarativeEngine"), QLatin1String("QtDeclarative/qdeclarativeengine.h") },
180 { QLatin1String("QDeclarativeError"), QLatin1String("QtDeclarative/qdeclarativeerror.h") },
181 { QLatin1String("QDeclarativeExpression"), QLatin1String("QtDeclarative/qdeclarativeexpression.h") },
182 { QLatin1String("QDeclarativeExtensionInterface"), QLatin1String("QtDeclarative/qdeclarativeextensioninterface.h") },
183 { QLatin1String("QDeclarativeExtensionPlugin"), QLatin1String("QtDeclarative/qdeclarativeextensionplugin.h") },
184 { QLatin1String("QDeclarativeImageProvider"), QLatin1String("QtDeclarative/qdeclarativeimageprovider.h") },
185 { QLatin1String("QDeclarativeInfo"), QLatin1String("QtDeclarative/qdeclarativeinfo.h") },
186 { QLatin1String("QDeclarativeItem"), QLatin1String("QtDeclarative/qdeclarativeitem.h") },
187 { QLatin1String("QDeclarativeListReference"), QLatin1String("QtDeclarative/qdeclarativelist.h") },
188 { QLatin1String("QDeclarativeNetworkAccessManagerFactory"), QLatin1String("QtDeclarative/qdeclarativenetworkaccessmanagerfactory.h") },
189 { QLatin1String("QDeclarativeParserStatus"), QLatin1String("QtDeclarative/qdeclarativeparserstatus.h") },
190 { QLatin1String("QDeclarativeProperty"), QLatin1String("QtDeclarative/qdeclarativeproperty.h") },
191 { QLatin1String("QDeclarativePropertyMap"), QLatin1String("QtDeclarative/qdeclarativepropertymap.h") },
192 { QLatin1String("QDeclarativePropertyValueInterceptor"), QLatin1String("QtDeclarative/qdeclarativepropertyvalueinterceptor.h") },
193 { QLatin1String("QDeclarativePropertyValueSource"), QLatin1String("QtDeclarative/qdeclarativepropertyvaluesource.h") },
194 { QLatin1String("QDeclarativeScriptString"), QLatin1String("QtDeclarative/qdeclarativescriptstring.h") },
195 { QLatin1String("QDeclarativeView"), QLatin1String("QtDeclarative/qdeclarativeview.h") },
196 { QLatin1String("QDesignerActionEditorInterface"), QLatin1String("QtDesigner/abstractactioneditor.h") },
197 { QLatin1String("QDesignerComponents"), QLatin1String("QtDesigner/qdesigner_components.h") },
198 { QLatin1String("QDesignerDnDItemInterface"), QLatin1String("QtDesigner/abstractdnditem.h") },
199 { QLatin1String("QDesignerExtraInfoExtension"), QLatin1String("QtDesigner/extrainfo.h") },
200 { QLatin1String("QDesignerFormEditorInterface"), QLatin1String("QtDesigner/abstractformeditor.h") },
201 { QLatin1String("QDesignerFormEditorPluginInterface"), QLatin1String("QtDesigner/abstractformeditorplugin.h") },
202 { QLatin1String("QDesignerFormWindowCursorInterface"), QLatin1String("QtDesigner/abstractformwindowcursor.h") },
203 { QLatin1String("QDesignerFormWindowInterface"), QLatin1String("QtDesigner/abstractformwindow.h") },
204 { QLatin1String("QDesignerFormWindowManagerInterface"), QLatin1String("QtDesigner/abstractformwindowmanager.h") },
205 { QLatin1String("QDesignerFormWindowToolInterface"), QLatin1String("QtDesigner/abstractformwindowtool.h") },
206 { QLatin1String("QDesignerIconCacheInterface"), QLatin1String("QtDesigner/abstracticoncache.h") },
207 { QLatin1String("QDesignerIntegrationInterface"), QLatin1String("QtDesigner/abstractintegration.h") },
208 { QLatin1String("QDesignerMetaDataBaseInterface"), QLatin1String("QtDesigner/abstractmetadatabase.h") },
209 { QLatin1String("QDesignerObjectInspectorInterface"), QLatin1String("QtDesigner/abstractobjectinspector.h") },
210 { QLatin1String("QDesignerPromotionInterface"), QLatin1String("QtDesigner/abstractpromotioninterface.h") },
211 { QLatin1String("QDesignerPropertyEditorInterface"), QLatin1String("QtDesigner/abstractpropertyeditor.h") },
212 { QLatin1String("QDesignerResource"), QLatin1String("QtDesigner/qdesigner_resource.h") },
213 { QLatin1String("QDesignerResourceBrowserInterface"), QLatin1String("QtDesigner/abstractresourcebrowser.h") },
214 { QLatin1String("QDesignerWidgetBoxInterface"), QLatin1String("QtDesigner/abstractwidgetbox.h") },
215 { QLatin1String("QDesignerWidgetDataBaseInterface"), QLatin1String("QtDesigner/abstractwidgetdatabase.h") },
216 { QLatin1String("QDesignerWidgetFactoryInterface"), QLatin1String("QtDesigner/abstractwidgetfactory.h") },
217 { QLatin1String("QDesktopWidget"), QLatin1String("QtGui/qdesktopwidget.h") },
218 { QLatin1String("QDial"), QLatin1String("QtGui/qdial.h") },
219 { QLatin1String("QDialog"), QLatin1String("QtGui/qdialog.h") },
220 { QLatin1String("QDialogButtonBox"), QLatin1String("QtGui/qdialogbuttonbox.h") },
221 { QLatin1String("QDir"), QLatin1String("QtCore/qdir.h") },
222 { QLatin1String("QDirIterator"), QLatin1String("QtCore/qdiriterator.h") },
223 { QLatin1String("QDirModel"), QLatin1String("QtGui/qdirmodel.h") },
224 { QLatin1String("QDockWidget"), QLatin1String("QtGui/qdockwidget.h") },
225 { QLatin1String("QDomAttr"), QLatin1String("QtXml/qdom.h") },
226 { QLatin1String("QDomCDATASection"), QLatin1String("QtXml/qdom.h") },
227 { QLatin1String("QDomCharacterData"), QLatin1String("QtXml/qdom.h") },
228 { QLatin1String("QDomComment"), QLatin1String("QtXml/qdom.h") },
229 { QLatin1String("QDomDocument"), QLatin1String("QtXml/qdom.h") },
230 { QLatin1String("QDomDocumentFragment"), QLatin1String("QtXml/qdom.h") },
231 { QLatin1String("QDomDocumentType"), QLatin1String("QtXml/qdom.h") },
232 { QLatin1String("QDomElement"), QLatin1String("QtXml/qdom.h") },
233 { QLatin1String("QDomEntity"), QLatin1String("QtXml/qdom.h") },
234 { QLatin1String("QDomEntityReference"), QLatin1String("QtXml/qdom.h") },
235 { QLatin1String("QDomImplementation"), QLatin1String("QtXml/qdom.h") },
236 { QLatin1String("QDomNamedNodeMap"), QLatin1String("QtXml/qdom.h") },
237 { QLatin1String("QDomNode"), QLatin1String("QtXml/qdom.h") },
238 { QLatin1String("QDomNodeList"), QLatin1String("QtXml/qdom.h") },
239 { QLatin1String("QDomNotation"), QLatin1String("QtXml/qdom.h") },
240 { QLatin1String("QDomProcessingInstruction"), QLatin1String("QtXml/qdom.h") },
241 { QLatin1String("QDomText"), QLatin1String("QtXml/qdom.h") },
242 { QLatin1String("QDoubleSpinBox"), QLatin1String("QtGui/qspinbox.h") },
243 { QLatin1String("QDoubleValidator"), QLatin1String("QtGui/qvalidator.h") },
244 { QLatin1String("QDrag"), QLatin1String("QtGui/qdrag.h") },
245 { QLatin1String("QDragEnterEvent"), QLatin1String("QtGui/qevent.h") },
246 { QLatin1String("QDragLeaveEvent"), QLatin1String("QtGui/qevent.h") },
247 { QLatin1String("QDragMoveEvent"), QLatin1String("QtGui/qevent.h") },
248 { QLatin1String("QDropEvent"), QLatin1String("QtGui/qevent.h") },
249 { QLatin1String("QDynamicPropertyChangeEvent"), QLatin1String("QtCore/qcoreevent.h") },
250 { QLatin1String("QEasingCurve"), QLatin1String("QtCore/qeasingcurve.h") },
251 { QLatin1String("QElapsedTimer"), QLatin1String("QtCore/qelapsedtimer.h") },
252 { QLatin1String("QErrorMessage"), QLatin1String("QtGui/qerrormessage.h") },
253 { QLatin1String("QEvent"), QLatin1String("QtCore/qcoreevent.h") },
254 { QLatin1String("QEventLoop"), QLatin1String("QtCore/qeventloop.h") },
255 { QLatin1String("QExtensionFactory"), QLatin1String("QtDesigner/default_extensionfactory.h") },
256 { QLatin1String("QExtensionManager"), QLatin1String("QtDesigner/qextensionmanager.h") },
257 { QLatin1String("QFSFileEngine"), QLatin1String("QtCore/qfsfileengine.h") },
258 { QLatin1String("QFactoryInterface"), QLatin1String("QtCore/qfactoryinterface.h") },
259 { QLatin1String("QFile"), QLatin1String("QtCore/qfile.h") },
260 { QLatin1String("QFileDialog"), QLatin1String("QtGui/qfiledialog.h") },
261 { QLatin1String("QFileIconProvider"), QLatin1String("QtGui/qfileiconprovider.h") },
262 { QLatin1String("QFileInfo"), QLatin1String("QtCore/qfileinfo.h") },
263 { QLatin1String("QFileSystemModel"), QLatin1String("QtGui/qfilesystemmodel.h") },
264 { QLatin1String("QFileSystemWatcher"), QLatin1String("QtCore/qfilesystemwatcher.h") },
265 { QLatin1String("QFlag"), QLatin1String("QtCore/qglobal.h") },
266 { QLatin1String("QFocusEvent"), QLatin1String("QtGui/qevent.h") },
267 { QLatin1String("QFocusFrame"), QLatin1String("QtGui/qfocusframe.h") },
268 { QLatin1String("QFont"), QLatin1String("QtGui/qfont.h") },
269 { QLatin1String("QFontComboBox"), QLatin1String("QtGui/qfontcombobox.h") },
270 { QLatin1String("QFontDatabase"), QLatin1String("QtGui/qfontdatabase.h") },
271 { QLatin1String("QFontDialog"), QLatin1String("QtGui/qfontdialog.h") },
272 { QLatin1String("QFontInfo"), QLatin1String("QtGui/qfontinfo.h") },
273 { QLatin1String("QFontMetrics"), QLatin1String("QtGui/qfontmetrics.h") },
274 { QLatin1String("QFontMetricsF"), QLatin1String("QtGui/qfontmetrics.h") },
275 { QLatin1String("QFormBuilder"), QLatin1String("QtUiTools/formbuilder.h") },
276 { QLatin1String("QFormLayout"), QLatin1String("QtGui/qformlayout.h") },
277 { QLatin1String("QFrame"), QLatin1String("QtGui/qframe.h") },
278 { QLatin1String("QFtp"), QLatin1String("QtNetwork/qftp.h") },
279 { QLatin1String("QFutureInterfaceBase"), QLatin1String("QtCore/qfutureinterface.h") },
280 { QLatin1String("QFutureWatcherBase"), QLatin1String("QtCore/qfuturewatcher.h") },
281 { QLatin1String("QGenericArgument"), QLatin1String("QtCore/qobjectdefs.h") },
282 { QLatin1String("QGenericReturnArgument"), QLatin1String("QtCore/qobjectdefs.h") },
283 { QLatin1String("QGradient"), QLatin1String("QtGui/qbrush.h") },
284 { QLatin1String("QGraphicsAnchor"), QLatin1String("QtGui/qgraphicsanchorlayout.h") },
285 { QLatin1String("QGraphicsAnchorLayout"), QLatin1String("QtGui/qgraphicsanchorlayout.h") },
286 { QLatin1String("QGraphicsBlurEffect"), QLatin1String("QtGui/qgraphicseffect.h") },
287 { QLatin1String("QGraphicsColorizeEffect"), QLatin1String("QtGui/qgraphicseffect.h") },
288 { QLatin1String("QGraphicsDropShadowEffect"), QLatin1String("QtGui/qgraphicseffect.h") },
289 { QLatin1String("QGraphicsEffect"), QLatin1String("QtGui/qgraphicseffect.h") },
290 { QLatin1String("QGraphicsEllipseItem"), QLatin1String("QtGui/qgraphicsitem.h") },
291 { QLatin1String("QGraphicsGridLayout"), QLatin1String("QtGui/qgraphicsgridlayout.h") },
292 { QLatin1String("QGraphicsItem"), QLatin1String("QtGui/qgraphicsitem.h") },
293 { QLatin1String("QGraphicsItemAnimation"), QLatin1String("QtGui/qgraphicsitemanimation.h") },
294 { QLatin1String("QGraphicsItemGroup"), QLatin1String("QtGui/qgraphicsitem.h") },
295 { QLatin1String("QGraphicsLayout"), QLatin1String("QtGui/qgraphicslayout.h") },
296 { QLatin1String("QGraphicsLayoutItem"), QLatin1String("QtGui/qgraphicslayoutitem.h") },
297 { QLatin1String("QGraphicsLineItem"), QLatin1String("QtGui/qgraphicsitem.h") },
298 { QLatin1String("QGraphicsLinearLayout"), QLatin1String("QtGui/qgraphicslinearlayout.h") },
299 { QLatin1String("QGraphicsObject"), QLatin1String("QtGui/qgraphicsitem.h") },
300 { QLatin1String("QGraphicsOpacityEffect"), QLatin1String("QtGui/qgraphicseffect.h") },
301 { QLatin1String("QGraphicsPathItem"), QLatin1String("QtGui/qgraphicsitem.h") },
302 { QLatin1String("QGraphicsPixmapItem"), QLatin1String("QtGui/qgraphicsitem.h") },
303 { QLatin1String("QGraphicsPolygonItem"), QLatin1String("QtGui/qgraphicsitem.h") },
304 { QLatin1String("QGraphicsProxyWidget"), QLatin1String("QtGui/qgraphicsproxywidget.h") },
305 { QLatin1String("QGraphicsRectItem"), QLatin1String("QtGui/qgraphicsitem.h") },
306 { QLatin1String("QGraphicsRotation"), QLatin1String("QtGui/qgraphicstransform.h") },
307 { QLatin1String("QGraphicsScale"), QLatin1String("QtGui/qgraphicstransform.h") },
308 { QLatin1String("QGraphicsScene"), QLatin1String("QtGui/qgraphicsscene.h") },
309 { QLatin1String("QGraphicsSceneContextMenuEvent"), QLatin1String("QtGui/qgraphicssceneevent.h") },
310 { QLatin1String("QGraphicsSceneDragDropEvent"), QLatin1String("QtGui/qgraphicssceneevent.h") },
311 { QLatin1String("QGraphicsSceneEvent"), QLatin1String("QtGui/qgraphicssceneevent.h") },
312 { QLatin1String("QGraphicsSceneHelpEvent"), QLatin1String("QtGui/qgraphicssceneevent.h") },
313 { QLatin1String("QGraphicsSceneHoverEvent"), QLatin1String("QtGui/qgraphicssceneevent.h") },
314 { QLatin1String("QGraphicsSceneMouseEvent"), QLatin1String("QtGui/qgraphicssceneevent.h") },
315 { QLatin1String("QGraphicsSceneMoveEvent"), QLatin1String("QtGui/qgraphicssceneevent.h") },
316 { QLatin1String("QGraphicsSceneResizeEvent"), QLatin1String("QtGui/qgraphicssceneevent.h") },
317 { QLatin1String("QGraphicsSceneWheelEvent"), QLatin1String("QtGui/qgraphicssceneevent.h") },
318 { QLatin1String("QGraphicsSimpleTextItem"), QLatin1String("QtGui/qgraphicsitem.h") },
319 { QLatin1String("QGraphicsSvgItem"), QLatin1String("QtSvg/qgraphicssvgitem.h") },
320 { QLatin1String("QGraphicsTextItem"), QLatin1String("QtGui/qgraphicsitem.h") },
321 { QLatin1String("QGraphicsTransform"), QLatin1String("QtGui/qgraphicstransform.h") },
322 { QLatin1String("QGraphicsView"), QLatin1String("QtGui/qgraphicsview.h") },
323 { QLatin1String("QGraphicsWidget"), QLatin1String("QtGui/qgraphicswidget.h") },
324 { QLatin1String("QGridLayout"), QLatin1String("QtGui/qgridlayout.h") },
325 { QLatin1String("QGroupBox"), QLatin1String("QtGui/qgroupbox.h") },
326 { QLatin1String("QGuiPlatformPlugin"), QLatin1String("QtGui/qguiplatformplugin.h") },
327 { QLatin1String("QGuiPlatformPluginInterface"), QLatin1String("QtGui/qguiplatformplugin.h") },
328 { QLatin1String("QHBoxLayout"), QLatin1String("QtGui/qboxlayout.h") },
329 { QLatin1String("QHash"), QLatin1String("QtCore/qhash.h") },
330 { QLatin1String("QHashData"), QLatin1String("QtCore/qhash.h") },
331 { QLatin1String("QHeaderView"), QLatin1String("QtGui/qheaderview.h") },
332 { QLatin1String("QHelpEvent"), QLatin1String("QtGui/qevent.h") },
333 { QLatin1String("QHideEvent"), QLatin1String("QtGui/qevent.h") },
334 { QLatin1String("QHostAddress"), QLatin1String("QtNetwork/qhostaddress.h") },
335 { QLatin1String("QHostInfo"), QLatin1String("QtNetwork/qhostinfo.h") },
336 { QLatin1String("QHoverEvent"), QLatin1String("QtGui/qevent.h") },
337 { QLatin1String("QHttp"), QLatin1String("QtNetwork/qhttp.h") },
338 { QLatin1String("QHttpHeader"), QLatin1String("QtNetwork/qhttp.h") },
339 { QLatin1String("QHttpMultiPart"), QLatin1String("QtNetwork/qhttpmultipart.h") },
340 { QLatin1String("QHttpPart"), QLatin1String("QtNetwork/qhttpmultipart.h") },
341 { QLatin1String("QHttpRequestHeader"), QLatin1String("QtNetwork/qhttp.h") },
342 { QLatin1String("QHttpResponseHeader"), QLatin1String("QtNetwork/qhttp.h") },
343 { QLatin1String("QIODevice"), QLatin1String("QtCore/qiodevice.h") },
344 { QLatin1String("QIPv6Address"), QLatin1String("QtNetwork/qhostaddress.h") },
345 { QLatin1String("QIcon"), QLatin1String("QtGui/qicon.h") },
346 { QLatin1String("QIconEngine"), QLatin1String("QtGui/qiconengine.h") },
347 { QLatin1String("QIconEngineFactoryInterface"), QLatin1String("QtGui/qiconengineplugin.h") },
348 { QLatin1String("QIconEnginePlugin"), QLatin1String("QtGui/qiconengineplugin.h") },
349 { QLatin1String("QIdentityProxyModel"), QLatin1String("QtGui/qidentityproxymodel.h") },
350 { QLatin1String("QImage"), QLatin1String("QtGui/qimage.h") },
351 { QLatin1String("QImageIOHandler"), QLatin1String("QtGui/qimageiohandler.h") },
352 { QLatin1String("QImageIOHandlerFactoryInterface"), QLatin1String("QtGui/qimageiohandler.h") },
353 { QLatin1String("QImageIOPlugin"), QLatin1String("QtGui/qimageiohandler.h") },
354 { QLatin1String("QImageReader"), QLatin1String("QtGui/qimagereader.h") },
355 { QLatin1String("QImageWriter"), QLatin1String("QtGui/qimagewriter.h") },
356 { QLatin1String("QIncompatibleFlag"), QLatin1String("QtCore/qglobal.h") },
357 { QLatin1String("QInputDialog"), QLatin1String("QtGui/qinputdialog.h") },
358 { QLatin1String("QInputEvent"), QLatin1String("QtGui/qevent.h") },
359 { QLatin1String("QIntValidator"), QLatin1String("QtGui/qvalidator.h") },
360 { QLatin1String("QInternal"), QLatin1String("QtCore/qnamespace.h") },
361 { QLatin1String("QItemDelegate"), QLatin1String("QtGui/qitemdelegate.h") },
362 { QLatin1String("QItemEditorCreatorBase"), QLatin1String("QtGui/qitemeditorfactory.h") },
363 { QLatin1String("QItemEditorFactory"), QLatin1String("QtGui/qitemeditorfactory.h") },
364 { QLatin1String("QItemSelection"), QLatin1String("QtGui/qitemselectionmodel.h") },
365 { QLatin1String("QItemSelectionModel"), QLatin1String("QtGui/qitemselectionmodel.h") },
366 { QLatin1String("QItemSelectionRange"), QLatin1String("QtGui/qitemselectionmodel.h") },
367 { QLatin1String("QJsonDocument"), QLatin1String("QtCore/qjsondocument.h") },
368 { QLatin1String("QKeyEvent"), QLatin1String("QtGui/qevent.h") },
369 { QLatin1String("QKeySequence"), QLatin1String("QtGui/qkeysequence.h") },
370 { QLatin1String("QLCDNumber"), QLatin1String("QtGui/qlcdnumber.h") },
371 { QLatin1String("QLabel"), QLatin1String("QtGui/qlabel.h") },
372 { QLatin1String("QLatin1String"), QLatin1String("QtCore/qstring.h") },
373 { QLatin1String("QLayout"), QLatin1String("QtGui/qlayout.h") },
374 { QLatin1String("QLayoutItem"), QLatin1String("QtGui/qlayoutitem.h") },
375 { QLatin1String("QLibrary"), QLatin1String("QtCore/qlibrary.h") },
376 { QLatin1String("QLibraryInfo"), QLatin1String("QtCore/qlibraryinfo.h") },
377 { QLatin1String("QLine"), QLatin1String("QtCore/qline.h") },
378 { QLatin1String("QLineEdit"), QLatin1String("QtGui/qlineedit.h") },
379 { QLatin1String("QLineF"), QLatin1String("QtCore/qline.h") },
380 { QLatin1String("QLinearGradient"), QLatin1String("QtGui/qbrush.h") },
381 { QLatin1String("QLinkedList"), QLatin1String("QtCore/qlinkedlist.h") },
382 { QLatin1String("QLinkedListData"), QLatin1String("QtCore/qlinkedlist.h") },
383 { QLatin1String("QList"), QLatin1String("QtCore/qlist.h") },
384 { QLatin1String("QListData"), QLatin1String("QtCore/qlist.h") },
385 { QLatin1String("QListView"), QLatin1String("QtGui/qlistview.h") },
386 { QLatin1String("QListWidget"), QLatin1String("QtGui/qlistwidget.h") },
387 { QLatin1String("QListWidgetItem"), QLatin1String("QtGui/qlistwidget.h") },
388 { QLatin1String("QLocalServer"), QLatin1String("QtNetwork/qlocalserver.h") },
389 { QLatin1String("QLocalSocket"), QLatin1String("QtNetwork/qlocalsocket.h") },
390 { QLatin1String("QLocale"), QLatin1String("QtCore/qlocale.h") },
391 { QLatin1String("QMainWindow"), QLatin1String("QtGui/qmainwindow.h") },
392 { QLatin1String("QMap"), QLatin1String("QtCore/qmap.h") },
393 { QLatin1String("QMapData"), QLatin1String("QtCore/qmap.h") },
394 { QLatin1String("QMatrix"), QLatin1String("QtGui/qmatrix.h") },
395 { QLatin1String("QMatrix4x4"), QLatin1String("QtGui/qmatrix4x4.h") },
396 { QLatin1String("QMdiArea"), QLatin1String("QtGui/qmdiarea.h") },
397 { QLatin1String("QMdiSubWindow"), QLatin1String("QtGui/qmdisubwindow.h") },
398 { QLatin1String("QMenu"), QLatin1String("QtGui/qmenu.h") },
399 { QLatin1String("QMenuActionProvider"), QLatin1String("QtDesigner/default_actionprovider.h") },
400 { QLatin1String("QMenuBar"), QLatin1String("QtGui/qmenubar.h") },
401 { QLatin1String("QMenuBarActionProvider"), QLatin1String("QtDesigner/default_actionprovider.h") },
402 { QLatin1String("QMessageBox"), QLatin1String("QtGui/qmessagebox.h") },
403 { QLatin1String("QMetaClassInfo"), QLatin1String("QtCore/qmetaobject.h") },
404 { QLatin1String("QMetaEnum"), QLatin1String("QtCore/qmetaobject.h") },
405 { QLatin1String("QMetaMethod"), QLatin1String("QtCore/qmetaobject.h") },
406 { QLatin1String("QMetaObject"), QLatin1String("QtCore/qobjectdefs.h") },
407 { QLatin1String("QMetaProperty"), QLatin1String("QtCore/qmetaobject.h") },
408 { QLatin1String("QMetaType"), QLatin1String("QtCore/qmetatype.h") },
409 { QLatin1String("QMimeData"), QLatin1String("QtCore/qmimedata.h") },
410 { QLatin1String("QModelIndex"), QLatin1String("QtCore/qabstractitemmodel.h") },
411 { QLatin1String("QMotifStyle"), QLatin1String("QtGui/qmotifstyle.h") },
412 { QLatin1String("QMouseEvent"), QLatin1String("QtGui/qevent.h") },
413 { QLatin1String("QMoveEvent"), QLatin1String("QtGui/qevent.h") },
414 { QLatin1String("QMovie"), QLatin1String("QtGui/qmovie.h") },
415 { QLatin1String("QMultiHash"), QLatin1String("QtCore/qhash.h") },
416 { QLatin1String("QMutex"), QLatin1String("QtCore/qmutex.h") },
417 { QLatin1String("QMutexLocker"), QLatin1String("QtCore/qmutex.h") },
418 { QLatin1String("QNetworkAccessManager"), QLatin1String("QtNetwork/qnetworkaccessmanager.h") },
419 { QLatin1String("QNetworkAddressEntry"), QLatin1String("QtNetwork/qnetworkinterface.h") },
420 { QLatin1String("QNetworkCacheMetaData"), QLatin1String("QtNetwork/qabstractnetworkcache.h") },
421 { QLatin1String("QNetworkCookie"), QLatin1String("QtNetwork/qnetworkcookie.h") },
422 { QLatin1String("QNetworkCookieJar"), QLatin1String("QtNetwork/qnetworkcookiejar.h") },
423 { QLatin1String("QNetworkDiskCache"), QLatin1String("QtNetwork/qnetworkdiskcache.h") },
424 { QLatin1String("QNetworkInterface"), QLatin1String("QtNetwork/qnetworkinterface.h") },
425 { QLatin1String("QNetworkProxy"), QLatin1String("QtNetwork/qnetworkproxy.h") },
426 { QLatin1String("QNetworkProxyFactory"), QLatin1String("QtNetwork/qnetworkproxy.h") },
427 { QLatin1String("QNetworkProxyQuery"), QLatin1String("QtNetwork/qnetworkproxy.h") },
428 { QLatin1String("QNetworkReply"), QLatin1String("QtNetwork/qnetworkreply.h") },
429 { QLatin1String("QNetworkRequest"), QLatin1String("QtNetwork/qnetworkrequest.h") },
430 { QLatin1String("QObject"), QLatin1String("QtCore/qobject.h") },
431 { QLatin1String("QObjectCleanupHandler"), QLatin1String("QtCore/qobjectcleanuphandler.h") },
432 { QLatin1String("QPageSetupDialog"), QLatin1String("QtGui/qpagesetupdialog.h") },
433 { QLatin1String("QPaintDevice"), QLatin1String("QtGui/qpaintdevice.h") },
434 { QLatin1String("QPaintEngine"), QLatin1String("QtGui/qpaintengine.h") },
435 { QLatin1String("QPaintEngineState"), QLatin1String("QtGui/qpaintengine.h") },
436 { QLatin1String("QPaintEvent"), QLatin1String("QtGui/qevent.h") },
437 { QLatin1String("QPainter"), QLatin1String("QtGui/qpainter.h") },
438 { QLatin1String("QPainterPath"), QLatin1String("QtGui/qpainterpath.h") },
439 { QLatin1String("QPainterPathStroker"), QLatin1String("QtGui/qpainterpath.h") },
440 { QLatin1String("QPair"), QLatin1String("QtCore/qpair.h") },
441 { QLatin1String("QPalette"), QLatin1String("QtGui/qpalette.h") },
442 { QLatin1String("QParallelAnimationGroup"), QLatin1String("QtGui/qparallelanimationgroup.h") },
443 { QLatin1String("QPauseAnimation"), QLatin1String("QtGui/qpauseanimation.h") },
444 { QLatin1String("QPen"), QLatin1String("QtGui/qpen.h") },
445 { QLatin1String("QPersistentModelIndex"), QLatin1String("QtCore/qabstractitemmodel.h") },
446 { QLatin1String("QPixmap"), QLatin1String("QtGui/qpixmap.h") },
447 { QLatin1String("QPixmapCache"), QLatin1String("QtGui/qpixmapcache.h") },
448 { QLatin1String("QPlainTextDocumentLayout"), QLatin1String("QtGui/qplaintextedit.h") },
449 { QLatin1String("QPlainTextEdit"), QLatin1String("QtGui/qplaintextedit.h") },
450 { QLatin1String("QPlastiqueStyle"), QLatin1String("QtGui/qplastiquestyle.h") },
451 { QLatin1String("QPluginLoader"), QLatin1String("QtCore/qpluginloader.h") },
452 { QLatin1String("QPoint"), QLatin1String("QtCore/qpoint.h") },
453 { QLatin1String("QPointF"), QLatin1String("QtCore/qpoint.h") },
454 { QLatin1String("QPointer"), QLatin1String("QtCore/qpointer.h") },
455 { QLatin1String("QPolygon"), QLatin1String("QtGui/qpolygon.h") },
456 { QLatin1String("QPolygonF"), QLatin1String("QtGui/qpolygon.h") },
457 { QLatin1String("QPrintDialog"), QLatin1String("QtGui/qprintdialog.h") },
458 { QLatin1String("QPrintEngine"), QLatin1String("QtGui/qprintengine.h") },
459 { QLatin1String("QPrintPreviewDialog"), QLatin1String("QtGui/qprintpreviewdialog.h") },
460 { QLatin1String("QPrintPreviewWidget"), QLatin1String("QtGui/qprintpreviewwidget.h") },
461 { QLatin1String("QPrinter"), QLatin1String("QtGui/qprinter.h") },
462 { QLatin1String("QPrinterInfo"), QLatin1String("QtGui/qprinterinfo.h") },
463 { QLatin1String("QProcess"), QLatin1String("QtCore/qprocess.h") },
464 { QLatin1String("QProcessEnvironment"), QLatin1String("QtCore/qprocess.h") },
465 { QLatin1String("QProgressBar"), QLatin1String("QtGui/qprogressbar.h") },
466 { QLatin1String("QProgressDialog"), QLatin1String("QtGui/qprogressdialog.h") },
467 { QLatin1String("QPropertyAnimation"), QLatin1String("QtGui/qpropertyanimation.h") },
468 { QLatin1String("QProxyModel"), QLatin1String("QtGui/qproxymodel.h") },
469 { QLatin1String("QProxyStyle"), QLatin1String("QtGui/qproxystyle.h") },
470 { QLatin1String("QPushButton"), QLatin1String("QtGui/qpushbutton.h") },
471 { QLatin1String("QQuaternion"), QLatin1String("QtGui/qquaternion.h") },
472 { QLatin1String("QRadialGradient"), QLatin1String("QtGui/qbrush.h") },
473 { QLatin1String("QRadioButton"), QLatin1String("QtGui/qradiobutton.h") },
474 { QLatin1String("QReadLocker"), QLatin1String("QtCore/qreadwritelock.h") },
475 { QLatin1String("QReadWriteLock"), QLatin1String("QtCore/qreadwritelock.h") },
476 { QLatin1String("QRect"), QLatin1String("QtCore/qrect.h") },
477 { QLatin1String("QRectF"), QLatin1String("QtCore/qrect.h") },
478 { QLatin1String("QRegExp"), QLatin1String("QtCore/qregexp.h") },
479 { QLatin1String("QRegExpValidator"), QLatin1String("QtGui/qvalidator.h") },
480 { QLatin1String("QRegion"), QLatin1String("QtGui/qregion.h") },
481 { QLatin1String("QResizeEvent"), QLatin1String("QtGui/qevent.h") },
482 { QLatin1String("QResource"), QLatin1String("QtCore/qresource.h") },
483 { QLatin1String("QRubberBand"), QLatin1String("QtGui/qrubberband.h") },
484 { QLatin1String("QScopedValueRollback"), QLatin1String("QtCore/qscopedvaluerollback.h") },
485 { QLatin1String("QScriptClass"), QLatin1String("QtScript/qscriptclass.h") },
486 { QLatin1String("QScriptClassPropertyIterator"), QLatin1String("QtScript/qscriptclasspropertyiterator.h") },
487 { QLatin1String("QScriptContext"), QLatin1String("QtScript/qscriptcontext.h") },
488 { QLatin1String("QScriptContextInfo"), QLatin1String("QtScript/qscriptcontextinfo.h") },
489 { QLatin1String("QScriptEngine"), QLatin1String("QtScript/qscriptengine.h") },
490 { QLatin1String("QScriptEngineAgent"), QLatin1String("QtScript/qscriptengineagent.h") },
491 { QLatin1String("QScriptEngineDebugger"), QLatin1String("QtScriptTools/qscriptenginedebugger.h") },
492 { QLatin1String("QScriptExtensionInterface"), QLatin1String("QtScript/qscriptextensioninterface.h") },
493 { QLatin1String("QScriptExtensionPlugin"), QLatin1String("QtScript/qscriptextensionplugin.h") },
494 { QLatin1String("QScriptProgram"), QLatin1String("QtScript/qscriptprogram.h") },
495 { QLatin1String("QScriptString"), QLatin1String("QtScript/qscriptstring.h") },
496 { QLatin1String("QScriptSyntaxCheckResult"), QLatin1String("QtScript/qscriptengine.h") },
497 { QLatin1String("QScriptValue"), QLatin1String("QtScript/qscriptvalue.h") },
498 { QLatin1String("QScriptValueIterator"), QLatin1String("QtScript/qscriptvalueiterator.h") },
499 { QLatin1String("QScriptable"), QLatin1String("QtScript/qscriptable.h") },
500 { QLatin1String("QScrollArea"), QLatin1String("QtGui/qscrollarea.h") },
501 { QLatin1String("QScrollBar"), QLatin1String("QtGui/qscrollbar.h") },
502 { QLatin1String("QSemaphore"), QLatin1String("QtCore/qsemaphore.h") },
503 { QLatin1String("QSequentialAnimationGroup"), QLatin1String("QtGui/qsequentialanimationgroup.h") },
504 { QLatin1String("QSet"), QLatin1String("QtCore/qset.h") },
505 { QLatin1String("QSettings"), QLatin1String("QtCore/qsettings.h") },
506 { QLatin1String("QSharedData"), QLatin1String("QtCore/qshareddata.h") },
507 { QLatin1String("QSharedMemory"), QLatin1String("QtCore/qsharedmemory.h") },
508 { QLatin1String("QSharedPointer"), QLatin1String("QtCore/qsharedpointer.h") },
509 { QLatin1String("QShortcut"), QLatin1String("QtGui/qshortcut.h") },
510 { QLatin1String("QShortcutEvent"), QLatin1String("QtGui/qevent.h") },
511 { QLatin1String("QShowEvent"), QLatin1String("QtGui/qevent.h") },
512 { QLatin1String("QSignalMapper"), QLatin1String("QtCore/qsignalmapper.h") },
513 { QLatin1String("QSignalSpy"), QLatin1String("QtTest/qsignalspy.h") },
514 { QLatin1String("QSize"), QLatin1String("QtCore/qsize.h") },
515 { QLatin1String("QSizeF"), QLatin1String("QtCore/qsize.h") },
516 { QLatin1String("QSizeGrip"), QLatin1String("QtGui/qsizegrip.h") },
517 { QLatin1String("QSizePolicy"), QLatin1String("QtGui/qsizepolicy.h") },
518 { QLatin1String("QSlider"), QLatin1String("QtGui/qslider.h") },
519 { QLatin1String("QSocketNotifier"), QLatin1String("QtCore/qsocketnotifier.h") },
520 { QLatin1String("QSortFilterProxyModel"), QLatin1String("QtGui/qsortfilterproxymodel.h") },
521 { QLatin1String("QSpacerItem"), QLatin1String("QtGui/qlayoutitem.h") },
522 { QLatin1String("QSpinBox"), QLatin1String("QtGui/qspinbox.h") },
523 { QLatin1String("QSplashScreen"), QLatin1String("QtGui/qsplashscreen.h") },
524 { QLatin1String("QSplitter"), QLatin1String("QtGui/qsplitter.h") },
525 { QLatin1String("QSplitterHandle"), QLatin1String("QtGui/qsplitter.h") },
526 { QLatin1String("QSslCertificate"), QLatin1String("QtNetwork/qsslcertificate.h") },
527 { QLatin1String("QSslCipher"), QLatin1String("QtNetwork/qsslcipher.h") },
528 { QLatin1String("QSslConfiguration"), QLatin1String("QtNetwork/qsslconfiguration.h") },
529 { QLatin1String("QSslError"), QLatin1String("QtNetwork/qsslerror.h") },
530 { QLatin1String("QSslKey"), QLatin1String("QtNetwork/qsslkey.h") },
531 { QLatin1String("QSslSocket"), QLatin1String("QtNetwork/qsslsocket.h") },
532 { QLatin1String("QStack"), QLatin1String("QtCore/qstack.h") },
533 { QLatin1String("QStackedLayout"), QLatin1String("QtGui/qstackedlayout.h") },
534 { QLatin1String("QStackedWidget"), QLatin1String("QtGui/qstackedwidget.h") },
535 { QLatin1String("QStandardItem"), QLatin1String("QtGui/qstandarditemmodel.h") },
536 { QLatin1String("QStandardItemModel"), QLatin1String("QtGui/qstandarditemmodel.h") },
537 { QLatin1String("QStandardPaths"), QLatin1String("QtCore/qstandardpaths.h") },
538 { QLatin1String("QStatusBar"), QLatin1String("QtGui/qstatusbar.h") },
539 { QLatin1String("QStatusTipEvent"), QLatin1String("QtGui/qevent.h") },
540 { QLatin1String("QString"), QLatin1String("QtCore/qstring.h") },
541 { QLatin1String("QStringList"), QLatin1String("QtCore/qstringlist.h") },
542 { QLatin1String("QStringListModel"), QLatin1String("QtGui/qstringlistmodel.h") },
543 { QLatin1String("QStringMatcher"), QLatin1String("QtCore/qstringmatcher.h") },
544 { QLatin1String("QStringRef"), QLatin1String("QtCore/qstring.h") },
545 { QLatin1String("QStyle"), QLatin1String("QtGui/qstyle.h") },
546 { QLatin1String("QStyleFactory"), QLatin1String("QtGui/qstylefactory.h") },
547 { QLatin1String("QStyleFactoryInterface"), QLatin1String("QtGui/qstyleplugin.h") },
548 { QLatin1String("QStyleHintReturn"), QLatin1String("QtGui/qstyleoption.h") },
549 { QLatin1String("QStyleHintReturnMask"), QLatin1String("QtGui/qstyleoption.h") },
550 { QLatin1String("QStyleHintReturnVariant"), QLatin1String("QtGui/qstyleoption.h") },
551 { QLatin1String("QStyleOption"), QLatin1String("QtGui/qstyleoption.h") },
552 { QLatin1String("QStyleOptionButton"), QLatin1String("QtGui/qstyleoption.h") },
553 { QLatin1String("QStyleOptionComboBox"), QLatin1String("QtGui/qstyleoption.h") },
554 { QLatin1String("QStyleOptionComplex"), QLatin1String("QtGui/qstyleoption.h") },
555 { QLatin1String("QStyleOptionDockWidget"), QLatin1String("QtGui/qstyleoption.h") },
556 { QLatin1String("QStyleOptionFocusRect"), QLatin1String("QtGui/qstyleoption.h") },
557 { QLatin1String("QStyleOptionFrame"), QLatin1String("QtGui/qstyleoption.h") },
558 { QLatin1String("QStyleOptionGraphicsItem"), QLatin1String("QtGui/qstyleoption.h") },
559 { QLatin1String("QStyleOptionGroupBox"), QLatin1String("QtGui/qstyleoption.h") },
560 { QLatin1String("QStyleOptionHeader"), QLatin1String("QtGui/qstyleoption.h") },
561 { QLatin1String("QStyleOptionMenuItem"), QLatin1String("QtGui/qstyleoption.h") },
562 { QLatin1String("QStyleOptionProgressBar"), QLatin1String("QtGui/qstyleoption.h") },
563 { QLatin1String("QStyleOptionRubberBand"), QLatin1String("QtGui/qstyleoption.h") },
564 { QLatin1String("QStyleOptionSizeGrip"), QLatin1String("QtGui/qstyleoption.h") },
565 { QLatin1String("QStyleOptionSlider"), QLatin1String("QtGui/qstyleoption.h") },
566 { QLatin1String("QStyleOptionSpinBox"), QLatin1String("QtGui/qstyleoption.h") },
567 { QLatin1String("QStyleOptionTab"), QLatin1String("QtGui/qstyleoption.h") },
568 { QLatin1String("QStyleOptionTabBarBase"), QLatin1String("QtGui/qstyleoption.h") },
569 { QLatin1String("QStyleOptionTabWidgetFrame"), QLatin1String("QtGui/qstyleoption.h") },
570 { QLatin1String("QStyleOptionTitleBar"), QLatin1String("QtGui/qstyleoption.h") },
571 { QLatin1String("QStyleOptionToolBar"), QLatin1String("QtGui/qstyleoption.h") },
572 { QLatin1String("QStyleOptionToolBox"), QLatin1String("QtGui/qstyleoption.h") },
573 { QLatin1String("QStyleOptionToolButton"), QLatin1String("QtGui/qstyleoption.h") },
574 { QLatin1String("QStyleOptionViewItem"), QLatin1String("QtGui/qstyleoption.h") },
575 { QLatin1String("QStylePainter"), QLatin1String("QtGui/qstylepainter.h") },
576 { QLatin1String("QStylePlugin"), QLatin1String("QtGui/qstyleplugin.h") },
577 { QLatin1String("QStyledItemDelegate"), QLatin1String("QtGui/qstyleditemdelegate.h") },
578 { QLatin1String("QSvgGenerator"), QLatin1String("QtSvg/qsvggenerator.h") },
579 { QLatin1String("QSvgRenderer"), QLatin1String("QtSvg/qsvgrenderer.h") },
580 { QLatin1String("QSvgWidget"), QLatin1String("QtSvg/qsvgwidget.h") },
581 { QLatin1String("QSyntaxHighlighter"), QLatin1String("QtGui/qsyntaxhighlighter.h") },
582 { QLatin1String("QSystemSemaphore"), QLatin1String("QtCore/qsystemsemaphore.h") },
583 { QLatin1String("QSystemTrayIcon"), QLatin1String("QtGui/qsystemtrayicon.h") },
584 { QLatin1String("QTabBar"), QLatin1String("QtGui/qtabbar.h") },
585 { QLatin1String("QTabWidget"), QLatin1String("QtGui/qtabwidget.h") },
586 { QLatin1String("QTableView"), QLatin1String("QtGui/qtableview.h") },
587 { QLatin1String("QTableWidget"), QLatin1String("QtGui/qtablewidget.h") },
588 { QLatin1String("QTableWidgetItem"), QLatin1String("QtGui/qtablewidget.h") },
589 { QLatin1String("QTableWidgetSelectionRange"), QLatin1String("QtGui/qtablewidget.h") },
590 { QLatin1String("QTcpServer"), QLatin1String("QtNetwork/qtcpserver.h") },
591 { QLatin1String("QTcpSocket"), QLatin1String("QtNetwork/qtcpsocket.h") },
592 { QLatin1String("QTemporaryFile"), QLatin1String("QtCore/qtemporaryfile.h") },
593 { QLatin1String("QTestData"), QLatin1String("QtTest/qtestdata.h") },
594 { QLatin1String("QTestEventLoop"), QLatin1String("QtTest/qtesteventloop.h") },
595 { QLatin1String("QTextBlock"), QLatin1String("QtGui/qtextobject.h") },
596 { QLatin1String("QTextBlockFormat"), QLatin1String("QtGui/qtextformat.h") },
597 { QLatin1String("QTextBlockGroup"), QLatin1String("QtGui/qtextobject.h") },
598 { QLatin1String("QTextBlockUserData"), QLatin1String("QtGui/qtextobject.h") },
599 { QLatin1String("QTextBoundaryFinder"), QLatin1String("QtCore/qtextboundaryfinder.h") },
600 { QLatin1String("QTextBrowser"), QLatin1String("QtGui/qtextbrowser.h") },
601 { QLatin1String("QTextCharFormat"), QLatin1String("QtGui/qtextformat.h") },
602 { QLatin1String("QTextCodec"), QLatin1String("QtCore/qtextcodec.h") },
603 { QLatin1String("QTextCursor"), QLatin1String("QtGui/qtextcursor.h") },
604 { QLatin1String("QTextDecoder"), QLatin1String("QtCore/qtextcodec.h") },
605 { QLatin1String("QTextDocument"), QLatin1String("QtGui/qtextdocument.h") },
606 { QLatin1String("QTextDocumentFragment"), QLatin1String("QtGui/qtextdocumentfragment.h") },
607 { QLatin1String("QTextDocumentWriter"), QLatin1String("QtGui/qtextdocumentwriter.h") },
608 { QLatin1String("QTextEdit"), QLatin1String("QtGui/qtextedit.h") },
609 { QLatin1String("QTextEncoder"), QLatin1String("QtCore/qtextcodec.h") },
610 { QLatin1String("QTextFormat"), QLatin1String("QtGui/qtextformat.h") },
611 { QLatin1String("QTextFragment"), QLatin1String("QtGui/qtextobject.h") },
612 { QLatin1String("QTextFrame"), QLatin1String("QtGui/qtextobject.h") },
613 { QLatin1String("QTextFrameFormat"), QLatin1String("QtGui/qtextformat.h") },
614 { QLatin1String("QTextFrameLayoutData"), QLatin1String("QtGui/qtextobject.h") },
615 { QLatin1String("QTextImageFormat"), QLatin1String("QtGui/qtextformat.h") },
616 { QLatin1String("QTextInlineObject"), QLatin1String("QtGui/qtextlayout.h") },
617 { QLatin1String("QTextItem"), QLatin1String("QtGui/qpaintengine.h") },
618 { QLatin1String("QTextLayout"), QLatin1String("QtGui/qtextlayout.h") },
619 { QLatin1String("QTextLength"), QLatin1String("QtGui/qtextformat.h") },
620 { QLatin1String("QTextLine"), QLatin1String("QtGui/qtextlayout.h") },
621 { QLatin1String("QTextList"), QLatin1String("QtGui/qtextlist.h") },
622 { QLatin1String("QTextListFormat"), QLatin1String("QtGui/qtextformat.h") },
623 { QLatin1String("QTextObject"), QLatin1String("QtGui/qtextobject.h") },
624 { QLatin1String("QTextObjectInterface"), QLatin1String("QtGui/qabstracttextdocumentlayout.h") },
625 { QLatin1String("QTextOption"), QLatin1String("QtGui/qtextoption.h") },
626 { QLatin1String("QTextStream"), QLatin1String("QtCore/qtextstream.h") },
627 { QLatin1String("QTextStreamManipulator"), QLatin1String("QtCore/qtextstream.h") },
628 { QLatin1String("QTextTable"), QLatin1String("QtGui/qtexttable.h") },
629 { QLatin1String("QTextTableCell"), QLatin1String("QtGui/qtexttable.h") },
630 { QLatin1String("QTextTableCellFormat"), QLatin1String("QtGui/qtextformat.h") },
631 { QLatin1String("QTextTableFormat"), QLatin1String("QtGui/qtextformat.h") },
632 { QLatin1String("QThread"), QLatin1String("QtCore/qthread.h") },
633 { QLatin1String("QThreadPool"), QLatin1String("QtCore/qthreadpool.h") },
634 { QLatin1String("QTime"), QLatin1String("QtCore/qdatetime.h") },
635 { QLatin1String("QTimeEdit"), QLatin1String("QtGui/qdatetimeedit.h") },
636 { QLatin1String("QTimeLine"), QLatin1String("QtCore/qtimeline.h") },
637 { QLatin1String("QTimer"), QLatin1String("QtCore/qtimer.h") },
638 { QLatin1String("QTimerEvent"), QLatin1String("QtCore/qcoreevent.h") },
639 { QLatin1String("QToolBar"), QLatin1String("QtGui/qtoolbar.h") },
640 { QLatin1String("QToolBarActionProvider"), QLatin1String("QtDesigner/default_actionprovider.h") },
641 { QLatin1String("QToolBox"), QLatin1String("QtGui/qtoolbox.h") },
642 { QLatin1String("QToolButton"), QLatin1String("QtGui/qtoolbutton.h") },
643 { QLatin1String("QToolTip"), QLatin1String("QtGui/qtooltip.h") },
644 { QLatin1String("QTransform"), QLatin1String("QtGui/qtransform.h") },
645 { QLatin1String("QTranslator"), QLatin1String("QtCore/qtranslator.h") },
646 { QLatin1String("QTreeView"), QLatin1String("QtGui/qtreeview.h") },
647 { QLatin1String("QTreeWidget"), QLatin1String("QtGui/qtreewidget.h") },
648 { QLatin1String("QTreeWidgetItem"), QLatin1String("QtGui/qtreewidget.h") },
649 { QLatin1String("QTreeWidgetItemIterator"), QLatin1String("QtGui/qtreewidgetitemiterator.h") },
650 { QLatin1String("QUdpSocket"), QLatin1String("QtNetwork/qudpsocket.h") },
651 { QLatin1String("QUiLoader"), QLatin1String("QtUiTools/quiloader.h") },
652 { QLatin1String("QUndoCommand"), QLatin1String("QtGui/qundostack.h") },
653 { QLatin1String("QUndoGroup"), QLatin1String("QtGui/qundogroup.h") },
654 { QLatin1String("QUndoStack"), QLatin1String("QtGui/qundostack.h") },
655 { QLatin1String("QUndoView"), QLatin1String("QtGui/qundoview.h") },
656 { QLatin1String("QUrl"), QLatin1String("QtCore/qurl.h") },
657 { QLatin1String("QUrlInfo"), QLatin1String("QtNetwork/qurlinfo.h") },
658 { QLatin1String("QUuid"), QLatin1String("QtCore/quuid.h") },
659 { QLatin1String("QVBoxLayout"), QLatin1String("QtGui/qboxlayout.h") },
660 { QLatin1String("QValidator"), QLatin1String("QtGui/qvalidator.h") },
661 { QLatin1String("QVarLengthArray"), QLatin1String("QtCore/qvarlengtharray.h") },
662 { QLatin1String("QVariant"), QLatin1String("QtCore/qvariant.h") },
663 { QLatin1String("QVariantAnimation"), QLatin1String("QtGui/qvariantanimation.h") },
664 { QLatin1String("QVector"), QLatin1String("QtCore/qvector.h") },
665 { QLatin1String("QVector2D"), QLatin1String("QtGui/qvector2d.h") },
666 { QLatin1String("QVector3D"), QLatin1String("QtGui/qvector3d.h") },
667 { QLatin1String("QVector4D"), QLatin1String("QtGui/qvector4d.h") },
668 { QLatin1String("QVectorData"), QLatin1String("QtCore/qvector.h") },
669 { QLatin1String("QWaitCondition"), QLatin1String("QtCore/qwaitcondition.h") },
670 { QLatin1String("QWeakPointer"), QLatin1String("QtCore/qsharedpointer.h") },
671 { QLatin1String("QWhatsThis"), QLatin1String("QtGui/qwhatsthis.h") },
672 { QLatin1String("QWhatsThisClickedEvent"), QLatin1String("QtGui/qevent.h") },
673 { QLatin1String("QWheelEvent"), QLatin1String("QtGui/qevent.h") },
674 { QLatin1String("QWidget"), QLatin1String("QtGui/qwidget.h") },
675 { QLatin1String("QWidgetAction"), QLatin1String("QtGui/qwidgetaction.h") },
676 { QLatin1String("QWidgetItem"), QLatin1String("QtGui/qlayoutitem.h") },
677 { QLatin1String("QWidgetItemV2"), QLatin1String("QtGui/qlayoutitem.h") },
678 { QLatin1String("QWindowStateChangeEvent"), QLatin1String("QtGui/qevent.h") },
679 { QLatin1String("QWindowsStyle"), QLatin1String("QtGui/qwindowsstyle.h") },
680 { QLatin1String("QWizard"), QLatin1String("QtGui/qwizard.h") },
681 { QLatin1String("QWizardPage"), QLatin1String("QtGui/qwizard.h") },
682 { QLatin1String("QWorkspace"), QLatin1String("QtGui/qworkspace.h") },
683 { QLatin1String("QWriteLocker"), QLatin1String("QtCore/qreadwritelock.h") },
684 { QLatin1String("QX11EmbedContainer"), QLatin1String("QtGui/qx11embed_x11.h") },
685 { QLatin1String("QX11EmbedWidget"), QLatin1String("QtGui/qx11embed_x11.h") },
686 { QLatin1String("QX11Info"), QLatin1String("QtGui/qx11info_x11.h") },
687 { QLatin1String("QXmlAttributes"), QLatin1String("QtXml/qxml.h") },
688 { QLatin1String("QXmlContentHandler"), QLatin1String("QtXml/qxml.h") },
689 { QLatin1String("QXmlDTDHandler"), QLatin1String("QtXml/qxml.h") },
690 { QLatin1String("QXmlDeclHandler"), QLatin1String("QtXml/qxml.h") },
691 { QLatin1String("QXmlDefaultHandler"), QLatin1String("QtXml/qxml.h") },
692 { QLatin1String("QXmlEntityResolver"), QLatin1String("QtXml/qxml.h") },
693 { QLatin1String("QXmlErrorHandler"), QLatin1String("QtXml/qxml.h") },
694 { QLatin1String("QXmlInputSource"), QLatin1String("QtXml/qxml.h") },
695 { QLatin1String("QXmlLexicalHandler"), QLatin1String("QtXml/qxml.h") },
696 { QLatin1String("QXmlLocator"), QLatin1String("QtXml/qxml.h") },
697 { QLatin1String("QXmlNamespaceSupport"), QLatin1String("QtXml/qxml.h") },
698 { QLatin1String("QXmlParseException"), QLatin1String("QtXml/qxml.h") },
699 { QLatin1String("QXmlReader"), QLatin1String("QtXml/qxml.h") },
700 { QLatin1String("QXmlSimpleReader"), QLatin1String("QtXml/qxml.h") },
701 { QLatin1String("QXmlStreamAttribute"), QLatin1String("QtXml/qxmlstream.h") },
702 { QLatin1String("QXmlStreamAttributes"), QLatin1String("QtXml/qxmlstream.h") },
703 { QLatin1String("QXmlStreamEntityDeclaration"), QLatin1String("QtXml/qxmlstream.h") },
704 { QLatin1String("QXmlStreamEntityResolver"), QLatin1String("QtXml/qxmlstream.h") },
705 { QLatin1String("QXmlStreamNamespaceDeclaration"), QLatin1String("QtXml/qxmlstream.h") },
706 { QLatin1String("QXmlStreamNotationDeclaration"), QLatin1String("QtXml/qxmlstream.h") },
707 { QLatin1String("QXmlStreamReader"), QLatin1String("QtXml/qxmlstream.h") },
708 { QLatin1String("QXmlStreamWriter"), QLatin1String("QtXml/qxmlstream.h") },
709 { QLatin1String("ResultIteratorBase"), QLatin1String("QtCore/qtconcurrentresultstore.h") },
710 { QLatin1String("ResultStoreBase"), QLatin1String("QtCore/qtconcurrentresultstore.h") },
711 { QLatin1String("SignalSlotEditor"), QLatin1String("QtDesigner/signalsloteditor.h") },
712 { QLatin1String("SignalSlotEditorPlugin"), QLatin1String("QtDesigner/signalsloteditor_plugin.h") },
713 { QLatin1String("SignalSlotEditorTool"), QLatin1String("QtDesigner/signalsloteditor_tool.h") },
714 { QLatin1String("StringListEditorButton"), QLatin1String("QtDesigner/stringlisteditorbutton.h") },
715 { QLatin1String("Tab"), QLatin1String("QtGui/qtextoption.h") },
716 { QLatin1String("TabOrderEditor"), QLatin1String("QtDesigner/tabordereditor.h") },
717 { QLatin1String("TabOrderEditorPlugin"), QLatin1String("QtDesigner/tabordereditor_plugin.h") },
718 { QLatin1String("TabOrderEditorTool"), QLatin1String("QtDesigner/tabordereditor_tool.h") },
719 { QLatin1String("TaskMenuComponent"), QLatin1String("QtDesigner/taskmenu_component.h") },
720 { QLatin1String("ThreadEngineBase"), QLatin1String("QtCore/qtconcurrentthreadengine.h") },
721 { QLatin1String("UnhandledException"), QLatin1String("QtCore/qtconcurrentexception.h") },
722 { QLatin1String("WidgetBox"), QLatin1String("QtDesigner/widgetbox.h") },
723 { QLatin1String("WidgetBoxDnDItem"), QLatin1String("QtDesigner/widgetbox_dnditem.h") },
724 { QLatin1String("WidgetHandle"), QLatin1String("QtDesigner/widgetselection.h") },
725 { QLatin1String("WidgetSelection"), QLatin1String("QtDesigner/widgetselection.h") },
727 static const qint16 ClassTblSize = sizeof(ClassTbl) / sizeof(ClassTblData);
729 WriteIncludes::WriteIncludes(Uic *uic)
730 : m_uic(uic), m_output(uic->output()), m_scriptsActivated(false), m_laidOut(false)
734 void WriteIncludes::acceptUI(DomUI *node)
736 m_scriptsActivated = false;
738 m_localIncludes.clear();
739 m_globalIncludes.clear();
740 m_knownClasses.clear();
741 m_includeBaseNames.clear();
743 if (node->elementIncludes())
744 acceptIncludes(node->elementIncludes());
746 if (node->elementCustomWidgets())
747 TreeWalker::acceptCustomWidgets(node->elementCustomWidgets());
749 add(QLatin1String("QApplication"));
750 add(QLatin1String("QVariant"));
751 add(QLatin1String("QAction"));
753 add(QLatin1String("QButtonGroup")); // ### only if it is really necessary
754 add(QLatin1String("QHeaderView"));
756 if (m_uic->hasExternalPixmap() && m_uic->pixmapFunction() == QLatin1String("qPixmapFromMimeSource")) {
757 qWarning("%s: Warning: The form file has external pixmaps or qPixmapFromMimeSource() set as a pixmap function. "
758 "This requires Qt 3 support, which is disabled. The resulting code will not compile.",
759 qPrintable(m_uic->option().messagePrefix()));
762 TreeWalker::acceptUI(node);
764 writeHeaders(m_globalIncludes, true);
765 writeHeaders(m_localIncludes, false);
767 m_output << QLatin1Char('\n');
770 void WriteIncludes::acceptWidget(DomWidget *node)
772 #if DEBUG_WRITE_INCLUDES
773 fprintf(stderr, "%s '%s'\n", Q_FUNC_INFO, qPrintable(node->attributeClass()));
776 add(node->attributeClass());
777 TreeWalker::acceptWidget(node);
780 void WriteIncludes::acceptLayout(DomLayout *node)
782 add(node->attributeClass());
784 TreeWalker::acceptLayout(node);
787 void WriteIncludes::acceptSpacer(DomSpacer *node)
789 add(QLatin1String("QSpacerItem"));
790 TreeWalker::acceptSpacer(node);
793 void WriteIncludes::acceptProperty(DomProperty *node)
795 if (node->kind() == DomProperty::Date)
796 add(QLatin1String("QDate"));
797 if (node->kind() == DomProperty::Locale)
798 add(QLatin1String("QLocale"));
799 TreeWalker::acceptProperty(node);
802 void WriteIncludes::insertIncludeForClass(const QString &className, QString header, bool global)
804 #if DEBUG_WRITE_INCLUDES
805 fprintf(stderr, "%s %s '%s' %d\n", Q_FUNC_INFO, qPrintable(className), qPrintable(header), global);
809 if (!header.isEmpty())
813 bool isknown = false;
814 for (qint16 i = 0; i < ClassTblSize; i++) {
815 if (ClassTbl[i].klass == className) {
816 header = ClassTbl[i].header;
826 // Quick check by class name to detect includehints provided for custom widgets.
828 QString lowerClassName = className.toLower();
829 static const QString namespaceSeparator = QLatin1String("::");
830 const int namespaceIndex = lowerClassName.lastIndexOf(namespaceSeparator);
831 if (namespaceIndex != -1)
832 lowerClassName.remove(0, namespaceIndex + namespaceSeparator.size());
833 if (m_includeBaseNames.contains(lowerClassName)) {
838 // Last resort: Create default header
839 if (!m_uic->option().implicitIncludes)
841 header = lowerClassName + QLatin1String(".h");
842 #if WARN_HEADER_GENERATOR
843 qWarning("%s: Warning: generated header '%s' for class '%s'.",
844 qPrintable(m_uic->option().messagePrefix()),
845 qPrintable(header), qPrintable(className));
851 if (!header.isEmpty())
852 insertInclude(header, global);
855 void WriteIncludes::add(const QString &className, bool determineHeader, const QString &header, bool global)
857 #if DEBUG_WRITE_INCLUDES
858 fprintf(stderr, "%s %s '%s' %d\n", Q_FUNC_INFO, qPrintable(className), qPrintable(header), global);
861 if (className.isEmpty() || m_knownClasses.contains(className))
864 m_knownClasses.insert(className);
866 if (!m_laidOut && m_uic->customWidgetsInfo()->extends(className, QLatin1String("QToolBox")))
867 add(QLatin1String("QLayout")); // spacing property of QToolBox)
869 if (className == QLatin1String("Line")) { // ### hmm, deprecate me!
870 add(QLatin1String("QFrame"));
875 insertIncludeForClass(className, header, global);
878 void WriteIncludes::acceptCustomWidget(DomCustomWidget *node)
880 const QString className = node->elementClass();
881 if (className.isEmpty())
884 if (const DomScript *domScript = node->elementScript())
885 if (!domScript->text().isEmpty())
888 if (!node->elementHeader() || node->elementHeader()->text().isEmpty()) {
889 add(className, false); // no header specified
891 // custom header unless it is a built-in qt class
894 bool isknown = false;
895 for (qint16 i = 0; i < ClassTblSize; i++) {
896 if (ClassTbl[i].klass == className) {
902 global = node->elementHeader()->attributeLocation().toLower() == QLatin1String("global");
903 header = node->elementHeader()->text();
905 add(className, true, header, global);
909 void WriteIncludes::acceptCustomWidgets(DomCustomWidgets *node)
914 void WriteIncludes::acceptInclude(DomInclude *node)
917 if (node->hasAttributeLocation())
918 global = node->attributeLocation() == QLatin1String("global");
919 insertInclude(node->text(), global);
922 void WriteIncludes::insertInclude(const QString &header, bool global)
924 #if DEBUG_WRITE_INCLUDES
925 fprintf(stderr, "%s %s %d\n", Q_FUNC_INFO, qPrintable(header), global);
928 OrderedSet &includes = global ? m_globalIncludes : m_localIncludes;
929 if (includes.contains(header))
931 // Insert. Also remember base name for quick check of suspicious custom plugins
932 includes.insert(header, false);
933 const QString lowerBaseName = QFileInfo(header).completeBaseName ().toLower();
934 m_includeBaseNames.insert(lowerBaseName);
937 void WriteIncludes::writeHeaders(const OrderedSet &headers, bool global)
939 const QChar openingQuote = global ? QLatin1Char('<') : QLatin1Char('"');
940 const QChar closingQuote = global ? QLatin1Char('>') : QLatin1Char('"');
942 // Check for the old headers 'qslider.h' and replace by 'QtGui/QSlider'
943 foreach (const QString &header, headers.keys()) {
944 if (!header.trimmed().isEmpty()) {
945 m_output << "#include " << openingQuote << header << closingQuote << QLatin1Char('\n');
950 void WriteIncludes::acceptWidgetScripts(const DomScripts &scripts, DomWidget *, const DomWidgets &)
952 if (!scripts.empty()) {
957 void WriteIncludes::activateScripts()
959 if (!m_scriptsActivated) {
960 add(QLatin1String("QScriptEngine"));
961 add(QLatin1String("QDebug"));
962 m_scriptsActivated = true;