4#ifndef QAPPLICATION_P_H
5#define QAPPLICATION_P_H
19#include <QtWidgets/private/qtwidgetsglobal_p.h>
20#include "QtWidgets/qapplication.h"
21#include "QtGui/qevent.h"
22#include "QtGui/qfont.h"
23#include "QtGui/qcursor.h"
24#include "QtGui/qregion.h"
25#include "QtGui/qwindow.h"
27#include <qpa/qplatformnativeinterface.h>
28#include "QtCore/qmutex.h"
29#include "QtCore/qtranslator.h"
30#include "QtCore/qbasictimer.h"
31#include "QtCore/qhash.h"
32#include "QtCore/qpointer.h"
33#include "private/qcoreapplication_p.h"
34#include "QtCore/qpoint.h"
36#include <qpa/qwindowsysteminterface.h>
37#include <qpa/qwindowsysteminterface_p.h>
38#include <qpa/qplatformintegration.h>
39#include "private/qguiapplication_p.h"
54#ifndef QT_NO_CLIPBOARD
68 virtual void notifyLayoutDirectionChange()
override;
69 virtual void notifyActiveWindowChange(
QWindow *)
override;
72 static QString desktopStyleKey();
74 void createEventDispatcher()
override;
77 void notifyWindowIconChanged()
override;
90 static bool modalState();
93#ifdef QT_KEYPAD_NAVIGATION
94 static bool keypadNavigationEnabled()
105 void process_cmdline();
107 static void setActiveWindow(
QWidget* act);
109 static bool inPopupMode();
111 bool closeAllPopups()
override;
112 void closePopup(
QWidget *popup);
113 void openPopup(
QWidget *popup);
116 bool *wrappingOccurred =
nullptr);
118#if QT_CONFIG(graphicsview)
121 QList<QGraphicsScene *> scene_list;
133 void handleThemeChanged()
override;
135 QPalette basePalette()
const override;
136 void handlePaletteChanged(
const char *
className =
nullptr)
override;
138#if QT_CONFIG(draganddrop)
139 void notifyDragStarted(
const QDrag *)
override;
148#if QT_CONFIG(wheelevent)
149 static QPointer<QWidget> wheel_widget;
155 static void initializeWidgetPalettesFromTheme();
156 static void initializeWidgetFontHash();
157 static void setSystemFont(
const QFont &
font);
164#ifdef QT_KEYPAD_NAVIGATION
169#ifndef QT_NO_STYLE_STYLESHEET
177 QWidget *native,
QWidget **buttonDown, QPointer<QWidget> &lastMouseReceiver,
178 bool spontaneous =
true,
bool onlyDispatchEnterLeave =
false);
186 return nativeParent->windowHandle();
201#ifndef QT_NO_GESTURES
207 void initializeMultitouch();
208 void initializeMultitouch_sys();
209 void cleanupMultitouch();
210 void cleanupMultitouch_sys();
216 ImplicitTouchGrabMode grabMode = GrabAcceptedPoints);
224 static bool tryCloseAllWidgetWindows(
QWindowList *processedWindows);
231 static bool isAlien(
QWidget *);
IOBluetoothDevice * device
static QApplicationPrivate * instance()
static QWidget * focus_widget
static QPointer< QWidget > leaveAfterRelease
QGestureManager * gestureManager
bool popupActive() override
QBasicTimer toolTipFallAsleep
static QWidget * hidden_focus_widget
QPointer< QWidget > toolTipWidget
static PaletteHash widgetPalettes
static int enabledAnimations
static QString styleSheet
static QWindow * windowForWidget(const QWidget *widget)
QHash< QByteArray, QPalette > PaletteHash
static QWidgetList * popupWidgets
static QStyle * app_style
static QWidget * main_widget
static bool autoSipEnabled
void appendTouchPoint(const QEventPoint &touchPoint)
void removeTouchPoint(int touchPointId)
The QApplication class manages the GUI application's control flow and main settings.
The QClipboard class provides access to the window system clipboard.
The QEventPoint class provides information about a point in a QPointerEvent.
Type
This enum type defines the valid event types in Qt.
The QGraphicsScene class provides a surface for managing a large number of 2D graphical items.
static QPlatformNativeInterface * platformNativeInterface()
Mode
This enum type describes the mode for which a pixmap is intended to be used.
The QPalette class contains color groups for each widget state.
Returns a copy of the pixmap that is transformed using the given transformation transform and transfo...
\inmodule QtCore\reentrant
\inmodule QtCore\reentrant
The QPointingDevice class describes a device from which mouse, touch or tablet events originate.
\macro QT_RESTRICTED_CAST_FROM_ASCII
The QStyle class is an abstract base class that encapsulates the look and feel of a GUI.
The QTouchEvent class contains parameters that describe a touch event.
Combined button and popup list for selecting options.
@ NavigationModeKeypadDirectional
@ NavigationModeKeypadTabOrder
Q_GUI_EXPORT bool qt_is_tty_app
void qt_qpa_set_cursor(QWidget *w, bool force)
Q_WIDGETS_EXPORT FontHash * qt_app_fonts_hash()
QHash< QByteArray, QFont > FontHash
QClipboard * qt_clipboard
#define QByteArrayLiteral(str)
GLfloat GLfloat GLfloat w
[0]
static QT_BEGIN_NAMESPACE void init(QTextBoundaryFinder::BoundaryType type, QStringView str, QCharAttributes *attributes)
const char className[16]
[1]