4#ifndef QWIDGETPLATFORM_P_H
5#define QWIDGETPLATFORM_P_H
18#include <QtCore/qdebug.h>
19#include <QtCore/qcoreapplication.h>
20#include <QtGui/qpa/qplatformtheme.h>
21#include <QtGui/qpa/qplatformdialoghelper.h>
22#include <QtGui/qpa/qplatformsystemtrayicon.h>
23#include <QtGui/qpa/qplatformmenu.h>
26#include <QtWidgets/qtwidgetsglobal.h>
27#if QT_CONFIG(colordialog)
28#include "qwidgetplatformcolordialog_p.h"
30#if QT_CONFIG(filedialog)
31#include "qwidgetplatformfiledialog_p.h"
33#if QT_CONFIG(fontdialog)
34#include "qwidgetplatformfontdialog_p.h"
36#if QT_CONFIG(messagebox)
37#include "qwidgetplatformmessagedialog_p.h"
40#include "qwidgetplatformmenu_p.h"
41#include "qwidgetplatformmenuitem_p.h"
43#ifndef QT_NO_SYSTEMTRAYICON
44#include "qwidgetplatformsystemtrayicon_p.h"
64 if (!qApp->inherits(
"QApplication")) {
65 qCritical(
"\nERROR: No native %s implementation available."
66 "\nQt Labs Platform requires Qt Widgets on this setup."
67 "\nAdd 'QT += widgets' to .pro and create QApplication in main().\n", type);
88#if defined(QT_WIDGETS_LIB) && QT_CONFIG(menu)
89 return createWidget<QWidgetPlatformMenu>(
"Menu", parent);
96#if defined(QT_WIDGETS_LIB) && QT_CONFIG(menu)
97 return createWidget<QWidgetPlatformMenuItem>(
"MenuItem", parent);
104#ifndef QT_NO_SYSTEMTRAYICON
111 static inline QPlatformDialogHelper *
createDialog(QPlatformTheme::DialogType type, QObject *parent =
nullptr)
113#if !defined(QT_WIDGETS_LIB) || !(QT_CONFIG(colordialog) || QT_CONFIG(filedialog) || QT_CONFIG(fontdialog) || QT_CONFIG(messagebox))
118#if QT_CONFIG(colordialog)
119 case QPlatformTheme::ColorDialog:
return createWidget<QWidgetPlatformColorDialog>(
"ColorDialog", parent);
121#if QT_CONFIG(filedialog)
122 case QPlatformTheme::FileDialog:
return createWidget<QWidgetPlatformFileDialog>(
"FileDialog", parent);
124#if QT_CONFIG(fontdialog)
125 case QPlatformTheme::FontDialog:
return createWidget<QWidgetPlatformFontDialog>(
"FontDialog", parent);
127#if QT_CONFIG(messagebox)
128 case QPlatformTheme::MessageDialog:
return createWidget<QWidgetPlatformMessageDialog>(
"MessageDialog", parent);