SARibbon 2.5.2
SARibbon wiki
载入中...
搜索中...
未找到
SARibbonMainWindow.h
1#ifndef SARIBBONMAINWINDOW_H
2#define SARIBBONMAINWINDOW_H
3#include "SARibbonGlobal.h"
4#include <QMainWindow>
5
6#if !SARIBBON_USE_3RDPARTY_FRAMELESSHELPER
8#endif
9class QAction;
10class SARibbonBar;
12class QScreen;
85class SA_RIBBON_EXPORT SARibbonMainWindow : public QMainWindow
86{
87 Q_OBJECT
88 SA_RIBBON_DECLARE_PRIVATE(SARibbonMainWindow)
89 friend class SARibbonBar;
90 Q_PROPERTY(SARibbonTheme ribbonTheme READ ribbonTheme WRITE setRibbonTheme)
91
92public:
94 explicit SARibbonMainWindow(QWidget* parent = nullptr,
95 SARibbonMainWindowStyles style = SARibbonMainWindowStyleFlag::UseRibbonMenuBar
96 | SARibbonMainWindowStyleFlag::UseRibbonFrame,
97 const Qt::WindowFlags flags = Qt::WindowFlags());
99 ~SARibbonMainWindow() override;
101 SARibbonBar* ribbonBar() const;
103 void setRibbonBar(SARibbonBar* ribbon);
104#if !SARIBBON_USE_3RDPARTY_FRAMELESSHELPER
106 SAFramelessHelper* framelessHelper() const;
108 void setRubberBandOnResize(bool on);
110 bool isRubberBandOnResize() const;
111#else
114 void setFramelessHitTestVisible(QWidget* w, bool visible = true);
115#endif
117 void updateWindowFlag(Qt::WindowFlags flags);
120 void setRibbonTheme(SARibbonTheme theme);
122 SARibbonTheme ribbonTheme() const;
124 bool isUseRibbon() const;
126 SARibbonSystemButtonBar* windowButtonBar() const;
128 SARibbonMainWindowStyles ribbonMainwindowStyle() const;
129
131 virtual bool eventFilter(QObject* obj, QEvent* e) Q_DECL_OVERRIDE;
132
133protected:
135 SARibbonBar* createRibbonBar();
136private Q_SLOTS:
138 void onPrimaryScreenChanged(QScreen* screen);
139};
140
150class SA_RIBBON_EXPORT SARibbonMainWindowEventFilter : public QObject
151{
152 Q_OBJECT
153public:
155 explicit SARibbonMainWindowEventFilter(QObject* par);
159 virtual bool eventFilter(QObject* obj, QEvent* e) override;
160};
161
162#endif // SARIBBONMAINWINDOW_H
该类用于帮助实现无边框窗体的移动和缩放功能。
Definition SAFramelessHelper.h:26
Definition SARibbonBar.h:171
Definition SARibbonMainWindow.h:151
Definition SARibbonMainWindow.h:86
Definition SARibbonSystemButtonBar.h:41