2021-11-19 20:20:05 +01:00
|
|
|
#pragma once
|
2021-11-18 18:04:09 +01:00
|
|
|
#include "../defines.hpp"
|
|
|
|
|
2021-11-19 20:20:05 +01:00
|
|
|
typedef void (*Dispatcher)(std::string);
|
|
|
|
|
|
|
|
enum MODS {
|
|
|
|
MOD_NONE = 0,
|
|
|
|
MOD_SUPER,
|
|
|
|
MOD_SHIFT
|
|
|
|
};
|
|
|
|
|
2021-11-18 18:04:09 +01:00
|
|
|
class Keybind {
|
2021-11-19 20:20:05 +01:00
|
|
|
public:
|
|
|
|
Keybind(MODS, xcb_keysym_t, std::string, Dispatcher);
|
|
|
|
~Keybind();
|
|
|
|
|
|
|
|
EXPOSED_MEMBER(Mod, MODS, i);
|
2021-11-18 18:04:09 +01:00
|
|
|
EXPOSED_MEMBER(Keysym, xcb_keysym_t,);
|
|
|
|
EXPOSED_MEMBER(Command, std::string, sz);
|
2021-11-19 20:20:05 +01:00
|
|
|
EXPOSED_MEMBER(Dispatcher, Dispatcher, p);
|
2021-11-18 18:04:09 +01:00
|
|
|
};
|
|
|
|
|