4#ifndef QCOREAPPLICATION_H
5#define QCOREAPPLICATION_H
7#include <QtCore/qglobal.h>
8#include <QtCore/qstring.h>
10#include <QtCore/qcoreevent.h>
11#include <QtCore/qdeadlinetimer.h>
12#include <QtCore/qeventloop.h>
13#include <QtCore/qobject.h>
15#include <QtCore/qscopedpointer.h>
17#include <QtCore/qnativeinterface.h>
18#ifndef QT_NO_DEBUGSTREAM
19#include <QtCore/qdebug.h>
23#if defined(Q_OS_WIN) && !defined(tagMSG)
24typedef struct tagMSG
MSG;
38#if QT_CONFIG(permissions) || defined(Q_QDOC)
42#define qApp QCoreApplication::instance()
52 NOTIFY applicationNameChanged)
54 NOTIFY applicationVersionChanged)
56 NOTIFY organizationNameChanged)
58 NOTIFY organizationDomainChanged)
64#if QT_CONFIG(permissions)
74 ,
int = ApplicationFlags
85 static void setOrganizationDomain(
const QString &orgDomain);
87 static void setOrganizationName(
const QString &orgName);
89 static void setApplicationName(
const QString &application);
91 static void setApplicationVersion(
const QString &version);
94 static void setSetuidAllowed(
bool allow);
95 static bool isSetuidAllowed();
102 static void processEvents(QEventLoop::ProcessEventsFlags
flags,
int maxtime);
107 static void sendPostedEvents(
QObject *receiver =
nullptr,
int event_type = 0);
108 static void removePostedEvents(
QObject *receiver,
int eventType = 0);
114 static bool startingUp();
115 static bool closingDown();
118 static QString applicationDirPath();
119 static QString applicationFilePath();
122#if QT_CONFIG(permissions) || defined(Q_QDOC)
126 template <
typename Functor>
135 void requestPermission(
const QPermission &permission,
139 requestPermission(permission,
140 QtPrivate::makeCallableObject<RequestPermissionPrototype>(std::forward<Functor>(
func)),
145#ifndef QT_NO_CONTEXTLESS_CONNECT
147 template <
typename Functor>
169#if QT_CONFIG(library)
172 static void addLibraryPath(
const QString &);
173 static void removeLibraryPath(
const QString &);
176#ifndef QT_NO_TRANSLATION
177 static bool installTranslator(
QTranslator * messageFile);
178 static bool removeTranslator(
QTranslator * messageFile);
183 const char * disambiguation =
nullptr,
192 static bool isQuitLockEnabled();
193 static void setQuitLockEnabled(
bool enabled);
197 static void exit(
int retcode = 0);
217 QScopedPointer<QCoreApplicationPrivate> d_ptr;
226#if QT_CONFIG(library)
250#define Q_DECLARE_TR_FUNCTIONS(context) \
252 static inline QString tr(const char *sourceText, const char *disambiguation = nullptr, int n = -1) \
253 { return QCoreApplication::translate(#context, sourceText, disambiguation, n); } \
264#define Q_COREAPP_STARTUP_FUNCTION(AFUNC) \
265 static void AFUNC ## _ctor_function() { \
266 qAddPreRoutine(AFUNC); \
268 Q_CONSTRUCTOR_FUNCTION(AFUNC ## _ctor_function)
271#if defined(Q_OS_WIN) && !defined(QT_NO_DEBUG_STREAM)
279#include <QtCore/qcoreapplication_platform.h>
The QApplication class manages the GUI application's control flow and main settings.
void organizationDomainChanged()
static QString organizationDomain()
void applicationNameChanged()
static QString applicationVersion()
void organizationNameChanged()
static QString organizationName()
static QCoreApplication * instance() noexcept
Returns a pointer to the application's QCoreApplication (or QGuiApplication/QApplication) instance.
void aboutToQuit(QPrivateSignal)
This signal is emitted when the application is about to quit the main event loop, e....
static QString applicationName()
void applicationVersionChanged()
friend bool qt_sendSpontaneousEvent(QObject *, QEvent *)
\inmodule QtCore \inheaderfile QPermissions
\macro QT_RESTRICTED_CAST_FROM_ASCII
QList< QVariant > arguments
void requestPermission(const QPermission &permission, const PermissionCallback &callback)
Combined button and popup list for selecting options.
#define Q_DECL_CONST_FUNCTION
static Q_CONSTINIT bool quitLockEnabled
Q_CORE_EXPORT QString qAppName()
void(* QtCleanUpFunction)()
void(* QtStartUpFunction)()
Q_CORE_EXPORT void qAddPreRoutine(QtStartUpFunction)
Q_CORE_EXPORT void qAddPostRoutine(QtCleanUpFunction)
Q_CORE_EXPORT void qRemovePostRoutine(QtCleanUpFunction)
DBusConnection const char DBusError DBusBusType DBusError return DBusConnection DBusHandleMessageFunction void DBusFreeFunction return DBusConnection return DBusConnection return const char DBusError return DBusConnection DBusMessage dbus_uint32_t return DBusConnection dbus_bool_t DBusConnection DBusAddWatchFunction DBusRemoveWatchFunction DBusWatchToggledFunction void DBusFreeFunction return DBusConnection DBusDispatchStatusFunction void DBusFreeFunction DBusTimeout return DBusTimeout return DBusWatch return DBusWatch unsigned int return DBusError const DBusError return const DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessageIter int const void return DBusMessageIter DBusMessageIter return DBusMessageIter void DBusMessageIter void int return DBusMessage DBusMessageIter return DBusMessageIter return DBusMessageIter DBusMessageIter const char const char const char const char return DBusMessage return DBusMessage const char return DBusMessage dbus_bool_t return DBusMessage dbus_uint32_t return DBusMessage void
EGLOutputLayerEXT EGLint attribute
#define QT_DECLARE_NATIVE_INTERFACE_ACCESSOR(T)
GLenum GLenum GLsizei const GLuint GLboolean enabled
static bool translate(xcb_connection_t *connection, xcb_window_t child, xcb_window_t parent, int *x, int *y)
QDeadlineTimer deadline(30s)
app setAttribute(Qt::AA_DontShowIconsInMenus)