fix: input F1..F25 key codes & add binding 'chunks.reload'

This commit is contained in:
MihailRis
2024-06-05 19:29:35 +03:00
parent d316a5f818
commit ad62b759fb
8 changed files with 18 additions and 4 deletions
+8
View File
@@ -98,6 +98,14 @@ void Events::pollEvents() {
}
}
Binding& Events::getBinding(const std::string& name) {
auto found = bindings.find(name);
if (found == bindings.end()) {
throw std::runtime_error("binding '"+name+"' does not exists");
}
return found->second;
}
void Events::bind(const std::string& name, inputtype type, keycode code) {
bind(name, type, static_cast<int>(code));
}
+1
View File
@@ -38,6 +38,7 @@ public:
static void toggleCursor();
static Binding& getBinding(const std::string& name);
static void bind(const std::string& name, inputtype type, keycode code);
static void bind(const std::string& name, inputtype type, mousecode code);
static void bind(const std::string& name, inputtype type, int code);
+1 -1
View File
@@ -77,7 +77,7 @@ void input_util::initialize() {
keycodes[std::to_string(i)] = GLFW_KEY_0+i;
}
for (int i = 0; i < 25; i++) {
keycodes["f"+std::to_string(i)] = GLFW_KEY_F1+i;
keycodes["f"+std::to_string(i+1)] = GLFW_KEY_F1+i;
}
for (char i = 'a'; i <= 'z'; i++) {
keycodes[std::string({i})] = GLFW_KEY_A-'a'+i;