8#include <QtWidgets/qtwidgetsglobal.h>
9#include <QtWidgets/qdialog.h>
10#include <QtWidgets/qdialogbuttonbox.h>
12QT_REQUIRE_CONFIG(messagebox);
25 Q_PROPERTY(QString text READ text WRITE setText)
26 Q_PROPERTY(Icon icon READ icon WRITE setIcon)
27 Q_PROPERTY(QPixmap iconPixmap READ iconPixmap WRITE setIconPixmap)
28 Q_PROPERTY(Qt::TextFormat textFormat READ textFormat WRITE setTextFormat)
29 Q_PROPERTY(StandardButtons standardButtons READ standardButtons WRITE setStandardButtons)
30#if QT_CONFIG(textedit)
31 Q_PROPERTY(QString detailedText READ detailedText WRITE setDetailedText)
33 Q_PROPERTY(QString informativeText READ informativeText WRITE setInformativeText)
34 Q_PROPERTY(Qt::TextInteractionFlags textInteractionFlags READ textInteractionFlags
35 WRITE setTextInteractionFlags)
36 Q_PROPERTY(Options options READ options WRITE setOptions)
40 DontUseNativeDialog = 0x00000001
73 NoButton = 0x00000000,
79 YesToAll = 0x00008000,
91 RestoreDefaults = 0x08000000,
94 LastButton = RestoreDefaults,
101 FlagMask = 0x00000300,
102 ButtonMask = ~FlagMask
104 Q_ENUM(StandardButton)
106#if QT_VERSION < QT_VERSION_CHECK(7
, 0
, 0
)
107 typedef StandardButton Button;
109 Q_DECLARE_FLAGS(Options, Option)
110 Q_DECLARE_FLAGS(StandardButtons, StandardButton)
112 Q_FLAG(StandardButtons)
114 explicit QMessageBox(QWidget *parent =
nullptr);
115 QMessageBox(Icon icon,
const QString &title,
const QString &text,
116 StandardButtons buttons = NoButton, QWidget *parent =
nullptr,
117 Qt::WindowFlags flags = Qt::Dialog | Qt::MSWindowsFixedSizeDialogHint);
120 void addButton(QAbstractButton *button, ButtonRole role);
121 QPushButton *addButton(
const QString &text, ButtonRole role);
122 QPushButton *addButton(StandardButton button);
123 void removeButton(QAbstractButton *button);
126 void open(QObject *receiver,
const char *member);
128 QList<QAbstractButton *> buttons()
const;
129 ButtonRole buttonRole(QAbstractButton *button)
const;
131 void setStandardButtons(StandardButtons buttons);
132 StandardButtons standardButtons()
const;
133 StandardButton standardButton(QAbstractButton *button)
const;
134 QAbstractButton *button(StandardButton which)
const;
136 QPushButton *defaultButton()
const;
137 void setDefaultButton(QPushButton *button);
138 void setDefaultButton(StandardButton button);
140 QAbstractButton *escapeButton()
const;
141 void setEscapeButton(QAbstractButton *button);
142 void setEscapeButton(StandardButton button);
144 QAbstractButton *clickedButton()
const;
146 QString text()
const;
147 void setText(
const QString &text);
152 QPixmap iconPixmap()
const;
153 void setIconPixmap(
const QPixmap &pixmap);
155 Qt::TextFormat textFormat()
const;
156 void setTextFormat(Qt::TextFormat format);
158 void setTextInteractionFlags(Qt::TextInteractionFlags flags);
159 Qt::TextInteractionFlags textInteractionFlags()
const;
161 void setCheckBox(QCheckBox *cb);
162 QCheckBox* checkBox()
const;
164 void setOption(Option option,
bool on =
true);
165 bool testOption(Option option)
const;
166 void setOptions(Options options);
167 Options options()
const;
169 static StandardButton information(QWidget *parent,
const QString &title,
170 const QString &text, StandardButtons buttons = Ok,
171 StandardButton defaultButton = NoButton);
172#if QT_VERSION < QT_VERSION_CHECK(7
, 0
, 0
)
173 inline static StandardButton information(QWidget *parent,
const QString &title,
175 StandardButton button0, StandardButton button1 = NoButton)
176 {
return information(parent, title, text, StandardButtons(button0), button1); }
179 static StandardButton question(QWidget *parent,
const QString &title,
180 const QString &text, StandardButtons buttons = StandardButtons(Yes | No),
181 StandardButton defaultButton = NoButton);
182#if QT_VERSION < QT_VERSION_CHECK(7
, 0
, 0
)
183 inline static int question(QWidget *parent,
const QString &title,
185 StandardButton button0, StandardButton button1)
186 {
return question(parent, title, text, StandardButtons(button0), button1); }
189 static StandardButton warning(QWidget *parent,
const QString &title,
190 const QString &text, StandardButtons buttons = Ok,
191 StandardButton defaultButton = NoButton);
192#if QT_VERSION < QT_VERSION_CHECK(7
, 0
, 0
)
193 inline static int warning(QWidget *parent,
const QString &title,
195 StandardButton button0, StandardButton button1)
196 {
return warning(parent, title, text, StandardButtons(button0), button1); }
199 static StandardButton critical(QWidget *parent,
const QString &title,
200 const QString &text, StandardButtons buttons = Ok,
201 StandardButton defaultButton = NoButton);
202#if QT_VERSION < QT_VERSION_CHECK(7
, 0
, 0
)
203 inline static int critical(QWidget *parent,
const QString &title,
205 StandardButton button0, StandardButton button1)
206 {
return critical(parent, title, text, StandardButtons(button0), button1); }
209 static void about(QWidget *parent,
const QString &title,
const QString &text);
210 static void aboutQt(QWidget *parent,
const QString &title = QString());
212#if QT_DEPRECATED_SINCE(6
,2
)
214 QT_DEPRECATED_VERSION_X_6_2(
"Use the overload taking StandardButtons instead.")
215 QMessageBox(
const QString &title,
const QString &text, Icon icon,
216 int button0,
int button1,
int button2,
217 QWidget *parent =
nullptr,
218 Qt::WindowFlags f = Qt::Dialog | Qt::MSWindowsFixedSizeDialogHint);
220 QT_DEPRECATED_VERSION_X_6_2(
"Use the overload taking StandardButtons instead.")
221 static int information(QWidget *parent,
const QString &title,
223 int button0,
int button1 = 0,
int button2 = 0);
224 QT_DEPRECATED_VERSION_X_6_2(
"Use the overload taking StandardButtons instead.")
225 static int information(QWidget *parent,
const QString &title,
227 const QString& button0Text,
228 const QString& button1Text = QString(),
229 const QString& button2Text = QString(),
230 int defaultButtonNumber = 0,
231 int escapeButtonNumber = -1);
233 QT_DEPRECATED_VERSION_X_6_2(
"Use the overload taking StandardButtons instead.")
234 static int question(QWidget *parent,
const QString &title,
236 int button0,
int button1 = 0,
int button2 = 0);
237 QT_DEPRECATED_VERSION_X_6_2(
"Use the overload taking StandardButtons instead.")
238 static int question(QWidget *parent,
const QString &title,
240 const QString& button0Text,
241 const QString& button1Text = QString(),
242 const QString& button2Text = QString(),
243 int defaultButtonNumber = 0,
244 int escapeButtonNumber = -1);
246 QT_DEPRECATED_VERSION_X_6_2(
"Use the overload taking StandardButtons instead.")
247 static int warning(QWidget *parent,
const QString &title,
249 int button0,
int button1,
int button2 = 0);
250 QT_DEPRECATED_VERSION_X_6_2(
"Use the overload taking StandardButtons instead.")
251 static int warning(QWidget *parent,
const QString &title,
253 const QString& button0Text,
254 const QString& button1Text = QString(),
255 const QString& button2Text = QString(),
256 int defaultButtonNumber = 0,
257 int escapeButtonNumber = -1);
259 QT_DEPRECATED_VERSION_X_6_2(
"Use the overload taking StandardButtons instead.")
260 static int critical(QWidget *parent,
const QString &title,
262 int button0,
int button1,
int button2 = 0);
263 QT_DEPRECATED_VERSION_X_6_2(
"Use the overload taking StandardButtons instead.")
264 static int critical(QWidget *parent,
const QString &title,
266 const QString& button0Text,
267 const QString& button1Text = QString(),
268 const QString& button2Text = QString(),
269 int defaultButtonNumber = 0,
270 int escapeButtonNumber = -1);
272 QT_DEPRECATED_VERSION_X_6_2(
"Use button() and QPushButton::text() instead.")
273 QString buttonText(
int button)
const;
274 QT_DEPRECATED_VERSION_X_6_2(
"Use addButton() instead.")
275 void setButtonText(
int button,
const QString &text);
278 QString informativeText()
const;
279 void setInformativeText(
const QString &text);
281#if QT_CONFIG(textedit)
282 QString detailedText()
const;
283 void setDetailedText(
const QString &text);
286 void setWindowTitle(
const QString &title);
287 void setWindowModality(Qt::WindowModality windowModality);
289#if QT_DEPRECATED_SINCE(6
,2
)
290 QT_DEPRECATED_VERSION_X_6_2(
"Use QStyle::standardIcon() instead.")
291 static QPixmap standardIcon(Icon icon);
295 void buttonClicked(QAbstractButton *button);
303 bool event(QEvent *e) override;
304 void resizeEvent(QResizeEvent *event) override;
305 void showEvent(QShowEvent *event) override;
306 void closeEvent(QCloseEvent *event) override;
307 void keyPressEvent(QKeyEvent *event) override;
308 void changeEvent(QEvent *event) override;
311 Q_DISABLE_COPY(QMessageBox)
312 Q_DECLARE_PRIVATE(QMessageBox)
315Q_DECLARE_OPERATORS_FOR_FLAGS(QMessageBox::StandardButtons)
317Q_WIDGETS_EXPORT
void qRequireVersion(
int argc,
char *argv[], QAnyStringView req);
319#define QT_REQUIRE_VERSION(argc, argv, str) qRequireVersion(argc, argv, str);
The QApplication class manages the GUI application's control flow and main settings.
The QGroupBox widget provides a group box frame with a title.
The QMessageBox class provides a modal dialog for informing the user or for asking the user a questio...
The QPaintEngineState class provides information about the active paint engine's current state....
virtual QPixmap createPixmap(QSize size)
void setSystemRect(const QRect &rect)
void setActive(bool newState)
Sets the active state of the paint engine to state.
virtual void drawPolygon(const QPoint *points, int pointCount, PolygonDrawMode mode)
This is an overloaded member function, provided for convenience. It differs from the above function o...
virtual QPixmap createPixmapFromImage(QImage image, Qt::ImageConversionFlags flags=Qt::AutoColor)
friend class QWidgetPrivate
QPaintEngine(PaintEngineFeatures features=PaintEngineFeatures())
Creates a paint engine with the featureset specified by caps.
friend class QFontEngineQPF2
friend class QMacCGContext
virtual void drawTextItem(const QPointF &p, const QTextItem &textItem)
This function draws the text item textItem at position p.
virtual void drawLines(const QLineF *lines, int lineCount)
The default implementation splits the list of lines in lines into lineCount separate calls to drawPat...
PolygonDrawMode
\value OddEvenMode The polygon should be drawn using OddEven fill rule.
virtual void drawPoints(const QPointF *points, int pointCount)
Draws the first pointCount points in the buffer points.
virtual void drawRects(const QRectF *rects, int rectCount)
Draws the first rectCount rectangles in the buffer rects.
virtual void drawImage(const QRectF &r, const QImage &pm, const QRectF &sr, Qt::ImageConversionFlags flags=Qt::AutoColor)
Reimplement this function to draw the part of the image specified by the sr rectangle in the given re...
QPainter * painter() const
Returns the paint engine's painter.
void fix_neg_rect(int *x, int *y, int *w, int *h)
void setPaintDevice(QPaintDevice *device)
virtual QPoint coordinateOffset() const
virtual void drawPolygon(const QPointF *points, int pointCount, PolygonDrawMode mode)
Reimplement this virtual function to draw the polygon defined by the pointCount first points in point...
void setDirty(DirtyFlags df)
void setSystemClip(const QRegion &baseClip)
QPaintEngineState * state
friend class QPainterReplayer
friend class QX11GLPlatformPixmap
PaintEngineFeatures gccaps
void clearDirty(DirtyFlags df)
bool hasFeature(PaintEngineFeatures feature) const
Returns true if the paint engine supports the specified feature; otherwise returns false.
virtual void drawEllipse(const QRectF &r)
Reimplement this function to draw the largest ellipse that can be contained within rectangle rect.
QRegion systemClip() const
QPaintDevice * paintDevice() const
Returns the device that this engine is painting on, if painting is active; otherwise returns \nullptr...
bool testDirty(DirtyFlags df)
virtual void updateState(const QPaintEngineState &state)=0
Reimplement this function to update the state of a paint engine.
DirtyFlag
\value DirtyPen The pen is dirty and needs to be updated.
Type
\value X11 \value Windows \value MacPrinter \value CoreGraphics \macos's Quartz2D (CoreGraphics) \val...
virtual Type type() const =0
Reimplement this function to return the paint engine \l{Type}.
void drawPath(const QPainterPath &path)
Draws the given painter path using the current pen for outline and the current brush for filling.
bool begin(QPaintDevice *)
Begins painting the paint device and returns true if successful; otherwise returns false.
void drawRects(const QRectF *rects, int rectCount)
Draws the first rectCount of the given rectangles using the current pen and brush.
void drawLines(const QLineF *lines, int lineCount)
Draws the first lineCount lines in the array lines using the current pen.
friend class QFontEngineMac
friend class QWin32PaintEngine
friend class QWin32PaintEnginePrivate
friend class QFontEngineWin
void drawEllipse(const QRectF &r)
Draws the ellipse defined by the given rectangle.
void drawPoints(const QPointF *points, int pointCount)
Draws the first pointCount points in the array points using the current pen's color.
bool isActive() const
Returns true if begin() has been called and end() has not yet been called; otherwise returns false.
\inmodule QtCore\reentrant
The QPolygonF class provides a list of points using floating point precision.
The QStyleHintReturnMask class provides style hints that return a QRegion.
The QStyleHintReturnVariant class provides style hints that return a QVariant.
\variable QStyleOptionGraphicsItem::exposedRect
\variable QStyleOptionDockWidget::title
\variable QStyleOptionMenuItem::menuItemType
\variable QStyleOption::palette
\variable QStyleOptionFocusRect::backgroundColor
The QStyleOptionGraphicsItem class is used to describe the parameters needed to draw a QGraphicsItem.
\variable QStyleOptionFrame::features
\variable QStyleOptionToolBox::selectedPosition
The QStyleOption class stores the parameters used by QStyle functions.
The QTextEdit class provides a widget that is used to edit and display both plain and rich text.
The QWindows11Style class provides a look and feel suitable for applications on Microsoft Windows 11.
void drawControl(ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const override
void unpolish(QWidget *widget) override
void polish(QWidget *widget) override
void drawComplexControl(ComplexControl control, const QStyleOptionComplex *option, QPainter *painter, const QWidget *widget) const override
QSize sizeFromContents(ContentsType type, const QStyleOption *option, const QSize &size, const QWidget *widget) const override
QRect subControlRect(ComplexControl control, const QStyleOptionComplex *option, SubControl subControl, const QWidget *widget) const override
QWindows11Style(QWindows11StylePrivate &dd)
void polish(QPalette &pal) override
int pixelMetric(PixelMetric metric, const QStyleOption *option=nullptr, const QWidget *widget=nullptr) const override
int styleHint(StyleHint hint, const QStyleOption *opt=nullptr, const QWidget *widget=nullptr, QStyleHintReturn *returnData=nullptr) const override
void drawPrimitive(PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const override
QRect subElementRect(QStyle::SubElement element, const QStyleOption *option, const QWidget *widget=nullptr) const override
~QWindows11Style() override
Destructor.
HBITMAP buffer(int w=0, int h=0)
static int fixedPixelMetric(QStyle::PixelMetric pm)
static HDC hdcForWidgetBackingStore(const QWidget *widget)
static QBackingStore * backingStoreForWidget(const QWidget *widget)
bool swapAlphaChannel(const QRect &rect, bool allPixels=false)
bool drawBackgroundThruNativeBuffer(QWindowsThemeData &QWindowsThemeData, qreal aditionalDevicePixelRatio, qreal correctionFactor)
static HWND winId(const QWidget *widget)
void init(bool force=false)
static bool isLineEditBaseColorSet(const QStyleOption *option, const QWidget *widget)
bool transitionsEnabled() const
bool drawBackgroundDirectly(HDC dc, QWindowsThemeData &QWindowsThemeData, qreal aditionalDevicePixelRatio)
static bool isItemViewDelegateLineEdit(const QWidget *widget)
static bool useVista(bool update=false)
QRgb groupBoxTextColorDisabled
bool fixAlphaChannel(const QRect &rect)
QIcon m_titleBarCloseIcon
void cleanup(bool force=false)
QWindowsVistaStylePrivate()
bool isTransparent(QWindowsThemeData &QWindowsThemeData)
bool hasAlphaChannel(const QRect &rect)
QIcon m_titleBarNormalIcon
QRegion region(QWindowsThemeData &QWindowsThemeData)
QTime animationTime() const
~QWindowsVistaStylePrivate()
bool drawBackground(QWindowsThemeData &QWindowsThemeData, qreal correctionFactor=1)
static HTHEME createTheme(int theme, const QWidget *widget)
static int pixelMetricFromSystemDp(QStyle::PixelMetric pm, const QStyleOption *option=nullptr, const QWidget *widget=nullptr)
static QString themeName(int theme)
The QWindowsVistaStyle class provides a look and feel suitable for applications on Microsoft Windows ...
QRect subElementRect(SubElement element, const QStyleOption *option, const QWidget *widget) const override
QRect subControlRect(ComplexControl cc, const QStyleOptionComplex *opt, SubControl sc, const QWidget *widget) const override
int styleHint(StyleHint hint, const QStyleOption *opt=nullptr, const QWidget *widget=nullptr, QStyleHintReturn *returnData=nullptr) const override
SubControl hitTestComplexControl(ComplexControl control, const QStyleOptionComplex *option, const QPoint &pos, const QWidget *widget=nullptr) const override
void drawControl(ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const override
void polish(QWidget *widget) override
int pixelMetric(PixelMetric metric, const QStyleOption *option=nullptr, const QWidget *widget=nullptr) const override
QPixmap standardPixmap(StandardPixmap standardPixmap, const QStyleOption *opt, const QWidget *widget=nullptr) const override
QIcon standardIcon(StandardPixmap standardIcon, const QStyleOption *option=nullptr, const QWidget *widget=nullptr) const override
\reimp
~QWindowsVistaStyle() override
Destructor.
void polish(QPalette &pal) override
void drawPrimitive(PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget=nullptr) const override
QSize sizeFromContents(ContentsType type, const QStyleOption *option, const QSize &size, const QWidget *widget) const override
QWindowsVistaStyle(QWindowsVistaStylePrivate &dd)
void drawComplexControl(ComplexControl control, const QStyleOptionComplex *option, QPainter *painter, const QWidget *widget) const override
void unpolish(QWidget *widget) override
QString string() const override
void paint(QPainter *painter, const QRect &rect, QIcon::Mode mode, QIcon::State state) override
Uses the given painter to paint the icon with the required mode and state into the rectangle rect.
QString key() const override
\variable QIconEngine::ScaledPixmapArgument::size
QIconEngine * clone() const override
Reimplement this method to return a clone of this icon engine.
WinFontIconEngine(const QChar &glyph, const QFont &font)
Q_DECLARE_TYPEINFO(QByteArrayView, Q_PRIMITIVE_TYPE)
Q_CORE_EXPORT QDebug operator<<(QDebug debug, QDir::Filters filters)
QT_REQUIRE_CONFIG(thread)
T qstyleoption_cast(const QStyleOption *opt)
T qstyleoption_cast(QStyleOption *opt)
@ fillControlAltSecondary
@ frameColorStrongDisabled
@ controlStrokeOnAccentSecondary
@ fillControlAltQuarternary
bool operator==(const ThemeMapKey &k1, const ThemeMapKey &k2)
size_t qHash(const ThemeMapKey &key)
AlphaChannelType alphaType
ThemeMapKey(const QWindowsThemeData &data)