VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
makVrf::DtVrfRightClickContextHandler Class Reference

The menu assembler and configuration were combined into one class for convenience. Most users won't really notice this or care.

Inheritance diagram for makVrf::DtVrfRightClickContextHandler:
Inheritance graph
[legend]

Public Member Functions

 DtVrfRightClickContextHandler (makVrv::DtDe &de)
 
virtual ~DtVrfRightClickContextHandler ()
 
virtual void addContext (std::string contextName, DtVrfRightClickContextFunc func)
 
virtual void removeContext (std::string contextName)
 
virtual void setDefaultContext (std::string contextName)
 
virtual void setCurrentContext (std::string contextName)
 
virtual void resetContext ()
 
virtual std::string currentContext ()
 
virtual std::string defaultContext ()
 
virtual void addMenuPath (const makVrv::DtMenuPath &path, const makVrv::DtMenuConfiguration::MenuSortFlags &sortFlagsIfMenu=(makVrv::DtMenuConfiguration::MenuSortFlags)(makVrv::DtMenuConfiguration::SortAllAlphabetically|makVrv::DtMenuConfiguration::SortWithinSubmenus|makVrv::DtMenuConfiguration::SortBetweenSeparators))
 
virtual void removeMenuPath (const makVrv::DtMenuPath &)
 
virtual void addMenuPathAfter (const makVrv::DtMenuPath &newPath, const makVrv::DtMenuPath &relativeTo)
 
virtual void addMenuPathBefore (const makVrv::DtMenuPath &newPath, const makVrv::DtMenuPath &relativeTo)
 
virtual void registerMenu (makVrv::DtMenu *menu)
 
virtual void unregisterMenu (makVrv::DtMenu *menu)
 
virtual void registerItem (makVrv::DtMenuItem *item)
 
virtual void unregisterItem (makVrv::DtMenuItem *item)
 
- Public Member Functions inherited from makVrf::DtSubMenuConfiguration
 DtSubMenuConfiguration ()
 
 DtSubMenuConfiguration (const makVrv::DtMenuConfiguration &c)
 
 DtSubMenuConfiguration (makVrv::DtDe *de)
 
virtual ~DtSubMenuConfiguration ()
 
virtual bool isUnique (const std::string &) const
 
int size () const
 
void convert (const std::string &str1, const std::string &str2)
 
virtual void addMenuPathAfter (const makVrv::DtMenuPath &newPath, const makVrv::DtMenuPath &relativeTo, const MenuSortFlags &sortFlagsIfMenu=(MenuSortFlags)(SortAllAlphabetically|SortWithinSubmenus|SortBetweenSeparators))
 
virtual void addMenuPathBefore (const makVrv::DtMenuPath &newPath, const makVrv::DtMenuPath &relativeTo, const MenuSortFlags &sortFlagsIfMenu=(MenuSortFlags)(SortAllAlphabetically|SortWithinSubmenus|SortBetweenSeparators))
 
virtual void addMenuItemAfter (const std::string &menuItem, const std::string &after)
 
virtual void removeMenuItem (const std::string &menuItem)
 
virtual void addMenuItemBefore (const std::string &menuItem, const std::string &before)
 
virtual makVrv::DtMenuPath menuPathForItem (const std::string &menuItem) const
 
virtual std::string mainMenu () const
 
DtSubMenuConfigurationoperator= (const makVrv::DtMenuConfiguration &rhs)
 
virtual bool fixSortChildren (makVrv::DtMenuConfiguration::MenuPathList &, bool checkOnly=false)
 
void makeChangesTo (makVrv::DtMenuConfiguration *c)
 
void clearMakeChangesTo ()
 
const MenuPathSetpathsRemoved () const
 
const MenuPathSetmenuPaths () const
 
void setProtected (const std::string &p, bool b)
 
bool isProtected (const std::string &p) const
 
bool isGoingToBeRemoved (const makVrv::DtMenuPath &p) const
 
virtual void reworkRelativeOrder ()
 
- Public Member Functions inherited from makVrv::DtMenuConfiguration
 DtMenuConfiguration ()
 
virtual ~DtMenuConfiguration ()
 
void addMenuPath (const DtMenuPath &, const MenuSortFlags &sortFlagsIfMenu=(MenuSortFlags)(SortAllAlphabetically|SortWithinSubmenus|SortBetweenSeparators))
 
void addMenuPathAfter (const DtMenuPath &newPath, const DtMenuPath &relativeTo, const MenuSortFlags &sortFlagsIfMenu=(MenuSortFlags)(SortAllAlphabetically|SortWithinSubmenus|SortBetweenSeparators))
 
void addMenuPathBefore (const DtMenuPath &newPath, const DtMenuPath &relativeTo, const MenuSortFlags &sortFlagsIfMenu=(MenuSortFlags)(SortAllAlphabetically|SortWithinSubmenus|SortBetweenSeparators))
 
void addConfiguration (const DtMenuConfiguration &subConfiguration)
 
void removeMenuPath (const DtMenuPath &)
 
void getRootPaths (MenuPathList &children) const
 
void getChildren (const DtMenuPath &path, MenuPathList &children) const
 
void sortChildren (MenuPathList &children) const
 
DtMenuConfigurationoperator= (const DtMenuConfiguration &rhs)
 
void merge (const DtMenuConfiguration &rhs)
 
bool hasMenuPath (const DtMenuPath &p) const
 
bool menuSortFlags (const DtMenuPath &p, MenuSortFlags &flags) const
 
- Public Member Functions inherited from makVrv::DtConfiguration
 DtConfiguration (const std::string &name="")
 
 DtConfiguration (const DtConfiguration &)
 
DtConfigurationoperator= (const DtConfiguration &)
 
virtual ~DtConfiguration ()
 
virtual const std::string & name () const
 
virtual void setName (const std::string &name)
 
virtual const std::string * findOptionalParameter (const std::string &name) const
 
virtual void setOptionalParameter (const std::string &name, const std::string &value)
 
virtual void setOptionalParameters (const ParameterMap &)
 
virtual void removeOptionalParameter (const std::string &name)
 
const ParameterMapoptionalParameters () const
 
- Public Member Functions inherited from makVrf::DtConfigurableMenuAssembler
 DtConfigurableMenuAssembler (makVrv::DtDe &de)
 
virtual ~DtConfigurableMenuAssembler ()
 
void setDeleteReferences (bool b)
 
bool deleteReferences () const
 
void setLocalOnly (bool b)
 
void setLocalMenuManager (bool b)
 
virtual void assemble (const makVrv::DtMenuConfiguration &configuration)
 
virtual void fixCircularDependencies (DtSubMenuConfiguration &configuration) const
 
virtual bool hasCircularDependency (DtSubMenuConfiguration &configuration) const
 
bool localOnly () const
 
void cleanup ()
 
makVrv::DtMenuManagermenuManager ()
 
const makVrv::DtMenuManagermenuManager () const
 
QMenufindMenu (const makVrv::DtMenuPath &path)
 
QActionfindMenuItem (const makVrv::DtMenuPath &path)
 
virtual void merge (const DtQtMenuAssembler::MenuBuilderMap &)
 
virtual void merge (const DtQtMenuAssembler::MenuItemBuilderMap &)
 
void makeChangesTo (makVrv::DtQtMenuAssembler *c)
 
void clearMakeChangesTo ()
 
virtual QMenuBar * menuBar ()
 
virtual QWidget * menuWindow ()
 
void setCreateSubMenusForMissingMenus (bool b)
 
virtual void assembleMenu (const makVrv::DtMenuPath &menuPath)
 
- Public Member Functions inherited from makVrv::DtQtMenuAssembler
virtual ~DtQtMenuAssembler ()
 
void registerMenu (DtMenu *)
 
DtMenumenuBuilder (const std::string &) const
 
void unregisterMenu (DtMenu *, bool deleteBuilder=true)
 
void registerMenu (DtMenuItem *)
 
DtMenuItemmenuItemBuilder (const std::string &) const
 
void unregisterMenu (DtMenuItem *, bool deleteBuilder=true)
 
const MenuBuilderMapmenuBuilderMap () const
 
const MenuItemBuilderMapmenuItemBuilderMap () const
 
MenuBuilderMapmenuBuilderMap ()
 
MenuItemBuilderMapmenuItemBuilderMap ()
 
virtual void merge (const DtQtMenuAssembler::MenuBuilderMap &)
 
virtual void merge (const DtQtMenuAssembler::MenuItemBuilderMap &)
 
- Public Member Functions inherited from makVrv::DtMenuAssembler
virtual ~DtMenuAssembler ()
 
- Public Member Functions inherited from makVrv::DtVirtualBaseClass
 DtVirtualBaseClass ()
 
virtual ~DtVirtualBaseClass ()
 

Protected Member Functions

virtual void applyContext (std::string contextName, makVrv::DtMenuConfiguration &config)
 
virtual void applyRegistrations (makVrv::DtQtMenuAssembler &assembler)
 
virtual void slot_modifyRightClickMenu (makVrv::DtQtMenuAssembler &, makVrv::DtMenuConfiguration &, const makVrv::DtSelectionManager::IdSet &, int, makVrv::DtDe &)
 
virtual void registerMenu (makVrv::DtMenuItem *)
 
virtual void unregisterMenu (makVrv::DtMenu *, bool deleteBuilder=true)
 
virtual void unregisterMenu (makVrv::DtMenuItem *, bool deleteBuilder=true)
 
- Protected Member Functions inherited from makVrf::DtSubMenuConfiguration
bool sortAbsolute (const makVrv::DtMenuPath &a, const makVrv::DtMenuPath &b) const
 
- Protected Member Functions inherited from makVrv::DtMenuConfiguration
int getNewWeight ()
 
void addMenuPath (const DtMenuPath &, int weight)
 
bool sortAbsolute (const DtMenuPath &a, const DtMenuPath &b) const
 
- Protected Member Functions inherited from makVrv::DtConfiguration
template<class Archive >
void _serialize (Archive &ar, const unsigned int version)
 
- Protected Member Functions inherited from makVrf::DtConfigurableMenuAssembler
virtual bool fixMenuPath (const makVrv::DtMenuPath &menuPath, DtSubMenuConfiguration &configuration, bool checkOnly=false) const
 
- Protected Member Functions inherited from makVrv::DtQtMenuAssembler
 DtQtMenuAssembler (DtDe &)
 
virtual void assembleMenuItem (const DtMenuPath &menuPath)
 
virtual void sortConfiguration (const DtMenuConfiguration &configuration)
 
- Protected Member Functions inherited from makVrv::DtMenuAssembler
 DtMenuAssembler (DtDe &de)
 
void assembleMenuPath (const DtMenuPath &menuPath, const DtMenuConfiguration &configuration)
 

Protected Attributes

std::map< std::string,
DtVrfRightClickContextFunc
myChangeRules
 
std::map< std::string,
DtVrfRightClickChanges * > 
myChanges
 
std::string myDefaultContext
 
std::string myCurrentContext
 
std::vector< makVrv::DtMenu * > myUnregisterMenus
 
std::vector< makVrv::DtMenu * > myRegisterMenus
 
std::vector< makVrv::DtMenuItem * > myRegisterItems
 
std::vector< makVrv::DtMenuItem * > myUnregisterItems
 
- Protected Attributes inherited from makVrf::DtSubMenuConfiguration
makVrv::DtDemyDe
 
std::vector
< makVrv::DtMenuConfiguration * > 
myMakeChangesTo
 
MenuPathSet myPathsRemoved
 
std::map< std::string, boolmyIsProtected
 
- Protected Attributes inherited from makVrv::DtMenuConfiguration
MenuPathSet myMenuPaths
 
MenuPathOrderMap myMenuOrder
 
MenuPathSortFlagsMap myMenuSortFlags
 
int myCurrentWeight
 
- Protected Attributes inherited from makVrv::DtConfiguration
std::string myName
 
ParameterMap myOptionalParameters
 
DtProxyWP myAttachedInterface
 
- Protected Attributes inherited from makVrf::DtConfigurableMenuAssembler
DtConfigurationMenuManager myMenuManager
 
std::vector
< makVrv::DtQtMenuAssembler * > 
myMakeChangesTo
 
bool myDeleteReferences
 
bool myLocalOnly
 
bool myCreateSubMenusForMissingMenus
 
bool myLocalMenuManager
 
- Protected Attributes inherited from makVrv::DtQtMenuAssembler
MenuBuilderMap myMenuBuilders
 
MenuItemBuilderMap myMenuItemBuilders
 
- Protected Attributes inherited from makVrv::DtMenuAssembler
std::stack< DtMenuPathmyMenuStack
 
DtDemyDe
 

Additional Inherited Members

- Public Types inherited from makVrv::DtMenuConfiguration
enum  MenuSortFlags {
  NoSort = 0x00000000, SortAllAlphabetically = 0x00000001, SortWithinSubmenus = 0x00000002, SortBetweenSeparators = 0x00000004,
  SortBetweenSubMenus = 0x00000010
}
 
typedef std::list< DtMenuPathMenuPathList
 
typedef std::set< DtMenuPathMenuPathSet
 
- Public Types inherited from makVrv::DtConfiguration
typedef std::map< std::string,
std::string > 
ParameterMap
 
- Public Types inherited from makVrv::DtQtMenuAssembler
typedef boost::unordered_map
< std::string, DtMenu * > 
MenuBuilderMap
 
typedef boost::unordered_map
< std::string, DtMenuItem * > 
MenuItemBuilderMap
 
- Static Public Member Functions inherited from makVrv::DtQtMenuAssembler
static DtQtMenuAssemblerinstance (DtDe &de)
 
- Static Public Member Functions inherited from makVrv::DtMenuAssembler
static DtMenuAssemblerinstance (DtDe &)
 
- Protected Types inherited from makVrv::DtMenuConfiguration
typedef std::map< DtMenuPath,
OrderParameters
MenuPathOrderMap
 
typedef std::map< DtMenuPath,
MenuSortFlags
MenuPathSortFlagsMap
 

Constructor & Destructor Documentation

makVrf::DtVrfRightClickContextHandler::DtVrfRightClickContextHandler ( makVrv::DtDe de)

Default constructor that should not be used by users.

virtual makVrf::DtVrfRightClickContextHandler::~DtVrfRightClickContextHandler ( )
virtual

Default destructor which should not be used by users.

Member Function Documentation

virtual void makVrf::DtVrfRightClickContextHandler::addContext ( std::string  contextName,
DtVrfRightClickContextFunc  func 
)
virtual

Adds a new context to the context handler. This is called by DtVrfRightClickMenu.

virtual void makVrf::DtVrfRightClickContextHandler::removeContext ( std::string  contextName)
virtual

Removes a context from the context handler. This is called by DtVrfRightClickMenu.

virtual void makVrf::DtVrfRightClickContextHandler::setDefaultContext ( std::string  contextName)
virtual

Sets default context of the context handler. This is called by DtVrfRightClickMenu.

virtual void makVrf::DtVrfRightClickContextHandler::setCurrentContext ( std::string  contextName)
virtual

Sets current context of the context handler. This is called by DtVrfRightClickMenu.

virtual void makVrf::DtVrfRightClickContextHandler::resetContext ( )
inlinevirtual

Resets the current context to the default context.

virtual std::string makVrf::DtVrfRightClickContextHandler::currentContext ( )
inlinevirtual

Gets the current context.

virtual std::string makVrf::DtVrfRightClickContextHandler::defaultContext ( )
inlinevirtual

Gets the default context.

Overridden from base class. Adds a menu path to the right click menu based on the current context. To change contexts, you should call setCurrentContext() before calling this function to ensure your right click change happens when you want it to. This function assumes the menu/item at the end of the path is already registered to this class or to DtVrfMainMenu.

Reimplemented from makVrf::DtSubMenuConfiguration.

virtual void makVrf::DtVrfRightClickContextHandler::removeMenuPath ( const makVrv::DtMenuPath )
virtual

Overridden from base class. Removes a menu path from the right click menu based on the current context. To change contexts, you should call setCurrentContext() before calling this function to ensure your right click change happens when you want it to. This function assumes the menu/item at the end of the path is already registered to this class or to DtVrfMainMenu.

Reimplemented from makVrf::DtSubMenuConfiguration.

virtual void makVrf::DtVrfRightClickContextHandler::addMenuPathAfter ( const makVrv::DtMenuPath newPath,
const makVrv::DtMenuPath relativeTo 
)
virtual

Overridden from base class. Adds a menu path to the right click menu based on the current context. To change contexts, you should call setCurrentContext() before calling this function to ensure your right click change happens when you want it to. This function assumes the menu/item at the end of the path is already registered to this class or to DtVrfMainMenu.

virtual void makVrf::DtVrfRightClickContextHandler::addMenuPathBefore ( const makVrv::DtMenuPath newPath,
const makVrv::DtMenuPath relativeTo 
)
virtual

Overridden from base class. Adds a menu path to the right click menu based on the current context. To change contexts, you should call setCurrentContext() before calling this function to ensure your right click change happens when you want it to. This function assumes the menu/item at the end of the path is already registered to this class or to DtVrfMainMenu.

virtual void makVrf::DtVrfRightClickContextHandler::registerMenu ( makVrv::DtMenu menu)
virtual

Registers a menu object to the right click menu. Menus registered in the DtVrfMainMenu do not need to be re-registered.

Reimplemented from makVrf::DtConfigurableMenuAssembler.

virtual void makVrf::DtVrfRightClickContextHandler::unregisterMenu ( makVrv::DtMenu menu)
virtual

Unregisters a menu object from the right click menu.

virtual void makVrf::DtVrfRightClickContextHandler::registerItem ( makVrv::DtMenuItem item)
virtual

Registers a menu item object to the right click menu. Menus itmes registered in the DtVrfMainMenu do not need to be re-registered.

virtual void makVrf::DtVrfRightClickContextHandler::unregisterItem ( makVrv::DtMenuItem item)
virtual

Unregisters a menu item object to the right click menu.

virtual void makVrf::DtVrfRightClickContextHandler::applyContext ( std::string  contextName,
makVrv::DtMenuConfiguration config 
)
protectedvirtual

Internally used function to apply contexts to the configuration.

virtual void makVrf::DtVrfRightClickContextHandler::applyRegistrations ( makVrv::DtQtMenuAssembler assembler)
protectedvirtual

Internally used function to apply registrations to the menu assembler.

virtual void makVrf::DtVrfRightClickContextHandler::slot_modifyRightClickMenu ( makVrv::DtQtMenuAssembler ,
makVrv::DtMenuConfiguration ,
const makVrv::DtSelectionManager::IdSet ,
int  ,
makVrv::DtDe  
)
protectedvirtual

Internally used function to handle right click at the time it happens. The user's entry point into this is to call addContext() and add functions which will eventually be called.

virtual void makVrf::DtVrfRightClickContextHandler::registerMenu ( makVrv::DtMenuItem )
protectedvirtual

Use registerItem() instead.

Reimplemented from makVrf::DtConfigurableMenuAssembler.

virtual void makVrf::DtVrfRightClickContextHandler::unregisterMenu ( makVrv::DtMenu ,
bool  deleteBuilder = true 
)
protectedvirtual

Use unregisterMenu() instead.

Reimplemented from makVrf::DtConfigurableMenuAssembler.

virtual void makVrf::DtVrfRightClickContextHandler::unregisterMenu ( makVrv::DtMenuItem ,
bool  deleteBuilder = true 
)
protectedvirtual

Use unregisterItem() instead.

Reimplemented from makVrf::DtConfigurableMenuAssembler.

Member Data Documentation

std::map<std::string, DtVrfRightClickContextFunc> makVrf::DtVrfRightClickContextHandler::myChangeRules
protected
std::map<std::string, DtVrfRightClickChanges*> makVrf::DtVrfRightClickContextHandler::myChanges
protected
std::string makVrf::DtVrfRightClickContextHandler::myDefaultContext
protected
std::string makVrf::DtVrfRightClickContextHandler::myCurrentContext
protected
std::vector<makVrv::DtMenu*> makVrf::DtVrfRightClickContextHandler::myUnregisterMenus
protected
std::vector<makVrv::DtMenu*> makVrf::DtVrfRightClickContextHandler::myRegisterMenus
protected
std::vector<makVrv::DtMenuItem*> makVrf::DtVrfRightClickContextHandler::myRegisterItems
protected
std::vector<makVrv::DtMenuItem*> makVrf::DtVrfRightClickContextHandler::myUnregisterItems
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)