40 #ifndef QAPPLICATION_P_H
41 #define QAPPLICATION_P_H
55 #include <QtWidgets/private/qtwidgetsglobal_p.h>
56 #include "QtWidgets/qapplication.h"
57 #include "QtGui/qevent.h"
58 #include "QtGui/qfont.h"
59 #include "QtGui/qcursor.h"
60 #include "QtGui/qregion.h"
61 #include "QtGui/qwindow.h"
63 #include <qpa/qplatformnativeinterface.h>
64 #include "QtCore/qmutex.h"
65 #include "QtCore/qtranslator.h"
66 #include "QtCore/qbasictimer.h"
67 #include "QtCore/qhash.h"
68 #include "QtCore/qpointer.h"
69 #include "private/qcoreapplication_p.h"
70 #include "QtCore/qpoint.h"
72 #include <qpa/qwindowsysteminterface.h>
73 #include <qpa/qwindowsysteminterface_p.h>
74 #include <qpa/qplatformintegration.h>
75 #include "private/qguiapplication_p.h"
85 #ifndef QT_NO_GESTURES
90 #ifndef QT_NO_CLIPBOARD
97 #define QApplicationPrivateBase QGuiApplicationPrivate
106 virtual void notifyLayoutDirectionChange()
override;
107 virtual void notifyActiveWindowChange(
QWindow *)
override;
110 static QString desktopStyleKey();
112 void createEventDispatcher()
override;
115 void notifyWindowIconChanged()
override;
120 #ifndef QT_NO_SHORTCUT
127 static bool modalState();
130 #ifdef QT_KEYPAD_NAVIGATION
131 static bool keypadNavigationEnabled()
142 void process_cmdline();
144 static bool inPopupMode();
146 bool closeAllPopups()
override;
147 void closePopup(
QWidget *popup);
148 void openPopup(
QWidget *popup);
151 bool *wrappingOccurred =
nullptr);
153 #if QT_CONFIG(graphicsview)
168 void notifyThemeChanged()
override;
170 QPalette basePalette()
const override;
171 void handlePaletteChanged(
const char *
className =
nullptr)
override;
173 #if QT_CONFIG(draganddrop)
174 void notifyDragStarted(
const QDrag *)
override;
184 #if QT_CONFIG(wheelevent)
185 static int wheel_scroll_lines;
192 static void initializeWidgetPalettesFromTheme();
193 static void initializeWidgetFontHash();
194 static void setSystemFont(
const QFont &
font);
201 #ifdef QT_KEYPAD_NAVIGATION
206 #ifndef QT_NO_STYLE_STYLESHEET
215 bool spontaneous =
true,
bool onlyDispatchEnterLeave =
false);
223 return nativeParent->windowHandle();
238 #ifndef QT_NO_GESTURES
244 void initializeMultitouch();
245 void initializeMultitouch_sys();
246 void cleanupMultitouch();
247 void cleanupMultitouch_sys();
253 ImplicitTouchGrabMode grabMode = GrabAcceptedPoints);
261 static bool tryCloseAllWidgetWindows(
QWindowList *processedWindows);
267 static bool isAlien(
QWidget *);
The QApplication class manages the GUI application's control flow and main settings.
static QWindow * windowForWidget(const QWidget *widget)
static QWidget * focus_widget
static QPointer< QWidget > leaveAfterRelease
QGestureManager * gestureManager
bool popupActive() override
QBasicTimer toolTipFallAsleep
static QWidget * hidden_focus_widget
QPointer< QWidget > toolTipWidget
static QWidget * active_window
static PaletteHash widgetPalettes
static int enabledAnimations
static QString styleSheet
static QWidgetList * popupWidgets
static QStyle * app_style
static QWidget * main_widget
static bool autoSipEnabled
static QApplicationPrivate * instance()
void appendTouchPoint(const QEventPoint &touchPoint)
void removeTouchPoint(int touchPointId)
The QBasicTimer class provides timer events for objects.
The QClipboard class provides access to the window system clipboard. \inmodule QtGui.
The QDrag class provides support for MIME-based drag and drop data transfer.
The QEvent class is the base class of all event classes. Event objects contain event parameters.
The QEventPoint class provides information about a point in a QPointerEvent.
The QFont class specifies a query for a font used for drawing text.
The QGraphicsScene class provides a surface for managing a large number of 2D graphical items.
static QPlatformNativeInterface * platformNativeInterface()
The QMouseEvent class contains parameters that describe a mouse event.
The QObject class is the base class of all Qt objects.
The QPalette class contains color groups for each widget state.
The QPixmap class is an off-screen image representation that can be used as a paint device.
The QPointF class defines a point in the plane using floating point precision.
The QPoint class defines a point in the plane using integer precision.
The QPointingDevice class describes a device from which mouse, touch or tablet events originate.
The QSize class defines the size of a two-dimensional object using integer point precision.
The QSocketNotifier class provides support for monitoring activity on a file descriptor.
The QString class provides a Unicode character string.
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.
The QWindow class represents a window in the underlying windowing system.
QTouchEventSequence touchEvent(QWindow *window, QPointingDevice *device, bool autoCommit=true)
@ NavigationModeKeypadDirectional
@ NavigationModeKeypadTabOrder
set set set set set set set macro pixldst1 abits if abits op else op endif endm macro pixldst2 abits if abits op else op endif endm macro pixldst4 abits if abits op else op endif endm macro pixldst0 abits op endm macro pixldst3 mem_operand op endm macro pixldst30 mem_operand op endm macro pixldst abits if abits elseif abits elseif abits elseif abits elseif abits pixldst0 abits else pixldst0 abits pixldst0 abits pixldst0 abits pixldst0 abits endif elseif abits else pixldst0 abits pixldst0 abits endif elseif abits else error unsupported bpp *numpix else pixst endif endm macro vuzp8 reg2 vuzp d d ®2 endm macro vzip8 reg2 vzip d d ®2 endm macro pixdeinterleave basereg basereg basereg basereg basereg endif endm macro pixinterleave basereg basereg basereg basereg basereg endif endm macro PF boost_increment endif if endif PF tst PF addne PF subne PF cmp ORIG_W if endif if endif if endif PF subge ORIG_W PF subges if endif if endif if endif endif endm macro cache_preload_simple endif if dst_r_bpp pld[DST_R, #(PREFETCH_DISTANCE_SIMPLE *dst_r_bpp/8)] endif if mask_bpp pld init[MASK, #(PREFETCH_DISTANCE_SIMPLE *mask_bpp/8)] endif endif endm macro ensure_destination_ptr_alignment process_pixblock_tail_head if beq irp skip1 beq endif SRC MASK if dst_r_bpp DST_R else add endif PF add sub src_basereg pixdeinterleave mask_basereg pixdeinterleave dst_r_basereg process_pixblock_head pixblock_size cache_preload_simple process_pixblock_tail pixinterleave dst_w_basereg irp beq endif process_pixblock_tail_head tst beq irp if pixblock_size chunk_size tst beq pixld SRC pixld MASK if DST_R else pixld DST_R endif if src_basereg pixdeinterleave mask_basereg pixdeinterleave dst_r_basereg process_pixblock_head if pixblock_size cache_preload_simple endif process_pixblock_tail pixinterleave dst_w_basereg irp if pixblock_size chunk_size tst beq if DST_W else pixst DST_W else mov ORIG_W endif add lsl if lsl endif if lsl endif lsl endif lsl endif lsl endif subs mov DST_W if regs_shortage str endif bge start_of_loop_label endm macro generate_composite_function
Q_WIDGETS_EXPORT FontHash * qt_app_fonts_hash()
Q_GUI_EXPORT bool qt_is_tty_app
void qt_qpa_set_cursor(QWidget *w, bool force)
QHash< QByteArray, QFont > FontHash
QClipboard * qt_clipboard
#define QApplicationPrivateBase
#define QByteArrayLiteral(str)
GLfloat GLfloat GLfloat w
[0]
const char className[16]
[1]
socketLayer initialize(QAbstractSocket::TcpSocket, QAbstractSocket::IPv4Protocol)