QtCanpool 3.3.0
载入中...
搜索中...
未找到
ribbonpage_p.h
浏览该文件的文档.
1
5#pragma once
6
7#include "ribbongroup.h"
8
9#include <QObject>
10#include <QToolButton>
11
13
14class RibbonPage;
15class RibbonSeparator;
16class RibbonBar;
17class RibbonPageScrollButton;
18
20{
21public:
23 : m_group(Q_NULLPTR)
24 , m_separator(Q_NULLPTR)
25 {
26 }
27
28 bool isEmpty() const
29 {
30 if (m_group) {
31 return m_group->isHidden();
32 }
33 return true;
34 }
35
36 bool isNull() const
37 {
38 return (m_group == Q_NULLPTR);
39 }
40public:
45};
46
47class RibbonPageScrollButton : public QToolButton
48{
49 Q_OBJECT
50public:
51 RibbonPageScrollButton(Qt::ArrowType arr, QWidget *p = Q_NULLPTR);
52};
53
54class RibbonPagePrivate : public QObject
55{
56 Q_OBJECT
58public:
60 virtual ~RibbonPagePrivate();
61
62 void init();
63
64 RibbonGroup *addGroup(const QString &title);
65 void addGroup(RibbonGroup *group);
66 RibbonGroup *insertGroup(int index, const QString &title);
67 void insertGroup(int index, RibbonGroup *group);
68
69 bool takeGroup(RibbonGroup *group);
70
71 bool removeGroup(RibbonGroup *group);
72
73 QList<RibbonGroup *> groupList() const;
74
75 void setGroupLayoutMode(RibbonGroup::GroupLayoutMode m);
76
77 int totalSizeHintWidth() const;
78
79 QSize pageContentSize() const;
80
81 void updateItemGeometry();
82
83 void doItemLayout();
84
85 void doWheelEvent(QWheelEvent *event);
86
87public Q_SLOTS:
88 void onLeftScrollButtonClicked();
89 void onRightScrollButtonClicked();
90public:
95 QList<RibbonPageItem> m_itemList;
104};
105
RibbonBar 继承 QMenuBar, 在 RibbonWindow 中直接替换了原来的 QMenuBar
Definition ribbonbar.h:99
group 用于对 ribbon 页窗口中的控件进行分组
Definition ribbongroup.h:29
RibbonSeparator * m_separator
RibbonGroup::GroupLayoutMode m_groupLayoutMode
QList< RibbonPageItem > m_itemList
RibbonPageScrollButton * m_leftScrollBtn
RibbonPageScrollButton * m_rightScrollBtn
一项 ribbon tab 页
Definition ribbonpage.h:30
#define QX_DECLARE_PUBLIC(Class)
#define Q_NULLPTR
Copyleft (C) 2025 maminjie canpool@163.com SPDX-License-Identifier: MulanPSL-2.0
#define QX_RIBBON_END_NAMESPACE
#define QX_RIBBON_BEGIN_NAMESPACE