SARibbon 2.5.2
SARibbon wiki
载入中...
搜索中...
未找到
SARibbonBarLayout类 参考

#include <SARibbonBarLayout.h>

类 SARibbonBarLayout 继承关系图:

class  PrivateData
 

Public 成员函数

 SARibbonBarLayout (SARibbonBar *parent)
 
virtual ~SARibbonBarLayout ()
 
void addItem (QLayoutItem *item) override
 
QLayoutItem * itemAt (int index) const override
 
QLayoutItem * takeAt (int index) override
 
int count () const override
 
QSize sizeHint () const override
 
QSize minimumSize () const override
 
void setGeometry (const QRect &rect) override
 
virtual void doLayout ()
 
bool isLooseStyle () const
 
bool isCompactStyle () const
 
const QRect & titleRect () const
 
int calcMinTabBarWidth () const
 
void resetSize ()
 
void layoutTitleRect ()
 
void layoutStackedContainerWidget ()
 
void layoutCategory ()
 
void setSystemButtonSize (const QSize &size)
 
void setTabOnTitle (bool on)
 
bool isTabOnTitle () const
 
int minimumModeMainBarHeight () const
 
int normalModeMainBarHeight () const
 
int tabBarHeight () const
 
void setTabBarHeight (int h)
 
int titleBarHeight () const
 
void setTitleBarHeight (int h)
 
int categoryHeight () const
 
void setCategoryHeight (int h)
 
int panelTitleHeight () const
 
void setPanelTitleHeight (int h)
 
void setWindowIcon (const QIcon &icon)
 
QIcon windowIcon () const
 
void setApplicationButtonVerticalExpansion (bool on=true)
 
bool isApplicationButtonVerticalExpansion () const
 
SARibbonBarribbonBar () const
 
SARibbonTabBarribbonTabBar () const
 
SARibbonStackedWidgetstackedContainerWidget () const
 
SARibbonQuickAccessBarquickAccessBar () const
 
SARibbonButtonGroupWidgetrightButtonGroup () const
 
QAbstractButton * applicationButton () const
 
SARibbonTitleIconWidgettitleIconWidget () const
 

Protected 成员函数

void resizeInLooseStyle ()
 
void resizeInCompactStyle ()
 

详细描述

构造及析构函数说明

◆ 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()

SARibbonQuickAccessBar * SARibbonBarLayout::quickAccessBar ( ) const

◆ resetSize()

void SARibbonBarLayout::resetSize ( )

◆ resizeInCompactStyle()

void SARibbonBarLayout::resizeInCompactStyle ( )
protected

< 记录ribbonBar的最小宽度,这个用于给推荐宽度

  1. 布局corner widget - TopLeftCorner
  1. 布局图标窗口
  1. 布局applicationButton
  1. 布局右上角corner widget
  1. 布局右边按钮组rightButtonGroup
  1. 布局quick access bar

6.布局 tab bar

◆ resizeInLooseStyle()

void SARibbonBarLayout::resizeInLooseStyle ( )
protected

< 记录ribbonBar的最小宽度,这个用于给推荐宽度

  1. 布局corner widget
  1. 布局图标窗口或app button

如果Application button是纵向扩展模式,那么不显示titleicon 纵向扩展的Application button将占用title和tab的高度

Application button不是纵向扩展,显示icon

  1. 布局quick access bar

这里不用SA::scaleSizeByHeight缩减quickAccessBar的比例: quickAccessBarSize = SA::scaleSizeByHeight(quickAccessBarSize, titleBarControlHeight); 原因是,如果quickAccessBar最后是一个widget,如果长度不足,这个widget是不会显示出来,假如默认QToolBar的高度是32, 而titlebar的高度一是28,肯定会导致宽度缩减,如果宽度缩减,且最后是一个窗口,那么这个窗口会不显示 针对工具栏类型的窗口,宽度高度都不进行比例缩减

titleBar上的元素布局完成,开始布局第二行

  1. 布局 applicationButton(第二行)

! 如果是纵向扩展的Application button则只更新x位置,在第2步已经设定了位置

  1. 布局右上角corner widget cornerWidget(Qt::TopRightCorner)是一定要配置的,对于多文档窗口,子窗口的缩放恢复按钮就是通过这个窗口实现, 由于这个窗口一定要在最右,因此先对这个窗口进行布局
  1. tabBar右边的附加按钮组rightButtonGroup,这里一般会附加一些类似登录等按钮组

这里不用SA::scaleSizeByHeight缩减rightButtonGroup的比例: rightBtnGroupSize = SA::scaleSizeByHeight(rightBtnGroupSize, tabBarControlHeight); 针对工具栏类型的窗口,宽度高度都不进行比例缩减

  1. 布局tabbar,此时已经确定了applicationButton的位置,以及最右边rightButtonGroup的位置,剩下的区域都给tabbar

◆ ribbonBar()

SARibbonBar * SARibbonBarLayout::ribbonBar ( ) const

◆ ribbonTabBar()

SARibbonTabBar * SARibbonBarLayout::ribbonTabBar ( ) const

◆ rightButtonGroup()

SARibbonButtonGroupWidget * SARibbonBarLayout::rightButtonGroup ( ) const

◆ 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()

SARibbonStackedWidget * SARibbonBarLayout::stackedContainerWidget ( ) const

◆ tabBarHeight()

int SARibbonBarLayout::tabBarHeight ( ) const

◆ takeAt()

QLayoutItem * SARibbonBarLayout::takeAt ( int  index)
override

◆ titleBarHeight()

int SARibbonBarLayout::titleBarHeight ( ) const

◆ titleIconWidget()

SARibbonTitleIconWidget * SARibbonBarLayout::titleIconWidget ( ) const

◆ titleRect()

const QRect & SARibbonBarLayout::titleRect ( ) const

◆ windowIcon()

QIcon SARibbonBarLayout::windowIcon ( ) const

该类的文档由以下文件生成: