diff --git a/src/SARibbon.cpp b/src/SARibbon.cpp index 7388931..2e89afc 100644 --- a/src/SARibbon.cpp +++ b/src/SARibbon.cpp @@ -2248,6 +2248,10 @@ SARibbonApplicationButton::SARibbonApplicationButton(const QIcon& icon, const QS setText(text); } +SARibbonApplicationButton::~SARibbonApplicationButton() +{ +} + /*** End of inlined file: SARibbonApplicationButton.cpp ***/ /*** Start of inlined file: SARibbonSystemButtonBar.cpp ***/ @@ -4170,6 +4174,10 @@ SARibbonLineWidgetContainer::SARibbonLineWidgetContainer(QWidget* par) : QWidget setLayout(lay); } +SARibbonLineWidgetContainer::~SARibbonLineWidgetContainer() +{ +} + void SARibbonLineWidgetContainer::setWidget(QWidget* innerWidget) { QHBoxLayout* lay = static_cast< QHBoxLayout* >(layout()); @@ -4855,6 +4863,10 @@ SARibbonLineEdit::SARibbonLineEdit(const QString& text, QWidget* parent) : QLine { } +SARibbonLineEdit::~SARibbonLineEdit() +{ +} + /*** End of inlined file: SARibbonLineEdit.cpp ***/ /*** Start of inlined file: SARibbonCheckBox.cpp ***/ @@ -4868,6 +4880,10 @@ SARibbonCheckBox::SARibbonCheckBox(const QString& text, QWidget* parent) : QChec { } +SARibbonCheckBox::~SARibbonCheckBox() +{ +} + /*** End of inlined file: SARibbonCheckBox.cpp ***/ /*** Start of inlined file: SARibbonComboBox.cpp ***/ @@ -4875,6 +4891,10 @@ SARibbonComboBox::SARibbonComboBox(QWidget* parent) : QComboBox(parent) { } +SARibbonComboBox::~SARibbonComboBox() +{ +} + /*** End of inlined file: SARibbonComboBox.cpp ***/ /*** Start of inlined file: SARibbonButtonGroupWidget.cpp ***/ @@ -5224,12 +5244,6 @@ void SARibbonStackedWidget::exec() d_ptr->eventLoop = nullptr; } -/** - * @brief 类似tabbar的moveTab函数,交换两个窗口的index - * @param from - * @param to - * @note 此操作会触发widgetRemoved(int index)信号 - */ void SARibbonStackedWidget::moveWidget(int from, int to) { QWidget* w = widget(from); @@ -5287,6 +5301,10 @@ SARibbonSeparatorWidget::SARibbonSeparatorWidget(QWidget* parent) : QFrame(paren } } +SARibbonSeparatorWidget::~SARibbonSeparatorWidget() +{ +} + /*** End of inlined file: SARibbonSeparatorWidget.cpp ***/ /*** Start of inlined file: SARibbonCtrlContainer.cpp ***/ @@ -5563,6 +5581,10 @@ SARibbonTabBar::SARibbonTabBar(QWidget* parent) : QTabBar(parent), m_tabMargin(6 setExpanding(false); } +SARibbonTabBar::~SARibbonTabBar() +{ +} + const QMargins& SARibbonTabBar::tabMargin() const { return (m_tabMargin); @@ -5615,10 +5637,17 @@ SARibbonControlButton::SARibbonControlButton(QWidget* parent) : QToolButton(pare { } +SARibbonControlButton::~SARibbonControlButton() +{ +} SARibbonControlToolButton::SARibbonControlToolButton(QWidget* parent) : QToolButton(parent) { } +SARibbonControlToolButton::~SARibbonControlToolButton() +{ +} + /*** End of inlined file: SARibbonControlButton.cpp ***/ /*** Start of inlined file: SARibbonMenu.cpp ***/ @@ -5634,6 +5663,10 @@ SARibbonMenu::SARibbonMenu(const QString& title, QWidget* parent) : QMenu(title, setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); } +SARibbonMenu::~SARibbonMenu() +{ +} + QAction* SARibbonMenu::addRibbonMenu(SARibbonMenu* menu) { return (QMenu::addMenu(menu)); @@ -5674,7 +5707,12 @@ SARibbonPannelOptionButton::SARibbonPannelOptionButton(QWidget* parent) : QToolB setCheckable(false); setToolButtonStyle(Qt::ToolButtonIconOnly); setIconSize(QSize(10, 10)); - setIcon(QIcon(":/image/resource/ribbonPannelOptionButton.png")); + static QIcon s_default_icon = QIcon(":/image/resource/ribbonPannelOptionButton.png"); + setIcon(s_default_icon); +} + +SARibbonPannelOptionButton::~SARibbonPannelOptionButton() +{ } /*** End of inlined file: SARibbonPannelOptionButton.cpp ***/ @@ -5685,6 +5723,10 @@ SARibbonPannelItem::SARibbonPannelItem(QWidget* widget) { } +SARibbonPannelItem::~SARibbonPannelItem() +{ +} + bool SARibbonPannelItem::isEmpty() const { return (action == nullptr || !action->isVisible()); @@ -8388,6 +8430,10 @@ SARibbonCategoryScrollButton::SARibbonCategoryScrollButton(Qt::ArrowType arr, QW setArrowType(arr); } +SARibbonCategoryScrollButton::~SARibbonCategoryScrollButton() +{ +} + /*** End of inlined file: SARibbonCategory.cpp ***/ /*** Start of inlined file: SARibbonCategoryLayout.cpp ***/ @@ -8687,7 +8733,8 @@ void SARibbonCategoryLayout::updateGeometryArr() if (!mag.isNull()) { y = mag.top(); height -= (mag.top() + mag.bottom()); - categoryWidth -= (mag.right() + mag.left()); + // categoryWidth不能把mag减去,减去后会导致categoryWidth不是实际的categoryWidth + // categoryWidth -= (mag.right() + mag.left()); } // total 是总宽,不是x坐标系,x才是坐标系 int total = d_ptr->totalSizeHintWidth(); @@ -9100,6 +9147,10 @@ SARibbonCategoryLayoutItem::SARibbonCategoryLayoutItem(SARibbonPannel* w) : QWid separatorWidget = nullptr; } +SARibbonCategoryLayoutItem::~SARibbonCategoryLayoutItem() +{ +} + SARibbonPannel* SARibbonCategoryLayoutItem::toPannelWidget() { return qobject_cast< SARibbonPannel* >(widget()); @@ -9524,6 +9575,10 @@ SARibbonGalleryGroupItemDelegate::SARibbonGalleryGroupItemDelegate(SARibbonGalle { } +SARibbonGalleryGroupItemDelegate::~SARibbonGalleryGroupItemDelegate() +{ +} + void SARibbonGalleryGroupItemDelegate::paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const { if (nullptr == mGroup) { @@ -10116,6 +10171,9 @@ SARibbonGalleryButton::SARibbonGalleryButton(QWidget* parent) : QToolButton(pare { } +SARibbonGalleryButton::~SARibbonGalleryButton() +{ +} //=================================================== // SARibbonGalleryViewport //=================================================== @@ -15443,6 +15501,9 @@ SARibbonCustomizeDialog::SARibbonCustomizeDialog(SARibbonMainWindow* ribbonWindo * 等同@ref SARibbonCustomizeWidget::setupActionsManager * @param mgr */ +SARibbonCustomizeDialog::~SARibbonCustomizeDialog() +{ +} void SARibbonCustomizeDialog::setupActionsManager(SARibbonActionsManager* mgr) { ui->customWidget->setupActionsManager(mgr); @@ -15907,6 +15968,10 @@ SARibbonMainWindowEventFilter::SARibbonMainWindowEventFilter(QObject* par) : QOb { } +SARibbonMainWindowEventFilter::~SARibbonMainWindowEventFilter() +{ +} + bool SARibbonMainWindowEventFilter::eventFilter(QObject* obj, QEvent* e) { if (e) { diff --git a/src/SARibbon.h b/src/SARibbon.h index a075898..9f9774e 100644 --- a/src/SARibbon.h +++ b/src/SARibbon.h @@ -408,7 +408,6 @@ private Q_SLOTS: public: virtual QSize sizeHint() const Q_DECL_OVERRIDE; }; - namespace SA { /** @@ -651,9 +650,10 @@ class SA_RIBBON_EXPORT SARibbonApplicationButton : public QToolButton { Q_OBJECT public: - SARibbonApplicationButton(QWidget* parent = nullptr); - SARibbonApplicationButton(const QString& text, QWidget* parent = nullptr); - SARibbonApplicationButton(const QIcon& icon, const QString& text, QWidget* parent = nullptr); + explicit SARibbonApplicationButton(QWidget* parent = nullptr); + explicit SARibbonApplicationButton(const QString& text, QWidget* parent = nullptr); + explicit SARibbonApplicationButton(const QIcon& icon, const QString& text, QWidget* parent = nullptr); + ~SARibbonApplicationButton(); }; #endif // SARIBBONAPPLICATIONBUTTON_H @@ -682,8 +682,8 @@ class SA_RIBBON_EXPORT SARibbonSystemButtonBar : public QFrame Q_OBJECT SA_RIBBON_DECLARE_PRIVATE(SARibbonSystemButtonBar) public: - SARibbonSystemButtonBar(QWidget* parent); - SARibbonSystemButtonBar(QWidget* parent, Qt::WindowFlags flags); + explicit SARibbonSystemButtonBar(QWidget* parent); + explicit SARibbonSystemButtonBar(QWidget* parent, Qt::WindowFlags flags); ~SARibbonSystemButtonBar(); void setupMinimizeButton(bool on); void setupMaximizeButton(bool on); @@ -781,8 +781,8 @@ class SA_RIBBON_EXPORT SARibbonToolButton : public QToolButton Q_ENUM(RibbonButtonType) public: - SARibbonToolButton(QWidget* parent = Q_NULLPTR); - SARibbonToolButton(QAction* defaultAction, QWidget* parent = Q_NULLPTR); + explicit SARibbonToolButton(QWidget* parent = nullptr); + explicit SARibbonToolButton(QAction* defaultAction, QWidget* parent = nullptr); ~SARibbonToolButton(); // 标记按钮的样式,按钮的样式有不同的渲染方式 RibbonButtonType buttonType() const; @@ -871,8 +871,8 @@ class SA_RIBBON_EXPORT SARibbonColorToolButton : public SARibbonToolButton }; public: - SARibbonColorToolButton(QWidget* parent = Q_NULLPTR); - SARibbonColorToolButton(QAction* defaultAction, QWidget* parent = Q_NULLPTR); + explicit SARibbonColorToolButton(QWidget* parent = nullptr); + explicit SARibbonColorToolButton(QAction* defaultAction, QWidget* parent = nullptr); ~SARibbonColorToolButton(); // 获取颜色 QColor color() const; @@ -925,8 +925,8 @@ private Q_SLOTS: class SA_RIBBON_EXPORT SARibbonLineWidgetContainer : public QWidget { public: - SARibbonLineWidgetContainer(QWidget* par = nullptr); - + explicit SARibbonLineWidgetContainer(QWidget* par = nullptr); + ~SARibbonLineWidgetContainer(); // 设置widget,不允许设置一个nullptr void setWidget(QWidget* innerWidget); @@ -1009,7 +1009,7 @@ class SA_RIBBON_EXPORT SARibbonActionsManager : public QObject NotInRibbonCategoryTag = 0x2001, ///< 不在功能区的标签@ref autoRegisteActions 函数会遍历所有category的action UserDefineActionTag = 0x8000 ///< 自定义标签,所有用户自定义tag要大于此tag }; - SARibbonActionsManager(SARibbonBar* bar); + explicit SARibbonActionsManager(SARibbonBar* bar); ~SARibbonActionsManager(); // 设置tag对应的名字 void setTagName(int tag, const QString& name); @@ -1118,8 +1118,9 @@ class SA_RIBBON_EXPORT SARibbonLineEdit : public QLineEdit { Q_OBJECT public: - SARibbonLineEdit(QWidget* parent = Q_NULLPTR); - SARibbonLineEdit(const QString& text, QWidget* parent = Q_NULLPTR); + explicit SARibbonLineEdit(QWidget* parent = nullptr); + explicit SARibbonLineEdit(const QString& text, QWidget* parent = nullptr); + ~SARibbonLineEdit(); }; #endif // SARIBBONLINEEDIT_H @@ -1139,8 +1140,9 @@ class SA_RIBBON_EXPORT SARibbonCheckBox : public QCheckBox { Q_OBJECT public: - SARibbonCheckBox(QWidget* parent = Q_NULLPTR); - SARibbonCheckBox(const QString& text, QWidget* parent = Q_NULLPTR); + explicit SARibbonCheckBox(QWidget* parent = nullptr); + explicit SARibbonCheckBox(const QString& text, QWidget* parent = nullptr); + ~SARibbonCheckBox(); }; #endif // SARIBBONCHECKBOX_H @@ -1160,7 +1162,8 @@ class SA_RIBBON_EXPORT SARibbonComboBox : public QComboBox { Q_OBJECT public: - SARibbonComboBox(QWidget* parent = Q_NULLPTR); + explicit SARibbonComboBox(QWidget* parent = nullptr); + ~SARibbonComboBox(); }; #endif // SARIBBONCOMBOBOX_H @@ -1186,8 +1189,8 @@ class SA_RIBBON_EXPORT SARibbonButtonGroupWidget : public QFrame using FpButtonIterate = std::function< bool(SARibbonControlButton*) >; public: - SARibbonButtonGroupWidget(QWidget* parent = Q_NULLPTR); - ~SARibbonButtonGroupWidget() Q_DECL_OVERRIDE; + explicit SARibbonButtonGroupWidget(QWidget* parent = nullptr); + ~SARibbonButtonGroupWidget(); // 图标尺寸 void setIconSize(const QSize& ic); @@ -1208,8 +1211,8 @@ class SA_RIBBON_EXPORT SARibbonButtonGroupWidget : public QFrame // 从ButtonGroupWidget中把action对应的button提取出来,如果action没有对应的button,就返回nullptr SARibbonControlButton* actionToRibbonControlToolButton(QAction* action); - QSize sizeHint() const Q_DECL_OVERRIDE; - QSize minimumSizeHint() const Q_DECL_OVERRIDE; + QSize sizeHint() const override; + QSize minimumSizeHint() const override; public: bool iterate(FpButtonIterate fp); @@ -1222,7 +1225,7 @@ class SA_RIBBON_EXPORT SARibbonButtonGroupWidget : public QFrame void actionTriggered(QAction* action); protected: - virtual void actionEvent(QActionEvent* e) Q_DECL_OVERRIDE; + virtual void actionEvent(QActionEvent* e) override; }; #endif // SARIBBONBUTTONGROUPWIDGET_H @@ -1245,7 +1248,7 @@ class SA_RIBBON_EXPORT SARibbonStackedWidget : public QStackedWidget Q_OBJECT SA_RIBBON_DECLARE_PRIVATE(SARibbonStackedWidget) public: - SARibbonStackedWidget(QWidget* parent); + explicit SARibbonStackedWidget(QWidget* parent); ~SARibbonStackedWidget(); void setPopupMode(); bool isPopupMode() const; @@ -1253,11 +1256,12 @@ class SA_RIBBON_EXPORT SARibbonStackedWidget : public QStackedWidget bool isNormalMode() const; void exec(); - // 设置stacked管理的窗口会随着stacked的大小变化而变化大小 - // 就算不激活也调整大小 - void setAutoResize(bool autoresize); - bool isAutoResize() const; - // 移动窗口 + /** + * @brief 类似tabbar的moveTab函数,交换两个窗口的index + * @param from + * @param to + * @note 此操作会触发widgetRemoved(int index)信号 + */ void moveWidget(int from, int to); protected: @@ -1289,7 +1293,8 @@ class SA_RIBBON_EXPORT SARibbonSeparatorWidget : public QFrame { Q_OBJECT public: - SARibbonSeparatorWidget(QWidget* parent = nullptr); + explicit SARibbonSeparatorWidget(QWidget* parent = nullptr); + ~SARibbonSeparatorWidget(); }; #endif // SARIBBONSEPARATORWIDGET_H @@ -1316,7 +1321,7 @@ class SA_RIBBON_EXPORT SARibbonCtrlContainer : public QWidget Q_OBJECT SA_RIBBON_DECLARE_PRIVATE(SARibbonCtrlContainer) public: - SARibbonCtrlContainer(QWidget* parent = Q_NULLPTR); + explicit SARibbonCtrlContainer(QWidget* parent = nullptr); ~SARibbonCtrlContainer(); void setEnableShowIcon(bool b); @@ -1358,7 +1363,7 @@ class SA_RIBBON_EXPORT SARibbonQuickAccessBar : public SARibbonCtrlContainer Q_OBJECT SA_RIBBON_DECLARE_PRIVATE(SARibbonQuickAccessBar) public: - SARibbonQuickAccessBar(QWidget* parent = 0); + explicit SARibbonQuickAccessBar(QWidget* parent = nullptr); ~SARibbonQuickAccessBar(); void addSeparator(); void addAction(QAction* act, @@ -1394,7 +1399,8 @@ class SA_RIBBON_EXPORT SARibbonTabBar : public QTabBar { Q_OBJECT public: - SARibbonTabBar(QWidget* parent = Q_NULLPTR); + explicit SARibbonTabBar(QWidget* parent = nullptr); + ~SARibbonTabBar(); const QMargins& tabMargin() const; void setTabMargin(const QMargins& tabMargin); @@ -1423,7 +1429,8 @@ class SA_RIBBON_EXPORT SARibbonControlButton : public QToolButton { Q_OBJECT public: - SARibbonControlButton(QWidget* parent = 0); + explicit SARibbonControlButton(QWidget* parent = nullptr); + ~SARibbonControlButton(); }; /** @@ -1435,7 +1442,8 @@ class SA_RIBBON_EXPORT SARibbonControlToolButton : public QToolButton { Q_OBJECT public: - SARibbonControlToolButton(QWidget* parent = 0); + explicit SARibbonControlToolButton(QWidget* parent = nullptr); + ~SARibbonControlToolButton(); }; #endif // SARIBBONPANNELTOOLBUTTON_H @@ -1456,8 +1464,9 @@ class SA_RIBBON_EXPORT SARibbonMenu : public QMenu { Q_OBJECT public: - explicit SARibbonMenu(QWidget* parent = Q_NULLPTR); - explicit SARibbonMenu(const QString& title, QWidget* parent = Q_NULLPTR); + explicit SARibbonMenu(QWidget* parent = nullptr); + explicit SARibbonMenu(const QString& title, QWidget* parent = nullptr); + ~SARibbonMenu(); QAction* addRibbonMenu(SARibbonMenu* menu); SARibbonMenu* addRibbonMenu(const QString& title); SARibbonMenu* addRibbonMenu(const QIcon& icon, const QString& title); @@ -1488,7 +1497,8 @@ class SA_RIBBON_EXPORT SARibbonPannelOptionButton : public QToolButton { Q_OBJECT public: - SARibbonPannelOptionButton(QWidget* parent = Q_NULLPTR); + explicit SARibbonPannelOptionButton(QWidget* parent = nullptr); + ~SARibbonPannelOptionButton(); }; #endif // SAROBBONPANNELOPTIONBUTTON_H @@ -1524,7 +1534,9 @@ class SA_RIBBON_EXPORT SARibbonPannelItem : public QWidgetItem Medium, ///< 中占比,在@ref SARibbonPannel::pannelLayoutMode 为 @ref SARibbonPannel::ThreeRowMode 时才会起作用,且要同一列里两个都是Medium时,会在三行中占据两行 Small ///< 小占比,占SARibbonPannel的一行,Medium在不满足条件时也会变为Small,但不会变为Large }; - SARibbonPannelItem(QWidget* widget); + explicit SARibbonPannelItem(QWidget* widget); + ~SARibbonPannelItem(); + bool isEmpty() const Q_DECL_OVERRIDE; short rowIndex; ///< 记录当前item属于第几行,hide模式下为-1 @@ -1571,7 +1583,7 @@ class SA_RIBBON_EXPORT SARibbonPannelLayout : public QLayout friend class SARibbonPannel; public: - SARibbonPannelLayout(QWidget* p = 0); + explicit SARibbonPannelLayout(QWidget* p = nullptr); ~SARibbonPannelLayout(); // SARibbonPannelLayout additem 无效 void addItem(QLayoutItem* item) Q_DECL_OVERRIDE; @@ -1723,8 +1735,8 @@ class SA_RIBBON_EXPORT SARibbonPannel : public QFrame using FpRibbonToolButtonIterate = std::function< bool(SARibbonToolButton*) >; public: - SARibbonPannel(QWidget* parent = nullptr); - SARibbonPannel(const QString& name, QWidget* parent = nullptr); + explicit SARibbonPannel(QWidget* parent = nullptr); + explicit SARibbonPannel(const QString& name, QWidget* parent = nullptr); ~SARibbonPannel() Q_DECL_OVERRIDE; using QWidget::addAction; @@ -1934,8 +1946,8 @@ class SA_RIBBON_EXPORT SARibbonCategory : public QFrame using FpPannelIterate = std::function< bool(SARibbonPannel*) >; public: - SARibbonCategory(QWidget* p = nullptr); - SARibbonCategory(const QString& name, QWidget* p = nullptr); + explicit SARibbonCategory(QWidget* p = nullptr); + explicit SARibbonCategory(const QString& name, QWidget* p = nullptr); ~SARibbonCategory(); // category的名字 @@ -2040,11 +2052,11 @@ class SA_RIBBON_EXPORT SARibbonCategory : public QFrame void actionTriggered(QAction* action); protected: - virtual bool event(QEvent* e) Q_DECL_OVERRIDE; + virtual bool event(QEvent* e) override; // 处理滚轮事件 - void wheelEvent(QWheelEvent* event) Q_DECL_OVERRIDE; + void wheelEvent(QWheelEvent* event) override; // - void changeEvent(QEvent* event) Q_DECL_OVERRIDE; + void changeEvent(QEvent* event) override; // 标记这个是上下文标签 void markIsContextCategory(bool isContextCategory = true); @@ -2062,7 +2074,8 @@ class SA_RIBBON_EXPORT SARibbonCategoryScrollButton : public QToolButton { Q_OBJECT public: - SARibbonCategoryScrollButton(Qt::ArrowType arr, QWidget* p = nullptr); + explicit SARibbonCategoryScrollButton(Qt::ArrowType arr, QWidget* p = nullptr); + ~SARibbonCategoryScrollButton(); }; #endif // SARIBBONCATEGORY_H @@ -2089,23 +2102,23 @@ class SA_RIBBON_EXPORT SARibbonCategoryLayout : public QLayout Q_OBJECT SA_RIBBON_DECLARE_PRIVATE(SARibbonCategoryLayout) public: - SARibbonCategoryLayout(SARibbonCategory* parent); + explicit SARibbonCategoryLayout(SARibbonCategory* parent); ~SARibbonCategoryLayout(); SARibbonCategory* ribbonCategory() const; - virtual void addItem(QLayoutItem* item) Q_DECL_OVERRIDE; - virtual QLayoutItem* itemAt(int index) const Q_DECL_OVERRIDE; - virtual QLayoutItem* takeAt(int index) Q_DECL_OVERRIDE; + virtual void addItem(QLayoutItem* item) override; + virtual QLayoutItem* itemAt(int index) const override; + virtual QLayoutItem* takeAt(int index) override; SARibbonCategoryLayoutItem* takePannelItem(int index); SARibbonCategoryLayoutItem* takePannelItem(SARibbonPannel* pannel); bool takePannel(SARibbonPannel* pannel); - virtual int count() const Q_DECL_OVERRIDE; - void setGeometry(const QRect& rect) Q_DECL_OVERRIDE; - QSize sizeHint() const Q_DECL_OVERRIDE; - QSize minimumSize() const Q_DECL_OVERRIDE; - Qt::Orientations expandingDirections() const Q_DECL_OVERRIDE; - void invalidate() Q_DECL_OVERRIDE; + virtual int count() const override; + void setGeometry(const QRect& rect) override; + QSize sizeHint() const override; + QSize minimumSize() const override; + Qt::Orientations expandingDirections() const override; + void invalidate() override; // 追加一个pannel void addPannel(SARibbonPannel* pannel); // 插入一个pannel @@ -2155,7 +2168,8 @@ private Q_SLOTS: class SA_RIBBON_EXPORT SARibbonCategoryLayoutItem : public QWidgetItem { public: - SARibbonCategoryLayoutItem(SARibbonPannel* w); + explicit SARibbonCategoryLayoutItem(SARibbonPannel* w); + ~SARibbonCategoryLayoutItem(); SARibbonSeparatorWidget* separatorWidget; // 把内部的widget转换为pannel SARibbonPannel* toPannelWidget(); @@ -2180,7 +2194,7 @@ class SA_RIBBON_EXPORT SARibbonContextCategory : public QObject Q_OBJECT SA_RIBBON_DECLARE_PRIVATE(SARibbonContextCategory) public: - SARibbonContextCategory(QWidget* parent = 0); + explicit SARibbonContextCategory(QWidget* parent = nullptr); ~SARibbonContextCategory(); // 上下文目录添加下属目录 SARibbonCategory* addCategoryPage(const QString& title); @@ -2267,9 +2281,9 @@ class SA_RIBBON_EXPORT SARibbonGalleryItem friend class SARibbonGalleryGroupModel; public: - SARibbonGalleryItem(); - SARibbonGalleryItem(const QString& text, const QIcon& icon); - SARibbonGalleryItem(QAction* act); + explicit SARibbonGalleryItem(); + explicit SARibbonGalleryItem(const QString& text, const QIcon& icon); + explicit SARibbonGalleryItem(QAction* act); virtual ~SARibbonGalleryItem(); // 设置角色 void setData(int role, const QVariant& data); @@ -2331,10 +2345,11 @@ class SA_RIBBON_EXPORT SARibbonGalleryItem class SA_RIBBON_EXPORT SARibbonGalleryGroupItemDelegate : public QStyledItemDelegate { public: - SARibbonGalleryGroupItemDelegate(SARibbonGalleryGroup* group, QObject* parent = Q_NULLPTR); - virtual void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const Q_DECL_OVERRIDE; + explicit SARibbonGalleryGroupItemDelegate(SARibbonGalleryGroup* group, QObject* parent = nullptr); + ~SARibbonGalleryGroupItemDelegate(); + virtual void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const override; - virtual QSize sizeHint(const QStyleOptionViewItem& option, const QModelIndex& index) const Q_DECL_OVERRIDE; + virtual QSize sizeHint(const QStyleOptionViewItem& option, const QModelIndex& index) const override; virtual void paintIconOnly(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const; virtual void paintIconWithText(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const; virtual void @@ -2477,7 +2492,8 @@ class SA_RIBBON_EXPORT SARibbonGalleryButton : public QToolButton { Q_OBJECT public: - SARibbonGalleryButton(QWidget* parent = 0); + explicit SARibbonGalleryButton(QWidget* parent = nullptr); + ~SARibbonGalleryButton(); }; /** @@ -2506,9 +2522,9 @@ class SA_RIBBON_EXPORT SARibbonGallery : public QFrame Q_OBJECT SA_RIBBON_DECLARE_PRIVATE(SARibbonGallery) public: - SARibbonGallery(QWidget* parent = 0); + explicit SARibbonGallery(QWidget* parent = nullptr); virtual ~SARibbonGallery(); - virtual QSize sizeHint() const Q_DECL_OVERRIDE; + virtual QSize sizeHint() const override; // 添加一个GalleryGroup SARibbonGalleryGroup* addGalleryGroup(); // 添加一个GalleryGroup @@ -2554,8 +2570,8 @@ protected Q_SLOTS: SARibbonGalleryViewport* ensureGetPopupViewPort(); protected: - void resizeEvent(QResizeEvent* event) Q_DECL_OVERRIDE; - void paintEvent(QPaintEvent* event) Q_DECL_OVERRIDE; + void resizeEvent(QResizeEvent* event) override; + void paintEvent(QPaintEvent* event) override; }; /// @@ -2741,8 +2757,8 @@ class SA_RIBBON_EXPORT SARibbonBar : public QMenuBar public: // 构造函数 - SARibbonBar(QWidget* parent = nullptr); - ~SARibbonBar() Q_DECL_OVERRIDE; + explicit SARibbonBar(QWidget* parent = nullptr); + ~SARibbonBar(); // 获取applicationButton QAbstractButton* applicationButton(); @@ -3028,11 +3044,11 @@ protected Q_SLOTS: void synchronousCategoryData(bool autoUpdate = true); protected: - virtual void paintEvent(QPaintEvent* e) Q_DECL_OVERRIDE; - virtual void resizeEvent(QResizeEvent* e) Q_DECL_OVERRIDE; - virtual void moveEvent(QMoveEvent* e) Q_DECL_OVERRIDE; - virtual void changeEvent(QEvent* e) Q_DECL_OVERRIDE; - virtual bool event(QEvent* e) Q_DECL_OVERRIDE; + virtual void paintEvent(QPaintEvent* e) override; + virtual void resizeEvent(QResizeEvent* e) override; + virtual void moveEvent(QMoveEvent* e) override; + virtual void changeEvent(QEvent* e) override; + virtual bool event(QEvent* e) override; virtual void paintTabbarBaseLine(QPainter& painter); virtual void paintWindowTitle(QPainter& painter, const QString& title, const QRect& titleRegion); virtual void @@ -3343,11 +3359,13 @@ class SA_RIBBON_EXPORT SARibbonCustomizeWidget : public QWidget SA_RIBBON_DECLARE_PRIVATE(SARibbonCustomizeWidget) public: // 保留接口 - SARibbonCustomizeWidget(SARibbonMainWindow* ribbonWindow, - QWidget* parent = nullptr, - Qt::WindowFlags f = Qt::WindowFlags()); + explicit SARibbonCustomizeWidget(SARibbonMainWindow* ribbonWindow, + QWidget* parent = nullptr, + Qt::WindowFlags f = Qt::WindowFlags()); // 对于不使用SARibbonMainWindow的情况,使用此构造函数 - SARibbonCustomizeWidget(SARibbonBar* ribbonbar, QWidget* parent = nullptr, Qt::WindowFlags f = Qt::WindowFlags()); + explicit SARibbonCustomizeWidget(SARibbonBar* ribbonbar, + QWidget* parent = nullptr, + Qt::WindowFlags f = Qt::WindowFlags()); ~SARibbonCustomizeWidget(); /** @@ -3549,7 +3567,10 @@ class SA_RIBBON_EXPORT SARibbonCustomizeDialog : public QDialog { Q_OBJECT public: - SARibbonCustomizeDialog(SARibbonMainWindow* ribbonWindow, QWidget* p = nullptr, Qt::WindowFlags f = Qt::WindowFlags()); + explicit SARibbonCustomizeDialog(SARibbonMainWindow* ribbonWindow, + QWidget* p = nullptr, + Qt::WindowFlags f = Qt::WindowFlags()); + ~SARibbonCustomizeDialog(); // 设置action管理器 void setupActionsManager(SARibbonActionsManager* mgr); @@ -3653,8 +3674,8 @@ class SA_RIBBON_EXPORT SARibbonMainWindow : public QMainWindow Q_PROPERTY(SARibbonTheme ribbonTheme READ ribbonTheme WRITE setRibbonTheme) public: - SARibbonMainWindow(QWidget* parent = nullptr, bool useRibbon = true, const Qt::WindowFlags flags = {}); - ~SARibbonMainWindow() Q_DECL_OVERRIDE; + explicit SARibbonMainWindow(QWidget* parent = nullptr, bool useRibbon = true, const Qt::WindowFlags flags = {}); + ~SARibbonMainWindow() override; // 返回SARibbonBar SARibbonBar* ribbonBar() const; // 设置ribbonbar @@ -3687,12 +3708,16 @@ private Q_SLOTS: void onPrimaryScreenChanged(QScreen* screen); }; +/** + * @brief 针对SARibbonMainWindow的事件处理器,主要处理systembar的位置调整 + */ class SA_RIBBON_EXPORT SARibbonMainWindowEventFilter : public QObject { Q_OBJECT public: - SARibbonMainWindowEventFilter(QObject* par); - virtual bool eventFilter(QObject* obj, QEvent* e) Q_DECL_OVERRIDE; + explicit SARibbonMainWindowEventFilter(QObject* par); + ~SARibbonMainWindowEventFilter(); + virtual bool eventFilter(QObject* obj, QEvent* e) override; }; #endif // SARIBBONMAINWINDOW_H @@ -3722,8 +3747,8 @@ class SA_RIBBON_EXPORT SARibbonWidget : public QWidget Q_PROPERTY(SARibbonTheme ribbonTheme READ ribbonTheme WRITE setRibbonTheme) public: - SARibbonWidget(QWidget* parent = nullptr); - ~SARibbonWidget() Q_DECL_OVERRIDE; + explicit SARibbonWidget(QWidget* parent = nullptr); + ~SARibbonWidget(); // 返回SARibbonBar SARibbonBar* ribbonBar() const; // 设置ribbonbar diff --git a/src/SARibbonBar/3rdparty/qwindowkit b/src/SARibbonBar/3rdparty/qwindowkit index f93657f..ae0cbbc 160000 --- a/src/SARibbonBar/3rdparty/qwindowkit +++ b/src/SARibbonBar/3rdparty/qwindowkit @@ -1 +1 @@ -Subproject commit f93657fa82bdd37dba68ea962d5e9b2cf4fd4d60 +Subproject commit ae0cbbcad47ac5613358354d89176ea9574bed99