载入中...
搜索中...
未找到
Keyboard.h
浏览该文件的文档.
1#pragma once
2
3#include "keyboard/Keyboard.h"
4
5namespace eve::keyboard::sdl {
6
9public:
11 Keyboard();
13 ~Keyboard() override;
14
16 void setKeyRepeat(bool enable) override;
18 bool hasKeyRepeat() const override;
19
21 bool isDown(const std::string& key) const override;
23 bool isDown(const std::vector<std::string>& keys) const override;
24
26 bool isScancodeDown(const std::string& scancode) const override;
28 bool isScancodeDown(const std::vector<std::string>& scancodes) const override;
29
31 std::string getKeyFromScancode(const std::string& scancode) const override;
33 std::string getScancodeFromKey(const std::string& key) const override;
34
36 void setTextInput(bool enable) override;
38 void setTextInput(bool enable, double x, double y, double w, double h) override;
40 bool hasTextInput() const override;
42 bool hasScreenKeyboard() const override;
43
44private:
45 // Consumed by platform_event::sdl::Event when converting SDL_KEYDOWN repeats.
46 bool keyRepeat_ = false;
47};
48
49} // namespace eve::keyboard::sdl
float w
Definition AnimClip.cpp:738
float y
Definition AnimClip.cpp:738
float x
Definition AnimClip.cpp:738
std::uint32_t key
int h
Keyboard input. Key / scancode names follow SDL naming (SDL_GetKeyName / SDL_GetScancodeName),...
Definition Keyboard.h:15
SDL keyboard backend implementing eve::keyboard::Keyboard.
Definition Keyboard.h:8
void setKeyRepeat(bool enable) override
Whether held keys emit repeated keypressed events.
Definition Keyboard.cpp:22
bool hasTextInput() const override
True while text-input / IME is active.
Definition Keyboard.cpp:101
void setTextInput(bool enable) override
Enables or disables text-input / IME composition.
Definition Keyboard.cpp:80
Keyboard()
Constructs the SDL keyboard module.
Definition Keyboard.cpp:11
bool isScancodeDown(const std::string &scancode) const override
True if any of the named physical scancodes is currently down.
Definition Keyboard.cpp:47
~Keyboard() override
Releases keyboard backend state.
Definition Keyboard.cpp:17
std::string getScancodeFromKey(const std::string &key) const override
Physical scancode name for a layout-aware key (SDL names).
Definition Keyboard.cpp:71
bool hasScreenKeyboard() const override
True when the platform exposes an on-screen keyboard.
Definition Keyboard.cpp:105
std::string getKeyFromScancode(const std::string &scancode) const override
Layout-aware key name for a physical scancode (SDL names).
Definition Keyboard.cpp:62
bool hasKeyRepeat() const override
True when key-repeat events are enabled.
Definition Keyboard.cpp:26
bool isDown(const std::string &key) const override
True if any of the named keys is currently down.
Definition Keyboard.cpp:30