spyder-ide / qtpy

Provides an uniform layer to support PyQt5, PySide2, PyQt6, PySide6 with a single codebase
MIT License
983 stars 153 forks source link

Remove `import *` #48

Closed Nodd closed 7 years ago

Nodd commented 8 years ago

Imports should be named instead of using import *. It would help for introspection for example. It was suggester first in https://github.com/spyder-ide/qtpy/issues/35#issuecomment-225395535

The modules to update would be:

ccordoba12 commented 8 years ago

The problem with this request is Qt5, which is always adding new stuff in each release.

I mean, I don't know how we could be compatible across Qt5 releases if we try to import symbols directly instead of using star imports.

goanpeca commented 8 years ago

We need to restrict QtPy to certain versions, so I would suggest to be 5.6 compatible and make a release where we explicitly check that Qt5 is 5.6, otherwise we raise an error. Since conda packages will only support 5.6 (LTS) this seems like a safe choice for now.

ccordoba12 commented 8 years ago

But PyQt 5.7 is already out, and qtpy is not tied to conda in any particular way, so we shouldn't pin Qt to 5.6 :-}

goanpeca commented 8 years ago

In that case I suggest using 5.6 as base and add 5.7 features with an additional if Qt5 == 5.7 ... (and per user request)

ccordoba12 commented 8 years ago

Ok, no problem with that.

goanpeca commented 8 years ago

:+1:

goanpeca commented 8 years ago

@nodd, @ccordoba12 question.

What should we do with items that are present in pyqt4/pyside but NOT in pyqt5?, should we NOT import them? This would be in line with making imports look like qt5 (pyqt5).

Use cases:

Also, are we still supportin Qt4 api v1 ?, if we are not supporting that, then we should also remove SIGNAL, SLOT and similar.

goanpeca commented 8 years ago

This is the content of the different apis (on linux...) and official Qt classes.

# https://doc-snapshots.qt.io/qt5-5.6/modules-cpp.html
# https://doc-snapshots.qt.io/qt5-5.7/modules-cpp.html

# QtCore
QT56_CORE = ['QAbstractAnimation', 'QAbstractEventDispatcher', 'QAbstractEventDispatcher::TimerInfo', 'QAbstractItemModel', 'QAbstractListModel', 'QAbstractNativeEventFilter', 'QAbstractProxyModel', 'QAbstractState', 'QAbstractTableModel', 'QAbstractTransition', 'QAnimationGroup', 'QAssociativeIterable', 'QAtomicInt', 'QAtomicInteger', 'QAtomicPointer', 'QBasicTimer', 'QBitArray', 'QBuffer', 'QByteArray', 'QByteArrayList', 'QByteArrayMatcher', 'QCache', 'QChar', 'QChildEvent', 'QCollator', 'QCollatorSortKey', 'QCommandLineOption', 'QCommandLineParser', 'QContiguousCache', 'QCoreApplication', 'QCryptographicHash', 'QDataStream', 'QDate', 'QDateTime', 'QDebug', 'QDebugStateSaver', 'QDir', 'QDirIterator', 'QDynamicPropertyChangeEvent', 'QEasingCurve', 'QElapsedTimer', 'QEnableSharedFromThis', 'QEvent', 'QEventLoop', 'QEventLoopLocker', 'QEventTransition', 'QException', 'QExplicitlySharedDataPointer', 'QFile', 'QFileDevice', 'QFileInfo', 'QFileSelector', 'QFileSystemWatcher', 'QFinalState', 'QFlag', 'QFlags', 'QFuture', 'QFutureIterator', 'QFutureSynchronizer', 'QFutureWatcher', 'QGenericArgument', 'QGenericReturnArgument', 'QGlobalStatic', 'QHash', 'QHashIterator', 'QHistoryState', 'QIODevice', 'QIdentityProxyModel', 'QItemSelection', 'QItemSelectionModel', 'QItemSelectionRange', 'QJsonArray', 'QJsonDocument', 'QJsonObject', 'QJsonParseError', 'QJsonValue', 'QLatin1Char', 'QLatin1String', 'QLibrary', 'QLibraryInfo', 'QLine', 'QLineF', 'QLinkedList', 'QLinkedListIterator', 'QList', 'QListIterator', 'QLocale', 'QLockFile', 'QLoggingCategory', 'QMap', 'QMap::key_iterator', 'QMapIterator', 'QMargins', 'QMarginsF', 'QMessageAuthenticationCode', 'QMessageLogContext', 'QMessageLogger', 'QMetaClassInfo', 'QMetaEnum', 'QMetaMethod', 'QMetaObject', 'QMetaObject::Connection', 'QMetaProperty', 'QMetaType', 'QMimeData', 'QMimeDatabase', 'QMimeType', 'QModelIndex', 'QMultiHash', 'QMultiMap', 'QMutableHashIterator', 'QMutableLinkedListIterator', 'QMutableListIterator', 'QMutableMapIterator', 'QMutableSetIterator', 'QMutableVectorIterator', 'QMutex', 'QMutexLocker', 'QObject', 'QObjectCleanupHandler', 'QPair', 'QParallelAnimationGroup', 'QPauseAnimation', 'QPersistentModelIndex', 'QPluginLoader', 'QPoint', 'QPointF', 'QPointer', 'QProcess', 'QProcessEnvironment', 'QPropertyAnimation', 'QQueue', 'QReadLocker', 'QReadWriteLock', 'QRect', 'QRectF', 'QRegExp', 'QRegularExpression', 'QRegularExpressionMatch', 'QRegularExpressionMatchIterator', 'QResource', 'QRunnable', 'QSaveFile', 'QScopedArrayPointer', 'QScopedPointer', 'QScopedValueRollback', 'QSemaphore', 'QSequentialAnimationGroup', 'QSequentialIterable', 'QSet', 'QSet::const_iterator', 'QSet::iterator', 'QSetIterator', 'QSettings', 'QSharedData', 'QSharedDataPointer', 'QSharedMemory', 'QSharedPointer', 'QSignalBlocker', 'QSignalMapper', 'QSignalTransition', 'QSize', 'QSizeF', 'QSocketNotifier', 'QSortFilterProxyModel', 'QStack', 'QStandardPaths', 'QState', 'QStateMachine', 'QStateMachine::SignalEvent', 'QStateMachine::WrappedEvent', 'QStaticPlugin', 'QStorageInfo', 'QString', 'QStringList', 'QStringListModel', 'QStringMatcher', 'QStringRef', 'QSysInfo', 'QSystemSemaphore', 'QTemporaryDir', 'QTemporaryFile', 'QTextBoundaryFinder', 'QTextCodec', 'QTextDecoder', 'QTextEncoder', 'QTextStream', 'QThread', 'QThreadPool', 'QThreadStorage', 'QTime', 'QTimeLine', 'QTimeZone', 'QTimeZone::OffsetData', 'QTimer', 'QTimerEvent', 'QTranslator', 'QUnhandledException', 'QUrl', 'QUrlQuery', 'QUuid', 'QVarLengthArray', 'QVariant', 'QVariantAnimation', 'QVector', 'QVectorIterator', 'QVersionNumber', 'QWaitCondition', 'QWeakPointer', 'QWinEventNotifier', 'QWriteLocker', 'QXmlStreamAttribute', 'QXmlStreamAttributes', 'QXmlStreamEntityDeclaration', 'QXmlStreamEntityResolver', 'QXmlStreamNamespaceDeclaration', 'QXmlStreamNotationDeclaration', 'QXmlStreamReader', 'QXmlStreamWriter', 'Qt']
QT57_CORE = ['QAbstractAnimation', 'QAbstractEventDispatcher', 'QAbstractEventDispatcher::TimerInfo', 'QAbstractItemModel', 'QAbstractListModel', 'QAbstractNativeEventFilter', 'QAbstractProxyModel', 'QAbstractState', 'QAbstractTableModel', 'QAbstractTransition', 'QAnimationGroup', 'QAssociativeIterable', 'QAtomicInt', 'QAtomicInteger', 'QAtomicPointer', 'QBasicTimer', 'QBitArray', 'QBuffer', 'QByteArray', 'QByteArrayList', 'QByteArrayMatcher', 'QCache', 'QChar', 'QChildEvent', 'QCollator', 'QCollatorSortKey', 'QCommandLineOption', 'QCommandLineParser', 'QContiguousCache', 'QCoreApplication', 'QCryptographicHash', 'QDataStream', 'QDate', 'QDateTime', 'QDebug', 'QDebugStateSaver', 'QDir', 'QDirIterator', 'QDynamicPropertyChangeEvent', 'QEasingCurve', 'QElapsedTimer', 'QEnableSharedFromThis', 'QEvent', 'QEventLoop', 'QEventLoopLocker', 'QEventTransition', 'QException', 'QExplicitlySharedDataPointer', 'QFile', 'QFileDevice', 'QFileInfo', 'QFileSelector', 'QFileSystemWatcher', 'QFinalState', 'QFlag', 'QFlags', 'QFuture', 'QFutureIterator', 'QFutureSynchronizer', 'QFutureWatcher', 'QGenericArgument', 'QGenericReturnArgument', 'QGlobalStatic', 'QHash', 'QHashIterator', 'QHistoryState', 'QIODevice', 'QIdentityProxyModel', 'QItemSelection', 'QItemSelectionModel', 'QItemSelectionRange', 'QJsonArray', 'QJsonDocument', 'QJsonObject', 'QJsonParseError', 'QJsonValue', 'QLatin1Char', 'QLatin1String', 'QLibrary', 'QLibraryInfo', 'QLine', 'QLineF', 'QLinkedList', 'QLinkedListIterator', 'QList', 'QListIterator', 'QLocale', 'QLockFile', 'QLoggingCategory', 'QMap', 'QMap::key_iterator', 'QMapIterator', 'QMargins', 'QMarginsF', 'QMessageAuthenticationCode', 'QMessageLogContext', 'QMessageLogger', 'QMetaClassInfo', 'QMetaEnum', 'QMetaMethod', 'QMetaObject', 'QMetaObject::Connection', 'QMetaProperty', 'QMetaType', 'QMimeData', 'QMimeDatabase', 'QMimeType', 'QModelIndex', 'QMultiHash', 'QMultiMap', 'QMutableHashIterator', 'QMutableLinkedListIterator', 'QMutableListIterator', 'QMutableMapIterator', 'QMutableSetIterator', 'QMutableVectorIterator', 'QMutex', 'QMutexLocker', 'QObject', 'QObjectCleanupHandler', 'QPair', 'QParallelAnimationGroup', 'QPauseAnimation', 'QPersistentModelIndex', 'QPluginLoader', 'QPoint', 'QPointF', 'QPointer', 'QProcess', 'QProcessEnvironment', 'QPropertyAnimation', 'QQueue', 'QReadLocker', 'QReadWriteLock', 'QRect', 'QRectF', 'QRegExp', 'QRegularExpression', 'QRegularExpressionMatch', 'QRegularExpressionMatchIterator', 'QResource', 'QRunnable', 'QSaveFile', 'QScopedArrayPointer', 'QScopedPointer', 'QScopedValueRollback', 'QSemaphore', 'QSequentialAnimationGroup', 'QSequentialIterable', 'QSet', 'QSet::const_iterator', 'QSet::iterator', 'QSetIterator', 'QSettings', 'QSharedData', 'QSharedDataPointer', 'QSharedMemory', 'QSharedPointer', 'QSignalBlocker', 'QSignalMapper', 'QSignalTransition', 'QSize', 'QSizeF', 'QSocketNotifier', 'QSortFilterProxyModel', 'QStack', 'QStandardPaths', 'QState', 'QStateMachine', 'QStateMachine::SignalEvent', 'QStateMachine::WrappedEvent', 'QStaticPlugin', 'QStorageInfo', 'QString', 'QStringList', 'QStringListModel', 'QStringMatcher', 'QStringRef', 'QSysInfo', 'QSystemSemaphore', 'QTemporaryDir', 'QTemporaryFile', 'QTextBoundaryFinder', 'QTextCodec', 'QTextDecoder', 'QTextEncoder', 'QTextStream', 'QThread', 'QThreadPool', 'QThreadStorage', 'QTime', 'QTimeLine', 'QTimeZone', 'QTimeZone::OffsetData', 'QTimer', 'QTimerEvent', 'QTranslator', 'QUnhandledException', 'QUrl', 'QUrlQuery', 'QUuid', 'QVarLengthArray', 'QVariant', 'QVariantAnimation', 'QVector', 'QVectorIterator', 'QVersionNumber', 'QWaitCondition', 'QWeakPointer', 'QWinEventNotifier', 'QWriteLocker', 'QXmlStreamAttribute', 'QXmlStreamAttributes', 'QXmlStreamEntityDeclaration', 'QXmlStreamEntityResolver', 'QXmlStreamNamespaceDeclaration', 'QXmlStreamNotationDeclaration', 'QXmlStreamReader', 'QXmlStreamWriter', 'Qt']
pyside_core = ['ClassInfo', 'LicensedDeclarative', 'LicensedMultimedia', 'LicensedOpenVG', 'MetaFunction', 'Property', 'QAbstractAnimation', 'QAbstractEventDispatcher', 'QAbstractFileEngine', 'QAbstractFileEngineHandler', 'QAbstractFileEngineIterator', 'QAbstractItemModel', 'QAbstractListModel', 'QAbstractState', 'QAbstractTableModel', 'QAbstractTransition', 'QAnimationGroup', 'QBasicTimer', 'QBitArray', 'QBuffer', 'QByteArray', 'QByteArrayMatcher', 'QChildEvent', 'QCoreApplication', 'QCryptographicHash', 'QDataStream', 'QDate', 'QDateTime', 'QDir', 'QDirIterator', 'QDynamicPropertyChangeEvent', 'QEasingCurve', 'QElapsedTimer', 'QEvent', 'QEventLoop', 'QEventTransition', 'QFSFileEngine', 'QFactoryInterface', 'QFile', 'QFileInfo', 'QFileSystemWatcher', 'QFinalState', 'QGenericArgument', 'QGenericReturnArgument', 'QHistoryState', 'QIODevice', 'QLibraryInfo', 'QLine', 'QLineF', 'QLocale', 'QMargins', 'QMetaClassInfo', 'QMetaEnum', 'QMetaMethod', 'QMetaObject', 'QMetaProperty', 'QMimeData', 'QModelIndex', 'QMutex', 'QMutexLocker', 'QObject', 'QParallelAnimationGroup', 'QPauseAnimation', 'QPersistentModelIndex', 'QPluginLoader', 'QPoint', 'QPointF', 'QProcess', 'QProcessEnvironment', 'QPropertyAnimation', 'QReadLocker', 'QReadWriteLock', 'QRect', 'QRectF', 'QRegExp', 'QResource', 'QRunnable', 'QSemaphore', 'QSequentialAnimationGroup', 'QSettings', 'QSignalMapper', 'QSignalTransition', 'QSize', 'QSizeF', 'QSocketNotifier', 'QState', 'QStateMachine', 'QSysInfo', 'QSystemLocale', 'QSystemSemaphore', 'QT_TRANSLATE_NOOP', 'QT_TRANSLATE_NOOP3', 'QT_TRANSLATE_NOOP_UTF8', 'QT_TR_NOOP', 'QT_TR_NOOP_UTF8', 'QTemporaryFile', 'QTextBoundaryFinder', 'QTextCodec', 'QTextDecoder', 'QTextEncoder', 'QTextStream', 'QTextStreamManipulator', 'QThread', 'QThreadPool', 'QTime', 'QTimeLine', 'QTimer', 'QTimerEvent', 'QTranslator', 'QUrl', 'QUuid', 'QVariantAnimation', 'QWaitCondition', 'QWriteLocker', 'QXmlStreamAttribute', 'QXmlStreamAttributes', 'QXmlStreamEntityDeclaration', 'QXmlStreamEntityResolver', 'QXmlStreamNamespaceDeclaration', 'QXmlStreamNotationDeclaration', 'QXmlStreamReader', 'QXmlStreamWriter', 'Qt', 'QtConcurrent', 'QtCriticalMsg', 'QtDebugMsg', 'QtFatalMsg', 'QtMsgType', 'QtSystemMsg', 'QtValidLicenseForDeclarativeModule', 'QtValidLicenseForMultimediaModule', 'QtValidLicenseForOpenVGModule', 'QtWarningMsg', 'Signal', 'Slot', 'qAbs', 'qAcos', 'qAddPostRoutine', 'qAsin', 'qAtan', 'qAtan2', 'qChecksum', 'qCritical', 'qDebug', 'qExp', 'qFabs', 'qFastCos', 'qFastSin', 'qFatal', 'qFuzzyCompare', 'qFuzzyIsNull', 'qInstallMsgHandler', 'qIsFinite', 'qIsInf', 'qIsNaN', 'qIsNull', 'qRegisterResourceData', 'qRound', 'qTan', 'qUnregisterResourceData', 'qVersion', 'qWarning', 'qrand', 'qsrand', 'qtTrId']
pyqt4_core = ['PYQT_CONFIGURATION', 'PYQT_VERSION', 'PYQT_VERSION_STR', 'QAbstractAnimation', 'QAbstractEventDispatcher', 'QAbstractFileEngine', 'QAbstractFileEngineHandler', 'QAbstractFileEngineIterator', 'QAbstractItemModel', 'QAbstractListModel', 'QAbstractState', 'QAbstractTableModel', 'QAbstractTransition', 'QAnimationGroup', 'QBasicTimer', 'QBitArray', 'QBuffer', 'QByteArray', 'QByteArrayMatcher', 'QChildEvent', 'QCoreApplication', 'QCryptographicHash', 'QDataStream', 'QDate', 'QDateTime', 'QDir', 'QDirIterator', 'QDynamicPropertyChangeEvent', 'QEasingCurve', 'QElapsedTimer', 'QEvent', 'QEventLoop', 'QEventTransition', 'QFSFileEngine', 'QFile', 'QFileInfo', 'QFileSystemWatcher', 'QFinalState', 'QGenericArgument', 'QGenericReturnArgument', 'QHistoryState', 'QIODevice', 'QLibrary', 'QLibraryInfo', 'QLine', 'QLineF', 'QLocale', 'QMargins', 'QMetaClassInfo', 'QMetaEnum', 'QMetaMethod', 'QMetaObject', 'QMetaProperty', 'QMetaType', 'QMimeData', 'QModelIndex', 'QMutex', 'QMutexLocker', 'QObject', 'QObjectCleanupHandler', 'QParallelAnimationGroup', 'QPauseAnimation', 'QPersistentModelIndex', 'QPluginLoader', 'QPoint', 'QPointF', 'QProcess', 'QProcessEnvironment', 'QPropertyAnimation', 'QPyNullVariant', 'QReadLocker', 'QReadWriteLock', 'QRect', 'QRectF', 'QRegExp', 'QResource', 'QRunnable', 'QSemaphore', 'QSequentialAnimationGroup', 'QSettings', 'QSharedMemory', 'QSignalMapper', 'QSignalTransition', 'QSize', 'QSizeF', 'QSocketNotifier', 'QState', 'QStateMachine', 'QSysInfo', 'QSystemLocale', 'QSystemSemaphore', 'QT_TRANSLATE_NOOP', 'QT_TR_NOOP', 'QT_TR_NOOP_UTF8', 'QT_VERSION', 'QT_VERSION_STR', 'QTemporaryFile', 'QTextBoundaryFinder', 'QTextCodec', 'QTextDecoder', 'QTextEncoder', 'QTextStream', 'QTextStreamManipulator', 'QThread', 'QThreadPool', 'QTime', 'QTimeLine', 'QTimer', 'QTimerEvent', 'QTranslator', 'QUrl', 'QUuid', 'QVariant', 'QVariantAnimation', 'QWaitCondition', 'QWriteLocker', 'QXmlStreamAttribute', 'QXmlStreamAttributes', 'QXmlStreamEntityDeclaration', 'QXmlStreamEntityResolver', 'QXmlStreamNamespaceDeclaration', 'QXmlStreamNotationDeclaration', 'QXmlStreamReader', 'QXmlStreamWriter', 'Q_ARG', 'Q_CLASSINFO', 'Q_ENUMS', 'Q_FLAGS', 'Q_RETURN_ARG', 'Qt', 'QtCriticalMsg', 'QtDebugMsg', 'QtFatalMsg', 'QtMsgType', 'QtSystemMsg', 'QtWarningMsg', 'SIGNAL', 'SLOT', 'bin_', 'bom', 'center', 'dec', 'endl', 'fixed', 'flush', 'forcepoint', 'forcesign', 'hex_', 'left', 'lowercasebase', 'lowercasedigits', 'noforcepoint', 'noforcesign', 'noshowbase', 'oct_', 'pyqtBoundSignal', 'pyqtPickleProtocol', 'pyqtProperty', 'pyqtRemoveInputHook', 'pyqtRestoreInputHook', 'pyqtSetPickleProtocol', 'pyqtSignal', 'pyqtSignature', 'pyqtSlot', 'pyqtWrapperType', 'qAbs', 'qAddPostRoutine', 'qChecksum', 'qCompress', 'qCritical', 'qDebug', 'qErrnoWarning', 'qFatal', 'qFuzzyCompare', 'qInf', 'qInstallMsgHandler', 'qIsFinite', 'qIsInf', 'qIsNaN', 'qIsNull', 'qQNaN', 'qRegisterResourceData', 'qRemovePostRoutine', 'qRound', 'qRound64', 'qSNaN', 'qSetFieldWidth', 'qSetPadChar', 'qSetRealNumberPrecision', 'qSharedBuild', 'qSwap', 'qUncompress', 'qUnregisterResourceData', 'qVersion', 'qWarning', 'qrand', 'qsrand', 'reset', 'right', 'scientific', 'showbase', 'uppercasebase', 'uppercasedigits', 'ws']
pyqt5_core = ['PYQT_CONFIGURATION', 'PYQT_VERSION', 'PYQT_VERSION_STR', 'QAbstractAnimation', 'QAbstractEventDispatcher', 'QAbstractItemModel', 'QAbstractListModel', 'QAbstractNativeEventFilter', 'QAbstractProxyModel', 'QAbstractState', 'QAbstractTableModel', 'QAbstractTransition', 'QAnimationGroup', 'QBasicTimer', 'QBitArray', 'QBuffer', 'QByteArray', 'QByteArrayMatcher', 'QChildEvent', 'QCollator', 'QCollatorSortKey', 'QCommandLineOption', 'QCommandLineParser', 'QCoreApplication', 'QCryptographicHash', 'QDataStream', 'QDate', 'QDateTime', 'QDir', 'QDirIterator', 'QDynamicPropertyChangeEvent', 'QEasingCurve', 'QElapsedTimer', 'QEvent', 'QEventLoop', 'QEventLoopLocker', 'QEventTransition', 'QFile', 'QFileDevice', 'QFileInfo', 'QFileSelector', 'QFileSystemWatcher', 'QFinalState', 'QGenericArgument', 'QGenericReturnArgument', 'QHistoryState', 'QIODevice', 'QIdentityProxyModel', 'QItemSelection', 'QItemSelectionModel', 'QItemSelectionRange', 'QJsonDocument', 'QJsonParseError', 'QJsonValue', 'QLibrary', 'QLibraryInfo', 'QLine', 'QLineF', 'QLocale', 'QLockFile', 'QMargins', 'QMarginsF', 'QMessageAuthenticationCode', 'QMessageLogContext', 'QMessageLogger', 'QMetaClassInfo', 'QMetaEnum', 'QMetaMethod', 'QMetaObject', 'QMetaProperty', 'QMetaType', 'QMimeData', 'QMimeDatabase', 'QMimeType', 'QModelIndex', 'QMutex', 'QMutexLocker', 'QObject', 'QObjectCleanupHandler', 'QParallelAnimationGroup', 'QPauseAnimation', 'QPersistentModelIndex', 'QPluginLoader', 'QPoint', 'QPointF', 'QProcess', 'QProcessEnvironment', 'QPropertyAnimation', 'QReadLocker', 'QReadWriteLock', 'QRect', 'QRectF', 'QRegExp', 'QRegularExpression', 'QRegularExpressionMatch', 'QRegularExpressionMatchIterator', 'QResource', 'QRunnable', 'QSaveFile', 'QSemaphore', 'QSequentialAnimationGroup', 'QSettings', 'QSharedMemory', 'QSignalBlocker', 'QSignalMapper', 'QSignalTransition', 'QSize', 'QSizeF', 'QSocketNotifier', 'QSortFilterProxyModel', 'QStandardPaths', 'QState', 'QStateMachine', 'QStorageInfo', 'QStringListModel', 'QSysInfo', 'QSystemSemaphore', 'QT_TRANSLATE_NOOP', 'QT_TR_NOOP', 'QT_TR_NOOP_UTF8', 'QT_VERSION', 'QT_VERSION_STR', 'QTemporaryDir', 'QTemporaryFile', 'QTextBoundaryFinder', 'QTextCodec', 'QTextDecoder', 'QTextEncoder', 'QTextStream', 'QTextStreamManipulator', 'QThread', 'QThreadPool', 'QTime', 'QTimeLine', 'QTimeZone', 'QTimer', 'QTimerEvent', 'QTranslator', 'QUrl', 'QUrlQuery', 'QUuid', 'QVariant', 'QVariantAnimation', 'QVersionNumber', 'QWaitCondition', 'QWriteLocker', 'QXmlStreamAttribute', 'QXmlStreamAttributes', 'QXmlStreamEntityDeclaration', 'QXmlStreamEntityResolver', 'QXmlStreamNamespaceDeclaration', 'QXmlStreamNotationDeclaration', 'QXmlStreamReader', 'QXmlStreamWriter', 'Q_ARG', 'Q_CLASSINFO', 'Q_ENUMS', 'Q_FLAGS', 'Q_RETURN_ARG', 'Qt', 'QtCriticalMsg', 'QtDebugMsg', 'QtFatalMsg', 'QtInfoMsg', 'QtMsgType', 'QtSystemMsg', 'QtWarningMsg', 'bin_', 'bom', 'center', 'dec', 'endl', 'fixed', 'flush', 'forcepoint', 'forcesign', 'hex_', 'left', 'lowercasebase', 'lowercasedigits', 'noforcepoint', 'noforcesign', 'noshowbase', 'oct_', 'pyqtBoundSignal', 'pyqtPickleProtocol', 'pyqtProperty', 'pyqtRemoveInputHook', 'pyqtRestoreInputHook', 'pyqtSetPickleProtocol', 'pyqtSignal', 'pyqtSlot', 'pyqtWrapperType', 'qAbs', 'qAddPostRoutine', 'qAddPreRoutine', 'qChecksum', 'qCompress', 'qCritical', 'qDebug', 'qErrnoWarning', 'qFatal', 'qFloatDistance', 'qFormatLogMessage', 'qFuzzyCompare', 'qInf', 'qInstallMessageHandler', 'qIsFinite', 'qIsInf', 'qIsNaN', 'qIsNull', 'qQNaN', 'qRegisterResourceData', 'qRemovePostRoutine', 'qRound', 'qRound64', 'qSNaN', 'qSetFieldWidth', 'qSetMessagePattern', 'qSetPadChar', 'qSetRealNumberPrecision', 'qSharedBuild', 'qUncompress', 'qUnregisterResourceData', 'qVersion', 'qWarning', 'qrand', 'qsrand', 'reset', 'right', 'scientific', 'showbase', 'uppercasebase', 'uppercasedigits', 'ws']

# QtGui
QT56_GUI = ['QAbstractOpenGLFunctions', 'QAbstractTextDocumentLayout', 'QAbstractTextDocumentLayout::PaintContext', 'QAbstractTextDocumentLayout::Selection', 'QAccessible', 'QAccessible::State', 'QAccessibleEditableTextInterface', 'QAccessibleEvent', 'QAccessibleImageInterface', 'QAccessibleInterface', 'QAccessibleObject', 'QAccessibleStateChangeEvent', 'QAccessibleTableCellInterface', 'QAccessibleTableModelChangeEvent', 'QAccessibleTextCursorEvent', 'QAccessibleTextInsertEvent', 'QAccessibleTextInterface', 'QAccessibleTextRemoveEvent', 'QAccessibleTextSelectionEvent', 'QAccessibleTextUpdateEvent', 'QAccessibleValueChangeEvent', 'QAccessibleValueInterface', 'QActionEvent', 'QBackingStore', 'QBitmap', 'QBrush', 'QClipboard', 'QCloseEvent', 'QColor', 'QConicalGradient', 'QContextMenuEvent', 'QCursor', 'QDesktopServices', 'QDoubleValidator', 'QDrag', 'QDragEnterEvent', 'QDragLeaveEvent', 'QDragMoveEvent', 'QDropEvent', 'QEnterEvent', 'QExposeEvent', 'QFileOpenEvent', 'QFocusEvent', 'QFont', 'QFontDatabase', 'QFontInfo', 'QFontMetrics', 'QFontMetricsF', 'QGenericMatrix', 'QGenericPlugin', 'QGenericPluginFactory', 'QGlyphRun', 'QGradient', 'QGuiApplication', 'QHelpEvent', 'QHideEvent', 'QHoverEvent', 'QIcon', 'QIconDragEvent', 'QIconEngine', 'QIconEngine::AvailableSizesArgument', 'QIconEnginePlugin', 'QImage', 'QImageIOHandler', 'QImageIOPlugin', 'QImageReader', 'QImageWriter', 'QInputEvent', 'QInputMethod', 'QInputMethodEvent', 'QInputMethodEvent::Attribute', 'QInputMethodQueryEvent', 'QIntValidator', 'QKeyEvent', 'QKeySequence', 'QLinearGradient', 'QMatrix4x4', 'QMouseEvent', 'QMoveEvent', 'QMovie', 'QNativeGestureEvent', 'QOffscreenSurface', 'QOpenGLBuffer', 'QOpenGLContext', 'QOpenGLContextGroup', 'QOpenGLDebugLogger', 'QOpenGLDebugMessage', 'QOpenGLExtraFunctions', 'QOpenGLFramebufferObject', 'QOpenGLFramebufferObjectFormat', 'QOpenGLFunctions', 'QOpenGLFunctions_1_0', 'QOpenGLFunctions_1_1', 'QOpenGLFunctions_1_2', 'QOpenGLFunctions_1_3', 'QOpenGLFunctions_1_4', 'QOpenGLFunctions_1_5', 'QOpenGLFunctions_2_0', 'QOpenGLFunctions_2_1', 'QOpenGLFunctions_3_0', 'QOpenGLFunctions_3_1', 'QOpenGLFunctions_3_2_Compatibility', 'QOpenGLFunctions_3_2_Core', 'QOpenGLFunctions_3_3_Compatibility', 'QOpenGLFunctions_3_3_Core', 'QOpenGLFunctions_4_0_Compatibility', 'QOpenGLFunctions_4_0_Core', 'QOpenGLFunctions_4_1_Compatibility', 'QOpenGLFunctions_4_1_Core', 'QOpenGLFunctions_4_2_Compatibility', 'QOpenGLFunctions_4_2_Core', 'QOpenGLFunctions_4_3_Compatibility', 'QOpenGLFunctions_4_3_Core', 'QOpenGLFunctions_4_4_Compatibility', 'QOpenGLFunctions_4_4_Core', 'QOpenGLFunctions_4_5_Compatibility', 'QOpenGLFunctions_4_5_Core', 'QOpenGLFunctions_ES2', 'QOpenGLPaintDevice', 'QOpenGLShader', 'QOpenGLShaderProgram', 'QOpenGLTexture', 'QOpenGLTimeMonitor', 'QOpenGLTimerQuery', 'QOpenGLVersionProfile', 'QOpenGLVertexArrayObject', 'QOpenGLVertexArrayObject::Binder', 'QOpenGLWindow', 'QPageLayout', 'QPageSize', 'QPagedPaintDevice', 'QPaintDevice', 'QPaintDeviceWindow', 'QPaintEngine', 'QPaintEngineState', 'QPaintEvent', 'QPainter', 'QPainter::PixmapFragment', 'QPainterPath', 'QPainterPath::Element', 'QPainterPathStroker', 'QPalette', 'QPdfWriter', 'QPen', 'QPicture', 'QPixelFormat', 'QPixmap', 'QPixmapCache', 'QPixmapCache::Key', 'QPlatformGraphicsBuffer', 'QPlatformSurfaceEvent', 'QPlatformSystemTrayIcon', 'QPolygon', 'QPolygonF', 'QQuaternion', 'QRadialGradient', 'QRasterPaintEngine', 'QRasterWindow', 'QRawFont', 'QRegExpValidator', 'QRegion', 'QResizeEvent', 'QRgba64', 'QScreen', 'QScrollEvent', 'QScrollPrepareEvent', 'QSessionManager', 'QShortcutEvent', 'QShowEvent', 'QStandardItem', 'QStandardItemModel', 'QStaticText', 'QStatusTipEvent', 'QStyleHints', 'QSupportedWritingSystems', 'QSurface', 'QSurfaceFormat', 'QSyntaxHighlighter', 'QTabletEvent', 'QTextBlock', 'QTextBlock::iterator', 'QTextBlockFormat', 'QTextBlockGroup', 'QTextBlockUserData', 'QTextCharFormat', 'QTextCursor', 'QTextDocument', 'QTextDocumentFragment', 'QTextDocumentWriter', 'QTextFormat', 'QTextFragment', 'QTextFrame', 'QTextFrameFormat', 'QTextImageFormat', 'QTextInlineObject', 'QTextItem', 'QTextLayout', 'QTextLayout::FormatRange', 'QTextLength', 'QTextLine', 'QTextList', 'QTextListFormat', 'QTextObject', 'QTextObjectInterface', 'QTextOption', 'QTextOption::Tab', 'QTextTable', 'QTextTableCell', 'QTextTableCellFormat', 'QTextTableFormat', 'QTouchDevice', 'QTouchEvent', 'QTouchEvent::TouchPoint', 'QTransform', 'QValidator', 'QVector2D', 'QVector3D', 'QVector4D', 'QWhatsThisClickedEvent', 'QWheelEvent', 'QWindow', 'QWindowStateChangeEvent']
QT57_GUI = ['QAbstractOpenGLFunctions', 'QAbstractTextDocumentLayout', 'QAbstractTextDocumentLayout::PaintContext', 'QAbstractTextDocumentLayout::Selection', 'QAccessible', 'QAccessible::State', 'QAccessibleEditableTextInterface', 'QAccessibleEvent', 'QAccessibleImageInterface', 'QAccessibleInterface', 'QAccessibleObject', 'QAccessibleStateChangeEvent', 'QAccessibleTableCellInterface', 'QAccessibleTableModelChangeEvent', 'QAccessibleTextCursorEvent', 'QAccessibleTextInsertEvent', 'QAccessibleTextInterface', 'QAccessibleTextRemoveEvent', 'QAccessibleTextSelectionEvent', 'QAccessibleTextUpdateEvent', 'QAccessibleValueChangeEvent', 'QAccessibleValueInterface', 'QActionEvent', 'QBackingStore', 'QBitmap', 'QBrush', 'QClipboard', 'QCloseEvent', 'QColor', 'QConicalGradient', 'QContextMenuEvent', 'QCursor', 'QDesktopServices', 'QDoubleValidator', 'QDrag', 'QDragEnterEvent', 'QDragLeaveEvent', 'QDragMoveEvent', 'QDropEvent', 'QEnterEvent', 'QExposeEvent', 'QFileOpenEvent', 'QFocusEvent', 'QFont', 'QFontDatabase', 'QFontInfo', 'QFontMetrics', 'QFontMetricsF', 'QGenericMatrix', 'QGenericPlugin', 'QGenericPluginFactory', 'QGlyphRun', 'QGradient', 'QGuiApplication', 'QHelpEvent', 'QHideEvent', 'QHoverEvent', 'QIcon', 'QIconDragEvent', 'QIconEngine', 'QIconEngine::AvailableSizesArgument', 'QIconEnginePlugin', 'QImage', 'QImageIOHandler', 'QImageIOPlugin', 'QImageReader', 'QImageWriter', 'QInputEvent', 'QInputMethod', 'QInputMethodEvent', 'QInputMethodEvent::Attribute', 'QInputMethodQueryEvent', 'QIntValidator', 'QKeyEvent', 'QKeySequence', 'QLinearGradient', 'QMatrix4x4', 'QMouseEvent', 'QMoveEvent', 'QMovie', 'QNativeGestureEvent', 'QOffscreenSurface', 'QOpenGLBuffer', 'QOpenGLContext', 'QOpenGLContextGroup', 'QOpenGLDebugLogger', 'QOpenGLDebugMessage', 'QOpenGLExtraFunctions', 'QOpenGLFramebufferObject', 'QOpenGLFramebufferObjectFormat', 'QOpenGLFunctions', 'QOpenGLFunctions_1_0', 'QOpenGLFunctions_1_1', 'QOpenGLFunctions_1_2', 'QOpenGLFunctions_1_3', 'QOpenGLFunctions_1_4', 'QOpenGLFunctions_1_5', 'QOpenGLFunctions_2_0', 'QOpenGLFunctions_2_1', 'QOpenGLFunctions_3_0', 'QOpenGLFunctions_3_1', 'QOpenGLFunctions_3_2_Compatibility', 'QOpenGLFunctions_3_2_Core', 'QOpenGLFunctions_3_3_Compatibility', 'QOpenGLFunctions_3_3_Core', 'QOpenGLFunctions_4_0_Compatibility', 'QOpenGLFunctions_4_0_Core', 'QOpenGLFunctions_4_1_Compatibility', 'QOpenGLFunctions_4_1_Core', 'QOpenGLFunctions_4_2_Compatibility', 'QOpenGLFunctions_4_2_Core', 'QOpenGLFunctions_4_3_Compatibility', 'QOpenGLFunctions_4_3_Core', 'QOpenGLFunctions_4_4_Compatibility', 'QOpenGLFunctions_4_4_Core', 'QOpenGLFunctions_4_5_Compatibility', 'QOpenGLFunctions_4_5_Core', 'QOpenGLFunctions_ES2', 'QOpenGLPaintDevice', 'QOpenGLShader', 'QOpenGLShaderProgram', 'QOpenGLTexture', 'QOpenGLTimeMonitor', 'QOpenGLTimerQuery', 'QOpenGLVersionProfile', 'QOpenGLVertexArrayObject', 'QOpenGLVertexArrayObject::Binder', 'QOpenGLWindow', 'QPageLayout', 'QPageSize', 'QPagedPaintDevice', 'QPaintDevice', 'QPaintDeviceWindow', 'QPaintEngine', 'QPaintEngineState', 'QPaintEvent', 'QPainter', 'QPainter::PixmapFragment', 'QPainterPath', 'QPainterPath::Element', 'QPainterPathStroker', 'QPalette', 'QPdfWriter', 'QPen', 'QPicture', 'QPixelFormat', 'QPixmap', 'QPixmapCache', 'QPixmapCache::Key', 'QPlatformGraphicsBuffer', 'QPlatformSurfaceEvent', 'QPlatformSystemTrayIcon', 'QPolygon', 'QPolygonF', 'QQuaternion', 'QRadialGradient', 'QRasterPaintEngine', 'QRasterWindow', 'QRawFont', 'QRegExpValidator', 'QRegion', 'QResizeEvent', 'QRgba64', 'QScreen', 'QScrollEvent', 'QScrollPrepareEvent', 'QSessionManager', 'QShortcutEvent', 'QShowEvent', 'QStandardItem', 'QStandardItemModel', 'QStaticText', 'QStatusTipEvent', 'QStyleHints', 'QSupportedWritingSystems', 'QSurface', 'QSurfaceFormat', 'QSyntaxHighlighter', 'QTabletEvent', 'QTextBlock', 'QTextBlock::iterator', 'QTextBlockFormat', 'QTextBlockGroup', 'QTextBlockUserData', 'QTextCharFormat', 'QTextCursor', 'QTextDocument', 'QTextDocumentFragment', 'QTextDocumentWriter', 'QTextFormat', 'QTextFragment', 'QTextFrame', 'QTextFrameFormat', 'QTextImageFormat', 'QTextInlineObject', 'QTextItem', 'QTextLayout', 'QTextLayout::FormatRange', 'QTextLength', 'QTextLine', 'QTextList', 'QTextListFormat', 'QTextObject', 'QTextObjectInterface', 'QTextOption', 'QTextOption::Tab', 'QTextTable', 'QTextTableCell', 'QTextTableCellFormat', 'QTextTableFormat', 'QTouchDevice', 'QTouchEvent', 'QTouchEvent::TouchPoint', 'QTransform', 'QValidator', 'QVector2D', 'QVector3D', 'QVector4D', 'QWhatsThisClickedEvent', 'QWheelEvent', 'QWindow', 'QWindowStateChangeEvent']
pyside_gui = ['QAbstractButton', 'QAbstractGraphicsShapeItem', 'QAbstractItemDelegate', 'QAbstractItemView', 'QAbstractPageSetupDialog', 'QAbstractPrintDialog', 'QAbstractProxyModel', 'QAbstractScrollArea', 'QAbstractSlider', 'QAbstractSpinBox', 'QAbstractTextDocumentLayout', 'QAccessibleEvent', 'QAction', 'QActionEvent', 'QActionGroup', 'QApplication', 'QBitmap', 'QBoxLayout', 'QBrush', 'QButtonGroup', 'QCDEStyle', 'QCalendarWidget', 'QCheckBox', 'QCleanlooksStyle', 'QClipboard', 'QClipboardEvent', 'QCloseEvent', 'QColor', 'QColorDialog', 'QColumnView', 'QComboBox', 'QCommandLinkButton', 'QCommonStyle', 'QCompleter', 'QConicalGradient', 'QContextMenuEvent', 'QCursor', 'QDataWidgetMapper', 'QDateEdit', 'QDateTimeEdit', 'QDesktopServices', 'QDesktopWidget', 'QDial', 'QDialog', 'QDialogButtonBox', 'QDirModel', 'QDockWidget', 'QDoubleSpinBox', 'QDoubleValidator', 'QDrag', 'QDragEnterEvent', 'QDragLeaveEvent', 'QDragMoveEvent', 'QDropEvent', 'QErrorMessage', 'QFileDialog', 'QFileIconProvider', 'QFileOpenEvent', 'QFileSystemModel', 'QFocusEvent', 'QFocusFrame', 'QFont', 'QFontComboBox', 'QFontDatabase', 'QFontDialog', 'QFontInfo', 'QFontMetrics', 'QFontMetricsF', 'QFormLayout', 'QFrame', 'QGesture', 'QGestureEvent', 'QGestureRecognizer', 'QGradient', 'QGraphicsAnchor', 'QGraphicsAnchorLayout', 'QGraphicsBlurEffect', 'QGraphicsColorizeEffect', 'QGraphicsDropShadowEffect', 'QGraphicsEffect', 'QGraphicsEllipseItem', 'QGraphicsGridLayout', 'QGraphicsItem', 'QGraphicsItemAnimation', 'QGraphicsItemGroup', 'QGraphicsLayout', 'QGraphicsLayoutItem', 'QGraphicsLineItem', 'QGraphicsLinearLayout', 'QGraphicsObject', 'QGraphicsOpacityEffect', 'QGraphicsPathItem', 'QGraphicsPixmapItem', 'QGraphicsPolygonItem', 'QGraphicsProxyWidget', 'QGraphicsRectItem', 'QGraphicsRotation', 'QGraphicsScale', 'QGraphicsScene', 'QGraphicsSceneContextMenuEvent', 'QGraphicsSceneDragDropEvent', 'QGraphicsSceneEvent', 'QGraphicsSceneHelpEvent', 'QGraphicsSceneHoverEvent', 'QGraphicsSceneMouseEvent', 'QGraphicsSceneMoveEvent', 'QGraphicsSceneResizeEvent', 'QGraphicsSceneWheelEvent', 'QGraphicsSimpleTextItem', 'QGraphicsTextItem', 'QGraphicsTransform', 'QGraphicsView', 'QGraphicsWidget', 'QGridLayout', 'QGroupBox', 'QHBoxLayout', 'QHeaderView', 'QHelpEvent', 'QHideEvent', 'QHoverEvent', 'QIcon', 'QIconDragEvent', 'QIconEngine', 'QIconEngineV2', 'QImage', 'QImageIOHandler', 'QImageReader', 'QImageWriter', 'QInputContext', 'QInputContextFactory', 'QInputDialog', 'QInputEvent', 'QInputMethodEvent', 'QIntValidator', 'QItemDelegate', 'QItemEditorCreatorBase', 'QItemEditorFactory', 'QItemSelection', 'QItemSelectionModel', 'QItemSelectionRange', 'QKeyEvent', 'QKeyEventTransition', 'QKeySequence', 'QLCDNumber', 'QLabel', 'QLayout', 'QLayoutItem', 'QLineEdit', 'QLinearGradient', 'QListView', 'QListWidget', 'QListWidgetItem', 'QMainWindow', 'QMatrix', 'QMatrix2x2', 'QMatrix2x3', 'QMatrix2x4', 'QMatrix3x2', 'QMatrix3x3', 'QMatrix3x4', 'QMatrix4x2', 'QMatrix4x3', 'QMatrix4x4', 'QMdiArea', 'QMdiSubWindow', 'QMenu', 'QMenuBar', 'QMessageBox', 'QMotifStyle', 'QMouseEvent', 'QMouseEventTransition', 'QMoveEvent', 'QMovie', 'QPageSetupDialog', 'QPaintDevice', 'QPaintEngine', 'QPaintEngineState', 'QPaintEvent', 'QPainter', 'QPainterPath', 'QPainterPathStroker', 'QPalette', 'QPanGesture', 'QPen', 'QPicture', 'QPictureIO', 'QPinchGesture', 'QPixmap', 'QPixmapCache', 'QPlainTextDocumentLayout', 'QPlainTextEdit', 'QPlastiqueStyle', 'QPolygon', 'QPolygonF', 'QPrintDialog', 'QPrintEngine', 'QPrintPreviewDialog', 'QPrintPreviewWidget', 'QPrinter', 'QPrinterInfo', 'QProgressBar', 'QProgressDialog', 'QProxyModel', 'QPushButton', 'QPyTextObject', 'QQuaternion', 'QRadialGradient', 'QRadioButton', 'QRegExpValidator', 'QRegion', 'QResizeEvent', 'QRubberBand', 'QScrollArea', 'QScrollBar', 'QSessionManager', 'QShortcut', 'QShortcutEvent', 'QShowEvent', 'QSizeGrip', 'QSizePolicy', 'QSlider', 'QSortFilterProxyModel', 'QSound', 'QSpacerItem', 'QSpinBox', 'QSplashScreen', 'QSplitter', 'QSplitterHandle', 'QStackedLayout', 'QStackedWidget', 'QStandardItem', 'QStandardItemModel', 'QStatusBar', 'QStatusTipEvent', 'QStringListModel', 'QStyle', 'QStyleFactory', 'QStyleHintReturn', 'QStyleHintReturnMask', 'QStyleHintReturnVariant', 'QStyleOption', 'QStyleOptionButton', 'QStyleOptionComboBox', 'QStyleOptionComplex', 'QStyleOptionDockWidget', 'QStyleOptionDockWidgetV2', 'QStyleOptionFocusRect', 'QStyleOptionFrame', 'QStyleOptionFrameV2', 'QStyleOptionFrameV3', 'QStyleOptionGraphicsItem', 'QStyleOptionGroupBox', 'QStyleOptionHeader', 'QStyleOptionMenuItem', 'QStyleOptionProgressBar', 'QStyleOptionProgressBarV2', 'QStyleOptionRubberBand', 'QStyleOptionSizeGrip', 'QStyleOptionSlider', 'QStyleOptionSpinBox', 'QStyleOptionTab', 'QStyleOptionTabBarBase', 'QStyleOptionTabBarBaseV2', 'QStyleOptionTabV2', 'QStyleOptionTabV3', 'QStyleOptionTabWidgetFrame', 'QStyleOptionTitleBar', 'QStyleOptionToolBar', 'QStyleOptionToolBox', 'QStyleOptionToolBoxV2', 'QStyleOptionToolButton', 'QStyleOptionViewItem', 'QStyleOptionViewItemV2', 'QStyleOptionViewItemV3', 'QStyleOptionViewItemV4', 'QStylePainter', 'QStyledItemDelegate', 'QSwipeGesture', 'QSyntaxHighlighter', 'QSystemTrayIcon', 'QTabBar', 'QTabWidget', 'QTableView', 'QTableWidget', 'QTableWidgetItem', 'QTableWidgetSelectionRange', 'QTabletEvent', 'QTapAndHoldGesture', 'QTapGesture', 'QTextBlock', 'QTextBlockFormat', 'QTextBlockGroup', 'QTextBlockUserData', 'QTextBrowser', 'QTextCharFormat', 'QTextCursor', 'QTextDocument', 'QTextDocumentFragment', 'QTextEdit', 'QTextFormat', 'QTextFragment', 'QTextFrame', 'QTextFrameFormat', 'QTextImageFormat', 'QTextInlineObject', 'QTextItem', 'QTextLayout', 'QTextLength', 'QTextLine', 'QTextList', 'QTextListFormat', 'QTextObject', 'QTextObjectInterface', 'QTextOption', 'QTextTable', 'QTextTableCell', 'QTextTableCellFormat', 'QTextTableFormat', 'QTileRules', 'QTimeEdit', 'QToolBar', 'QToolBarChangeEvent', 'QToolBox', 'QToolButton', 'QToolTip', 'QTouchEvent', 'QTransform', 'QTreeView', 'QTreeWidget', 'QTreeWidgetItem', 'QTreeWidgetItemIterator', 'QUndoCommand', 'QUndoGroup', 'QUndoStack', 'QUndoView', 'QVBoxLayout', 'QValidator', 'QVector2D', 'QVector3D', 'QVector4D', 'QWhatsThis', 'QWhatsThisClickedEvent', 'QWheelEvent', 'QWidget', 'QWidgetAction', 'QWidgetItem', 'QWindowStateChangeEvent', 'QWindowsStyle', 'QWizard', 'QWizardPage', 'QWorkspace', 'QX11EmbedContainer', 'QX11EmbedWidget', 'QX11Info', 'qAlpha', 'qApp', 'qBlue', 'qGray', 'qGreen', 'qIsGray', 'qRed', 'qRgb', 'qRgba']
pyqt4_gui = ['Display', 'QAbstractButton', 'QAbstractGraphicsShapeItem', 'QAbstractItemDelegate', 'QAbstractItemView', 'QAbstractPrintDialog', 'QAbstractProxyModel', 'QAbstractScrollArea', 'QAbstractSlider', 'QAbstractSpinBox', 'QAbstractTextDocumentLayout', 'QAction', 'QActionEvent', 'QActionGroup', 'QApplication', 'QBitmap', 'QBoxLayout', 'QBrush', 'QButtonGroup', 'QCalendarWidget', 'QCheckBox', 'QClipboard', 'QCloseEvent', 'QColor', 'QColorDialog', 'QColumnView', 'QComboBox', 'QCommandLinkButton', 'QCommonStyle', 'QCompleter', 'QConicalGradient', 'QContextMenuEvent', 'QCursor', 'QDataWidgetMapper', 'QDateEdit', 'QDateTimeEdit', 'QDesktopServices', 'QDesktopWidget', 'QDial', 'QDialog', 'QDialogButtonBox', 'QDirModel', 'QDockWidget', 'QDoubleSpinBox', 'QDoubleValidator', 'QDrag', 'QDragEnterEvent', 'QDragLeaveEvent', 'QDragMoveEvent', 'QDropEvent', 'QErrorMessage', 'QFileDialog', 'QFileIconProvider', 'QFileOpenEvent', 'QFileSystemModel', 'QFocusEvent', 'QFocusFrame', 'QFont', 'QFontComboBox', 'QFontDatabase', 'QFontDialog', 'QFontInfo', 'QFontMetrics', 'QFontMetricsF', 'QFormLayout', 'QFrame', 'QGesture', 'QGestureEvent', 'QGestureRecognizer', 'QGlyphRun', 'QGradient', 'QGraphicsAnchor', 'QGraphicsAnchorLayout', 'QGraphicsBlurEffect', 'QGraphicsColorizeEffect', 'QGraphicsDropShadowEffect', 'QGraphicsEffect', 'QGraphicsEllipseItem', 'QGraphicsGridLayout', 'QGraphicsItem', 'QGraphicsItemAnimation', 'QGraphicsItemGroup', 'QGraphicsLayout', 'QGraphicsLayoutItem', 'QGraphicsLineItem', 'QGraphicsLinearLayout', 'QGraphicsObject', 'QGraphicsOpacityEffect', 'QGraphicsPathItem', 'QGraphicsPixmapItem', 'QGraphicsPolygonItem', 'QGraphicsProxyWidget', 'QGraphicsRectItem', 'QGraphicsRotation', 'QGraphicsScale', 'QGraphicsScene', 'QGraphicsSceneContextMenuEvent', 'QGraphicsSceneDragDropEvent', 'QGraphicsSceneEvent', 'QGraphicsSceneHelpEvent', 'QGraphicsSceneHoverEvent', 'QGraphicsSceneMouseEvent', 'QGraphicsSceneMoveEvent', 'QGraphicsSceneResizeEvent', 'QGraphicsSceneWheelEvent', 'QGraphicsSimpleTextItem', 'QGraphicsTextItem', 'QGraphicsTransform', 'QGraphicsView', 'QGraphicsWidget', 'QGridLayout', 'QGroupBox', 'QHBoxLayout', 'QHeaderView', 'QHelpEvent', 'QHideEvent', 'QHoverEvent', 'QIcon', 'QIconDragEvent', 'QIconEngine', 'QIconEngineV2', 'QIdentityProxyModel', 'QImage', 'QImageIOHandler', 'QImageReader', 'QImageWriter', 'QInputContext', 'QInputContextFactory', 'QInputDialog', 'QInputEvent', 'QInputMethodEvent', 'QIntValidator', 'QItemDelegate', 'QItemEditorCreatorBase', 'QItemEditorFactory', 'QItemSelection', 'QItemSelectionModel', 'QItemSelectionRange', 'QKeyEvent', 'QKeyEventTransition', 'QKeySequence', 'QLCDNumber', 'QLabel', 'QLayout', 'QLayoutItem', 'QLineEdit', 'QLinearGradient', 'QListView', 'QListWidget', 'QListWidgetItem', 'QMainWindow', 'QMatrix', 'QMatrix2x2', 'QMatrix2x3', 'QMatrix2x4', 'QMatrix3x2', 'QMatrix3x3', 'QMatrix3x4', 'QMatrix4x2', 'QMatrix4x3', 'QMatrix4x4', 'QMdiArea', 'QMdiSubWindow', 'QMenu', 'QMenuBar', 'QMessageBox', 'QMimeSource', 'QMouseEvent', 'QMouseEventTransition', 'QMoveEvent', 'QMovie', 'QPageSetupDialog', 'QPaintDevice', 'QPaintEngine', 'QPaintEngineState', 'QPaintEvent', 'QPainter', 'QPainterPath', 'QPainterPathStroker', 'QPalette', 'QPanGesture', 'QPen', 'QPicture', 'QPictureIO', 'QPinchGesture', 'QPixmap', 'QPixmapCache', 'QPlainTextDocumentLayout', 'QPlainTextEdit', 'QPolygon', 'QPolygonF', 'QPrintDialog', 'QPrintEngine', 'QPrintPreviewDialog', 'QPrintPreviewWidget', 'QPrinter', 'QPrinterInfo', 'QProgressBar', 'QProgressDialog', 'QProxyModel', 'QPushButton', 'QPyTextObject', 'QQuaternion', 'QRadialGradient', 'QRadioButton', 'QRawFont', 'QRegExpValidator', 'QRegion', 'QResizeEvent', 'QRubberBand', 'QScrollArea', 'QScrollBar', 'QSessionManager', 'QShortcut', 'QShortcutEvent', 'QShowEvent', 'QSizeGrip', 'QSizePolicy', 'QSlider', 'QSortFilterProxyModel', 'QSound', 'QSpacerItem', 'QSpinBox', 'QSplashScreen', 'QSplitter', 'QSplitterHandle', 'QStackedLayout', 'QStackedWidget', 'QStandardItem', 'QStandardItemModel', 'QStaticText', 'QStatusBar', 'QStatusTipEvent', 'QStringListModel', 'QStyle', 'QStyleFactory', 'QStyleHintReturn', 'QStyleHintReturnMask', 'QStyleHintReturnVariant', 'QStyleOption', 'QStyleOptionButton', 'QStyleOptionComboBox', 'QStyleOptionComplex', 'QStyleOptionDockWidget', 'QStyleOptionDockWidgetV2', 'QStyleOptionFocusRect', 'QStyleOptionFrame', 'QStyleOptionFrameV2', 'QStyleOptionFrameV3', 'QStyleOptionGraphicsItem', 'QStyleOptionGroupBox', 'QStyleOptionHeader', 'QStyleOptionMenuItem', 'QStyleOptionProgressBar', 'QStyleOptionProgressBarV2', 'QStyleOptionRubberBand', 'QStyleOptionSizeGrip', 'QStyleOptionSlider', 'QStyleOptionSpinBox', 'QStyleOptionTab', 'QStyleOptionTabBarBase', 'QStyleOptionTabBarBaseV2', 'QStyleOptionTabV2', 'QStyleOptionTabV3', 'QStyleOptionTabWidgetFrame', 'QStyleOptionTabWidgetFrameV2', 'QStyleOptionTitleBar', 'QStyleOptionToolBar', 'QStyleOptionToolBox', 'QStyleOptionToolBoxV2', 'QStyleOptionToolButton', 'QStyleOptionViewItem', 'QStyleOptionViewItemV2', 'QStyleOptionViewItemV3', 'QStyleOptionViewItemV4', 'QStylePainter', 'QStyledItemDelegate', 'QSwipeGesture', 'QSyntaxHighlighter', 'QSystemTrayIcon', 'QTabBar', 'QTabWidget', 'QTableView', 'QTableWidget', 'QTableWidgetItem', 'QTableWidgetSelectionRange', 'QTabletEvent', 'QTapAndHoldGesture', 'QTapGesture', 'QTextBlock', 'QTextBlockFormat', 'QTextBlockGroup', 'QTextBlockUserData', 'QTextBrowser', 'QTextCharFormat', 'QTextCursor', 'QTextDocument', 'QTextDocumentFragment', 'QTextDocumentWriter', 'QTextEdit', 'QTextFormat', 'QTextFragment', 'QTextFrame', 'QTextFrameFormat', 'QTextImageFormat', 'QTextInlineObject', 'QTextItem', 'QTextLayout', 'QTextLength', 'QTextLine', 'QTextList', 'QTextListFormat', 'QTextObject', 'QTextObjectInterface', 'QTextOption', 'QTextTable', 'QTextTableCell', 'QTextTableCellFormat', 'QTextTableFormat', 'QTimeEdit', 'QToolBar', 'QToolBox', 'QToolButton', 'QToolTip', 'QTouchEvent', 'QTransform', 'QTreeView', 'QTreeWidget', 'QTreeWidgetItem', 'QTreeWidgetItemIterator', 'QUndoCommand', 'QUndoGroup', 'QUndoStack', 'QUndoView', 'QVBoxLayout', 'QValidator', 'QVector2D', 'QVector3D', 'QVector4D', 'QWIDGETSIZE_MAX', 'QWhatsThis', 'QWhatsThisClickedEvent', 'QWheelEvent', 'QWidget', 'QWidgetAction', 'QWidgetItem', 'QWindowStateChangeEvent', 'QWizard', 'QWizardPage', 'QWorkspace', 'QX11EmbedContainer', 'QX11EmbedWidget', 'QX11Info', 'qAlpha', 'qApp', 'qBlue', 'qDrawBorderPixmap', 'qDrawPlainRect', 'qDrawShadeLine', 'qDrawShadePanel', 'qDrawShadeRect', 'qDrawWinButton', 'qDrawWinPanel', 'qFuzzyCompare', 'qGray', 'qGreen', 'qIsGray', 'qRed', 'qRgb', 'qRgba', 'qSwap', 'qt_x11_wait_for_window_manager']
pyqt5_gui = ['QAbstractOpenGLFunctions', 'QAbstractTextDocumentLayout', 'QActionEvent', 'QBackingStore', 'QBitmap', 'QBrush', 'QClipboard', 'QCloseEvent', 'QColor', 'QConicalGradient', 'QContextMenuEvent', 'QCursor', 'QDesktopServices', 'QDoubleValidator', 'QDrag', 'QDragEnterEvent', 'QDragLeaveEvent', 'QDragMoveEvent', 'QDropEvent', 'QEnterEvent', 'QExposeEvent', 'QFileOpenEvent', 'QFocusEvent', 'QFont', 'QFontDatabase', 'QFontInfo', 'QFontMetrics', 'QFontMetricsF', 'QGlyphRun', 'QGradient', 'QGuiApplication', 'QHelpEvent', 'QHideEvent', 'QHoverEvent', 'QIcon', 'QIconDragEvent', 'QIconEngine', 'QImage', 'QImageIOHandler', 'QImageReader', 'QImageWriter', 'QInputEvent', 'QInputMethod', 'QInputMethodEvent', 'QInputMethodQueryEvent', 'QIntValidator', 'QKeyEvent', 'QKeySequence', 'QLinearGradient', 'QMatrix2x2', 'QMatrix2x3', 'QMatrix2x4', 'QMatrix3x2', 'QMatrix3x3', 'QMatrix3x4', 'QMatrix4x2', 'QMatrix4x3', 'QMatrix4x4', 'QMouseEvent', 'QMoveEvent', 'QMovie', 'QNativeGestureEvent', 'QOffscreenSurface', 'QOpenGLBuffer', 'QOpenGLContext', 'QOpenGLContextGroup', 'QOpenGLDebugLogger', 'QOpenGLDebugMessage', 'QOpenGLFramebufferObject', 'QOpenGLFramebufferObjectFormat', 'QOpenGLPaintDevice', 'QOpenGLPixelTransferOptions', 'QOpenGLShader', 'QOpenGLShaderProgram', 'QOpenGLTexture', 'QOpenGLTimeMonitor', 'QOpenGLTimerQuery', 'QOpenGLVersionProfile', 'QOpenGLVertexArrayObject', 'QOpenGLWindow', 'QPageLayout', 'QPageSize', 'QPagedPaintDevice', 'QPaintDevice', 'QPaintDeviceWindow', 'QPaintEngine', 'QPaintEngineState', 'QPaintEvent', 'QPainter', 'QPainterPath', 'QPainterPathStroker', 'QPalette', 'QPdfWriter', 'QPen', 'QPicture', 'QPictureIO', 'QPixelFormat', 'QPixmap', 'QPixmapCache', 'QPlatformSurfaceEvent', 'QPolygon', 'QPolygonF', 'QQuaternion', 'QRadialGradient', 'QRasterWindow', 'QRawFont', 'QRegExpValidator', 'QRegion', 'QRegularExpressionValidator', 'QResizeEvent', 'QRgba64', 'QScreen', 'QScrollEvent', 'QScrollPrepareEvent', 'QSessionManager', 'QShortcutEvent', 'QShowEvent', 'QStandardItem', 'QStandardItemModel', 'QStaticText', 'QStatusTipEvent', 'QStyleHints', 'QSurface', 'QSurfaceFormat', 'QSyntaxHighlighter', 'QTabletEvent', 'QTextBlock', 'QTextBlockFormat', 'QTextBlockGroup', 'QTextBlockUserData', 'QTextCharFormat', 'QTextCursor', 'QTextDocument', 'QTextDocumentFragment', 'QTextDocumentWriter', 'QTextFormat', 'QTextFragment', 'QTextFrame', 'QTextFrameFormat', 'QTextImageFormat', 'QTextInlineObject', 'QTextItem', 'QTextLayout', 'QTextLength', 'QTextLine', 'QTextList', 'QTextListFormat', 'QTextObject', 'QTextObjectInterface', 'QTextOption', 'QTextTable', 'QTextTableCell', 'QTextTableCellFormat', 'QTextTableFormat', 'QTouchDevice', 'QTouchEvent', 'QTransform', 'QValidator', 'QVector2D', 'QVector3D', 'QVector4D', 'QWhatsThisClickedEvent', 'QWheelEvent', 'QWindow', 'QWindowStateChangeEvent', 'qAlpha', 'qBlue', 'qFuzzyCompare', 'qGray', 'qGreen', 'qIsGray', 'qPixelFormatAlpha', 'qPixelFormatCmyk', 'qPixelFormatGrayscale', 'qPixelFormatHsl', 'qPixelFormatHsv', 'qPixelFormatRgba', 'qPixelFormatYuv', 'qPremultiply', 'qRed', 'qRgb', 'qRgba', 'qRgba64', 'qUnpremultiply', 'qt_set_sequence_auto_mnemonic']

# QtWidgets
QT56_WIDGETS = ['QAbstractButton', 'QAbstractGraphicsShapeItem', 'QAbstractItemDelegate', 'QAbstractItemView', 'QAbstractScrollArea', 'QAbstractSlider', 'QAbstractSpinBox', 'QAccessibleWidget', 'QAction', 'QActionGroup', 'QApplication', 'QBoxLayout', 'QButtonGroup', 'QCalendarWidget', 'QCheckBox', 'QColorDialog', 'QColormap', 'QColumnView', 'QComboBox', 'QCommandLinkButton', 'QCommonStyle', 'QCompleter', 'QDataWidgetMapper', 'QDateEdit', 'QDateTimeEdit', 'QDesktopWidget', 'QDial', 'QDialog', 'QDialogButtonBox', 'QDockWidget', 'QDoubleSpinBox', 'QErrorMessage', 'QFileDialog', 'QFileIconProvider', 'QFileSystemModel', 'QFocusFrame', 'QFontComboBox', 'QFontDialog', 'QFormLayout', 'QFrame', 'QGesture', 'QGestureEvent', 'QGestureRecognizer', 'QGraphicsAnchor', 'QGraphicsAnchorLayout', 'QGraphicsBlurEffect', 'QGraphicsColorizeEffect', 'QGraphicsDropShadowEffect', 'QGraphicsEffect', 'QGraphicsEllipseItem', 'QGraphicsGridLayout', 'QGraphicsItem', 'QGraphicsItemGroup', 'QGraphicsLayout', 'QGraphicsLayoutItem', 'QGraphicsLineItem', 'QGraphicsLinearLayout', 'QGraphicsObject', 'QGraphicsOpacityEffect', 'QGraphicsPathItem', 'QGraphicsPixmapItem', 'QGraphicsPolygonItem', 'QGraphicsProxyWidget', 'QGraphicsRectItem', 'QGraphicsRotation', 'QGraphicsScale', 'QGraphicsScene', 'QGraphicsSceneContextMenuEvent', 'QGraphicsSceneDragDropEvent', 'QGraphicsSceneEvent', 'QGraphicsSceneHelpEvent', 'QGraphicsSceneHoverEvent', 'QGraphicsSceneMouseEvent', 'QGraphicsSceneMoveEvent', 'QGraphicsSceneResizeEvent', 'QGraphicsSceneWheelEvent', 'QGraphicsSimpleTextItem', 'QGraphicsTextItem', 'QGraphicsTransform', 'QGraphicsView', 'QGraphicsWidget', 'QGridLayout', 'QGroupBox', 'QHBoxLayout', 'QHeaderView', 'QInputDialog', 'QItemDelegate', 'QItemEditorCreator', 'QItemEditorCreatorBase', 'QItemEditorFactory', 'QKeyEventTransition', 'QKeySequenceEdit', 'QLCDNumber', 'QLabel', 'QLayout', 'QLayoutItem', 'QLineEdit', 'QListView', 'QListWidget', 'QListWidgetItem', 'QMacCocoaViewContainer', 'QMacNativeWidget', 'QMainWindow', 'QMdiArea', 'QMdiSubWindow', 'QMenu', 'QMenuBar', 'QMessageBox', 'QMouseEventTransition', 'QOpenGLWidget', 'QPanGesture', 'QPinchGesture', 'QPlainTextDocumentLayout', 'QPlainTextEdit', 'QProgressBar', 'QProgressDialog', 'QProxyStyle', 'QPushButton', 'QRadioButton', 'QRubberBand', 'QScrollArea', 'QScrollBar', 'QScroller', 'QScrollerProperties', 'QShortcut', 'QSizeGrip', 'QSizePolicy', 'QSlider', 'QSpacerItem', 'QSpinBox', 'QSplashScreen', 'QSplitter', 'QSplitterHandle', 'QStackedLayout', 'QStackedWidget', 'QStandardItemEditorCreator', 'QStatusBar', 'QStyle', 'QStyleFactory', 'QStyleHintReturn', 'QStyleHintReturnMask', 'QStyleHintReturnVariant', 'QStyleOption', 'QStyleOptionButton', 'QStyleOptionComboBox', 'QStyleOptionComplex', 'QStyleOptionDockWidget', 'QStyleOptionFocusRect', 'QStyleOptionFrame', 'QStyleOptionGraphicsItem', 'QStyleOptionGroupBox', 'QStyleOptionHeader', 'QStyleOptionMenuItem', 'QStyleOptionProgressBar', 'QStyleOptionRubberBand', 'QStyleOptionSizeGrip', 'QStyleOptionSlider', 'QStyleOptionSpinBox', 'QStyleOptionTab', 'QStyleOptionTabBarBase', 'QStyleOptionTabWidgetFrame', 'QStyleOptionTitleBar', 'QStyleOptionToolBar', 'QStyleOptionToolBox', 'QStyleOptionToolButton', 'QStyleOptionViewItem', 'QStylePainter', 'QStylePlugin', 'QStyledItemDelegate', 'QSwipeGesture', 'QSystemTrayIcon', 'QTabBar', 'QTabWidget', 'QTableView', 'QTableWidget', 'QTableWidgetItem', 'QTableWidgetSelectionRange', 'QTapAndHoldGesture', 'QTapGesture', 'QTextBrowser', 'QTextEdit', 'QTextEdit::ExtraSelection', 'QTileRules', 'QTimeEdit', 'QToolBar', 'QToolBox', 'QToolButton', 'QToolTip', 'QTreeView', 'QTreeWidget', 'QTreeWidgetItem', 'QTreeWidgetItemIterator', 'QUndoCommand', 'QUndoGroup', 'QUndoStack', 'QUndoView', 'QVBoxLayout', 'QWhatsThis', 'QWidget', 'QWidgetAction', 'QWidgetItem', 'QWizard', 'QWizardPage']
QT57_WIDGETS = ['QAbstractButton', 'QAbstractGraphicsShapeItem', 'QAbstractItemDelegate', 'QAbstractItemView', 'QAbstractScrollArea', 'QAbstractSlider', 'QAbstractSpinBox', 'QAccessibleWidget', 'QAction', 'QActionGroup', 'QApplication', 'QBoxLayout', 'QButtonGroup', 'QCalendarWidget', 'QCheckBox', 'QColorDialog', 'QColormap', 'QColumnView', 'QComboBox', 'QCommandLinkButton', 'QCommonStyle', 'QCompleter', 'QDataWidgetMapper', 'QDateEdit', 'QDateTimeEdit', 'QDesktopWidget', 'QDial', 'QDialog', 'QDialogButtonBox', 'QDockWidget', 'QDoubleSpinBox', 'QErrorMessage', 'QFileDialog', 'QFileIconProvider', 'QFileSystemModel', 'QFocusFrame', 'QFontComboBox', 'QFontDialog', 'QFormLayout', 'QFrame', 'QGesture', 'QGestureEvent', 'QGestureRecognizer', 'QGraphicsAnchor', 'QGraphicsAnchorLayout', 'QGraphicsBlurEffect', 'QGraphicsColorizeEffect', 'QGraphicsDropShadowEffect', 'QGraphicsEffect', 'QGraphicsEllipseItem', 'QGraphicsGridLayout', 'QGraphicsItem', 'QGraphicsItemGroup', 'QGraphicsLayout', 'QGraphicsLayoutItem', 'QGraphicsLineItem', 'QGraphicsLinearLayout', 'QGraphicsObject', 'QGraphicsOpacityEffect', 'QGraphicsPathItem', 'QGraphicsPixmapItem', 'QGraphicsPolygonItem', 'QGraphicsProxyWidget', 'QGraphicsRectItem', 'QGraphicsRotation', 'QGraphicsScale', 'QGraphicsScene', 'QGraphicsSceneContextMenuEvent', 'QGraphicsSceneDragDropEvent', 'QGraphicsSceneEvent', 'QGraphicsSceneHelpEvent', 'QGraphicsSceneHoverEvent', 'QGraphicsSceneMouseEvent', 'QGraphicsSceneMoveEvent', 'QGraphicsSceneResizeEvent', 'QGraphicsSceneWheelEvent', 'QGraphicsSimpleTextItem', 'QGraphicsTextItem', 'QGraphicsTransform', 'QGraphicsView', 'QGraphicsWidget', 'QGridLayout', 'QGroupBox', 'QHBoxLayout', 'QHeaderView', 'QInputDialog', 'QItemDelegate', 'QItemEditorCreator', 'QItemEditorCreatorBase', 'QItemEditorFactory', 'QKeyEventTransition', 'QKeySequenceEdit', 'QLCDNumber', 'QLabel', 'QLayout', 'QLayoutItem', 'QLineEdit', 'QListView', 'QListWidget', 'QListWidgetItem', 'QMacCocoaViewContainer', 'QMacNativeWidget', 'QMainWindow', 'QMdiArea', 'QMdiSubWindow', 'QMenu', 'QMenuBar', 'QMessageBox', 'QMouseEventTransition', 'QOpenGLWidget', 'QPanGesture', 'QPinchGesture', 'QPlainTextDocumentLayout', 'QPlainTextEdit', 'QProgressBar', 'QProgressDialog', 'QProxyStyle', 'QPushButton', 'QRadioButton', 'QRubberBand', 'QScrollArea', 'QScrollBar', 'QScroller', 'QScrollerProperties', 'QShortcut', 'QSizeGrip', 'QSizePolicy', 'QSlider', 'QSpacerItem', 'QSpinBox', 'QSplashScreen', 'QSplitter', 'QSplitterHandle', 'QStackedLayout', 'QStackedWidget', 'QStandardItemEditorCreator', 'QStatusBar', 'QStyle', 'QStyleFactory', 'QStyleHintReturn', 'QStyleHintReturnMask', 'QStyleHintReturnVariant', 'QStyleOption', 'QStyleOptionButton', 'QStyleOptionComboBox', 'QStyleOptionComplex', 'QStyleOptionDockWidget', 'QStyleOptionFocusRect', 'QStyleOptionFrame', 'QStyleOptionGraphicsItem', 'QStyleOptionGroupBox', 'QStyleOptionHeader', 'QStyleOptionMenuItem', 'QStyleOptionProgressBar', 'QStyleOptionRubberBand', 'QStyleOptionSizeGrip', 'QStyleOptionSlider', 'QStyleOptionSpinBox', 'QStyleOptionTab', 'QStyleOptionTabBarBase', 'QStyleOptionTabWidgetFrame', 'QStyleOptionTitleBar', 'QStyleOptionToolBar', 'QStyleOptionToolBox', 'QStyleOptionToolButton', 'QStyleOptionViewItem', 'QStylePainter', 'QStylePlugin', 'QStyledItemDelegate', 'QSwipeGesture', 'QSystemTrayIcon', 'QTabBar', 'QTabWidget', 'QTableView', 'QTableWidget', 'QTableWidgetItem', 'QTableWidgetSelectionRange', 'QTapAndHoldGesture', 'QTapGesture', 'QTextBrowser', 'QTextEdit', 'QTextEdit::ExtraSelection', 'QTileRules', 'QTimeEdit', 'QToolBar', 'QToolBox', 'QToolButton', 'QToolTip', 'QTreeView', 'QTreeWidget', 'QTreeWidgetItem', 'QTreeWidgetItemIterator', 'QUndoCommand', 'QUndoGroup', 'QUndoStack', 'QUndoView', 'QVBoxLayout', 'QWhatsThis', 'QWidget', 'QWidgetAction', 'QWidgetItem', 'QWizard', 'QWizardPage']
pyside_widgets = ['QAbstractButton', 'QAbstractGraphicsShapeItem', 'QAbstractItemDelegate', 'QAbstractItemView', 'QAbstractPageSetupDialog', 'QAbstractPrintDialog', 'QAbstractProxyModel', 'QAbstractScrollArea', 'QAbstractSlider', 'QAbstractSpinBox', 'QAbstractTextDocumentLayout', 'QAccessibleEvent', 'QAction', 'QActionEvent', 'QActionGroup', 'QApplication', 'QBitmap', 'QBoxLayout', 'QBrush', 'QButtonGroup', 'QCDEStyle', 'QCalendarWidget', 'QCheckBox', 'QCleanlooksStyle', 'QClipboard', 'QClipboardEvent', 'QCloseEvent', 'QColor', 'QColorDialog', 'QColumnView', 'QComboBox', 'QCommandLinkButton', 'QCommonStyle', 'QCompleter', 'QConicalGradient', 'QContextMenuEvent', 'QCursor', 'QDataWidgetMapper', 'QDateEdit', 'QDateTimeEdit', 'QDesktopServices', 'QDesktopWidget', 'QDial', 'QDialog', 'QDialogButtonBox', 'QDirModel', 'QDockWidget', 'QDoubleSpinBox', 'QDoubleValidator', 'QDrag', 'QDragEnterEvent', 'QDragLeaveEvent', 'QDragMoveEvent', 'QDropEvent', 'QErrorMessage', 'QFileDialog', 'QFileIconProvider', 'QFileOpenEvent', 'QFileSystemModel', 'QFocusEvent', 'QFocusFrame', 'QFont', 'QFontComboBox', 'QFontDatabase', 'QFontDialog', 'QFontInfo', 'QFontMetrics', 'QFontMetricsF', 'QFormLayout', 'QFrame', 'QGesture', 'QGestureEvent', 'QGestureRecognizer', 'QGradient', 'QGraphicsAnchor', 'QGraphicsAnchorLayout', 'QGraphicsBlurEffect', 'QGraphicsColorizeEffect', 'QGraphicsDropShadowEffect', 'QGraphicsEffect', 'QGraphicsEllipseItem', 'QGraphicsGridLayout', 'QGraphicsItem', 'QGraphicsItemAnimation', 'QGraphicsItemGroup', 'QGraphicsLayout', 'QGraphicsLayoutItem', 'QGraphicsLineItem', 'QGraphicsLinearLayout', 'QGraphicsObject', 'QGraphicsOpacityEffect', 'QGraphicsPathItem', 'QGraphicsPixmapItem', 'QGraphicsPolygonItem', 'QGraphicsProxyWidget', 'QGraphicsRectItem', 'QGraphicsRotation', 'QGraphicsScale', 'QGraphicsScene', 'QGraphicsSceneContextMenuEvent', 'QGraphicsSceneDragDropEvent', 'QGraphicsSceneEvent', 'QGraphicsSceneHelpEvent', 'QGraphicsSceneHoverEvent', 'QGraphicsSceneMouseEvent', 'QGraphicsSceneMoveEvent', 'QGraphicsSceneResizeEvent', 'QGraphicsSceneWheelEvent', 'QGraphicsSimpleTextItem', 'QGraphicsTextItem', 'QGraphicsTransform', 'QGraphicsView', 'QGraphicsWidget', 'QGridLayout', 'QGroupBox', 'QHBoxLayout', 'QHeaderView', 'QHelpEvent', 'QHideEvent', 'QHoverEvent', 'QIcon', 'QIconDragEvent', 'QIconEngine', 'QIconEngineV2', 'QImage', 'QImageIOHandler', 'QImageReader', 'QImageWriter', 'QInputContext', 'QInputContextFactory', 'QInputDialog', 'QInputEvent', 'QInputMethodEvent', 'QIntValidator', 'QItemDelegate', 'QItemEditorCreatorBase', 'QItemEditorFactory', 'QItemSelection', 'QItemSelectionModel', 'QItemSelectionRange', 'QKeyEvent', 'QKeyEventTransition', 'QKeySequence', 'QLCDNumber', 'QLabel', 'QLayout', 'QLayoutItem', 'QLineEdit', 'QLinearGradient', 'QListView', 'QListWidget', 'QListWidgetItem', 'QMainWindow', 'QMatrix', 'QMatrix2x2', 'QMatrix2x3', 'QMatrix2x4', 'QMatrix3x2', 'QMatrix3x3', 'QMatrix3x4', 'QMatrix4x2', 'QMatrix4x3', 'QMatrix4x4', 'QMdiArea', 'QMdiSubWindow', 'QMenu', 'QMenuBar', 'QMessageBox', 'QMotifStyle', 'QMouseEvent', 'QMouseEventTransition', 'QMoveEvent', 'QMovie', 'QPageSetupDialog', 'QPaintDevice', 'QPaintEngine', 'QPaintEngineState', 'QPaintEvent', 'QPainter', 'QPainterPath', 'QPainterPathStroker', 'QPalette', 'QPanGesture', 'QPen', 'QPicture', 'QPictureIO', 'QPinchGesture', 'QPixmap', 'QPixmapCache', 'QPlainTextDocumentLayout', 'QPlainTextEdit', 'QPlastiqueStyle', 'QPolygon', 'QPolygonF', 'QPrintDialog', 'QPrintEngine', 'QPrintPreviewDialog', 'QPrintPreviewWidget', 'QPrinter', 'QPrinterInfo', 'QProgressBar', 'QProgressDialog', 'QProxyModel', 'QPushButton', 'QPyTextObject', 'QQuaternion', 'QRadialGradient', 'QRadioButton', 'QRegExpValidator', 'QRegion', 'QResizeEvent', 'QRubberBand', 'QScrollArea', 'QScrollBar', 'QSessionManager', 'QShortcut', 'QShortcutEvent', 'QShowEvent', 'QSizeGrip', 'QSizePolicy', 'QSlider', 'QSortFilterProxyModel', 'QSound', 'QSpacerItem', 'QSpinBox', 'QSplashScreen', 'QSplitter', 'QSplitterHandle', 'QStackedLayout', 'QStackedWidget', 'QStandardItem', 'QStandardItemModel', 'QStatusBar', 'QStatusTipEvent', 'QStringListModel', 'QStyle', 'QStyleFactory', 'QStyleHintReturn', 'QStyleHintReturnMask', 'QStyleHintReturnVariant', 'QStyleOption', 'QStyleOptionButton', 'QStyleOptionComboBox', 'QStyleOptionComplex', 'QStyleOptionDockWidget', 'QStyleOptionDockWidgetV2', 'QStyleOptionFocusRect', 'QStyleOptionFrame', 'QStyleOptionFrameV2', 'QStyleOptionFrameV3', 'QStyleOptionGraphicsItem', 'QStyleOptionGroupBox', 'QStyleOptionHeader', 'QStyleOptionMenuItem', 'QStyleOptionProgressBar', 'QStyleOptionProgressBarV2', 'QStyleOptionRubberBand', 'QStyleOptionSizeGrip', 'QStyleOptionSlider', 'QStyleOptionSpinBox', 'QStyleOptionTab', 'QStyleOptionTabBarBase', 'QStyleOptionTabBarBaseV2', 'QStyleOptionTabV2', 'QStyleOptionTabV3', 'QStyleOptionTabWidgetFrame', 'QStyleOptionTitleBar', 'QStyleOptionToolBar', 'QStyleOptionToolBox', 'QStyleOptionToolBoxV2', 'QStyleOptionToolButton', 'QStyleOptionViewItem', 'QStyleOptionViewItemV2', 'QStyleOptionViewItemV3', 'QStyleOptionViewItemV4', 'QStylePainter', 'QStyledItemDelegate', 'QSwipeGesture', 'QSyntaxHighlighter', 'QSystemTrayIcon', 'QTabBar', 'QTabWidget', 'QTableView', 'QTableWidget', 'QTableWidgetItem', 'QTableWidgetSelectionRange', 'QTabletEvent', 'QTapAndHoldGesture', 'QTapGesture', 'QTextBlock', 'QTextBlockFormat', 'QTextBlockGroup', 'QTextBlockUserData', 'QTextBrowser', 'QTextCharFormat', 'QTextCursor', 'QTextDocument', 'QTextDocumentFragment', 'QTextEdit', 'QTextFormat', 'QTextFragment', 'QTextFrame', 'QTextFrameFormat', 'QTextImageFormat', 'QTextInlineObject', 'QTextItem', 'QTextLayout', 'QTextLength', 'QTextLine', 'QTextList', 'QTextListFormat', 'QTextObject', 'QTextObjectInterface', 'QTextOption', 'QTextTable', 'QTextTableCell', 'QTextTableCellFormat', 'QTextTableFormat', 'QTileRules', 'QTimeEdit', 'QToolBar', 'QToolBarChangeEvent', 'QToolBox', 'QToolButton', 'QToolTip', 'QTouchEvent', 'QTransform', 'QTreeView', 'QTreeWidget', 'QTreeWidgetItem', 'QTreeWidgetItemIterator', 'QUndoCommand', 'QUndoGroup', 'QUndoStack', 'QUndoView', 'QVBoxLayout', 'QValidator', 'QVector2D', 'QVector3D', 'QVector4D', 'QWhatsThis', 'QWhatsThisClickedEvent', 'QWheelEvent', 'QWidget', 'QWidgetAction', 'QWidgetItem', 'QWindowStateChangeEvent', 'QWindowsStyle', 'QWizard', 'QWizardPage', 'QWorkspace', 'QX11EmbedContainer', 'QX11EmbedWidget', 'QX11Info', 'qAlpha', 'qApp', 'qBlue', 'qGray', 'qGreen', 'qIsGray', 'qRed', 'qRgb', 'qRgba']
pyqt4_widgets = []
pyqt5_widgets = ['QAbstractButton', 'QAbstractGraphicsShapeItem', 'QAbstractItemDelegate', 'QAbstractItemView', 'QAbstractScrollArea', 'QAbstractSlider', 'QAbstractSpinBox', 'QAction', 'QActionGroup', 'QApplication', 'QBoxLayout', 'QButtonGroup', 'QCalendarWidget', 'QCheckBox', 'QColorDialog', 'QColumnView', 'QComboBox', 'QCommandLinkButton', 'QCommonStyle', 'QCompleter', 'QDataWidgetMapper', 'QDateEdit', 'QDateTimeEdit', 'QDesktopWidget', 'QDial', 'QDialog', 'QDialogButtonBox', 'QDirModel', 'QDockWidget', 'QDoubleSpinBox', 'QErrorMessage', 'QFileDialog', 'QFileIconProvider', 'QFileSystemModel', 'QFocusFrame', 'QFontComboBox', 'QFontDialog', 'QFormLayout', 'QFrame', 'QGesture', 'QGestureEvent', 'QGestureRecognizer', 'QGraphicsAnchor', 'QGraphicsAnchorLayout', 'QGraphicsBlurEffect', 'QGraphicsColorizeEffect', 'QGraphicsDropShadowEffect', 'QGraphicsEffect', 'QGraphicsEllipseItem', 'QGraphicsGridLayout', 'QGraphicsItem', 'QGraphicsItemGroup', 'QGraphicsLayout', 'QGraphicsLayoutItem', 'QGraphicsLineItem', 'QGraphicsLinearLayout', 'QGraphicsObject', 'QGraphicsOpacityEffect', 'QGraphicsPathItem', 'QGraphicsPixmapItem', 'QGraphicsPolygonItem', 'QGraphicsProxyWidget', 'QGraphicsRectItem', 'QGraphicsRotation', 'QGraphicsScale', 'QGraphicsScene', 'QGraphicsSceneContextMenuEvent', 'QGraphicsSceneDragDropEvent', 'QGraphicsSceneEvent', 'QGraphicsSceneHelpEvent', 'QGraphicsSceneHoverEvent', 'QGraphicsSceneMouseEvent', 'QGraphicsSceneMoveEvent', 'QGraphicsSceneResizeEvent', 'QGraphicsSceneWheelEvent', 'QGraphicsSimpleTextItem', 'QGraphicsTextItem', 'QGraphicsTransform', 'QGraphicsView', 'QGraphicsWidget', 'QGridLayout', 'QGroupBox', 'QHBoxLayout', 'QHeaderView', 'QInputDialog', 'QItemDelegate', 'QItemEditorCreatorBase', 'QItemEditorFactory', 'QKeyEventTransition', 'QKeySequenceEdit', 'QLCDNumber', 'QLabel', 'QLayout', 'QLayoutItem', 'QLineEdit', 'QListView', 'QListWidget', 'QListWidgetItem', 'QMainWindow', 'QMdiArea', 'QMdiSubWindow', 'QMenu', 'QMenuBar', 'QMessageBox', 'QMouseEventTransition', 'QOpenGLWidget', 'QPanGesture', 'QPinchGesture', 'QPlainTextDocumentLayout', 'QPlainTextEdit', 'QProgressBar', 'QProgressDialog', 'QProxyStyle', 'QPushButton', 'QRadioButton', 'QRubberBand', 'QScrollArea', 'QScrollBar', 'QScroller', 'QScrollerProperties', 'QShortcut', 'QSizeGrip', 'QSizePolicy', 'QSlider', 'QSpacerItem', 'QSpinBox', 'QSplashScreen', 'QSplitter', 'QSplitterHandle', 'QStackedLayout', 'QStackedWidget', 'QStatusBar', 'QStyle', 'QStyleFactory', 'QStyleHintReturn', 'QStyleHintReturnMask', 'QStyleHintReturnVariant', 'QStyleOption', 'QStyleOptionButton', 'QStyleOptionComboBox', 'QStyleOptionComplex', 'QStyleOptionDockWidget', 'QStyleOptionFocusRect', 'QStyleOptionFrame', 'QStyleOptionGraphicsItem', 'QStyleOptionGroupBox', 'QStyleOptionHeader', 'QStyleOptionMenuItem', 'QStyleOptionProgressBar', 'QStyleOptionRubberBand', 'QStyleOptionSizeGrip', 'QStyleOptionSlider', 'QStyleOptionSpinBox', 'QStyleOptionTab', 'QStyleOptionTabBarBase', 'QStyleOptionTabWidgetFrame', 'QStyleOptionTitleBar', 'QStyleOptionToolBar', 'QStyleOptionToolBox', 'QStyleOptionToolButton', 'QStyleOptionViewItem', 'QStylePainter', 'QStyledItemDelegate', 'QSwipeGesture', 'QSystemTrayIcon', 'QTabBar', 'QTabWidget', 'QTableView', 'QTableWidget', 'QTableWidgetItem', 'QTableWidgetSelectionRange', 'QTapAndHoldGesture', 'QTapGesture', 'QTextBrowser', 'QTextEdit', 'QTimeEdit', 'QToolBar', 'QToolBox', 'QToolButton', 'QToolTip', 'QTreeView', 'QTreeWidget', 'QTreeWidgetItem', 'QTreeWidgetItemIterator', 'QUndoCommand', 'QUndoGroup', 'QUndoStack', 'QUndoView', 'QVBoxLayout', 'QWIDGETSIZE_MAX', 'QWhatsThis', 'QWidget', 'QWidgetAction', 'QWidgetItem', 'QWizard', 'QWizardPage', 'qApp', 'qDrawBorderPixmap', 'qDrawPlainRect', 'qDrawShadeLine', 'qDrawShadePanel', 'qDrawShadeRect', 'qDrawWinButton', 'qDrawWinPanel']

# QtDesigner
QT56_DESIGNER = ['QAbstractExtensionFactory', 'QAbstractExtensionManager', 'QAbstractFormBuilder', 'QDesignerActionEditorInterface', 'QDesignerContainerExtension', 'QDesignerCustomWidgetCollectionInterface', 'QDesignerCustomWidgetInterface', 'QDesignerDynamicPropertySheetExtension', 'QDesignerFormEditorInterface', 'QDesignerFormWindowCursorInterface', 'QDesignerFormWindowInterface', 'QDesignerFormWindowManagerInterface', 'QDesignerMemberSheetExtension', 'QDesignerObjectInspectorInterface', 'QDesignerPropertyEditorInterface', 'QDesignerPropertySheetExtension', 'QDesignerTaskMenuExtension', 'QDesignerWidgetBoxInterface', 'QExtensionFactory', 'QExtensionManager', 'QFormBuilder']
QT57_DESIGNER = ['QAbstractExtensionFactory', 'QAbstractExtensionManager', 'QAbstractFormBuilder', 'QDesignerActionEditorInterface', 'QDesignerContainerExtension', 'QDesignerCustomWidgetCollectionInterface', 'QDesignerCustomWidgetInterface', 'QDesignerDynamicPropertySheetExtension', 'QDesignerFormEditorInterface', 'QDesignerFormWindowCursorInterface', 'QDesignerFormWindowInterface', 'QDesignerFormWindowManagerInterface', 'QDesignerMemberSheetExtension', 'QDesignerObjectInspectorInterface', 'QDesignerPropertyEditorInterface', 'QDesignerPropertySheetExtension', 'QDesignerTaskMenuExtension', 'QDesignerWidgetBoxInterface', 'QExtensionFactory', 'QExtensionManager', 'QFormBuilder']
pyside_designer = []
pyqt4_designer = ['QAbstractExtensionFactory', 'QAbstractExtensionManager', 'QAbstractFormBuilder', 'QDesignerActionEditorInterface', 'QDesignerContainerExtension', 'QDesignerCustomWidgetCollectionInterface', 'QDesignerCustomWidgetInterface', 'QDesignerFormEditorInterface', 'QDesignerFormWindowCursorInterface', 'QDesignerFormWindowInterface', 'QDesignerFormWindowManagerInterface', 'QDesignerMemberSheetExtension', 'QDesignerObjectInspectorInterface', 'QDesignerPropertyEditorInterface', 'QDesignerPropertySheetExtension', 'QDesignerTaskMenuExtension', 'QDesignerWidgetBoxInterface', 'QExtensionFactory', 'QExtensionManager', 'QFormBuilder', 'QPyDesignerContainerExtension', 'QPyDesignerCustomWidgetCollectionPlugin', 'QPyDesignerCustomWidgetPlugin', 'QPyDesignerMemberSheetExtension', 'QPyDesignerPropertySheetExtension', 'QPyDesignerTaskMenuExtension']
pyqt5_designer = ['QAbstractExtensionFactory', 'QAbstractExtensionManager', 'QAbstractFormBuilder', 'QDesignerActionEditorInterface', 'QDesignerContainerExtension', 'QDesignerCustomWidgetCollectionInterface', 'QDesignerCustomWidgetInterface', 'QDesignerFormEditorInterface', 'QDesignerFormWindowCursorInterface', 'QDesignerFormWindowInterface', 'QDesignerFormWindowManagerInterface', 'QDesignerMemberSheetExtension', 'QDesignerObjectInspectorInterface', 'QDesignerPropertyEditorInterface', 'QDesignerPropertySheetExtension', 'QDesignerTaskMenuExtension', 'QDesignerWidgetBoxInterface', 'QExtensionFactory', 'QExtensionManager', 'QFormBuilder', 'QPyDesignerContainerExtension', 'QPyDesignerCustomWidgetCollectionPlugin', 'QPyDesignerCustomWidgetPlugin', 'QPyDesignerMemberSheetExtension', 'QPyDesignerPropertySheetExtension', 'QPyDesignerTaskMenuExtension']

# QtNetwork
QT56_NETWORK = ['QAbstractNetworkCache', 'QAbstractSocket', 'QAuthenticator', 'QDnsDomainNameRecord', 'QDnsHostAddressRecord', 'QDnsLookup', 'QDnsMailExchangeRecord', 'QDnsServiceRecord', 'QDnsTextRecord', 'QHostAddress', 'QHostInfo', 'QHttpMultiPart', 'QHttpPart', 'QLocalServer', 'QLocalSocket', 'QNetworkAccessManager', 'QNetworkAddressEntry', 'QNetworkCacheMetaData', 'QNetworkConfiguration', 'QNetworkConfigurationManager', 'QNetworkCookie', 'QNetworkCookieJar', 'QNetworkDiskCache', 'QNetworkInterface', 'QNetworkProxy', 'QNetworkProxyFactory', 'QNetworkProxyQuery', 'QNetworkReply', 'QNetworkRequest', 'QNetworkSession', 'QSsl', 'QSslCertificate', 'QSslCertificateExtension', 'QSslCipher', 'QSslConfiguration', 'QSslEllipticCurve', 'QSslError', 'QSslKey', 'QSslPreSharedKeyAuthenticator', 'QSslSocket', 'QTcpServer', 'QTcpSocket', 'QUdpSocket']
QT57_NETWORK = ['QAbstractNetworkCache', 'QAbstractSocket', 'QAuthenticator', 'QDnsDomainNameRecord', 'QDnsHostAddressRecord', 'QDnsLookup', 'QDnsMailExchangeRecord', 'QDnsServiceRecord', 'QDnsTextRecord', 'QHostAddress', 'QHostInfo', 'QHttpMultiPart', 'QHttpPart', 'QLocalServer', 'QLocalSocket', 'QNetworkAccessManager', 'QNetworkAddressEntry', 'QNetworkCacheMetaData', 'QNetworkConfiguration', 'QNetworkConfigurationManager', 'QNetworkCookie', 'QNetworkCookieJar', 'QNetworkDiskCache', 'QNetworkInterface', 'QNetworkProxy', 'QNetworkProxyFactory', 'QNetworkProxyQuery', 'QNetworkReply', 'QNetworkRequest', 'QNetworkSession', 'QSsl', 'QSslCertificate', 'QSslCertificateExtension', 'QSslCipher', 'QSslConfiguration', 'QSslEllipticCurve', 'QSslError', 'QSslKey', 'QSslPreSharedKeyAuthenticator', 'QSslSocket', 'QTcpServer', 'QTcpSocket', 'QUdpSocket']
pyside_network = ['QAbstractNetworkCache', 'QAbstractSocket', 'QAuthenticator', 'QFtp', 'QHostAddress', 'QHostInfo', 'QHttp', 'QHttpHeader', 'QHttpRequestHeader', 'QHttpResponseHeader', 'QIPv6Address', 'QLocalServer', 'QLocalSocket', 'QNetworkAccessManager', 'QNetworkAddressEntry', 'QNetworkCacheMetaData', 'QNetworkConfiguration', 'QNetworkConfigurationManager', 'QNetworkCookie', 'QNetworkCookieJar', 'QNetworkDiskCache', 'QNetworkInterface', 'QNetworkProxy', 'QNetworkProxyFactory', 'QNetworkProxyQuery', 'QNetworkReply', 'QNetworkRequest', 'QNetworkSession', 'QSsl', 'QTcpServer', 'QTcpSocket', 'QUdpSocket', 'QUrlInfo']
pyqt4_network = ['QAbstractNetworkCache', 'QAbstractSocket', 'QAuthenticator', 'QFtp', 'QHostAddress', 'QHostInfo', 'QHttp', 'QHttpHeader', 'QHttpMultiPart', 'QHttpPart', 'QHttpRequestHeader', 'QHttpResponseHeader', 'QLocalServer', 'QLocalSocket', 'QNetworkAccessManager', 'QNetworkAddressEntry', 'QNetworkCacheMetaData', 'QNetworkConfiguration', 'QNetworkConfigurationManager', 'QNetworkCookie', 'QNetworkCookieJar', 'QNetworkDiskCache', 'QNetworkInterface', 'QNetworkProxy', 'QNetworkProxyFactory', 'QNetworkProxyQuery', 'QNetworkReply', 'QNetworkRequest', 'QNetworkSession', 'QSsl', 'QSslCertificate', 'QSslCipher', 'QSslConfiguration', 'QSslError', 'QSslKey', 'QSslSocket', 'QTcpServer', 'QTcpSocket', 'QUdpSocket', 'QUrlInfo']
pyqt5_network = ['QAbstractNetworkCache', 'QAbstractSocket', 'QAuthenticator', 'QDnsDomainNameRecord', 'QDnsHostAddressRecord', 'QDnsLookup', 'QDnsMailExchangeRecord', 'QDnsServiceRecord', 'QDnsTextRecord', 'QHostAddress', 'QHostInfo', 'QHttpMultiPart', 'QHttpPart', 'QLocalServer', 'QLocalSocket', 'QNetworkAccessManager', 'QNetworkAddressEntry', 'QNetworkCacheMetaData', 'QNetworkConfiguration', 'QNetworkConfigurationManager', 'QNetworkCookie', 'QNetworkCookieJar', 'QNetworkDiskCache', 'QNetworkInterface', 'QNetworkProxy', 'QNetworkProxyFactory', 'QNetworkProxyQuery', 'QNetworkReply', 'QNetworkRequest', 'QNetworkSession', 'QSsl', 'QSslCertificate', 'QSslCertificateExtension', 'QSslCipher', 'QSslConfiguration', 'QSslEllipticCurve', 'QSslError', 'QSslKey', 'QSslPreSharedKeyAuthenticator', 'QSslSocket', 'QTcpServer', 'QTcpSocket', 'QUdpSocket']

# QtPrintSupport
QT56_PRINTSUPPORT = ['QAbstractPrintDialog', 'QPageSetupDialog', 'QPrintDialog', 'QPrintEngine', 'QPrintPreviewDialog', 'QPrintPreviewWidget', 'QPrinter', 'QPrinterInfo']
QT57_PRINTSUPPORT = ['QAbstractPrintDialog', 'QPageSetupDialog', 'QPrintDialog', 'QPrintEngine', 'QPrintPreviewDialog', 'QPrintPreviewWidget', 'QPrinter', 'QPrinterInfo']
pyside_printsupport = []
pyqt4_printsupport = []
pyqt5_printsupport = ['QAbstractPrintDialog', 'QPageSetupDialog', 'QPrintDialog', 'QPrintEngine', 'QPrintPreviewDialog', 'QPrintPreviewWidget', 'QPrinter', 'QPrinterInfo']

# QtMultimedia
QT56_MULTIMEDIA = ['QAbstractPlanarVideoBuffer', 'QAbstractVideoBuffer', 'QAbstractVideoFilter', 'QAbstractVideoSurface', 'QAudio', 'QAudioBuffer', 'QAudioBuffer::StereoFrame', 'QAudioDecoder', 'QAudioDecoderControl', 'QAudioDeviceInfo', 'QAudioEncoderSettings', 'QAudioEncoderSettingsControl', 'QAudioFormat', 'QAudioInput', 'QAudioInputSelectorControl', 'QAudioOutput', 'QAudioOutputSelectorControl', 'QAudioProbe', 'QAudioRecorder', 'QAudioRoleControl', 'QCamera', 'QCamera::FrameRateRange', 'QCameraCaptureBufferFormatControl', 'QCameraCaptureDestinationControl', 'QCameraControl', 'QCameraExposure', 'QCameraExposureControl', 'QCameraFeedbackControl', 'QCameraFlashControl', 'QCameraFocus', 'QCameraFocusControl', 'QCameraFocusZone', 'QCameraImageCapture', 'QCameraImageCaptureControl', 'QCameraImageProcessing', 'QCameraImageProcessingControl', 'QCameraInfo', 'QCameraInfoControl', 'QCameraLocksControl', 'QCameraViewfinderSettings', 'QCameraViewfinderSettingsControl', 'QCameraViewfinderSettingsControl2', 'QCameraZoomControl', 'QImageEncoderControl', 'QImageEncoderSettings', 'QMediaAudioProbeControl', 'QMediaAvailabilityControl', 'QMediaBindableInterface', 'QMediaContainerControl', 'QMediaContent', 'QMediaControl', 'QMediaGaplessPlaybackControl', 'QMediaMetaData', 'QMediaNetworkAccessControl', 'QMediaObject', 'QMediaPlayer', 'QMediaPlayerControl', 'QMediaPlaylist', 'QMediaRecorder', 'QMediaRecorderControl', 'QMediaResource', 'QMediaService', 'QMediaServiceCameraInfoInterface', 'QMediaServiceDefaultDeviceInterface', 'QMediaServiceFeaturesInterface', 'QMediaServiceProviderPlugin', 'QMediaServiceSupportedDevicesInterface', 'QMediaServiceSupportedFormatsInterface', 'QMediaStreamsControl', 'QMediaTimeInterval', 'QMediaTimeRange', 'QMediaVideoProbeControl', 'QMetaDataReaderControl', 'QMetaDataWriterControl', 'QMultimedia', 'QRadioData', 'QRadioDataControl', 'QRadioTuner', 'QRadioTunerControl', 'QSound', 'QSoundEffect', 'QVideoDeviceSelectorControl', 'QVideoEncoderSettings', 'QVideoEncoderSettingsControl', 'QVideoFilterRunnable', 'QVideoFrame', 'QVideoProbe', 'QVideoRendererControl', 'QVideoSurfaceFormat', 'QVideoWindowControl']
QT57_MULTIMEDIA = ['QAbstractPlanarVideoBuffer', 'QAbstractVideoBuffer', 'QAbstractVideoFilter', 'QAbstractVideoSurface', 'QAudio', 'QAudioBuffer', 'QAudioBuffer::StereoFrame', 'QAudioDecoder', 'QAudioDecoderControl', 'QAudioDeviceInfo', 'QAudioEncoderSettings', 'QAudioEncoderSettingsControl', 'QAudioFormat', 'QAudioInput', 'QAudioInputSelectorControl', 'QAudioOutput', 'QAudioOutputSelectorControl', 'QAudioProbe', 'QAudioRecorder', 'QAudioRoleControl', 'QCamera', 'QCamera::FrameRateRange', 'QCameraCaptureBufferFormatControl', 'QCameraCaptureDestinationControl', 'QCameraControl', 'QCameraExposure', 'QCameraExposureControl', 'QCameraFeedbackControl', 'QCameraFlashControl', 'QCameraFocus', 'QCameraFocusControl', 'QCameraFocusZone', 'QCameraImageCapture', 'QCameraImageCaptureControl', 'QCameraImageProcessing', 'QCameraImageProcessingControl', 'QCameraInfo', 'QCameraInfoControl', 'QCameraLocksControl', 'QCameraViewfinderSettings', 'QCameraViewfinderSettingsControl', 'QCameraViewfinderSettingsControl2', 'QCameraZoomControl', 'QImageEncoderControl', 'QImageEncoderSettings', 'QMediaAudioProbeControl', 'QMediaAvailabilityControl', 'QMediaBindableInterface', 'QMediaContainerControl', 'QMediaContent', 'QMediaControl', 'QMediaGaplessPlaybackControl', 'QMediaMetaData', 'QMediaNetworkAccessControl', 'QMediaObject', 'QMediaPlayer', 'QMediaPlayerControl', 'QMediaPlaylist', 'QMediaRecorder', 'QMediaRecorderControl', 'QMediaResource', 'QMediaService', 'QMediaServiceCameraInfoInterface', 'QMediaServiceDefaultDeviceInterface', 'QMediaServiceFeaturesInterface', 'QMediaServiceProviderPlugin', 'QMediaServiceSupportedDevicesInterface', 'QMediaServiceSupportedFormatsInterface', 'QMediaStreamsControl', 'QMediaTimeInterval', 'QMediaTimeRange', 'QMediaVideoProbeControl', 'QMetaDataReaderControl', 'QMetaDataWriterControl', 'QMultimedia', 'QRadioData', 'QRadioDataControl', 'QRadioTuner', 'QRadioTunerControl', 'QSound', 'QSoundEffect', 'QVideoDeviceSelectorControl', 'QVideoEncoderSettings', 'QVideoEncoderSettingsControl', 'QVideoFilterRunnable', 'QVideoFrame', 'QVideoProbe', 'QVideoRendererControl', 'QVideoSurfaceFormat', 'QVideoWindowControl']
pyside_multimedia = ['QAbstractAudioDeviceInfo', 'QAbstractAudioInput', 'QAbstractAudioOutput', 'QAbstractVideoBuffer', 'QAbstractVideoSurface', 'QAudio', 'QAudioDeviceInfo', 'QAudioEngineFactoryInterface', 'QAudioEnginePlugin', 'QAudioFormat', 'QAudioInput', 'QAudioOutput', 'QVideoFrame', 'QVideoSurfaceFormat']
pyqt4_multimedia = ['QAbstractVideoBuffer', 'QAbstractVideoSurface', 'QAudio', 'QAudioDeviceInfo', 'QAudioFormat', 'QAudioInput', 'QAudioOutput', 'QVideoFrame', 'QVideoSurfaceFormat']
pyqt5_multimedia = ['QAbstractVideoBuffer', 'QAbstractVideoFilter', 'QAbstractVideoSurface', 'QAudio', 'QAudioBuffer', 'QAudioDecoder', 'QAudioDeviceInfo', 'QAudioEncoderSettings', 'QAudioFormat', 'QAudioInput', 'QAudioOutput', 'QAudioProbe', 'QAudioRecorder', 'QCamera', 'QCameraExposure', 'QCameraFocus', 'QCameraFocusZone', 'QCameraImageCapture', 'QCameraImageProcessing', 'QCameraInfo', 'QCameraViewfinderSettings', 'QImageEncoderSettings', 'QMediaBindableInterface', 'QMediaContent', 'QMediaControl', 'QMediaMetaData', 'QMediaObject', 'QMediaPlayer', 'QMediaPlaylist', 'QMediaRecorder', 'QMediaResource', 'QMediaService', 'QMediaTimeInterval', 'QMediaTimeRange', 'QMultimedia', 'QRadioData', 'QRadioTuner', 'QSound', 'QSoundEffect', 'QVideoEncoderSettings', 'QVideoFilterRunnable', 'QVideoFrame', 'QVideoProbe', 'QVideoSurfaceFormat']

# QtSvg
QT56_SVG = ['QGraphicsSvgItem', 'QSvgGenerator', 'QSvgRenderer', 'QSvgWidget']
QT57_SVG = ['QGraphicsSvgItem', 'QSvgGenerator', 'QSvgRenderer', 'QSvgWidget']
pyside_svg = ['QGraphicsSvgItem', 'QSvgGenerator', 'QSvgRenderer', 'QSvgWidget']
pyqt4_svg = ['QGraphicsSvgItem', 'QSvgGenerator', 'QSvgRenderer', 'QSvgWidget']
pyqt5_svg = ['QGraphicsSvgItem', 'QSvgGenerator', 'QSvgRenderer', 'QSvgWidget']

# QtTest
QT56_TEST = ['QSignalSpy', 'QTest', 'QTest::QTouchEventSequence', 'QTestEventList']
QT57_TEST = ['QSignalSpy', 'QTest', 'QTest::QTouchEventSequence', 'QTestEventList']
pyside_test = ['QTest']
pyqt4_test = ['QTest']
pyqt5_test = ['QSignalSpy', 'QTest']

Qt5.6 and Qt5.7 have the exact same items, so there should not be any issue.

kernc commented 8 years ago

From https://github.com/spyder-ide/qtpy/issues/35#issuecomment-225395535:

It would help for autocompletion.

Is this the only argument for this? Editors with some introspection should be able to autocomplete just fine.

It is a pain to maintain? Will it work on old Debians with Qt5.3? Will it be modular and work with fine-grained packaging on modern Unixes? Is it a responsibility of the abstraction layer to keep all properties of its upstreams enumerated or should it leave the general case be and code in just the exceptions?

Personally, not a fan. :closed_umbrella:

ccordoba12 commented 8 years ago

@kernc, so you're -1 on this because it's difficult to cover all corner cases?

Nodd commented 8 years ago

Well for example pyflakes warns that it won't be able to detect undefined names if import * is used.

But I agree it could be a pain to maintain.

goanpeca commented 8 years ago

We never intended to be compatible with old versions of Qt, so we should update the README. We will only care about 4.8 and 5.6+, for the time being.

We could make an effort for lower versions but that was clearly never the scope of this project. I already checked for 5.6 and 5.7 and nothing new was introduced that would require changes to the named imports.

goanpeca commented 8 years ago

We can automate an script to check for new stuff, which is kinda what I manually did, so I dont think the pain to maintain is that great.

kernc commented 8 years ago

Qt 5.3 is in Debian Jessie which will be LTS until early 2020. Qt 5.2 is in Ubuntu 14.04 which is LTS till mid 2019. Ubuntu 16.04 (LTS till 2021) has Qt 5.5. Likewise for RedHat-based LTS distros. Those platforms are strong Python / Qt / scientific users.

Regardless of how you go about import *, I don't think it's necessary to exclude them up front, so any graceful degradation would be appreciated. :smiley:

goanpeca commented 8 years ago

Qt 5.3 is in Debian Jessie which will be LTS until early 2020. Qt 5.2 is in Ubuntu 14.04 which is LTS till mid 2019. Ubuntu 16.04 (LTS till 2021) has Qt 5.5. Likewise for RedHat-based LTS distros. Those platforms are strong Python / Qt / scientific users.

Indeed, but we also recommend the Anaconda Distribution in general, which is cross platform and supports 4.8 and 5.6 out of the box.

QtPy was made for 4.8/5.6+ and I will update the README soon to reflect that decision.

ccordoba12 commented 8 years ago

@goanpeca, I think trying to do a list of all objects under every Qt library would demand a lot of effort from us to support correctly in the future (even if we require that the minimal Qt 5 version that we support is 5.6).

So I agree with @kernc on this one, and I'm -1 on moving forward with this idea. I think it's just unpractical for a little (and handy :-) library like qtpy.

ccordoba12 commented 8 years ago

And since @Nodd agrees with me, we should revert your PR for QtSvg and release 1.2 so that Debian guys can correctly package pizo (@almarklein's IDE :-)

ccordoba12 commented 8 years ago

Another argument to abandon this idea is that qtpy is now part of Debian (and Ubuntu as well) so we really can't break compatibility with them.

And qtpy is a dependency of important projects like Spyder, Glue and git-cola, which can support Qt5 versions older than 5.6 (e.g. Spyder supports 5.2+).

goanpeca commented 8 years ago

Well this library is pretty useless if we don't enforce the right imports, the idea is to nudge people into the right direction. If we are using import * we need to retain the del statements.

ccordoba12 commented 8 years ago

I think we are already enforcing the right imports. I mean, we're already enforcing the Qt5 layout for Qt4 projects.

If we are using import * we need to retain the del statements.

True, but that's far more easier to manage than the huge amount of objects that will appear if we remove our star imports (not to mention that we will break compatibility with older Qt 5 versions :-).


In any case, this issue needs more discussion, so it's not ready for 1.2.

goanpeca commented 7 years ago

We should probably close this @ccordoba12 ?

Or is this something we want to further study?

ccordoba12 commented 7 years ago

I think we should close it for now. There's no simple way for us to remove star imports right now.