Version: 6.3.1
Data Structures | Public Types | Signals | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Types | Private Slots | Private Member Functions | Private Attributes

QtxPopupMgr Class Reference

Popup menu manager. More...

#include <QtxPopupMgr.h>

Inheritance diagram for QtxPopupMgr:
Inheritance graph

Data Structures

class  PopupCreator
 Popup menu actions creator. More...

Public Types

enum  RuleType { VisibleRule, EnableRule, ToggleRule }
 

Menu item rule type.

More...

Signals

void menuAboutToShow (QMenu *)
 Emitted when the menu is about to be shown.
void menuAboutToHide (QMenu *)
 Emitted when the menu is about to be hidden.

Public Member Functions

 QtxPopupMgr (QObject *=0)
 Constructor.
 QtxPopupMgr (QMenu *, QObject *=0)
 Constructor.
virtual ~QtxPopupMgr ()
 Destructor.
int insertAction (const int, const int, const QString &, const RuleType=VisibleRule)
 Insert action to the popup menu manager.
int insertAction (QAction *, const int, const QString &, const RuleType=VisibleRule)
 Insert action to the popup menu manager.
virtual int registerAction (QAction *, const int, const QString &rule, const RuleType=VisibleRule)
 Register an action and return its identifier.
virtual void unRegisterAction (const int)
 Unregister action from internal map.
virtual bool isVisible (const int actId, const int place) const
 Check if the menu item is visible.
QString rule (QAction *, const RuleType=VisibleRule) const
 Get rule of type type for the action a.
QString rule (const int, const RuleType=VisibleRule) const
 Get rule of type type for the action id.
void setRule (QAction *, const QString &, const RuleType=VisibleRule)
 Set rule of type type for the action a.
void setRule (const int, const QString &, const RuleType=VisibleRule)
 Set rule of type type for the action id.
bool hasRule (QAction *, const RuleType=VisibleRule) const
bool hasRule (const int, const RuleType=VisibleRule) const
QtxPopupSelectionselection () const
 Get selection.
void setSelection (QtxPopupSelection *)
 Set selection.
QMenumenu () const
 Get popup menu.
void setMenu (QMenu *)
 Get popup menu.
void updateMenu ()
 Update popup according to the current selection.
virtual bool load (const QString &, QtxActionMgr::Reader &)
 Load actions description from the file.
QWidgetmenuWidget () const
 Get the menu widget.
virtual void setVisible (const int, const int, const bool)
 Set action's visibility flag.
int insert (const int, const QString &, const int, const int=-1)
 Insert action to the menu.
int insert (QAction *, const QString &, const int, const int=-1)
 Insert action to the menu.
int insert (const int, const QStringList &, const int, const int=-1)
 Insert action to the menu.
int insert (QAction *, const QStringList &, const int, const int=-1)
 Insert action to the menu.
virtual int insert (const int, const int, const int, const int=-1)
 Insert action to the menu.
int insert (QAction *, const int, const int, const int=-1)
 Insert action to the menu.
int insert (const QString &, const QString &, const int, const int=-1, const int=-1)
 Create and insert menu item action to the menu.
int insert (const QString &, const QStringList &, const int, const int=-1, const int=-1)
 Create and insert menu item action to the menu.
virtual int insert (const QString &, const int, const int, const int=-1, const int=-1)
 Create and insert menu item action to the menu.
int append (const int, const int, const int)
 Create and add menu item action to the end of menu.
int append (QAction *, const int, const int)
 Create and add menu item action to the end of menu.
int append (const QString &, const int, const int, const int=-1)
 Create and add menu item action to the end of menu.
int prepend (const int, const int, const int)
 Create and add menu item action to the beginning of menu.
int prepend (QAction *, const int, const int)
 Create and add menu item action to the beginning of menu.
int prepend (const QString &, const int, const int, const int=-1)
 Create and add menu item action to the beginning of menu.
void remove (const int)
 Remove menu item with given id.
void remove (const int, const int, const int=-1)
 Remove menu item with given id.
void show (const int)
 Show menu item with given id.
void hide (const int)
 Hide menu item with given id.
bool isShown (const int) const
 Get visibility status for menu item with given id.
void setShown (const int, const bool)
 Set visibility status for menu item with given id.
virtual void change (const int, const QString &)
 Change menu title for the action with given id.
bool containsMenu (const QString &, const int, const bool=false) const
 Check if the parent menu contains menu item with given title.
bool containsMenu (const int, const int, const bool=false) const
 Check if the parent menu contains menu item with given id.
QMenufindMenu (const int) const
 Get menu by the specified identifier.
QMenufindMenu (const QString &, const int, const bool=false) const
 Get menu by the title.
bool isEmptyEnabled (const int) const
 Check if empty menu is enabled.
void setEmptyEnabled (const int, const bool)
 Enable/disable empty menu.
virtual int registerAction (QAction *, const int=-1)
 Register an action in the internal map.
QActionaction (const int) const
 Get action by specified identifier.
int actionId (const QAction *) const
 Get action identifier.
bool contains (const int) const
 Check if an action with given id is registered in the action manager.
int count () const
 Get total number of registered actions.
bool isEmpty () const
 Check if there are no actions registered in the action manager.
QIntList idList () const
 Get all registered actions identifiers.
bool isUpdatesEnabled () const
 Check if update is enabled.
virtual void setUpdatesEnabled (const bool)
 Enable/disable update operation.
void update ()
 Update actions.
virtual bool isEnabled (const int) const
 Check is action with given id is enabled.
virtual void setEnabled (const int, const bool)

Static Public Member Functions

static QActionseparator (const bool=false)
 Create new separator action.

Protected Member Functions

virtual void internalUpdate ()
 Perform internal update of the popup menu according to the current selection.
void setParameters (QtxEvalParser *, QStringList &) const
 Fill the parser with parameters of the expression.
virtual bool isSatisfied (QAction *, const RuleType=VisibleRule) const
 Check the rule for the action.
QtxEvalExprexpression (QAction *, const RuleType=VisibleRule, const bool=false) const
 Get an syntax expression for the action according to the specified rule type.
void setMenuWidget (QWidget *)
 Assign new menu widget to the menu manager.
MenuNodefind (const int, const int, const bool=true) const
 Search menu node.
MenuNodefind (const int, MenuNode *=0, const bool=true) const
 Search menu node.
bool find (const int, NodeList &, MenuNode *=0) const
 Search recursively all menu nodes with given id.
MenuNodefind (const QString &, const int, const bool=true) const
 Search menu node.
MenuNodefind (const QString &, MenuNode *=0, const bool=true) const
 Search menu node.
bool find (const QString &, NodeList &, MenuNode *=0) const
 Search recursively all menu nodes with given title.
int findId (const int, const int=-1) const
 Find menu item by given ID (one-level only).
void removeMenu (const int, MenuNode *)
 Removes menu node (with all its children).
QActionitemAction (const int) const
 Get action by id.
QActionmenuAction (const int) const
 Get submenu action by id.
int menuActionId (QAction *) const
 Get submenu action by id.
void updateMenu (MenuNode *=0, const bool=true, const bool=true)
 Update menu.
virtual void updateContent ()
 Called when delayed content update is performed.
void triggerUpdate ()
 Perform delayed update.
int generateId () const
 Generate unique action identifier.

Private Types

typedef QMap< RuleType,
QtxEvalExpr * > 
ExprMap
typedef QMap< QAction *, ExprMapRuleMap
typedef QMap< QString, QVariant > CacheMap

Private Slots

void onSelectionDestroyed (QObject *)
 Called when selection is destroyed.

Private Member Functions

bool result (QtxEvalParser *p) const
 Calculate an expression.
QVariant parameter (const QString &, const int=-1) const

Private Attributes

RuleMap myRules
CacheMap myCache
QtxPopupSelectionmySelection

Detailed Description

Menu manager allows using of set of action for automatic generating of application context popup menu by reuquest and dynamic update of its contents.

Use insert() methods to add menu items to the popup menu.

The visibility, enable and toggle state of the menu item is controlled by the syntaxic rules, which can be set with setRule() methods. The rules are parsed automatically with help of QtxEvalParser class.

QtxPopupSelection class is used as back-end for getting value of each parameter found in the rule by the expression parser. Use setSelection() and selection() to set/get the selection instance for the popup menu manager.

Popup menu manager automatically optimizes the menu by removing extra separators, hiding empty popup submenus etc.


Member Typedef Documentation

typedef QMap<RuleType, QtxEvalExpr*> QtxPopupMgr.ExprMap [private]
typedef QMap<QAction*, ExprMap> QtxPopupMgr.RuleMap [private]
typedef QMap<QString, QVariant> QtxPopupMgr.CacheMap [private]

Member Enumeration Documentation

Enumerator:
VisibleRule 

menu item visibility state

EnableRule 

menu item enable state

ToggleRule 

menu item toggle state


Constructor & Destructor Documentation

QtxPopupMgr::QtxPopupMgr ( QObject parent = 0)
Parameters:
objectparent object
QtxPopupMgr::QtxPopupMgr ( QMenu popup,
QObject parent = 0 
)
Parameters:
popuppopup menu
objectparent object
QtxPopupMgr::~QtxPopupMgr ( ) [virtual]

Member Function Documentation

int QtxPopupMgr::insertAction ( const int  id,
const int  pId,
const QString &  rule,
const RuleType  ruleType = VisibleRule 
)
Parameters:
idaction ID
pIdparent menu action ID
rulesyntax rule
ruleTyperule type (QtxPopupMgr.RuleType)
Returns:
action ID

References QtxActionMgr.action(), QtxActionMenuMgr.insert(), and setRule().

int QtxPopupMgr::insertAction ( QAction a,
const int  pId,
const QString &  rule,
const RuleType  ruleType = VisibleRule 
)
Parameters:
aaction
pIdparent menu action ID
rulesyntax rule
ruleTyperule type (QtxPopupMgr.RuleType)
Returns:
action ID

References QtxActionMenuMgr.insert(), and setRule().

int QtxPopupMgr::registerAction ( QAction act,
const int  id,
const QString &  rule,
const RuleType  ruleType = VisibleRule 
) [virtual]

If id is less than 0, the identifier for the action is generated automatically. If action with given id is already registered, it will be re-registered. If required id is already in use, new identifier is generatied; in this case returning value will different from required one.

Parameters:
actaction to be registered
idaction ID
rulesyntax rule
ruleTyperule type (QtxPopupMgr.RuleType)
Returns:
action ID (the same as id or generated one)

References setRule().

void QtxPopupMgr::unRegisterAction ( const int  id) [virtual]
Parameters:
idaction ID

Reimplemented from QtxActionMgr.

References test_table.a, QtxActionMgr.action(), and myRules.

bool QtxPopupMgr::isVisible ( const int  id,
const int  place 
) const [virtual]
Parameters:
idaction ID
placesome parent action ID
Returns:
true if the action is visible

Reimplemented from QtxActionMenuMgr.

References QtxActionMgr.action(), hasRule(), and isSatisfied().

QString QtxPopupMgr::rule ( QAction a,
const RuleType  ruleType = VisibleRule 
) const
Parameters:
aaction
ruleTyperule type (QtxPopupMgr.RuleType)
Returns:
rule of required type

References QtxEvalExpr.expression(), and expression().

QString QtxPopupMgr::rule ( const int  id,
const RuleType  ruleType = VisibleRule 
) const
Parameters:
idaction ID
ruleTyperule type (QtxPopupMgr.RuleType)
Returns:
rule of required type

References QtxActionMgr.action(), and rule().

void QtxPopupMgr::setRule ( QAction a,
const QString &  rule,
const RuleType  ruleType = VisibleRule 
)
Parameters:
aaction
rulerule
ruleTyperule type (QtxPopupMgr.RuleType)
Returns:
rule of required type

References expression(), and QtxEvalExpr.setExpression().

void QtxPopupMgr::setRule ( const int  id,
const QString &  rule,
const RuleType  ruleType = VisibleRule 
)
Parameters:
idaction ID
rulerule
ruleTyperule type (QtxPopupMgr.RuleType)
Returns:
rule of required type

References QtxActionMgr.action(), and setRule().

bool QtxPopupMgr::hasRule ( QAction a,
const RuleType  t = VisibleRule 
) const
Returns:
true if action has rule of given type
Parameters:
a- action
t- rule type

References expression().

bool QtxPopupMgr::hasRule ( const int  id,
const RuleType  t = VisibleRule 
) const
Returns:
true if action with given id has rule of given type
Parameters:
id- action id
t- rule type

References QtxActionMgr.action(), and hasRule().

QtxPopupSelection * QtxPopupMgr::selection ( ) const
Returns:
current selection object

References mySelection.

void QtxPopupMgr::setSelection ( QtxPopupSelection sel)
Parameters:
selnew selection object

References mySelection, onSelectionDestroyed(), and QtxActionMgr.triggerUpdate().

QMenu * QtxPopupMgr::menu ( ) const
Returns:
popup menu

References QtxActionMenuMgr.menuWidget().

void QtxPopupMgr::setMenu ( QMenu menu)
Parameters:
menupopup menu

References QtxActionMenuMgr.setMenuWidget().

void QtxPopupMgr::updateMenu ( )

References internalUpdate().

bool QtxPopupMgr::load ( const QString &  fname,
QtxActionMgr::Reader r 
) [virtual]
Parameters:
fnamefile name
raction reader
Returns:
true on success and false on error

Reimplemented from QtxActionMenuMgr.

References QtxActionMgr.Reader.read().

void QtxPopupMgr::internalUpdate ( ) [protected, virtual]

Reimplemented from QtxActionMenuMgr.

References isSatisfied(), myCache, myRules, and ToggleRule.

void QtxPopupMgr::setParameters ( QtxEvalParser p,
QStringList &  specific 
) const [protected]

The values of the parameters are given from the selection object (QtxPopupSelection).

Parameters:
pexpression parser
returninglist of parameters names which are not retrieved from the selection
See also:
selection()

References mySelection, parameter(), QtxEvalParser.parameters(), and QtxEvalParser.setParameter().

bool QtxPopupMgr::isSatisfied ( QAction act,
const RuleType  ruleType = VisibleRule 
) const [protected, virtual]
Parameters:
actaction
ruleTyperule type (QtxPopupMgr.RuleType)
Returns:
true if current selection satisfies the action rule

References test_table.c, QtxEvalParser.clearParameters(), QtxPopupSelection.count(), expression(), mySelection, parameter(), QtxEvalExpr.parser(), result(), QtxEvalParser.setParameter(), and setParameters().

QtxEvalExpr * QtxPopupMgr::expression ( QAction a,
const RuleType  ruleType = VisibleRule,
const bool  create = false 
) const [protected]
Parameters:
aaction
ruleTyperule type (QtxPopupMgr.RuleType)
createif true an expression does not exist, create it
Returns:
syntax expression

References test_table.a, and myRules.

bool QtxPopupMgr::result ( QtxEvalParser p) const [private]
Parameters:
pexpression parser
Returns:
true if parser has finished work without errors

References QtxEvalParser.calculate(), QtxEvalParser.error(), and QtxEvalExpr.OK.

QVariant QtxPopupMgr::parameter ( const QString &  name,
const int  idx = -1 
) const [private]
void QtxPopupMgr::onSelectionDestroyed ( QObject o) [private, slot]

Prevents crashes when the selection object is destroyed outside the popup manager.

Parameters:
oselection object being destroyed

References mySelection.

QWidget * QtxActionMenuMgr::menuWidget ( ) const [inherited]
Returns:
menu widget (QMenuBar)

References QtxActionMenuMgr.myMenu.

void QtxActionMenuMgr::setVisible ( const int  actId,
const int  place,
const bool  v 
) [virtual, inherited]
Parameters:
actIdaction ID
placesome parent action ID
vnew visibility state
See also:
isVisible()

Reimplemented from QtxActionMgr.

References QtxActionMenuMgr.find(), and QtxActionMenuMgr.MenuNode.visible.

int QtxActionMenuMgr::insert ( const int  id,
const QString &  menus,
const int  group,
const int  idx = -1 
) [inherited]

Insert an action to the named menu. The menus parameter represents the menu name: it can be a sequence of strings, separated by '|' symbol. For example, "File|Edit" means File->Edit submenu. If submenu doesn't exist, it will be created.

Parameters:
idaction ID
menusmenu name
groupgroup ID
idxmenu index inside the menu group
Returns:
action ID
int QtxActionMenuMgr::insert ( QAction a,
const QString &  menus,
const int  group,
const int  idx = -1 
) [inherited]

Insert an action to the named menu. The menus parameter represents the menu name: it can be a sequence of strings, separated by '|' symbol. For example, "File|Edit" means File->Edit submenu. If submenu doesn't exist, it will be created.

Parameters:
aaction
menusmenu name
groupgroup ID
idxmenu index inside the menu group
Returns:
action ID

References QtxActionMenuMgr.insert().

int QtxActionMenuMgr::insert ( const int  id,
const QStringList &  menus,
const int  group,
const int  idx = -1 
) [inherited]

Insert an action to the named menu. The menus parameter represents the menu names list. For example, string list consisting from two items "File" and "Edit" means File->Edit submenu. If submenu doesn't exist, it will be created.

Parameters:
idaction ID
menusmenu names list
groupgroup ID
idxmenu index inside the menu group
Returns:
action ID

References QtxActionMenuMgr.createMenu(), and QtxActionMenuMgr.insert().

int QtxActionMenuMgr::insert ( QAction a,
const QStringList &  menus,
const int  group,
const int  idx = -1 
) [inherited]

Insert an action to the named menu. The menus parameter represents the menu names list. For example, string list consisting from two items "File" and "Edit" means File->Edit submenu. If submenu doesn't exist, it will be created.

Parameters:
aaction
menusmenu names list
groupgroup ID
idxmenu index inside the menu group
Returns:
action ID

References QtxActionMenuMgr.createMenu(), and QtxActionMenuMgr.insert().

int QtxActionMenuMgr::insert ( const int  id,
const int  pId,
const int  group,
const int  idx = -1 
) [virtual, inherited]
Parameters:
idaction ID
pIdparent menu action ID
groupgroup ID
idxmenu index inside the menu group
Returns:
action ID

References QtxActionMenuMgr.find(), QtxActionMenuMgr.MenuNode.id, QtxActionMenuMgr.myRoot, and QtxActionMgr.triggerUpdate().

int QtxActionMenuMgr::insert ( QAction a,
const int  pId,
const int  group,
const int  idx = -1 
) [inherited]
Parameters:
aaction
pIdparent menu action ID
groupgroup ID
idxmenu index inside the menu group
Returns:
action ID

References QtxActionMenuMgr.insert(), and QtxActionMgr.registerAction().

int QtxActionMenuMgr::insert ( const QString &  title,
const QString &  menus,
const int  group,
const int  id = -1,
const int  idx = -1 
) [inherited]

Insert an action to the named menu. The menus parameter represents the menu name: it can be a sequence of strings, separated by '|' symbol. For example, "File|Edit" means File->Edit submenu. If submenu doesn't exist, it will be created.

Parameters:
titlemenu text
menusmenu name
groupgroup ID
idaction ID
idxmenu index inside the menu group
Returns:
action ID

References QtxActionMenuMgr.insert().

int QtxActionMenuMgr::insert ( const QString &  title,
const QStringList &  menus,
const int  group,
const int  id = -1,
const int  idx = -1 
) [inherited]

Insert an action to the named menu. The menus parameter represents the menu names list. For example, string list consisting from two items "File" and "Edit" means File->Edit submenu. If submenu doesn't exist, it will be created.

Parameters:
titlemenu text
menusmenu names list
groupgroup ID
idaction ID
idxmenu index inside the menu group
Returns:
action ID

References QtxActionMenuMgr.createMenu(), and QtxActionMenuMgr.insert().

int QtxActionMenuMgr::insert ( const QString &  title,
const int  pId,
const int  group,
const int  id = -1,
const int  idx = -1 
) [virtual, inherited]
int QtxActionMenuMgr::append ( const int  id,
const int  pId,
const int  group 
) [inherited]
Parameters:
idaction ID
pIdparent menu action ID
groupgroup ID
Returns:
action ID

References QtxActionMenuMgr.insert().

int QtxActionMenuMgr::append ( QAction a,
const int  pId,
const int  group 
) [inherited]
Parameters:
aaction
pIdparent menu action ID
groupgroup ID
Returns:
action ID

References QtxActionMenuMgr.insert().

int QtxActionMenuMgr::append ( const QString &  title,
const int  pId,
const int  group,
const int  id = -1 
) [inherited]
Parameters:
titlemenu text
pIdparent menu action ID
groupgroup ID
idaction ID
Returns:
action ID

References QtxActionMenuMgr.insert().

int QtxActionMenuMgr::prepend ( const int  id,
const int  pId,
const int  group 
) [inherited]
Parameters:
idaction ID
pIdparent menu action ID
groupgroup ID
Returns:
action ID

References QtxActionMenuMgr.insert().

int QtxActionMenuMgr::prepend ( QAction a,
const int  pId,
const int  group 
) [inherited]
Parameters:
aaction
pIdparent menu action ID
groupgroup ID
Returns:
action ID

References QtxActionMenuMgr.insert().

int QtxActionMenuMgr::prepend ( const QString &  title,
const int  pId,
const int  group,
const int  id = -1 
) [inherited]
Parameters:
titlemenu text
pIdparent menu action ID
groupgroup ID
idaction ID
Returns:
action ID

References QtxActionMenuMgr.insert().

void QtxActionMenuMgr::remove ( const int  id) [inherited]
Parameters:
idmenu action ID

References QtxActionMenuMgr.removeMenu(), and QtxActionMgr.update().

void QtxActionMenuMgr::remove ( const int  id,
const int  pId,
const int  group = -1 
) [inherited]
void QtxActionMenuMgr::show ( const int  id) [inherited]
Parameters:
idmenu action ID
See also:
hide()

References QtxActionMenuMgr.setShown().

void QtxActionMenuMgr::hide ( const int  id) [inherited]
Parameters:
idmenu action ID
See also:
show()

References QtxActionMenuMgr.setShown().

bool QtxActionMenuMgr::isShown ( const int  id) const [inherited]
Parameters:
idmenu action ID
Returns:
true if an item is shown
See also:
setShown()

References QtxActionMenuMgr.find(), and QtxActionMenuMgr.MenuNode.visible.

void QtxActionMenuMgr::setShown ( const int  id,
const bool  on 
) [inherited]
Parameters:
idmenu action ID
onnew visibility status
See also:
isShown()

References QtxActionMenuMgr.find(), QtxActionMenuMgr.MenuNode.id, QtxActionMenuMgr.myRoot, and QtxActionMgr.triggerUpdate().

void QtxActionMenuMgr::change ( const int  id,
const QString &  title 
) [virtual, inherited]
Parameters:
idmenu action ID
titlenew menu title

References test_table.a, and QtxActionMenuMgr.menuAction().

bool QtxActionMenuMgr::containsMenu ( const QString &  title,
const int  pid,
const bool  rec = false 
) const [inherited]
Parameters:
titlemenu title
pidparent menu item ID
Returns:
true if parent menu item contains such child item

References QtxActionMenuMgr.find().

bool QtxActionMenuMgr::containsMenu ( const int  id,
const int  pid,
const bool  rec = false 
) const [inherited]
Parameters:
idmenu item ID
pidparent menu item ID
Returns:
true if parent menu item contains such child item

References QtxActionMenuMgr.find().

QMenu * QtxActionMenuMgr::findMenu ( const int  id) const [inherited]
Parameters:
idmenu item ID
Returns:
menu pointer or 0 if menu is not found

References test_table.a, and QtxActionMenuMgr.menuAction().

QMenu * QtxActionMenuMgr::findMenu ( const QString &  title,
const int  pid,
const bool  rec = false 
) const [inherited]
Parameters:
titlemenu text
pidparent menu item ID (to start search)
recif true, perform recursive update
Returns:
menu pointer or 0 if menu is not found

References test_table.a, QtxActionMenuMgr.find(), QtxActionMenuMgr.MenuNode.id, and QtxActionMenuMgr.menuAction().

bool QtxActionMenuMgr::isEmptyEnabled ( const int  id) const [inherited]
Parameters:
idmenu item ID
Returns:
true if empty menu is enabled

References QtxActionMenuMgr.MenuNode.emptyEnabled, QtxActionMenuMgr.find(), and QtxActionMenuMgr.menuAction().

void QtxActionMenuMgr::setEmptyEnabled ( const int  id,
const bool  enable 
) [inherited]
Parameters:
idmenu item ID
enableif true, empty menu will be enabled, otherwise empty menu will be disabled

References QtxActionMenuMgr.MenuNode.emptyEnabled, QtxActionMenuMgr.find(), QtxActionMenuMgr.menuAction(), and QtxActionMenuMgr.updateMenu().

void QtxActionMenuMgr::menuAboutToShow ( QMenu m) [signal, inherited]
Parameters:
mmenu being shown
void QtxActionMenuMgr::menuAboutToHide ( QMenu m) [signal, inherited]
Parameters:
mmenu being hidden
void QtxActionMenuMgr::setMenuWidget ( QWidget mw) [protected, inherited]
QtxActionMenuMgr::MenuNode * QtxActionMenuMgr::find ( const int  id,
const int  pId,
const bool  rec = true 
) const [protected, inherited]
Parameters:
idmenu action ID
pIdparent menu item ID
recif true perform recursive search
Returns:
menu node or 0 if it is not found
QtxActionMenuMgr::MenuNode * QtxActionMenuMgr::find ( const int  id,
MenuNode startNode = 0,
const bool  rec = true 
) const [protected, inherited]
Parameters:
idmenu action ID
startNodestart menu node (if 0, search from root node)
recif true perform recursive search
Returns:
menu node or 0 if it is not found

References QtxActionMenuMgr.MenuNode.children, QtxActionMenuMgr.find(), and QtxActionMenuMgr.myRoot.

bool QtxActionMenuMgr::find ( const int  id,
NodeList lst,
MenuNode startNode = 0 
) const [protected, inherited]
Parameters:
idmenu action ID
NodeListresulting list of menu nodes
startNodestart menu node (if 0, search from root node)
Returns:
true if at least one node is found

References QtxActionMenuMgr.MenuNode.children, QtxActionMenuMgr.find(), QtxActionMenuMgr.MenuNode.id, and QtxActionMenuMgr.myRoot.

QtxActionMenuMgr::MenuNode * QtxActionMenuMgr::find ( const QString &  title,
const int  pId,
const bool  rec = true 
) const [protected, inherited]
Parameters:
titlemenu item title
pIdparent menu item ID
recif true perform recursive search
Returns:
menu node or 0 if it is not found

References QtxActionMenuMgr.find().

QtxActionMenuMgr::MenuNode * QtxActionMenuMgr::find ( const QString &  title,
MenuNode startNode = 0,
const bool  rec = true 
) const [protected, inherited]
Parameters:
titlemenu item title
startNodestart menu node (if 0, search from root node)
recif true perform recursive search
Returns:
menu node or 0 if it is not found

References test_table.a, QtxActionMenuMgr.MenuNode.children, QtxActionMenuMgr.clearTitle(), QtxActionMenuMgr.find(), QtxActionMenuMgr.itemAction(), QtxActionMenuMgr.menuAction(), and QtxActionMenuMgr.myRoot.

bool QtxActionMenuMgr::find ( const QString &  title,
NodeList lst,
MenuNode startNode = 0 
) const [protected, inherited]
Parameters:
titlemenu item title
NodeListresulting list of menu nodes
startNodestart menu node (if 0, search from root node)
Returns:
true if at least one node is found

References test_table.a, QtxActionMenuMgr.MenuNode.children, QtxActionMenuMgr.clearTitle(), QtxActionMenuMgr.find(), QtxActionMenuMgr.itemAction(), QtxActionMenuMgr.menuAction(), and QtxActionMenuMgr.myRoot.

int QtxActionMenuMgr::findId ( const int  id,
const int  pid = -1 
) const [protected, inherited]
Parameters:
idmenu action ID
pidparent meun item ID
Returns:
id (>0) on success or -1 if menu item is not found

References QtxActionMenuMgr.MenuNode.children, QtxActionMenuMgr.find(), and QtxActionMenuMgr.myRoot.

void QtxActionMenuMgr::removeMenu ( const int  id,
MenuNode startNode 
) [protected, inherited]
Parameters:
idmenu action ID
startNodeparent menu node which search starts from (if 0, search starts from root)

References QtxActionMenuMgr.MenuNode.children, and QtxActionMenuMgr.myRoot.

QAction * QtxActionMenuMgr::itemAction ( const int  id) const [protected, inherited]
Parameters:
idaction ID
Returns:
action or 0 if id is invalid

References QtxActionMgr.action().

QAction * QtxActionMenuMgr::menuAction ( const int  id) const [protected, inherited]
Parameters:
idsubmenu ID
Returns:
submenu action or 0 if action is not found

References test_table.a, and QtxActionMenuMgr.myMenus.

int QtxActionMenuMgr::menuActionId ( QAction a) const [protected, inherited]
Parameters:
idsubmenu ID
Returns:
submenu action or 0 if it is not found

References test_table.a, and QtxActionMenuMgr.myMenus.

void QtxActionMenuMgr::updateMenu ( MenuNode startNode = 0,
const bool  rec = true,
const bool  updParent = true 
) [protected, inherited]
void QtxActionMenuMgr::updateContent ( ) [protected, virtual, inherited]

Customizes the content update operation.

Reimplemented from QtxActionMgr.

References QtxActionMenuMgr.find(), QtxActionMenuMgr.myRoot, QtxActionMenuMgr.myUpdateIds, and QtxActionMenuMgr.updateMenu().

void QtxActionMgr::triggerUpdate ( ) [protected, inherited]
int QtxActionMgr::registerAction ( QAction a,
const int  userId = -1 
) [virtual, inherited]

If userId is less than 0, the identifier for the action is generated automatically. If action with given userId is already registered, it will be re-registered.

Parameters:
aaction to be registered
userIdaction ID
Returns:
action ID (the same as userId or generated one)
See also:
unRegisterAction()

References QtxActionMgr.actionId(), QtxActionMgr.contains(), QtxActionMgr.generateId(), QtxActionMgr.myActions, and QtxActionMgr.unRegisterAction().

QAction * QtxActionMgr::action ( const int  id) const [inherited]
Parameters:
idaction ID
Returns:
action (or 0 if id is invalid)
See also:
actionId()

References QtxActionMgr.contains(), and QtxActionMgr.myActions.

int QtxActionMgr::actionId ( const QAction a) const [inherited]
Parameters:
aaction
Returns:
action ID (or -1 if action is not found)
See also:
action()

References test_table.a, and QtxActionMgr.myActions.

bool QtxActionMgr::contains ( const int  id) const [inherited]
Parameters:
idaction ID
Returns:
true if internal map contains action with such identifier

References QtxActionMgr.myActions.

int QtxActionMgr::count ( ) const [inherited]
Returns:
number of actions in the internal map
See also:
isEmpty()

References QtxActionMgr.myActions.

bool QtxActionMgr::isEmpty ( ) const [inherited]
Returns:
true if internal map is empty
See also:
count()

References QtxActionMgr.myActions.

QIntList QtxActionMgr::idList ( ) const [inherited]
Returns:
list of actions identifiers

References QtxActionMgr.myActions.

bool QtxActionMgr::isUpdatesEnabled ( ) const [inherited]
Returns:
true if update is enabled
See also:
setUpdatesEnabled(), update()

References QtxActionMgr.myUpdate.

void QtxActionMgr::setUpdatesEnabled ( const bool  upd) [virtual, inherited]
Parameters:
updnew state
See also:
isUpdatesEnabled(), update()

References QtxActionMgr.myUpdate.

void QtxActionMgr::update ( ) [inherited]

Calls virtual function internalUpdate to update the contents. Does nothing if update is disabled.

See also:
setUpdatesEnabled(), isUpdatesEnabled(), internalUpdate()

References QtxActionMgr.internalUpdate(), QtxActionMgr.isUpdatesEnabled(), and QtxActionMgr.myUpdTimer.

bool QtxActionMgr::isEnabled ( const int  id) const [virtual, inherited]
Parameters:
idaction ID
Returns:
true if action is enabled

References test_table.a, and QtxActionMgr.action().

void QtxActionMgr::setEnabled ( const int  id,
const bool  enable 
) [virtual, inherited]

Enable/disable action with given id.

Parameters:
idaction ID
enablenew state

References test_table.a, and QtxActionMgr.action().

QAction * QtxActionMgr::separator ( const bool  own = false) [static, inherited]

If own is true, then the caller is responsible for the action destroying. If own is false, new separator action will be owned by the action manager which will destroy it on application exit.

Parameters:
ownownership flag
Returns:
new separator action

References test_table.a, and qtxSeparatorActionCleanup().

int QtxActionMgr::generateId ( ) const [protected, inherited]
Returns:
new ID

Field Documentation

Copyright © 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS