diff options
Diffstat (limited to 'src/widgets/styles/qstyleoption.h')
-rw-r--r-- | src/widgets/styles/qstyleoption.h | 130 |
1 files changed, 59 insertions, 71 deletions
diff --git a/src/widgets/styles/qstyleoption.h b/src/widgets/styles/qstyleoption.h index 8ae07efc81..0e0118f6e9 100644 --- a/src/widgets/styles/qstyleoption.h +++ b/src/widgets/styles/qstyleoption.h @@ -1,41 +1,5 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the QtWidgets module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or (at your option) the GNU General -** Public license version 3 or any later version approved by the KDE Free -** Qt Foundation. The licenses are as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-2.0.html and -** https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ +// Copyright (C) 2020 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only #ifndef QSTYLEOPTION_H #define QSTYLEOPTION_H @@ -47,7 +11,7 @@ #include <QtWidgets/qabstractspinbox.h> #endif #include <QtGui/qicon.h> -#include <QtGui/qmatrix.h> +#include <QtGui/qtransform.h> #if QT_CONFIG(slider) #include <QtWidgets/qslider.h> #endif @@ -103,8 +67,7 @@ public: QStyleOption(const QStyleOption &other); ~QStyleOption(); - void init(const QWidget *w); - inline void initFrom(const QWidget *w) { init(w); } + void initFrom(const QWidget *w); QStyleOption &operator=(const QStyleOption &other); }; @@ -118,6 +81,7 @@ public: QStyleOptionFocusRect(); QStyleOptionFocusRect(const QStyleOptionFocusRect &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionFocusRect &operator=(const QStyleOptionFocusRect &) = default; protected: QStyleOptionFocusRect(int version); @@ -127,7 +91,7 @@ class Q_WIDGETS_EXPORT QStyleOptionFrame : public QStyleOption { public: enum StyleOptionType { Type = SO_Frame }; - enum StyleOptionVersion { Version = 3 }; + enum StyleOptionVersion { Version = 1 }; int lineWidth; int midLineWidth; @@ -142,6 +106,7 @@ public: QStyleOptionFrame(); QStyleOptionFrame(const QStyleOptionFrame &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionFrame &operator=(const QStyleOptionFrame &) = default; protected: QStyleOptionFrame(int version); @@ -149,15 +114,12 @@ protected: Q_DECLARE_OPERATORS_FOR_FLAGS(QStyleOptionFrame::FrameFeatures) -typedef Q_DECL_DEPRECATED QStyleOptionFrame QStyleOptionFrameV2; -typedef Q_DECL_DEPRECATED QStyleOptionFrame QStyleOptionFrameV3; - #if QT_CONFIG(tabwidget) class Q_WIDGETS_EXPORT QStyleOptionTabWidgetFrame : public QStyleOption { public: enum StyleOptionType { Type = SO_TabWidgetFrame }; - enum StyleOptionVersion { Version = 2 }; + enum StyleOptionVersion { Version = 1 }; int lineWidth; int midLineWidth; @@ -171,12 +133,12 @@ public: QStyleOptionTabWidgetFrame(); inline QStyleOptionTabWidgetFrame(const QStyleOptionTabWidgetFrame &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionTabWidgetFrame &operator=(const QStyleOptionTabWidgetFrame &) = default; protected: QStyleOptionTabWidgetFrame(int version); }; -typedef Q_DECL_DEPRECATED QStyleOptionTabWidgetFrame QStyleOptionTabWidgetFrameV2; #endif // QT_CONFIG(tabwidget) @@ -185,7 +147,7 @@ class Q_WIDGETS_EXPORT QStyleOptionTabBarBase : public QStyleOption { public: enum StyleOptionType { Type = SO_TabBarBase }; - enum StyleOptionVersion { Version = 2 }; + enum StyleOptionVersion { Version = 1 }; QTabBar::Shape shape; QRect tabBarRect; @@ -194,12 +156,12 @@ public: QStyleOptionTabBarBase(); QStyleOptionTabBarBase(const QStyleOptionTabBarBase &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionTabBarBase &operator=(const QStyleOptionTabBarBase &) = default; protected: QStyleOptionTabBarBase(int version); }; -typedef Q_DECL_DEPRECATED QStyleOptionTabBarBase QStyleOptionTabBarBaseV2; #endif // QT_CONFIG(tabbar) class Q_WIDGETS_EXPORT QStyleOptionHeader : public QStyleOption @@ -225,11 +187,31 @@ public: QStyleOptionHeader(); QStyleOptionHeader(const QStyleOptionHeader &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionHeader &operator=(const QStyleOptionHeader &) = default; protected: QStyleOptionHeader(int version); }; +// ### Qt7: merge with QStyleOptionHeader +class Q_WIDGETS_EXPORT QStyleOptionHeaderV2 : public QStyleOptionHeader +{ +public: + enum StyleOptionType { Type = SO_Header }; + enum StyleOptionVersion { Version = 2 }; + + QStyleOptionHeaderV2(); + QStyleOptionHeaderV2(const QStyleOptionHeaderV2 &other) : QStyleOptionHeader(Version) { *this = other; } + QStyleOptionHeaderV2 &operator=(const QStyleOptionHeaderV2 &) = default; + + Qt::TextElideMode textElideMode:2; + bool isSectionDragTarget:1; + int unused:29; + +protected: + QStyleOptionHeaderV2(int version); +}; + class Q_WIDGETS_EXPORT QStyleOptionButton : public QStyleOption { public: @@ -247,6 +229,7 @@ public: QStyleOptionButton(); QStyleOptionButton(const QStyleOptionButton &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionButton &operator=(const QStyleOptionButton &) = default; protected: QStyleOptionButton(int version); @@ -259,9 +242,9 @@ class Q_WIDGETS_EXPORT QStyleOptionTab : public QStyleOption { public: enum StyleOptionType { Type = SO_Tab }; - enum StyleOptionVersion { Version = 3 }; + enum StyleOptionVersion { Version = 1 }; - enum TabPosition { Beginning, Middle, End, OnlyOneTab }; + enum TabPosition { Beginning, Middle, End, OnlyOneTab, Moving }; enum SelectedPosition { NotAdjacent, NextIsSelected, PreviousIsSelected }; enum CornerWidget { NoCornerWidgets = 0x00, LeftCornerWidget = 0x01, RightCornerWidget = 0x02 }; @@ -281,9 +264,11 @@ public: QSize leftButtonSize; QSize rightButtonSize; TabFeatures features; + int tabIndex = -1; QStyleOptionTab(); QStyleOptionTab(const QStyleOptionTab &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionTab &operator=(const QStyleOptionTab &) = default; protected: QStyleOptionTab(int version); @@ -291,8 +276,6 @@ protected: Q_DECLARE_OPERATORS_FOR_FLAGS(QStyleOptionTab::CornerWidgets) -typedef Q_DECL_DEPRECATED QStyleOptionTab QStyleOptionTabV2; -typedef Q_DECL_DEPRECATED QStyleOptionTab QStyleOptionTabV3; #endif // QT_CONFIG(tabbar) @@ -314,6 +297,7 @@ public: int midLineWidth; QStyleOptionToolBar(); QStyleOptionToolBar(const QStyleOptionToolBar &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionToolBar &operator=(const QStyleOptionToolBar &) = default; protected: QStyleOptionToolBar(int version); @@ -327,7 +311,7 @@ class Q_WIDGETS_EXPORT QStyleOptionProgressBar : public QStyleOption { public: enum StyleOptionType { Type = SO_ProgressBar }; - enum StyleOptionVersion { Version = 2 }; + enum StyleOptionVersion { Version = 1 }; int minimum; int maximum; @@ -335,19 +319,17 @@ public: QString text; Qt::Alignment textAlignment; bool textVisible; - Qt::Orientation orientation; // ### Qt 6: remove bool invertedAppearance; bool bottomToTop; QStyleOptionProgressBar(); QStyleOptionProgressBar(const QStyleOptionProgressBar &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionProgressBar &operator=(const QStyleOptionProgressBar &) = default; protected: QStyleOptionProgressBar(int version); }; -typedef Q_DECL_DEPRECATED QStyleOptionProgressBar QStyleOptionProgressBarV2; - class Q_WIDGETS_EXPORT QStyleOptionMenuItem : public QStyleOption { public: @@ -366,11 +348,12 @@ public: QString text; QIcon icon; int maxIconWidth; - int tabWidth; // ### Qt 6: rename to reservedShortcutWidth + int reservedShortcutWidth; QFont font; QStyleOptionMenuItem(); QStyleOptionMenuItem(const QStyleOptionMenuItem &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionMenuItem &operator=(const QStyleOptionMenuItem &) = default; protected: QStyleOptionMenuItem(int version); @@ -380,7 +363,7 @@ class Q_WIDGETS_EXPORT QStyleOptionDockWidget : public QStyleOption { public: enum StyleOptionType { Type = SO_DockWidget }; - enum StyleOptionVersion { Version = 2 }; + enum StyleOptionVersion { Version = 1 }; QString title; bool closable; @@ -390,20 +373,19 @@ public: QStyleOptionDockWidget(); QStyleOptionDockWidget(const QStyleOptionDockWidget &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionDockWidget &operator=(const QStyleOptionDockWidget &) = default; protected: QStyleOptionDockWidget(int version); }; -typedef Q_DECL_DEPRECATED QStyleOptionDockWidget QStyleOptionDockWidgetV2; - #if QT_CONFIG(itemviews) class Q_WIDGETS_EXPORT QStyleOptionViewItem : public QStyleOption { public: enum StyleOptionType { Type = SO_ViewItem }; - enum StyleOptionVersion { Version = 4 }; + enum StyleOptionVersion { Version = 1 }; enum Position { Left, Right, Top, Bottom }; @@ -441,6 +423,7 @@ public: QStyleOptionViewItem(); QStyleOptionViewItem(const QStyleOptionViewItem &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionViewItem &operator=(const QStyleOptionViewItem &) = default; protected: QStyleOptionViewItem(int version); @@ -448,17 +431,13 @@ protected: Q_DECLARE_OPERATORS_FOR_FLAGS(QStyleOptionViewItem::ViewItemFeatures) -typedef Q_DECL_DEPRECATED QStyleOptionViewItem QStyleOptionViewItemV2; -typedef Q_DECL_DEPRECATED QStyleOptionViewItem QStyleOptionViewItemV3; -typedef Q_DECL_DEPRECATED QStyleOptionViewItem QStyleOptionViewItemV4; - #endif // QT_CONFIG(itemviews) class Q_WIDGETS_EXPORT QStyleOptionToolBox : public QStyleOption { public: enum StyleOptionType { Type = SO_ToolBox }; - enum StyleOptionVersion { Version = 2 }; + enum StyleOptionVersion { Version = 1 }; QString text; QIcon icon; @@ -471,13 +450,12 @@ public: QStyleOptionToolBox(); QStyleOptionToolBox(const QStyleOptionToolBox &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionToolBox &operator=(const QStyleOptionToolBox &) = default; protected: QStyleOptionToolBox(int version); }; -typedef Q_DECL_DEPRECATED QStyleOptionToolBox QStyleOptionToolBoxV2; - #if QT_CONFIG(rubberband) class Q_WIDGETS_EXPORT QStyleOptionRubberBand : public QStyleOption { @@ -490,6 +468,7 @@ public: QStyleOptionRubberBand(); QStyleOptionRubberBand(const QStyleOptionRubberBand &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionRubberBand &operator=(const QStyleOptionRubberBand &) = default; protected: QStyleOptionRubberBand(int version); @@ -508,6 +487,7 @@ public: QStyleOptionComplex(int version = QStyleOptionComplex::Version, int type = SO_Complex); QStyleOptionComplex(const QStyleOptionComplex &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionComplex &operator=(const QStyleOptionComplex &) = default; }; #if QT_CONFIG(slider) @@ -529,9 +509,11 @@ public: int pageStep; qreal notchTarget; bool dialWrapping; + Qt::KeyboardModifiers keyboardModifiers; QStyleOptionSlider(); QStyleOptionSlider(const QStyleOptionSlider &other) : QStyleOptionComplex(Version, Type) { *this = other; } + QStyleOptionSlider &operator=(const QStyleOptionSlider &) = default; protected: QStyleOptionSlider(int version); @@ -551,6 +533,7 @@ public: QStyleOptionSpinBox(); QStyleOptionSpinBox(const QStyleOptionSpinBox &other) : QStyleOptionComplex(Version, Type) { *this = other; } + QStyleOptionSpinBox &operator=(const QStyleOptionSpinBox &) = default; protected: QStyleOptionSpinBox(int version); @@ -578,6 +561,7 @@ public: QStyleOptionToolButton(); QStyleOptionToolButton(const QStyleOptionToolButton &other) : QStyleOptionComplex(Version, Type) { *this = other; } + QStyleOptionToolButton &operator=(const QStyleOptionToolButton &) = default; protected: QStyleOptionToolButton(int version); @@ -597,9 +581,11 @@ public: QString currentText; QIcon currentIcon; QSize iconSize; + Qt::Alignment textAlignment = Qt::AlignLeft | Qt::AlignVCenter; QStyleOptionComboBox(); QStyleOptionComboBox(const QStyleOptionComboBox &other) : QStyleOptionComplex(Version, Type) { *this = other; } + QStyleOptionComboBox &operator=(const QStyleOptionComboBox &) = default; protected: QStyleOptionComboBox(int version); @@ -618,6 +604,7 @@ public: QStyleOptionTitleBar(); QStyleOptionTitleBar(const QStyleOptionTitleBar &other) : QStyleOptionComplex(Version, Type) { *this = other; } + QStyleOptionTitleBar &operator=(const QStyleOptionTitleBar &) = default; protected: QStyleOptionTitleBar(int version); @@ -638,6 +625,7 @@ public: QStyleOptionGroupBox(); QStyleOptionGroupBox(const QStyleOptionGroupBox &other) : QStyleOptionComplex(Version, Type) { *this = other; } + QStyleOptionGroupBox &operator=(const QStyleOptionGroupBox &) = default; protected: QStyleOptionGroupBox(int version); }; @@ -652,6 +640,7 @@ public: QStyleOptionSizeGrip(); QStyleOptionSizeGrip(const QStyleOptionSizeGrip &other) : QStyleOptionComplex(Version, Type) { *this = other; } + QStyleOptionSizeGrip &operator=(const QStyleOptionSizeGrip &) = default; protected: QStyleOptionSizeGrip(int version); }; @@ -663,11 +652,10 @@ public: enum StyleOptionVersion { Version = 1 }; QRectF exposedRect; - QMatrix matrix; - qreal levelOfDetail; QStyleOptionGraphicsItem(); QStyleOptionGraphicsItem(const QStyleOptionGraphicsItem &other) : QStyleOption(Version, Type) { *this = other; } + QStyleOptionGraphicsItem &operator=(const QStyleOptionGraphicsItem &) = default; static qreal levelOfDetailFromTransform(const QTransform &worldTransform); protected: QStyleOptionGraphicsItem(int version); |