You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

362 lines
16 KiB

// qapplication.sip generated by MetaSIP
//
// This file is part of the QtWidgets Python extension module.
//
// Copyright (c) 2023 Riverbank Computing Limited <info@riverbankcomputing.com>
//
// This file is part of PyQt5.
//
// This file may be used under the terms of the GNU General Public License
// version 3.0 as published by the Free Software Foundation and appearing in
// the file LICENSE included in the packaging of this file. Please review the
// following information to ensure the GNU General Public License version 3.0
// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
//
// If you do not wish to use this file under the terms of the GPL version 3.0
// then you may purchase a commercial license. For more information contact
// info@riverbankcomputing.com.
//
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
// QApplication *qApp
QApplication *qApp {
%AccessCode
// Qt implements this has a #define to a function call so we have to handle
// it like this.
return qApp;
%End
};
typedef QList<QWidget *> QWidgetList;
class QApplication : QGuiApplication
{
%TypeHeaderCode
#include <qapplication.h>
%End
%ConvertToSubClassCode
static struct class_graph {
const char *name;
sipTypeDef **type;
int yes, no;
} graph[] = {
{sipName_QKeyEventTransition, &sipType_QKeyEventTransition, -1, 1},
{sipName_QUndoStack, &sipType_QUndoStack, -1, 2},
{sipName_QAbstractItemDelegate, &sipType_QAbstractItemDelegate, 26, 3},
{sipName_QGraphicsTransform, &sipType_QGraphicsTransform, 28, 4},
{sipName_QCompleter, &sipType_QCompleter, -1, 5},
{sipName_QActionGroup, &sipType_QActionGroup, -1, 6},
{sipName_QShortcut, &sipType_QShortcut, -1, 7},
{sipName_QButtonGroup, &sipType_QButtonGroup, -1, 8},
{sipName_QPlainTextDocumentLayout, &sipType_QPlainTextDocumentLayout, -1, 9},
{sipName_QGraphicsAnchor, &sipType_QGraphicsAnchor, -1, 10},
{sipName_QFileSystemModel, &sipType_QFileSystemModel, -1, 11},
{sipName_QGesture, &sipType_QGesture, 30, 12},
{sipName_QApplication, &sipType_QApplication, -1, 13},
{sipName_QLayout, &sipType_QLayout, 35, 14},
{sipName_QDirModel, &sipType_QDirModel, -1, 15},
{sipName_QDataWidgetMapper, &sipType_QDataWidgetMapper, -1, 16},
{sipName_QGraphicsObject, &sipType_QGraphicsObject, 41, 17},
{sipName_QScroller, &sipType_QScroller, -1, 18},
{sipName_QGraphicsScene, &sipType_QGraphicsScene, -1, 19},
{sipName_QUndoGroup, &sipType_QUndoGroup, -1, 20},
{sipName_QMouseEventTransition, &sipType_QMouseEventTransition, -1, 21},
{sipName_QGraphicsEffect, &sipType_QGraphicsEffect, 44, 22},
{sipName_QWidget, &sipType_QWidget, 48, 23},
{sipName_QStyle, &sipType_QStyle, 122, 24},
{sipName_QAction, &sipType_QAction, 124, 25},
{sipName_QSystemTrayIcon, &sipType_QSystemTrayIcon, -1, -1},
{sipName_QStyledItemDelegate, &sipType_QStyledItemDelegate, -1, 27},
{sipName_QItemDelegate, &sipType_QItemDelegate, -1, -1},
{sipName_QGraphicsRotation, &sipType_QGraphicsRotation, -1, 29},
{sipName_QGraphicsScale, &sipType_QGraphicsScale, -1, -1},
{sipName_QSwipeGesture, &sipType_QSwipeGesture, -1, 31},
{sipName_QTapGesture, &sipType_QTapGesture, -1, 32},
{sipName_QPanGesture, &sipType_QPanGesture, -1, 33},
{sipName_QPinchGesture, &sipType_QPinchGesture, -1, 34},
{sipName_QTapAndHoldGesture, &sipType_QTapAndHoldGesture, -1, -1},
{sipName_QStackedLayout, &sipType_QStackedLayout, -1, 36},
{sipName_QFormLayout, &sipType_QFormLayout, -1, 37},
{sipName_QBoxLayout, &sipType_QBoxLayout, 39, 38},
{sipName_QGridLayout, &sipType_QGridLayout, -1, -1},
{sipName_QVBoxLayout, &sipType_QVBoxLayout, -1, 40},
{sipName_QHBoxLayout, &sipType_QHBoxLayout, -1, -1},
{sipName_QGraphicsWidget, &sipType_QGraphicsWidget, 43, 42},
{sipName_QGraphicsTextItem, &sipType_QGraphicsTextItem, -1, -1},
{sipName_QGraphicsProxyWidget, &sipType_QGraphicsProxyWidget, -1, -1},
{sipName_QGraphicsBlurEffect, &sipType_QGraphicsBlurEffect, -1, 45},
{sipName_QGraphicsColorizeEffect, &sipType_QGraphicsColorizeEffect, -1, 46},
{sipName_QGraphicsDropShadowEffect, &sipType_QGraphicsDropShadowEffect, -1, 47},
{sipName_QGraphicsOpacityEffect, &sipType_QGraphicsOpacityEffect, -1, -1},
{sipName_QDockWidget, &sipType_QDockWidget, -1, 49},
{sipName_QProgressBar, &sipType_QProgressBar, -1, 50},
#if QT_VERSION >= 0x050400 && defined(SIP_FEATURE_PyQt_OpenGL)
{sipName_QOpenGLWidget, &sipType_QOpenGLWidget, -1, 51},
#else
{0, 0, -1, 51},
#endif
{sipName_QAbstractButton, &sipType_QAbstractButton, 78, 52},
{sipName_QSplashScreen, &sipType_QSplashScreen, -1, 53},
{sipName_QMenuBar, &sipType_QMenuBar, -1, 54},
{sipName_QStatusBar, &sipType_QStatusBar, -1, 55},
{sipName_QMenu, &sipType_QMenu, -1, 56},
{sipName_QMdiSubWindow, &sipType_QMdiSubWindow, -1, 57},
{sipName_QTabWidget, &sipType_QTabWidget, -1, 58},
#if defined(Q_OS_MAC) && defined(SIP_FEATURE_PyQt_MacOSXOnly)
{sipName_QMacCocoaViewContainer, &sipType_QMacCocoaViewContainer, -1, 59},
#else
{0, 0, -1, 59},
#endif
{sipName_QLineEdit, &sipType_QLineEdit, -1, 60},
{sipName_QFrame, &sipType_QFrame, 83, 61},
{sipName_QComboBox, &sipType_QComboBox, 105, 62},
{sipName_QRubberBand, &sipType_QRubberBand, -1, 63},
{sipName_QAbstractSpinBox, &sipType_QAbstractSpinBox, 106, 64},
{sipName_QDialog, &sipType_QDialog, 111, 65},
#if QT_VERSION >= 0x050200
{sipName_QKeySequenceEdit, &sipType_QKeySequenceEdit, -1, 66},
#else
{0, 0, -1, 66},
#endif
{sipName_QAbstractSlider, &sipType_QAbstractSlider, 119, 67},
{sipName_QWizardPage, &sipType_QWizardPage, -1, 68},
{sipName_QDesktopWidget, &sipType_QDesktopWidget, -1, 69},
{sipName_QDialogButtonBox, &sipType_QDialogButtonBox, -1, 70},
{sipName_QToolBar, &sipType_QToolBar, -1, 71},
{sipName_QSizeGrip, &sipType_QSizeGrip, -1, 72},
{sipName_QSplitterHandle, &sipType_QSplitterHandle, -1, 73},
{sipName_QTabBar, &sipType_QTabBar, -1, 74},
{sipName_QGroupBox, &sipType_QGroupBox, -1, 75},
{sipName_QMainWindow, &sipType_QMainWindow, -1, 76},
{sipName_QCalendarWidget, &sipType_QCalendarWidget, -1, 77},
{sipName_QFocusFrame, &sipType_QFocusFrame, -1, -1},
{sipName_QCheckBox, &sipType_QCheckBox, -1, 79},
{sipName_QRadioButton, &sipType_QRadioButton, -1, 80},
{sipName_QPushButton, &sipType_QPushButton, 82, 81},
{sipName_QToolButton, &sipType_QToolButton, -1, -1},
{sipName_QCommandLinkButton, &sipType_QCommandLinkButton, -1, -1},
{sipName_QAbstractScrollArea, &sipType_QAbstractScrollArea, 89, 84},
{sipName_QToolBox, &sipType_QToolBox, -1, 85},
{sipName_QSplitter, &sipType_QSplitter, -1, 86},
{sipName_QStackedWidget, &sipType_QStackedWidget, -1, 87},
{sipName_QLabel, &sipType_QLabel, -1, 88},
{sipName_QLCDNumber, &sipType_QLCDNumber, -1, -1},
{sipName_QScrollArea, &sipType_QScrollArea, -1, 90},
{sipName_QPlainTextEdit, &sipType_QPlainTextEdit, -1, 91},
{sipName_QGraphicsView, &sipType_QGraphicsView, -1, 92},
{sipName_QAbstractItemView, &sipType_QAbstractItemView, 95, 93},
{sipName_QTextEdit, &sipType_QTextEdit, 104, 94},
{sipName_QMdiArea, &sipType_QMdiArea, -1, -1},
{sipName_QHeaderView, &sipType_QHeaderView, -1, 96},
{sipName_QTableView, &sipType_QTableView, 100, 97},
{sipName_QListView, &sipType_QListView, 101, 98},
{sipName_QTreeView, &sipType_QTreeView, 103, 99},
{sipName_QColumnView, &sipType_QColumnView, -1, -1},
{sipName_QTableWidget, &sipType_QTableWidget, -1, -1},
{sipName_QListWidget, &sipType_QListWidget, -1, 102},
{sipName_QUndoView, &sipType_QUndoView, -1, -1},
{sipName_QTreeWidget, &sipType_QTreeWidget, -1, -1},
{sipName_QTextBrowser, &sipType_QTextBrowser, -1, -1},
{sipName_QFontComboBox, &sipType_QFontComboBox, -1, -1},
{sipName_QDateTimeEdit, &sipType_QDateTimeEdit, 109, 107},
{sipName_QSpinBox, &sipType_QSpinBox, -1, 108},
{sipName_QDoubleSpinBox, &sipType_QDoubleSpinBox, -1, -1},
{sipName_QDateEdit, &sipType_QDateEdit, -1, 110},
{sipName_QTimeEdit, &sipType_QTimeEdit, -1, -1},
{sipName_QFontDialog, &sipType_QFontDialog, -1, 112},
{sipName_QErrorMessage, &sipType_QErrorMessage, -1, 113},
{sipName_QMessageBox, &sipType_QMessageBox, -1, 114},
{sipName_QProgressDialog, &sipType_QProgressDialog, -1, 115},
{sipName_QColorDialog, &sipType_QColorDialog, -1, 116},
{sipName_QFileDialog, &sipType_QFileDialog, -1, 117},
{sipName_QInputDialog, &sipType_QInputDialog, -1, 118},
{sipName_QWizard, &sipType_QWizard, -1, -1},
{sipName_QDial, &sipType_QDial, -1, 120},
{sipName_QScrollBar, &sipType_QScrollBar, -1, 121},
{sipName_QSlider, &sipType_QSlider, -1, -1},
{sipName_QCommonStyle, &sipType_QCommonStyle, 123, -1},
{sipName_QProxyStyle, &sipType_QProxyStyle, -1, -1},
{sipName_QWidgetAction, &sipType_QWidgetAction, -1, -1},
};
int i = 0;
sipType = NULL;
do
{
struct class_graph *cg = &graph[i];
if (cg->name != NULL && sipCpp->inherits(cg->name))
{
sipType = *cg->type;
i = cg->yes;
}
else
i = cg->no;
}
while (i >= 0);
%End
public:
QApplication(SIP_PYLIST argv /TypeHint="List[str]"/) /PostHook=__pyQtQAppHook__/ [(int &argc, char **argv, int = ApplicationFlags)];
%MethodCode
// The Python interface is a list of argument strings that is modified.
int argc;
char **argv;
// Convert the list.
if ((argv = pyqt5_qtwidgets_from_argv_list(a0, argc)) == NULL)
sipIsErr = 1;
else
{
// Create it now the arguments are right.
static int nargc;
nargc = argc;
Py_BEGIN_ALLOW_THREADS
sipCpp = new sipQApplication(nargc, argv, QCoreApplication::ApplicationFlags);
Py_END_ALLOW_THREADS
// Now modify the original list.
pyqt5_qtwidgets_update_argv_list(a0, argc, argv);
}
%End
virtual ~QApplication() /ReleaseGIL/;
%MethodCode
pyqt5_qtwidgets_cleanup_qobjects();
%End
static QStyle *style();
static void setStyle(QStyle * /Transfer/);
static QStyle *setStyle(const QString &);
enum ColorSpec
{
NormalColor,
CustomColor,
ManyColor,
};
static int colorSpec();
static void setColorSpec(int);
static QPalette palette();
static QPalette palette(const QWidget *);
static QPalette palette(const char *className);
static void setPalette(const QPalette &, const char *className = 0);
static QFont font();
static QFont font(const QWidget *);
static QFont font(const char *className);
static void setFont(const QFont &, const char *className = 0);
static QFontMetrics fontMetrics();
static void setWindowIcon(const QIcon &icon);
static QIcon windowIcon();
static QWidgetList allWidgets();
static QWidgetList topLevelWidgets();
static QDesktopWidget *desktop();
static QWidget *activePopupWidget();
static QWidget *activeModalWidget();
static QWidget *focusWidget();
static QWidget *activeWindow();
static void setActiveWindow(QWidget *act);
static QWidget *widgetAt(const QPoint &p);
static QWidget *widgetAt(int x, int y);
static QWidget *topLevelAt(const QPoint &p);
static QWidget *topLevelAt(int x, int y);
static void beep();
static void alert(QWidget *widget, int msecs = 0) /ReleaseGIL/;
static void setCursorFlashTime(int);
static int cursorFlashTime();
static void setDoubleClickInterval(int);
static int doubleClickInterval();
static void setKeyboardInputInterval(int);
static int keyboardInputInterval();
static void setWheelScrollLines(int);
static int wheelScrollLines();
static void setGlobalStrut(const QSize &);
static QSize globalStrut();
static void setStartDragTime(int ms);
static int startDragTime();
static void setStartDragDistance(int l);
static int startDragDistance();
static bool isEffectEnabled(Qt::UIEffect);
static void setEffectEnabled(Qt::UIEffect, bool enabled = true);
static int exec() /PostHook=__pyQtPostEventLoopHook__,PreHook=__pyQtPreEventLoopHook__,PyName=exec_,ReleaseGIL/;
%If (Py_v3)
static int exec() /PostHook=__pyQtPostEventLoopHook__,PreHook=__pyQtPreEventLoopHook__,ReleaseGIL/;
%End
virtual bool notify(QObject *, QEvent *) /ReleaseGIL/;
bool autoSipEnabled() const;
QString styleSheet() const;
signals:
void focusChanged(QWidget *old, QWidget *now);
public slots:
static void aboutQt();
static void closeAllWindows();
void setAutoSipEnabled(const bool enabled);
void setStyleSheet(const QString &sheet);
protected:
virtual bool event(QEvent *);
};
%ModuleHeaderCode
// Imports from QtCore.
typedef void (*pyqt5_qtwidgets_cleanup_qobjects_t)();
extern pyqt5_qtwidgets_cleanup_qobjects_t pyqt5_qtwidgets_cleanup_qobjects;
typedef char **(*pyqt5_qtwidgets_from_argv_list_t)(PyObject *, int &);
extern pyqt5_qtwidgets_from_argv_list_t pyqt5_qtwidgets_from_argv_list;
typedef sipErrorState (*pyqt5_qtwidgets_get_connection_parts_t)(PyObject *, QObject *, const char *, bool, QObject **, QByteArray &);
extern pyqt5_qtwidgets_get_connection_parts_t pyqt5_qtwidgets_get_connection_parts;
typedef sipErrorState (*pyqt5_qtwidgets_get_signal_signature_t)(PyObject *, QObject *, QByteArray &);
extern pyqt5_qtwidgets_get_signal_signature_t pyqt5_qtwidgets_get_signal_signature;
typedef void (*pyqt5_qtwidgets_update_argv_list_t)(PyObject *, int, char **);
extern pyqt5_qtwidgets_update_argv_list_t pyqt5_qtwidgets_update_argv_list;
// This is needed for Qt v5.0.0.
#if defined(B0)
#undef B0
#endif
%End
%ModuleCode
#include "qpywidgets_api.h"
// Imports from QtCore.
pyqt5_qtwidgets_cleanup_qobjects_t pyqt5_qtwidgets_cleanup_qobjects;
pyqt5_qtwidgets_from_argv_list_t pyqt5_qtwidgets_from_argv_list;
pyqt5_qtwidgets_get_connection_parts_t pyqt5_qtwidgets_get_connection_parts;
pyqt5_qtwidgets_get_signal_signature_t pyqt5_qtwidgets_get_signal_signature;
pyqt5_qtwidgets_update_argv_list_t pyqt5_qtwidgets_update_argv_list;
%End
%PostInitialisationCode
// Imports from QtCore.
pyqt5_qtwidgets_cleanup_qobjects = (pyqt5_qtwidgets_cleanup_qobjects_t)sipImportSymbol("pyqt5_cleanup_qobjects");
Q_ASSERT(pyqt5_qtwidgets_cleanup_qobjects);
pyqt5_qtwidgets_from_argv_list = (pyqt5_qtwidgets_from_argv_list_t)sipImportSymbol("pyqt5_from_argv_list");
Q_ASSERT(pyqt5_qtwidgets_from_argv_list);
pyqt5_qtwidgets_get_connection_parts = (pyqt5_qtwidgets_get_connection_parts_t)sipImportSymbol("pyqt5_get_connection_parts");
Q_ASSERT(pyqt5_qtwidgets_get_connection_parts);
pyqt5_qtwidgets_get_signal_signature = (pyqt5_qtwidgets_get_signal_signature_t)sipImportSymbol("pyqt5_get_signal_signature");
Q_ASSERT(pyqt5_qtwidgets_get_signal_signature);
pyqt5_qtwidgets_update_argv_list = (pyqt5_qtwidgets_update_argv_list_t)sipImportSymbol("pyqt5_update_argv_list");
Q_ASSERT(pyqt5_qtwidgets_update_argv_list);
qpywidgets_post_init();
%End