SARibbon 2.5.2
SARibbon wiki
载入中...
搜索中...
未找到
SARibbonSystemButtonBar.h
1#ifndef SARIBBONSYSTEMBUTTONBAR_H
2#define SARIBBONSYSTEMBUTTONBAR_H
3#include "SARibbonGlobal.h"
4#include <QFrame>
5#include <QToolButton>
6
40class SA_RIBBON_EXPORT SARibbonSystemButtonBar : public QFrame
41{
42 Q_OBJECT
43 SA_RIBBON_DECLARE_PRIVATE(SARibbonSystemButtonBar)
44public:
46 explicit SARibbonSystemButtonBar(QWidget* parent);
48 explicit SARibbonSystemButtonBar(QWidget* parent, Qt::WindowFlags flags);
52 void setupMinimizeButton(bool on);
54 void setupMaximizeButton(bool on);
56 void setupCloseButton(bool on);
58 void updateWindowFlag();
60 void updateWindowFlag(Qt::WindowFlags flags);
62 void setButtonWidthStretch(int close = 4, int max = 3, int min = 3);
64 void setWindowTitleHeight(int h);
66 int windowTitleHeight() const;
68 void setWindowButtonWidth(int w);
70 int windowButtonWidth() const;
72 void setWindowStates(Qt::WindowStates s);
74 Qt::WindowFlags windowButtonFlags() const;
76 QAbstractButton* minimizeButton() const;
78 QAbstractButton* maximizeButton() const;
80 QAbstractButton* closeButton() const;
81
83 void setIconSize(const QSize& ic);
85 QSize iconSize() const;
87 void addAction(QAction* a);
89 void addMenuAction(QAction* menuAction, QToolButton::ToolButtonPopupMode popupMode = QToolButton::InstantPopup);
91 QAction* addMenuAction(QMenu* menu, QToolButton::ToolButtonPopupMode popupMode = QToolButton::InstantPopup);
93 QAction* addSeparator();
95 QAction* addWidget(QWidget* w);
96
98 virtual QSize sizeHint() const Q_DECL_OVERRIDE;
100 bool eventFilter(QObject* obj, QEvent* event) override;
101
102protected:
104 virtual void resizeEvent(QResizeEvent* e) Q_DECL_OVERRIDE;
105
106protected Q_SLOTS:
108 Q_SLOT void closeWindow();
110 Q_SLOT void minimizeWindow();
112 Q_SLOT void maximizeWindow();
113};
114
124class SARibbonSystemToolButton : public QToolButton
125{
126 Q_OBJECT
127public:
129 SARibbonSystemToolButton(QWidget* p = nullptr);
130};
131
132#endif // SARIBBONSYSTEMBUTTONBAR_H
Definition SARibbonSystemButtonBar.h:41
Definition SARibbonSystemButtonBar.h:125