161 enum class Mod : std::size_t
173 inline bool shift()
const
174 {
return this->mods.test((std::size_t) Mod::Shift); }
175 inline bool control()
const
176 {
return this->mods.test((std::size_t) Mod::Control); }
177 inline bool alt()
const
178 {
return this->mods.test((std::size_t) Mod::Alt); }
179 inline bool super()
const
180 {
return this->mods.test((std::size_t) Mod::Super); }
181 inline bool caps_lock()
const
182 {
return this->mods.test((std::size_t) Mod::CapsLock); }
183 inline bool num_lock()
const
184 {
return this->mods.test((std::size_t) Mod::NumLock); }
187 { this->mods.set((std::size_t) Mod::Shift);
return *
this; }
189 { this->mods.set((std::size_t) Mod::Control);
return *
this; }
191 { this->mods.set((std::size_t) Mod::Alt);
return *
this; }
193 { this->mods.set((std::size_t) Mod::Super);
return *
this; }
194 inline KeyMods &set_caps_lock()
195 { this->mods.set((std::size_t) Mod::CapsLock);
return *
this; }
197 { this->mods.set((std::size_t) Mod::NumLock);
return *
this; }