Files
NXKit/Submodules/UIKit/include/UIKey.h
T
Daniil Vinogradov c2cf1dfc22 Focus improvements
2025-01-23 00:54:31 +01:00

34 lines
654 B
C++

#pragma once
#include <string>
#include <UIKeyboardHIDUsage.h>
#include <tools/Tools.hpp>
namespace NXKit {
enum class UIKeyModifierFlags {
alphaShift = 1 << 0,
shift = 1 << 1,
control = 1 << 2,
alternate = 1 << 3,
command = 1 << 4,
numericPad = 1 << 5,
};
struct UIKey {
public:
std::string characters() { return _characters; }
OptionSet<UIKeyModifierFlags> modifierFlags() { return _modifierFlags; }
UIKeyboardHIDUsage keyCode() { return _keyCode; }
private:
std::string _characters;
OptionSet<UIKeyModifierFlags> _modifierFlags;
UIKeyboardHIDUsage _keyCode;
friend class UIApplication;
};
}