载入中...
搜索中...
未找到
Keyboard.h
浏览该文件的文档.
1#pragma once
2
3#include "common/Module.h"
4
5#include <string>
6#include <vector>
7
8namespace eve::keyboard {
9
14class Keyboard : public Module {
15public:
17
18 virtual ~Keyboard();
19
21 virtual void setKeyRepeat(bool enable) = 0;
22 virtual bool hasKeyRepeat() const = 0;
23
25 virtual bool isDown(const std::string& key) const = 0;
26 virtual bool isDown(const std::vector<std::string>& keys) const = 0;
27
29 virtual bool isScancodeDown(const std::string& scancode) const = 0;
30 virtual bool isScancodeDown(const std::vector<std::string>& scancodes) const = 0;
31
33 virtual std::string getKeyFromScancode(const std::string& scancode) const = 0;
34 virtual std::string getScancodeFromKey(const std::string& key) const = 0;
35
36 virtual void setTextInput(bool enable) = 0;
38 virtual void setTextInput(bool enable, double x, double y, double w, double h) = 0;
39 virtual bool hasTextInput() const = 0;
40 virtual bool hasScreenKeyboard() const = 0;
41};
42
43} // namespace eve::keyboard
int y
Definition Grass.cpp:135
int x
Definition Grass.cpp:135
int h
int w
Keyboard input. Key / scancode names follow SDL naming (SDL_GetKeyName / SDL_GetScancodeName),...
Definition Keyboard.h:14
virtual std::string getKeyFromScancode(const std::string &scancode) const =0
Layout-aware key <-> physical scancode conversion (SDL names).
virtual bool isScancodeDown(const std::vector< std::string > &scancodes) const =0
virtual bool hasTextInput() const =0
virtual bool hasKeyRepeat() const =0
virtual bool isDown(const std::vector< std::string > &keys) const =0
virtual void setTextInput(bool enable)=0
virtual void setKeyRepeat(bool enable)=0
Whether held keys emit repeated keypressed events.
virtual void setTextInput(bool enable, double x, double y, double w, double h)=0
Hint where text appears so on-screen keyboards avoid covering it (pixel coords).
virtual bool isDown(const std::string &key) const =0
True if any of the named keys is currently down.
virtual bool hasScreenKeyboard() const =0
virtual bool isScancodeDown(const std::string &scancode) const =0
True if any of the named physical scancodes is currently down.
virtual std::string getScancodeFromKey(const std::string &key) const =0