QtCanpool 3.3.0
载入中...
搜索中...
未找到
QxRibbon::RibbonCustomizeData类 参考

记录所有自定义操作的数据类 更多...

#include <qxribbon/ribboncustomizedata.h>

Public 类型

enum  ActionType {
  UnknowActionType = 0 , AddPageActionType , AddGroupActionType , AddActionActionType ,
  RemovePageActionType , RemoveGroupActionType , RemoveActionActionType , ChangePageOrderActionType ,
  ChangeGroupOrderActionType , ChangeActionOrderActionType , RenamePageActionType , RenameGroupActionType ,
  VisiblePageActionType
}
 

Public 成员函数

 RibbonCustomizeData ()
 RibbonCustomizeData
 
 RibbonCustomizeData (ActionType type, RibbonActionsManager *mgr=Q_NULLPTR)
 
ActionType actionType () const
 获取CustomizeData的action type
 
void setActionType (ActionType a)
 设置CustomizeData的action type
 
bool isValid () const
 判断是否是一个正常的CustomizeData
 
bool apply (RibbonBar *bar)
 应用RibbonCustomizeData到RibbonBar
 
RibbonActionsManager * actionsManager ()
 
void setActionsManager (RibbonActionsManager *mgr)
 

静态 Public 成员函数

static RibbonCustomizeData makeAddPageCustomizeData (const QString &title, int index, const QString &objName)
 
static RibbonCustomizeData makeAddGroupCustomizeData (const QString &title, int index, const QString &pageObjName, const QString &objName)
 创建一个AddGroupActionType的RibbonCustomizeData
 
static RibbonCustomizeData makeAddActionCustomizeData (const QString &key, RibbonActionsManager *mgr, RibbonGroup::RowProportion rp, const QString &pageObjName, const QString &groupObjName)
 添加action
 
static RibbonCustomizeData makeRenamePageCustomizeData (const QString &newName, const QString &pageObjName)
 
static RibbonCustomizeData makeRenameGroupCustomizeData (const QString &newName, const QString &pageObjName, const QString &groupObjName)
 
static RibbonCustomizeData makeRemovePageCustomizeData (const QString &pageObjName)
 
static RibbonCustomizeData makeChangePageOrderCustomizeData (const QString &pageObjName, int moveIndex)
 对应ChangePageOrderActionType
 
static RibbonCustomizeData makeChangeGroupOrderCustomizeData (const QString &pageObjName, const QString &groupObjName, int moveIndex)
 对应ChangeGroupOrderActionType
 
static RibbonCustomizeData makeChangeActionOrderCustomizeData (const QString &pageObjName, const QString &groupObjName, const QString &key, RibbonActionsManager *mgr, int moveIndex)
 对应ChangeActionOrderActionType
 
static RibbonCustomizeData makeRemoveGroupCustomizeData (const QString &pageObjName, const QString &groupObjName)
 
static RibbonCustomizeData makeRemoveActionCustomizeData (const QString &pageObjName, const QString &groupObjName, const QString &key, RibbonActionsManager *mgr)
 对应RemoveActionActionType
 
static RibbonCustomizeData makeVisiblePageCustomizeData (const QString &pageObjName, bool isShow)
 RibbonCustomizeData::makeVisiblePageCustomizeData
 
static bool isCanCustomize (QObject *obj)
 
static void setCanCustomize (QObject *obj, bool canbe=true)
 
static QList< RibbonCustomizeData > simplify (const QList< RibbonCustomizeData > &csd)
 对QList<RibbonCustomizeData>进行简化操作
 

Public 属性

int indexValue
 记录顺序的参数
 
QString keyValue
 记录标题、索引等参数
 
QString pageObjNameValue
 记录pageObjName,用于定位Page
 
QString groupObjNameValue
 记录groupObjName,ribbon的Customize索引大部分基于objname
 
RibbonGroup::RowProportion actionRowProportionValue
 

详细描述

记录所有自定义操作的数据类

注解
此数据依赖于 RibbonActionsManager 要在 RibbonActionsManager 之后使用此类

在文件 ribboncustomizedata.h 第 21 行定义.

成员枚举类型说明

◆ ActionType

枚举值
UnknowActionType 

未知操作

AddPageActionType 

添加page操作

AddGroupActionType 

添加group操作

AddActionActionType 

添加action操作

RemovePageActionType 

删除page操作

RemoveGroupActionType 

删除group操作

RemoveActionActionType 

删除action操作

ChangePageOrderActionType 

改变page顺序的操作

ChangeGroupOrderActionType 

改变group顺序的操作

ChangeActionOrderActionType 

改变action顺序的操作

RenamePageActionType 

对page更名操作

RenameGroupActionType 

对Group更名操作

VisiblePageActionType 

对page执行隐藏/显示操作

在文件 ribboncustomizedata.h 第 24 行定义.

构造及析构函数说明

◆ RibbonCustomizeData() [1/2]

QxRibbon::RibbonCustomizeData::RibbonCustomizeData ( )

◆ RibbonCustomizeData() [2/2]

QxRibbon::RibbonCustomizeData::RibbonCustomizeData ( ActionType  type,
RibbonActionsManager *  mgr = Q_NULLPTR 
)

在文件 ribboncustomizedata.cpp 第 48 行定义.

成员函数说明

◆ actionsManager()

RibbonActionsManager * QxRibbon::RibbonCustomizeData::actionsManager ( )

在文件 ribboncustomizedata.cpp 第 280 行定义.

◆ actionType()

RibbonCustomizeData::ActionType QxRibbon::RibbonCustomizeData::actionType ( ) const

获取CustomizeData的action type

返回

在文件 ribboncustomizedata.cpp 第 61 行定义.

◆ apply()

bool QxRibbon::RibbonCustomizeData::apply ( RibbonBar *  bar)

应用RibbonCustomizeData到RibbonBar

参数
bar
返回
如果应用失败,返回false,如果actionType==UnknowActionType直接返回false

在文件 ribboncustomizedata.cpp 第 91 行定义.

◆ isCanCustomize()

bool QxRibbon::RibbonCustomizeData::isCanCustomize ( QObject *  obj)
static

在文件 ribboncustomizedata.cpp 第 556 行定义.

◆ isValid()

bool QxRibbon::RibbonCustomizeData::isValid ( ) const

判断是否是一个正常的CustomizeData

实际逻辑actionType() != UnknowActionType

返回
有用的CustomizeData返回true

在文件 ribboncustomizedata.cpp 第 81 行定义.

◆ makeAddActionCustomizeData()

RibbonCustomizeData QxRibbon::RibbonCustomizeData::makeAddActionCustomizeData ( const QString &  key,
RibbonActionsManager *  mgr,
RibbonGroup::RowProportion  rp,
const QString &  pageObjName,
const QString &  groupObjName 
)
static

添加action

参数
keyaction的索引
mgraction管理器
rp定义action的占位情况
pageObjNameaction添加到的page的objname
groupObjNameaction添加到的page下的group的objname
返回

在文件 ribboncustomizedata.cpp 第 336 行定义.

◆ makeAddGroupCustomizeData()

RibbonCustomizeData QxRibbon::RibbonCustomizeData::makeAddGroupCustomizeData ( const QString &  title,
int  index,
const QString &  pageObjName,
const QString &  objName 
)
static

创建一个AddGroupActionType的RibbonCustomizeData

参数
titlegroup的标题
indexgroup的index
pageObjNamegroup的page的objectname
objNamegroup的objname
返回
返回AddGroupActionType的RibbonCustomizeData

在文件 ribboncustomizedata.cpp 第 312 行定义.

◆ makeAddPageCustomizeData()

RibbonCustomizeData QxRibbon::RibbonCustomizeData::makeAddPageCustomizeData ( const QString &  title,
int  index,
const QString &  objName 
)
static

在文件 ribboncustomizedata.cpp 第 290 行定义.

◆ makeChangeActionOrderCustomizeData()

RibbonCustomizeData QxRibbon::RibbonCustomizeData::makeChangeActionOrderCustomizeData ( const QString &  pageObjName,
const QString &  groupObjName,
const QString &  key,
RibbonActionsManager *  mgr,
int  moveIndex 
)
static

对应ChangeActionOrderActionType

参数
pageObjName需要移动的group对应的pageobjName
groupObjName需要移动的groupObjName
keyRibbonActionsManager管理的key名
mgrRibbonActionsManager指针
moveIndex移动位置,-1代表向上(向左)移动一个位置,1带表向下(向右)移动一个位置
返回

在文件 ribboncustomizedata.cpp 第 447 行定义.

◆ makeChangeGroupOrderCustomizeData()

RibbonCustomizeData QxRibbon::RibbonCustomizeData::makeChangeGroupOrderCustomizeData ( const QString &  pageObjName,
const QString &  groupObjName,
int  moveIndex 
)
static

对应ChangeGroupOrderActionType

参数
pageObjName需要移动的group对应的pageobjName
groupObjName需要移动的groupObjName
moveIndex移动位置,-1代表向上(向左)移动一个位置,1带表向下(向右)移动一个位置
返回

在文件 ribboncustomizedata.cpp 第 418 行定义.

◆ makeChangePageOrderCustomizeData()

RibbonCustomizeData QxRibbon::RibbonCustomizeData::makeChangePageOrderCustomizeData ( const QString &  pageObjName,
int  moveIndex 
)
static

对应ChangePageOrderActionType

参数
pageObjName需要移动的pageobjName
moveIndex移动位置,-1代表向上(向左)移动一个位置,1带表向下(向右)移动一个位置
返回

在文件 ribboncustomizedata.cpp 第 393 行定义.

◆ makeRemoveActionCustomizeData()

RibbonCustomizeData QxRibbon::RibbonCustomizeData::makeRemoveActionCustomizeData ( const QString &  pageObjName,
const QString &  groupObjName,
const QString &  key,
RibbonActionsManager *  mgr 
)
static

对应RemoveActionActionType

参数
pageObjNamegroup对应的page的obj name
groupObjNamegroup对应的 obj name
keyRibbonActionsManager管理的key名
mgrRibbonActionsManager指针
返回

在文件 ribboncustomizedata.cpp 第 514 行定义.

◆ makeRemoveGroupCustomizeData()

RibbonCustomizeData QxRibbon::RibbonCustomizeData::makeRemoveGroupCustomizeData ( const QString &  pageObjName,
const QString &  groupObjName 
)
static

在文件 ribboncustomizedata.cpp 第 487 行定义.

◆ makeRemovePageCustomizeData()

RibbonCustomizeData QxRibbon::RibbonCustomizeData::makeRemovePageCustomizeData ( const QString &  pageObjName)
static

在文件 ribboncustomizedata.cpp 第 470 行定义.

◆ makeRenameGroupCustomizeData()

RibbonCustomizeData QxRibbon::RibbonCustomizeData::makeRenameGroupCustomizeData ( const QString &  newName,
const QString &  pageObjName,
const QString &  groupObjName 
)
static

在文件 ribboncustomizedata.cpp 第 369 行定义.

◆ makeRenamePageCustomizeData()

RibbonCustomizeData QxRibbon::RibbonCustomizeData::makeRenamePageCustomizeData ( const QString &  newName,
const QString &  pageObjName 
)
static

在文件 ribboncustomizedata.cpp 第 353 行定义.

◆ makeVisiblePageCustomizeData()

RibbonCustomizeData QxRibbon::RibbonCustomizeData::makeVisiblePageCustomizeData ( const QString &  pageObjName,
bool  isShow 
)
static

RibbonCustomizeData::makeVisiblePageCustomizeData

参数
pageObjName
isShow
返回

在文件 ribboncustomizedata.cpp 第 541 行定义.

◆ setActionsManager()

void QxRibbon::RibbonCustomizeData::setActionsManager ( RibbonActionsManager *  mgr)

在文件 ribboncustomizedata.cpp 第 285 行定义.

◆ setActionType()

void QxRibbon::RibbonCustomizeData::setActionType ( RibbonCustomizeData::ActionType  a)

设置CustomizeData的action type

参数
a

在文件 ribboncustomizedata.cpp 第 70 行定义.

◆ setCanCustomize()

void QxRibbon::RibbonCustomizeData::setCanCustomize ( QObject *  obj,
bool  canbe = true 
)
static

在文件 ribboncustomizedata.cpp 第 566 行定义.

◆ simplify()

QList< RibbonCustomizeData > QxRibbon::RibbonCustomizeData::simplify ( const QList< RibbonCustomizeData > &  csd)
static

对QList<RibbonCustomizeData>进行简化操作

此函数会执行如下操作: 1、针对同一个元素出现添加和删除操作的进行移除(先添加,后删除) 2、针对VisiblePageActionType,对于多次出现的操作只保留最后一步 3、针对RenamePageActionType和RenameGroupActionType操作,先只保留最后一个,然后直接修改 4、针对连续的ChangePageOrderActionType,ChangeGroupOrderActionType,ChangeActionOrderActionType进行合并为一个动作, 如果合并后原地不动,则删除

参数
csd
返回
返回简化的QList<RibbonCustomizeData>

首先针对添加和删除操作进行优化

筛选VisiblePageActionType,对于多次出现的操作只保留最后一步

针对RenamePageActionType和RenameGroupActionType操作,只需保留最后一个

对于RenamePageActionType和RenameGroupActionType操作,直接修改,不留到apply时

针对连续的ChangePageOrderActionType,ChangeGroupOrderActionType,ChangeActionOrderActionType进行合并

上一步操作可能会产生indexvalue为0的情况,此操作把indexvalue为0的删除

在文件 ribboncustomizedata.cpp 第 584 行定义.

类成员变量说明

◆ actionRowProportionValue

RibbonGroup::RowProportion QxRibbon::RibbonCustomizeData::actionRowProportionValue

在文件 ribboncustomizedata.h 第 141 行定义.

◆ groupObjNameValue

QString QxRibbon::RibbonCustomizeData::groupObjNameValue

记录groupObjName,ribbon的Customize索引大部分基于objname

行的占比,ribbon中有large,medium和small三种占比,见 RibbonGroup::RowProportion

在文件 ribboncustomizedata.h 第 138 行定义.

◆ indexValue

int QxRibbon::RibbonCustomizeData::indexValue

记录顺序的参数

在actionType==AddPageActionType时,此参数记录Page的insert位置, 在actionType==AddGroupActionType时,此参数记录group的insert位置, 在actionType==AddActionActionType时,此参数记录group的insert位置

在文件 ribboncustomizedata.h 第 119 行定义.

◆ keyValue

QString QxRibbon::RibbonCustomizeData::keyValue

记录标题、索引等参数

在actionType==AddPageActionType时,key为page标题, 在actionType==AddGroupActionType时,key为group标题, 在actionType==AddActionActionType时,key为action的查询依据,基于RibbonActionsManager::action查询

在文件 ribboncustomizedata.h 第 128 行定义.

◆ pageObjNameValue

QString QxRibbon::RibbonCustomizeData::pageObjNameValue

记录pageObjName,用于定位Page

在文件 ribboncustomizedata.h 第 133 行定义.


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