Hypr/src/utilities/Keybind.hpp

27 lines
490 B
C++
Raw Normal View History

2021-11-19 20:20:05 +01:00
#pragma once
#include "../defines.hpp"
2021-11-19 20:20:05 +01:00
typedef void (*Dispatcher)(std::string);
enum MODS {
MOD_NONE = 0,
MOD_SUPER,
2021-11-22 21:20:32 +01:00
MOD_SHIFT,
2021-11-23 17:00:47 +01:00
MOD_SHIFTSUPER,
MOD_SHIFTCTRL,
MOD_CTRL,
MOD_CTRLSUPER
2021-11-19 20:20:05 +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);
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);
};