13 #include <boost/function.hpp>
23 class DtKeyFunctionNameList;
24 class DtSettingsBackup;
25 class DtKeyMapSettingsBackup;
55 typedef std::map<std::string, DtSettingsBackup*>
BackupMap;
62 typedef std::map<FunctionCategory, CategoryList*>
CategoryMap;
71 virtual DtKeyMap* createKeyMap(
const std::string& mapName,
bool silent =
false );
74 virtual DtKeyMap* cloneKeyMap(
const std::string& mapName,
75 const std::string& newMapName,
bool silent =
false );
78 virtual void destroyKeyMap(
const std::string& mapName,
bool silent =
false );
81 virtual DtKeyMap* findKeyMap(
const std::string& mapName );
84 bool saveKeyMap(
const DtKeyMap& keyMap)
const;
87 bool saveKeyMapToFile(
const DtKeyMap& keyMap,
const std::string&
filename)
const;
90 DtKeyMap* loadKeyMapFromFile(
const std::string&
filename,
bool createBackup =
false);
106 virtual void categorizeKeyFunction(
const std::string& functionName,
109 virtual void categorizeBinaryKeyFunction(
const std::string& functionName,
115 virtual void addKeyFunction(
const std::string& functionName,
117 bool categorize =
true );
120 KeyFunction findKeyFunction(
const std::string& functionName )
const;
123 void removeKeyFunction(
const std::string& functionName );
129 virtual const CategoryMap& binaryCategoryMap()
const;
141 virtual void addBinaryKeyFunction(
const std::string& binaryName,
142 const std::string& keyDownFunctionName,
const KeyFunction& downFunction,
143 const std::string& keyUpFuntionName,
const KeyFunction& upFunction,
148 virtual std::string lookupBinaryKeyFunctionName(
154 virtual bool processKeyEvent(
const std::string& mapName,
158 virtual void activateMap(
const std::string& mapName );
161 virtual void deactivateMap(
const std::string& mapName );
163 virtual void setCurrentMap(
const std::string& mapName );
165 virtual const std::string& currentMap()
const;
168 void virtual clear();
195 virtual DtKeyMapSettingsBackup * createBackupFor(
const std::string&,
const std::string& factoryFile =
"");
234 return backupClassType();
241 virtual void write(boost::archive::xml_oarchive& ar);
244 virtual void read(boost::archive::xml_iarchive& ar);
249 return myRestoredRecord;
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
virtual std::string backupName() const
Returns the key map name.
Definition: DtKeyMapManager.h:232
This class encapsulates a Key event.
Definition: DtKeyEvent.h:16
Definition: DtKeyMapManager.h:42
BinaryFunctionNameMap myBinaryKeyFunctionDownMap
Definition: DtKeyMapManager.h:204
const makArchives::DtKeyMapRecord & restoredRecord() const
Return the backup's restored record.
Definition: DtKeyMapManager.h:247
Definition: DtKeyMapManager.h:45
A record saving the keyboard mapping.
Definition: DtKeyMapRecord.h:19
Definition: DtKeyMapManager.h:37
Definition: DtKeyMapManager.h:41
std::map< std::string, DtKeyMap * > KeyMapCatalog
Definition: DtKeyMapManager.h:50
std::map< std::string, std::string > BinaryFunctionNameMap
Definition: DtKeyMapManager.h:54
FunctionCategory
Definition: DtKeyMapManager.h:35
A serializable list of function names. There is such a list associated with each key/modifier combo f...
Definition: DtKeyMap.h:37
CategoryMap myBinaryCategoryMap
Definition: DtKeyMapManager.h:206
Backup for Keymap Settings.
Definition: DtKeyMapManager.h:213
Definition: DtKeyMapManager.h:44
DtDe & myDe
Definition: DtKeyMapManager.h:199
a Key Map contains a map of keys to FunctionMapEntrys, as well as a list of functions to execute when...
Definition: DtKeyMap.h:312
std::map< FunctionCategory, CategoryList * > CategoryMap
A list of category lists. The key is the first item in the Category list.
Definition: DtKeyMapManager.h:62
FunctionCategories myFunctionCategories
Definition: DtKeyMapManager.h:208
The manager for owning key maps.
Definition: DtKeyMapManager.h:31
Definition: DtKeyMapManager.h:38
std::map< FunctionCategory, DtUnicode > FunctionCategories
Definition: DtKeyMapManager.h:49
Contains makVrv::DtVirtualBaseClass class.
std::map< std::string, DtSettingsBackup * > BackupMap
Definition: DtKeyMapManager.h:55
makArchives::DtKeyMapRecord myRestoredRecord
Definition: DtKeyMapManager.h:254
BinaryFunctionNameMap myBinaryKeyFunctionUpMap
Definition: DtKeyMapManager.h:203
DtKeyMapManager & myKeyMapManager
Definition: DtKeyMapManager.h:255
KeyFunctionMap myKeyFunctionMap
Definition: DtKeyMapManager.h:202
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Definition: DtKeyMapManager.h:39
Provides a method of doign settings backup.
Definition: DtSettingsBackup.h:23
boost::function< void()> KeyFunction
Definition: DtKeyMapManager.h:52
virtual std::string backupClassType() const
Returns the key map name.
Definition: DtKeyMapManager.h:226
KeyMapCatalog myKeyMapCatalog
Definition: DtKeyMapManager.h:201
std::map< std::string, KeyFunction > KeyFunctionMap
Definition: DtKeyMapManager.h:53
CategoryMap myCategoryMap
Definition: DtKeyMapManager.h:205
This file contains the declaration for the class DtKeyEvent.
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
std::list< std::string > CategoryList
A list of all the functions in a given category.
Definition: DtKeyMapManager.h:58
std::string myCurrentMap
Definition: DtKeyMapManager.h:200
KeyEventType
Enumerate the types of key events supported.
Definition: DtKeyEvent.h:20
Definition: DtKeyMapManager.h:43
Definition: DtKeyMapManager.h:40
The makVrv::DtSettingsBackup is a lightweight class that must be subclassed from if an object wants t...
std::string myKeyMap
Definition: DtKeyMapManager.h:253
Contains makArchives::DtKeyMapRecord class.
BackupMap myBackupObjects
Definition: DtKeyMapManager.h:207