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

#include <SARibbonActionsManager.h>

类 SARibbonActionsManager 继承关系图:

class  PrivateData
 

Public 类型

enum  ActionTag {
  UnknowActionTag = 0 , CommonlyUsedActionTag = 0x01 , NotInFunctionalAreaActionTag = 0x02 , AutoCategoryDistinguishBeginTag = 0x1000 ,
  AutoCategoryDistinguishEndTag = 0x2000 , NotInRibbonCategoryTag = 0x2001 , UserDefineActionTag = 0x8000
}
 Action tag definition 更多...
 

信号

void actionTagChanged (int tag, bool isdelete)
 

Public 成员函数

 SARibbonActionsManager (SARibbonBar *bar)
 Constructor
 
 ~SARibbonActionsManager ()
 Destructor
 
void setTagName (int tag, const QString &name)
 Set tag name
 
QString tagName (int tag) const
 Get tag name
 
void removeTag (int tag)
 Remove tag, note this function is time-consuming
 
bool registeAction (QAction *act, int tag, const QString &key=QString(), bool enableEmit=true)
 Register action
 
void unregisteAction (QAction *act, bool enableEmit=true)
 Unregister action
 
QList< QAction * > & filter (int tag)
 Filter actions by tag, returns a reference
 
QList< QAction * > & actions (int tag)
 Get actions by tag
 
const QList< QAction * > actions (int tag) const
 Get actions by tag (const version)
 
QList< int > actionTags () const
 Get all tags
 
QAction * action (const QString &key) const
 Get action by key
 
QString key (QAction *act) const
 Get key by action
 
int count () const
 Get count of all managed actions
 
QList< QAction * > allActions () const
 Get all managed actions
 
QMap< int, SARibbonCategory * > autoRegisteActions (SARibbonBar *bar)
 Auto register actions from SARibbonBar, returns tag-to-category mapping
 
QSet< QAction * > autoRegisteWidgetActions (QWidget *w, int tag, bool enableEmit=false)
 Auto register widget actions
 
QList< QAction * > search (const QString &text)
 Search actions by text
 
void clear ()
 Clear all
 

友元

class SARibbonActionsManagerModel
 

详细描述

成员枚举类型说明

◆ ActionTag

Action tag definition

枚举值
UnknowActionTag 

Unknown tag

CommonlyUsedActionTag 

Preset tag - commonly used commands

NotInFunctionalAreaActionTag 

Preset tag - commands not in functional area

AutoCategoryDistinguishBeginTag 

Auto category distinguish begin tag

AutoCategoryDistinguishEndTag 

Auto category distinguish end tag

NotInRibbonCategoryTag 

Tag for actions not in ribbon category

UserDefineActionTag 

User defined tag, all custom tags should be greater than this

构造及析构函数说明

◆ SARibbonActionsManager()

SARibbonActionsManager::SARibbonActionsManager ( SARibbonBar bar)
explicit

Constructor

◆ ~SARibbonActionsManager()

SARibbonActionsManager::~SARibbonActionsManager ( )

Destructor

成员函数说明

◆ action()

QAction * SARibbonActionsManager::action ( const QString &  key) const

Get action by key

◆ actions() [1/2]

QList< QAction * > & SARibbonActionsManager::actions ( int  tag)

Get actions by tag

◆ actions() [2/2]

const QList< QAction * > SARibbonActionsManager::actions ( int  tag) const

Get actions by tag (const version)

◆ actionTagChanged

void SARibbonActionsManager::actionTagChanged ( int  tag,
bool  isdelete 
)
signal

◆ actionTags()

QList< int > SARibbonActionsManager::actionTags ( ) const

Get all tags

◆ allActions()

QList< QAction * > SARibbonActionsManager::allActions ( ) const

Get all managed actions

◆ autoRegisteActions()

QMap< int, SARibbonCategory * > SARibbonActionsManager::autoRegisteActions ( SARibbonBar bar)

Auto register actions from SARibbonBar, returns tag-to-category mapping

自动加载SARibbonBar的action 此函数会遍历SARibbonBar的父窗口(一般是SARibbonMainWindow)下的所有子object,找到action注册, 并会遍历所有SARibbonCategory,把SARibbonCategory下的action按SARibbonCategory的title name进行分类

此函数会把所有category下的action生成tag并注册,返回的QMap<int, SARibbonCategory *>是记录了category对应的tag

此函数还会把SARibbonBar的父窗口(一般是SARibbonMainWindow)下面的action,但不在任何一个category下的作为NotInRibbonCategoryTag标签注册,默认名字会赋予not in ribbon, 可以通过setTagName 改变

参数
w
返回
注解
此函数的调用最好在category设置了标题后调用,因为会以category的标题作为标签的命名

◆ autoRegisteWidgetActions()

QSet< QAction * > SARibbonActionsManager::autoRegisteWidgetActions ( QWidget *  w,
int  tag,
bool  enableEmit = false 
)

Auto register widget actions

自动加载action

参数
w
tag
enableEmit
返回
返回成功加入SARibbonActionsManager管理的action

◆ count()

int SARibbonActionsManager::count ( ) const

Get count of all managed actions

◆ filter()

QList< QAction * > & SARibbonActionsManager::filter ( int  tag)

Filter actions by tag, returns a reference

◆ key()

QString SARibbonActionsManager::key ( QAction *  act) const

Get key by action

◆ registeAction()

bool SARibbonActionsManager::registeAction ( QAction *  act,
int  tag,
const QString &  key = QString(),
bool  enableEmit = true 
)

Register action

◆ removeTag()

void SARibbonActionsManager::removeTag ( int  tag)

Remove tag, note this function is time-consuming

◆ search()

QList< QAction * > SARibbonActionsManager::search ( const QString &  text)

Search actions by text

根据标题查找action

参数
text
返回

◆ setTagName()

void SARibbonActionsManager::setTagName ( int  tag,
const QString &  name 
)

Set tag name

◆ tagName()

QString SARibbonActionsManager::tagName ( int  tag) const

Get tag name

◆ unregisteAction()

void SARibbonActionsManager::unregisteAction ( QAction *  act,
bool  enableEmit = true 
)

Unregister action


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