13 #include <boost/function.hpp>
23 class DtKeyFunctionNameList;
24 class DtSettingsBackup;
25 class DtKeyMapBackupAsync;
26 class DtKeyMapSettingsBackup;
35 friend class DtKeyMapBackupAsync;
57 typedef std::map<std::string, DtSettingsBackup*>
BackupMap;
64 typedef std::map<FunctionCategory, CategoryList*>
CategoryMap;
73 virtual DtKeyMap* createKeyMap(
const std::string& mapName,
bool silent =
false );
76 virtual DtKeyMap* cloneKeyMap(
const std::string& mapName,
77 const std::string& newMapName,
bool silent =
false );
80 virtual void destroyKeyMap(
const std::string& mapName,
bool silent =
false );
83 virtual DtKeyMap* findKeyMap(
const std::string& mapName );
86 bool saveKeyMap(
const DtKeyMap& keyMap)
const;
89 bool saveKeyMapToFile(
const DtKeyMap& keyMap,
const std::string&
filename)
const;
92 DtKeyMap* loadKeyMapFromFile(
const std::string&
filename,
bool createBackup =
false);
108 virtual void categorizeKeyFunction(
const std::string& functionName,
111 virtual void categorizeBinaryKeyFunction(
const std::string& functionName,
117 virtual void addKeyFunction(
const std::string& functionName,
119 bool categorize =
true );
122 KeyFunction findKeyFunction(
const std::string& functionName )
const;
125 void removeKeyFunction(
const std::string& functionName );
131 virtual const CategoryMap& binaryCategoryMap()
const;
143 virtual void addBinaryKeyFunction(
const std::string& binaryName,
144 const std::string& keyDownFunctionName,
const KeyFunction& downFunction,
145 const std::string& keyUpFuntionName,
const KeyFunction& upFunction,
150 virtual std::string lookupBinaryKeyFunctionName(
156 virtual bool processKeyEvent(
const std::string& mapName,
160 virtual void activateMap(
const std::string& mapName );
163 virtual void deactivateMap(
const std::string& mapName );
165 virtual void setCurrentMap(
const std::string& mapName );
167 virtual const std::string& currentMap()
const;
170 void virtual clear();
197 virtual DtKeyMapSettingsBackup * createBackupFor(
const std::string&,
const std::string& factoryFile =
"");
228 virtual std::string backupClassType()
const
234 virtual std::string backupName()
const
236 return backupClassType();
243 virtual void write(boost::archive::xml_oarchive& ar);
246 virtual void read(boost::archive::xml_iarchive& ar);
251 return myRestoredRecord;