VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
makVrf::DtVrfMenuKeyMapManager Class Reference

This class will traverse the created actions in the menu system and add a potential key mapping for them. More...

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

Public Member Functions

 DtVrfMenuKeyMapManager (makVrv::DtDe &)
virtual ~DtVrfMenuKeyMapManager ()
virtual void setup ()
 Will setup the key mappings by iterating over the menu configuration and then calling addKeyboardMenuMapping with that path.
virtual void addKeyboardMenuMapping (const makVrv::DtMenuPath &path)
 Adds a new keyboard mapping for the particular path.
virtual void removeKeyboardMenuMapping (const makVrv::DtMenuPath &path)
 Removes a keyboard menu map with a particular path.
virtual void setApplyChangesToAllKeymaps (bool)
 Sets whether or not to apply changes made here to all keymaps. Default is true.
virtual bool applyChangesToAllKeymaps () const
virtual bool isMenuFunction (const std::string &func) const
 Returns true if this keyboard function is a menu function.
virtual QString reverseTranslate (const QString &) const
 Reverse the translation to the original english text.
- Public Member Functions inherited from makVrv::DtVirtualBaseClass
 DtVirtualBaseClass ()
 Do nothing constructor.
virtual ~DtVirtualBaseClass ()
 Virtual do nothing destructor.

Static Public Member Functions

static DtVrfMenuKeyMapManagerinstance (makVrv::DtDe &de)
 Returns instance of the manager.
static void registerInstance (makVrv::DtDe &, DtVrfMenuKeyMapManager *)

Protected Types

typedef std::map< std::string,
std::string > 
FunctionToPathMap
typedef std::map< std::string,
std::string > 
PathToFunctionMap
typedef std::map< std::string,
int > 
FunctionCategoryMap

Protected Member Functions

virtual bool eventFilter (QObject *, QEvent *)
 This event filter will accept all shortcut events to prevent the Qt system from handling them.
virtual std::string menuPathToFunctionName (const makVrv::DtMenuPath &) const
 Given a menu path returns a function name for that path.
virtual void slot_triggerShortcut (makVrv::DtMenuPath)
 Called when a shortcut is triggered, finds the associated action and triggers it.
virtual void setKeyMap (makVrv::DtKeyMapManager *, std::string currentMap)
 Sets the current key map and looks for function name mappings to map from function to actions to set shortcuts.
virtual void manageChangeableMenu (const std::string &menuId)
 Will add a new menu to manage keyboard mappings for.
virtual void setupChangeableMenus ()
 The following menu items are different in that they are created/destroyed via the changing or loading of th scenario, so, they need to be handled differently.
virtual void preAssembleConfigurableMenu (DtAssembledMenu *)
 Sent before a configurable menu is assembled. This will remove all old key mapping functions.
virtual void postAssembleConfigurableMenu (DtAssembledMenu *)
 Sent after a configurable menu is assembled. This will add all key mapping functions.
virtual int mapPathToKeymapFunctionCategory (const std::string &path)
 Maps a path by finding the root menu to a function category.
virtual void keyMappingRemoved (makVrv::DtKeyMap *, std::string, makVrv::DtKeyState::KeyType, makVrv::DtKeyEvent::KeyEventType, makVrv::DtKeyState::KeyModifier)
 Received when a key mapping is removed.
virtual void keyMappingModified (makVrv::DtKeyMap *, std::string, makVrv::DtKeyState::KeyType, makVrv::DtKeyEvent::KeyEventType, makVrv::DtKeyState::KeyModifier)
 Received when a key mapping is modified.
virtual void setupKeyMappingFor (const std::string &path, QAction *action, makVrv::DtKeyMap *map)
 Sets up a shortcut for the given action, key map and menu path.
virtual void resetShortcut (makVrv::DtKeyMap *, std::string)
 Resets the shortcut for the particular function string changed in the supplied keymap.
void parseTSFile (const QString &file)

Protected Attributes

makVrv::DtDemyDe
makVrv::DtSignalConnectionManager myConnectionManager
FunctionToPathMap myFunctionToPathMap
PathToFunctionMap myPathToFunctionMap
FunctionCategoryMap myFunctionCategories
bool myApplyChangesToAllKeymaps
std::map< QString, QString > myReverseMap

Detailed Description

This class will traverse the created actions in the menu system and add a potential key mapping for them.

The mechanism will replace the Qt shortcut mechanism in that it will handle the triggering of the actions

Member Typedef Documentation

typedef std::map<std::string, std::string> makVrf::DtVrfMenuKeyMapManager::FunctionToPathMap
protected
typedef std::map<std::string, std::string> makVrf::DtVrfMenuKeyMapManager::PathToFunctionMap
protected
typedef std::map<std::string, int> makVrf::DtVrfMenuKeyMapManager::FunctionCategoryMap
protected

Constructor & Destructor Documentation

makVrf::DtVrfMenuKeyMapManager::DtVrfMenuKeyMapManager ( makVrv::DtDe )
virtual makVrf::DtVrfMenuKeyMapManager::~DtVrfMenuKeyMapManager ( )
virtual

Member Function Documentation

static DtVrfMenuKeyMapManager& makVrf::DtVrfMenuKeyMapManager::instance ( makVrv::DtDe de)
static

Returns instance of the manager.

static void makVrf::DtVrfMenuKeyMapManager::registerInstance ( makVrv::DtDe ,
DtVrfMenuKeyMapManager  
)
static
virtual void makVrf::DtVrfMenuKeyMapManager::setup ( )
virtual

Will setup the key mappings by iterating over the menu configuration and then calling addKeyboardMenuMapping with that path.

virtual void makVrf::DtVrfMenuKeyMapManager::addKeyboardMenuMapping ( const makVrv::DtMenuPath path)
virtual

Adds a new keyboard mapping for the particular path.

virtual void makVrf::DtVrfMenuKeyMapManager::removeKeyboardMenuMapping ( const makVrv::DtMenuPath path)
virtual

Removes a keyboard menu map with a particular path.

virtual void makVrf::DtVrfMenuKeyMapManager::setApplyChangesToAllKeymaps ( bool  )
virtual

Sets whether or not to apply changes made here to all keymaps. Default is true.

virtual bool makVrf::DtVrfMenuKeyMapManager::applyChangesToAllKeymaps ( ) const
virtual
virtual bool makVrf::DtVrfMenuKeyMapManager::isMenuFunction ( const std::string &  func) const
virtual

Returns true if this keyboard function is a menu function.

virtual QString makVrf::DtVrfMenuKeyMapManager::reverseTranslate ( const QString &  ) const
virtual

Reverse the translation to the original english text.

virtual bool makVrf::DtVrfMenuKeyMapManager::eventFilter ( QObject ,
QEvent *   
)
protectedvirtual

This event filter will accept all shortcut events to prevent the Qt system from handling them.

virtual std::string makVrf::DtVrfMenuKeyMapManager::menuPathToFunctionName ( const makVrv::DtMenuPath ) const
protectedvirtual

Given a menu path returns a function name for that path.

If the path is not an item or not found returns empty string

virtual void makVrf::DtVrfMenuKeyMapManager::slot_triggerShortcut ( makVrv::DtMenuPath  )
protectedvirtual

Called when a shortcut is triggered, finds the associated action and triggers it.

virtual void makVrf::DtVrfMenuKeyMapManager::setKeyMap ( makVrv::DtKeyMapManager ,
std::string  currentMap 
)
protectedvirtual

Sets the current key map and looks for function name mappings to map from function to actions to set shortcuts.

virtual void makVrf::DtVrfMenuKeyMapManager::manageChangeableMenu ( const std::string &  menuId)
protectedvirtual

Will add a new menu to manage keyboard mappings for.

This menu is a menu that is of type DtConfigurableMenu and is expected to change it's menu contents over the lifetime of the application. Once managed it cannot be unmanaged

virtual void makVrf::DtVrfMenuKeyMapManager::setupChangeableMenus ( )
protectedvirtual

The following menu items are different in that they are created/destroyed via the changing or loading of th scenario, so, they need to be handled differently.

virtual void makVrf::DtVrfMenuKeyMapManager::preAssembleConfigurableMenu ( DtAssembledMenu )
protectedvirtual

Sent before a configurable menu is assembled. This will remove all old key mapping functions.

virtual void makVrf::DtVrfMenuKeyMapManager::postAssembleConfigurableMenu ( DtAssembledMenu )
protectedvirtual

Sent after a configurable menu is assembled. This will add all key mapping functions.

virtual int makVrf::DtVrfMenuKeyMapManager::mapPathToKeymapFunctionCategory ( const std::string &  path)
protectedvirtual

Maps a path by finding the root menu to a function category.

If category does not exist a new map is created

virtual void makVrf::DtVrfMenuKeyMapManager::keyMappingRemoved ( makVrv::DtKeyMap ,
std::string  ,
makVrv::DtKeyState::KeyType  ,
makVrv::DtKeyEvent::KeyEventType  ,
makVrv::DtKeyState::KeyModifier   
)
protectedvirtual

Received when a key mapping is removed.

If action that represents the keymap has a shortcut for that, then set that shortcut to empty

virtual void makVrf::DtVrfMenuKeyMapManager::keyMappingModified ( makVrv::DtKeyMap ,
std::string  ,
makVrv::DtKeyState::KeyType  ,
makVrv::DtKeyEvent::KeyEventType  ,
makVrv::DtKeyState::KeyModifier   
)
protectedvirtual

Received when a key mapping is modified.

If action that represents that function does not have a shortcut already assigned to it, set it to be the shortcut

virtual void makVrf::DtVrfMenuKeyMapManager::setupKeyMappingFor ( const std::string &  path,
QAction action,
makVrv::DtKeyMap map 
)
protectedvirtual

Sets up a shortcut for the given action, key map and menu path.

virtual void makVrf::DtVrfMenuKeyMapManager::resetShortcut ( makVrv::DtKeyMap ,
std::string   
)
protectedvirtual

Resets the shortcut for the particular function string changed in the supplied keymap.

Will only reset if the key map supplied is the current selected one

void makVrf::DtVrfMenuKeyMapManager::parseTSFile ( const QString &  file)
protected

Member Data Documentation

makVrv::DtDe& makVrf::DtVrfMenuKeyMapManager::myDe
protected
makVrv::DtSignalConnectionManager makVrf::DtVrfMenuKeyMapManager::myConnectionManager
protected
FunctionToPathMap makVrf::DtVrfMenuKeyMapManager::myFunctionToPathMap
protected
PathToFunctionMap makVrf::DtVrfMenuKeyMapManager::myPathToFunctionMap
protected
FunctionCategoryMap makVrf::DtVrfMenuKeyMapManager::myFunctionCategories
protected
bool makVrf::DtVrfMenuKeyMapManager::myApplyChangesToAllKeymaps
protected
std::map<QString, QString> makVrf::DtVrfMenuKeyMapManager::myReverseMap
protected

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

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)