📄 qstyleoption.h
字号:
/******************************************************************************** Copyright (C) 1992-2007 Trolltech ASA. All rights reserved.**** This file is part of the QtGui module of the Qt Toolkit.**** This file may be used under the terms of the GNU General Public** License version 2.0 as published by the Free Software Foundation** and appearing in the file LICENSE.GPL included in the packaging of** this file. Please review the following information to ensure GNU** General Public Licensing requirements will be met:** http://trolltech.com/products/qt/licenses/licensing/opensource/**** If you are unsure which license is appropriate for your use, please** review the following information:** http://trolltech.com/products/qt/licenses/licensing/licensingoverview** or contact the sales department at sales@trolltech.com.**** In addition, as a special exception, Trolltech gives you certain** additional rights. These rights are described in the Trolltech GPL** Exception version 1.0, which can be found at** http://www.trolltech.com/products/qt/gplexception/ and in the file** GPL_EXCEPTION.txt in this package.**** In addition, as a special exception, Trolltech, as the sole copyright** holder for Qt Designer, grants users of the Qt/Eclipse Integration** plug-in the right for the Qt/Eclipse Integration to link to** functionality provided by Qt Designer and its related libraries.**** Trolltech reserves all rights not expressly granted herein.**** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.******************************************************************************/#ifndef QSTYLEOPTION_H#define QSTYLEOPTION_H#include <QtCore/qvariant.h>#include <QtGui/qabstractspinbox.h>#include <QtGui/qicon.h>#include <QtGui/qmatrix.h>#include <QtGui/qslider.h>#include <QtGui/qstyle.h>#include <QtGui/qtabbar.h>#include <QtGui/qtabwidget.h>#include <QtGui/qrubberband.h>QT_BEGIN_HEADERQT_MODULE(Gui)class QDebug;class Q_GUI_EXPORT QStyleOption{public: enum OptionType { SO_Default, SO_FocusRect, SO_Button, SO_Tab, SO_MenuItem, SO_Frame, SO_ProgressBar, SO_ToolBox, SO_Header, SO_Q3DockWindow, SO_DockWidget, SO_Q3ListViewItem, SO_ViewItem, SO_TabWidgetFrame, SO_TabBarBase, SO_RubberBand, SO_ToolBar, SO_GraphicsItem, SO_Complex = 0xf0000, SO_Slider, SO_SpinBox, SO_ToolButton, SO_ComboBox, SO_Q3ListView, SO_TitleBar, SO_GroupBox, SO_SizeGrip, SO_CustomBase = 0xf00, SO_ComplexCustomBase = 0xf000000 }; enum StyleOptionType { Type = SO_Default }; enum StyleOptionVersion { Version = 1 }; int version; int type; QStyle::State state; Qt::LayoutDirection direction; QRect rect; QFontMetrics fontMetrics; QPalette palette; QStyleOption(int version = QStyleOption::Version, int type = SO_Default); QStyleOption(const QStyleOption &other); ~QStyleOption(); void init(const QWidget *w); inline void initFrom(const QWidget *w) { init(w); } QStyleOption &operator=(const QStyleOption &other);};class Q_GUI_EXPORT QStyleOptionFocusRect : public QStyleOption{public: enum StyleOptionType { Type = SO_FocusRect }; enum StyleOptionVersion { Version = 1 }; QColor backgroundColor; QStyleOptionFocusRect(); QStyleOptionFocusRect(const QStyleOptionFocusRect &other) : QStyleOption(Version, Type) { *this = other; }protected: QStyleOptionFocusRect(int version);};class Q_GUI_EXPORT QStyleOptionFrame : public QStyleOption{public: enum StyleOptionType { Type = SO_Frame }; enum StyleOptionVersion { Version = 1 }; int lineWidth; int midLineWidth; QStyleOptionFrame(); QStyleOptionFrame(const QStyleOptionFrame &other) : QStyleOption(Version, Type) { *this = other; }protected: QStyleOptionFrame(int version);};class Q_GUI_EXPORT QStyleOptionFrameV2 : public QStyleOptionFrame{public: enum StyleOptionVersion { Version = 2 }; enum FrameFeature { None = 0x00, Flat = 0x01 }; Q_DECLARE_FLAGS(FrameFeatures, FrameFeature) FrameFeatures features; QStyleOptionFrameV2(); QStyleOptionFrameV2(const QStyleOptionFrameV2 &other) : QStyleOptionFrame(Version) { *this = other; } QStyleOptionFrameV2(const QStyleOptionFrame &other); QStyleOptionFrameV2 &operator=(const QStyleOptionFrame &other);protected: QStyleOptionFrameV2(int version);};Q_DECLARE_OPERATORS_FOR_FLAGS(QStyleOptionFrameV2::FrameFeatures)#ifndef QT_NO_TABWIDGETclass Q_GUI_EXPORT QStyleOptionTabWidgetFrame : public QStyleOption{public: enum StyleOptionType { Type = SO_TabWidgetFrame }; enum StyleOptionVersion { Version = 1 }; int lineWidth; int midLineWidth; QTabBar::Shape shape; QSize tabBarSize; QSize rightCornerWidgetSize; QSize leftCornerWidgetSize; QStyleOptionTabWidgetFrame(); inline QStyleOptionTabWidgetFrame(const QStyleOptionTabWidgetFrame &other) : QStyleOption(Version, Type) { *this = other; }protected: QStyleOptionTabWidgetFrame(int version);};#endif#ifndef QT_NO_TABBARclass Q_GUI_EXPORT QStyleOptionTabBarBase : public QStyleOption{public: enum StyleOptionType { Type = SO_TabBarBase }; enum StyleOptionVersion { Version = 1 }; QTabBar::Shape shape; QRect tabBarRect; QRect selectedTabRect; QStyleOptionTabBarBase(); QStyleOptionTabBarBase(const QStyleOptionTabBarBase &other) : QStyleOption(Version, Type) { *this = other; }protected: QStyleOptionTabBarBase(int version);};#endifclass Q_GUI_EXPORT QStyleOptionHeader : public QStyleOption{public: enum StyleOptionType { Type = SO_Header }; enum StyleOptionVersion { Version = 1 }; enum SectionPosition { Beginning, Middle, End, OnlyOneSection }; enum SelectedPosition { NotAdjacent, NextIsSelected, PreviousIsSelected, NextAndPreviousAreSelected }; enum SortIndicator { None, SortUp, SortDown }; int section; QString text; Qt::Alignment textAlignment; QIcon icon; Qt::Alignment iconAlignment; SectionPosition position; SelectedPosition selectedPosition; SortIndicator sortIndicator; Qt::Orientation orientation; QStyleOptionHeader(); QStyleOptionHeader(const QStyleOptionHeader &other) : QStyleOption(Version, Type) { *this = other; }protected: QStyleOptionHeader(int version);};class Q_GUI_EXPORT QStyleOptionButton : public QStyleOption{public: enum StyleOptionType { Type = SO_Button }; enum StyleOptionVersion { Version = 1 }; enum ButtonFeature { None = 0x00, Flat = 0x01, HasMenu = 0x02, DefaultButton = 0x04, AutoDefaultButton = 0x08, CommandLinkButton = 0x10 }; Q_DECLARE_FLAGS(ButtonFeatures, ButtonFeature) ButtonFeatures features; QString text; QIcon icon; QSize iconSize; QStyleOptionButton(); QStyleOptionButton(const QStyleOptionButton &other) : QStyleOption(Version, Type) { *this = other; }protected: QStyleOptionButton(int version);};Q_DECLARE_OPERATORS_FOR_FLAGS(QStyleOptionButton::ButtonFeatures)#ifndef QT_NO_TABBARclass Q_GUI_EXPORT QStyleOptionTab : public QStyleOption{public: enum StyleOptionType { Type = SO_Tab }; enum StyleOptionVersion { Version = 1 }; enum TabPosition { Beginning, Middle, End, OnlyOneTab }; enum SelectedPosition { NotAdjacent, NextIsSelected, PreviousIsSelected }; enum CornerWidget { NoCornerWidgets = 0x00, LeftCornerWidget = 0x01, RightCornerWidget = 0x02 }; Q_DECLARE_FLAGS(CornerWidgets, CornerWidget) QTabBar::Shape shape; QString text; QIcon icon; int row; TabPosition position; SelectedPosition selectedPosition; CornerWidgets cornerWidgets; QStyleOptionTab(); QStyleOptionTab(const QStyleOptionTab &other) : QStyleOption(Version, Type) { *this = other; }protected: QStyleOptionTab(int version);};Q_DECLARE_OPERATORS_FOR_FLAGS(QStyleOptionTab::CornerWidgets)class Q_GUI_EXPORT QStyleOptionTabV2 : public QStyleOptionTab{public: enum StyleOptionVersion { Version = 2 }; QSize iconSize; QStyleOptionTabV2(); QStyleOptionTabV2(const QStyleOptionTabV2 &other) : QStyleOptionTab(Version) { *this = other; } QStyleOptionTabV2(const QStyleOptionTab &other); QStyleOptionTabV2 &operator=(const QStyleOptionTab &other);protected: QStyleOptionTabV2(int version);};#endif#ifndef QT_NO_TOOLBARclass Q_GUI_EXPORT QStyleOptionToolBar : public QStyleOption{public: enum StyleOptionType { Type = SO_ToolBar }; enum StyleOptionVersion { Version = 1 }; enum ToolBarPosition { Beginning, Middle, End, OnlyOne }; enum ToolBarFeature { None = 0x0, Movable = 0x1 }; Q_DECLARE_FLAGS(ToolBarFeatures, ToolBarFeature) ToolBarPosition positionOfLine; // The toolbar line position ToolBarPosition positionWithinLine; // The position within a toolbar Qt::ToolBarArea toolBarArea; // The toolbar docking area ToolBarFeatures features; int lineWidth; int midLineWidth; QStyleOptionToolBar(); QStyleOptionToolBar(const QStyleOptionToolBar &other) : QStyleOption(Version, Type) { *this = other; }protected: QStyleOptionToolBar(int version);};Q_DECLARE_OPERATORS_FOR_FLAGS(QStyleOptionToolBar::ToolBarFeatures)#endifclass Q_GUI_EXPORT QStyleOptionProgressBar : public QStyleOption{public: enum StyleOptionType { Type = SO_ProgressBar }; enum StyleOptionVersion { Version = 1 }; int minimum; int maximum; int progress; QString text; Qt::Alignment textAlignment; bool textVisible; QStyleOptionProgressBar(); QStyleOptionProgressBar(const QStyleOptionProgressBar &other) : QStyleOption(Version, Type) { *this = other; }protected: QStyleOptionProgressBar(int version);};// Adds style info for vertical progress barsclass Q_GUI_EXPORT QStyleOptionProgressBarV2 : public QStyleOptionProgressBar{public: enum StyleOptionType { Type = SO_ProgressBar }; enum StyleOptionVersion { Version = 2 }; Qt::Orientation orientation; bool invertedAppearance; bool bottomToTop; QStyleOptionProgressBarV2(); QStyleOptionProgressBarV2(const QStyleOptionProgressBar &other); QStyleOptionProgressBarV2(const QStyleOptionProgressBarV2 &other); QStyleOptionProgressBarV2 &operator=(const QStyleOptionProgressBar &other);protected: QStyleOptionProgressBarV2(int version);};class Q_GUI_EXPORT QStyleOptionMenuItem : public QStyleOption{public: enum StyleOptionType { Type = SO_MenuItem }; enum StyleOptionVersion { Version = 1 }; enum MenuItemType { Normal, DefaultItem, Separator, SubMenu, Scroller, TearOff, Margin, EmptyArea }; enum CheckType { NotCheckable, Exclusive, NonExclusive }; MenuItemType menuItemType; CheckType checkType; bool checked; bool menuHasCheckableItems; QRect menuRect; QString text; QIcon icon; int maxIconWidth; int tabWidth; QFont font; QStyleOptionMenuItem(); QStyleOptionMenuItem(const QStyleOptionMenuItem &other) : QStyleOption(Version, Type) { *this = other; }protected: QStyleOptionMenuItem(int version);};class Q_GUI_EXPORT QStyleOptionQ3ListViewItem : public QStyleOption{public: enum StyleOptionType { Type = SO_Q3ListViewItem }; enum StyleOptionVersion { Version = 1 }; enum Q3ListViewItemFeature { None = 0x00, Expandable = 0x01, MultiLine = 0x02, Visible = 0x04, ParentControl = 0x08 }; Q_DECLARE_FLAGS(Q3ListViewItemFeatures, Q3ListViewItemFeature) Q3ListViewItemFeatures features; int height; int totalHeight; int itemY; int childCount; QStyleOptionQ3ListViewItem(); QStyleOptionQ3ListViewItem(const QStyleOptionQ3ListViewItem &other) : QStyleOption(Version, Type) { *this = other; }protected: QStyleOptionQ3ListViewItem(int version);};Q_DECLARE_OPERATORS_FOR_FLAGS(QStyleOptionQ3ListViewItem::Q3ListViewItemFeatures)class Q_GUI_EXPORT QStyleOptionQ3DockWindow : public QStyleOption{public: enum StyleOptionType { Type = SO_Q3DockWindow }; enum StyleOptionVersion { Version = 1 }; bool docked; bool closeEnabled; QStyleOptionQ3DockWindow(); QStyleOptionQ3DockWindow(const QStyleOptionQ3DockWindow &other) : QStyleOption(Version, Type) { *this = other; }protected: QStyleOptionQ3DockWindow(int version);};class Q_GUI_EXPORT QStyleOptionDockWidget : public QStyleOption{public: enum StyleOptionType { Type = SO_DockWidget }; enum StyleOptionVersion { Version = 1 }; QString title; bool closable;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -