xtd 0.2.0
console_modifiers.h
Go to the documentation of this file.
1 #pragma once
5 #include "enum.h"
6 
8 namespace xtd {
18  enum class console_modifiers {
20  none = 0,
22  alt = 0b1,
24  shift = 0b10,
26  control = 0b100
27  };
28 }
29 
32 
33 template<> struct xtd::enum_register<xtd::console_modifiers> {
34  explicit operator auto() const noexcept {return xtd::enum_collection<xtd::console_modifiers> {{xtd::console_modifiers::none, "none"}, {xtd::console_modifiers::alt, "alt"}, {xtd::console_modifiers::shift, "shift"}, {xtd::console_modifiers::control, "control"}};}
35 };
37 
console_modifiers
Represents the SHIFT, ALT, and CTRL modifier keys on a keyboard.
Definition: console_modifiers.h:18
The xtd namespace contains all fundamental classes to access Hardware, Os, System, and more.
Definition: system_report.h:17
The left or right SHIFT modifier key.
std::vector< std::pair< enum_t, xtd::ustring > > enum_collection
Represents a pair of an enum_t value and a string of an enum of type enum_t.
Definition: enum_collection.h:19
Contains enum_ and enum_ut_ keywords.
The left or right ALT modifier key.
#define flags_attribute_(namespace_name, enum_type)
Provides the set attribute struct for enumerations helper.
Definition: flags_attribute.h:34
The left or right CTRL modifier key.
Provides the registration struct for enumerations.
Definition: enum_register.h:36