aboutsummaryrefslogtreecommitdiff
path: root/backends/common/keymap-manager.h
blob: 8b945c5c7d1704947a6cefc49bdb890a36f1228f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#ifndef COMMON_KEYMAP_MANAGER
#define COMMON_KEYMAP_MANAGER

#include "backends/common/keymap.h"

namespace Common {

class KeymapManager {
public:

	KeymapManager();

	void registerGlobalKeymap(const String& name, const Keymap& map);

	void registerKeymap(const String& name, const String& domain, const Keymap& map);

private:

	struct Entry {
		String _name;
		String _domain;
		Keymap *_keymap;
	};

	void insertEntry(const String& name, const String& domain, const Keymap& map);

	List<Entry*> _keymaps;

};

} // end of namespace Common

#endif