#include <SARibbonBarLayout.h>
◆ SARibbonBarLayout()
| SARibbonBarLayout::SARibbonBarLayout |
( |
SARibbonBar * |
parent | ) |
|
|
explicit |
◆ ~SARibbonBarLayout()
| SARibbonBarLayout::~SARibbonBarLayout |
( |
| ) |
|
|
virtual |
◆ addItem()
| void SARibbonBarLayout::addItem |
( |
QLayoutItem * |
item | ) |
|
|
override |
◆ applicationButton()
| QAbstractButton * SARibbonBarLayout::applicationButton |
( |
| ) |
const |
◆ calcMinTabBarWidth()
| int SARibbonBarLayout::calcMinTabBarWidth |
( |
| ) |
const |
◆ categoryHeight()
| int SARibbonBarLayout::categoryHeight |
( |
| ) |
const |
◆ count()
| int SARibbonBarLayout::count |
( |
| ) |
const |
|
override |
◆ doLayout()
| void SARibbonBarLayout::doLayout |
( |
| ) |
|
|
virtual |
◆ isApplicationButtonVerticalExpansion()
| bool SARibbonBarLayout::isApplicationButtonVerticalExpansion |
( |
| ) |
const |
◆ isCompactStyle()
| bool SARibbonBarLayout::isCompactStyle |
( |
| ) |
const |
◆ isLooseStyle()
| bool SARibbonBarLayout::isLooseStyle |
( |
| ) |
const |
◆ isTabOnTitle()
| bool SARibbonBarLayout::isTabOnTitle |
( |
| ) |
const |
◆ itemAt()
| QLayoutItem * SARibbonBarLayout::itemAt |
( |
int |
index | ) |
const |
|
override |
◆ layoutCategory()
| void SARibbonBarLayout::layoutCategory |
( |
| ) |
|
◆ layoutStackedContainerWidget()
| void SARibbonBarLayout::layoutStackedContainerWidget |
( |
| ) |
|
◆ layoutTitleRect()
| void SARibbonBarLayout::layoutTitleRect |
( |
| ) |
|
◆ minimumModeMainBarHeight()
| int SARibbonBarLayout::minimumModeMainBarHeight |
( |
| ) |
const |
◆ minimumSize()
| QSize SARibbonBarLayout::minimumSize |
( |
| ) |
const |
|
override |
◆ normalModeMainBarHeight()
| int SARibbonBarLayout::normalModeMainBarHeight |
( |
| ) |
const |
◆ panelTitleHeight()
| int SARibbonBarLayout::panelTitleHeight |
( |
| ) |
const |
◆ quickAccessBar()
◆ resetSize()
| void SARibbonBarLayout::resetSize |
( |
| ) |
|
◆ resizeInCompactStyle()
| void SARibbonBarLayout::resizeInCompactStyle |
( |
| ) |
|
|
protected |
< 记录ribbonBar的最小宽度,这个用于给推荐宽度
- 布局corner widget - TopLeftCorner
- 布局图标窗口
- 布局applicationButton
- 布局右上角corner widget
- 布局右边按钮组rightButtonGroup
- 布局quick access bar
6.布局 tab bar
◆ resizeInLooseStyle()
| void SARibbonBarLayout::resizeInLooseStyle |
( |
| ) |
|
|
protected |
< 记录ribbonBar的最小宽度,这个用于给推荐宽度
- 布局corner widget
- 布局图标窗口或app button
如果Application button是纵向扩展模式,那么不显示titleicon 纵向扩展的Application button将占用title和tab的高度
Application button不是纵向扩展,显示icon
- 布局quick access bar
这里不用SA::scaleSizeByHeight缩减quickAccessBar的比例: quickAccessBarSize = SA::scaleSizeByHeight(quickAccessBarSize, titleBarControlHeight); 原因是,如果quickAccessBar最后是一个widget,如果长度不足,这个widget是不会显示出来,假如默认QToolBar的高度是32, 而titlebar的高度一是28,肯定会导致宽度缩减,如果宽度缩减,且最后是一个窗口,那么这个窗口会不显示 针对工具栏类型的窗口,宽度高度都不进行比例缩减
titleBar上的元素布局完成,开始布局第二行
- 布局 applicationButton(第二行)
! 如果是纵向扩展的Application button则只更新x位置,在第2步已经设定了位置
- 布局右上角corner widget cornerWidget(Qt::TopRightCorner)是一定要配置的,对于多文档窗口,子窗口的缩放恢复按钮就是通过这个窗口实现, 由于这个窗口一定要在最右,因此先对这个窗口进行布局
- tabBar右边的附加按钮组rightButtonGroup,这里一般会附加一些类似登录等按钮组
这里不用SA::scaleSizeByHeight缩减rightButtonGroup的比例: rightBtnGroupSize = SA::scaleSizeByHeight(rightBtnGroupSize, tabBarControlHeight); 针对工具栏类型的窗口,宽度高度都不进行比例缩减
- 布局tabbar,此时已经确定了applicationButton的位置,以及最右边rightButtonGroup的位置,剩下的区域都给tabbar
◆ ribbonBar()
◆ ribbonTabBar()
◆ rightButtonGroup()
◆ setApplicationButtonVerticalExpansion()
| void SARibbonBarLayout::setApplicationButtonVerticalExpansion |
( |
bool |
on = true | ) |
|
◆ setCategoryHeight()
| void SARibbonBarLayout::setCategoryHeight |
( |
int |
h | ) |
|
◆ setGeometry()
| void SARibbonBarLayout::setGeometry |
( |
const QRect & |
rect | ) |
|
|
override |
◆ setPanelTitleHeight()
| void SARibbonBarLayout::setPanelTitleHeight |
( |
int |
h | ) |
|
◆ setSystemButtonSize()
| void SARibbonBarLayout::setSystemButtonSize |
( |
const QSize & |
size | ) |
|
◆ setTabBarHeight()
| void SARibbonBarLayout::setTabBarHeight |
( |
int |
h | ) |
|
◆ setTabOnTitle()
| void SARibbonBarLayout::setTabOnTitle |
( |
bool |
on | ) |
|
◆ setTitleBarHeight()
| void SARibbonBarLayout::setTitleBarHeight |
( |
int |
h | ) |
|
◆ setWindowIcon()
| void SARibbonBarLayout::setWindowIcon |
( |
const QIcon & |
icon | ) |
|
◆ sizeHint()
| QSize SARibbonBarLayout::sizeHint |
( |
| ) |
const |
|
override |
◆ stackedContainerWidget()
◆ tabBarHeight()
| int SARibbonBarLayout::tabBarHeight |
( |
| ) |
const |
◆ takeAt()
| QLayoutItem * SARibbonBarLayout::takeAt |
( |
int |
index | ) |
|
|
override |
◆ titleBarHeight()
| int SARibbonBarLayout::titleBarHeight |
( |
| ) |
const |
◆ titleIconWidget()
◆ titleRect()
| const QRect & SARibbonBarLayout::titleRect |
( |
| ) |
const |
◆ windowIcon()
| QIcon SARibbonBarLayout::windowIcon |
( |
| ) |
const |
该类的文档由以下文件生成:
- /home/runner/work/SARibbon/SARibbon/src/SARibbonBar/SARibbonBarLayout.h
- /home/runner/work/SARibbon/SARibbon/src/SARibbonBar/SARibbonBarLayout.cpp