载入中...
搜索中...
未找到
Keyboard.cpp
浏览该文件的文档.
1#include "keyboard/Keyboard.h"
3
4#include <simplesquirrel/simplesquirrel.hpp>
5
6namespace eve::keyboard {
7
9
11
12void Keyboard::expose(ssq::Table& table) {
13 auto cls = table.addClass(name, Keyboard::create, false);
14 expose(cls);
15}
16
17void Keyboard::expose(ssq::Class& cls) {
18 cls.addFunc("getName", &Keyboard::getName);
19 cls.addFunc("setKeyRepeat", &Keyboard::setKeyRepeat);
20 cls.addFunc("hasKeyRepeat", &Keyboard::hasKeyRepeat);
21 cls.addFunc("isDown", static_cast<bool (Keyboard::*)(const std::string&) const>(&Keyboard::isDown));
22 cls.addFunc("isScancodeDown",
23 static_cast<bool (Keyboard::*)(const std::string&) const>(&Keyboard::isScancodeDown));
24 cls.addFunc("getKeyFromScancode", &Keyboard::getKeyFromScancode);
25 cls.addFunc("getScancodeFromKey", &Keyboard::getScancodeFromKey);
26 cls.addFunc("setTextInput", static_cast<void (Keyboard::*)(bool)>(&Keyboard::setTextInput));
27 cls.addFunc("hasTextInput", &Keyboard::hasTextInput);
28 cls.addFunc("hasScreenKeyboard", &Keyboard::hasScreenKeyboard);
29}
30
31} // namespace eve::keyboard
HSQOBJECT cls
Definition ECS.cpp:21
#define Module_IMPL(ModuleName, newExpr)
Definition Module.h:24
const char * name
Definition RockMesh.cpp:21
virtual std::string getName() const =0
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 hasTextInput() const =0
virtual bool hasKeyRepeat() const =0
virtual void setTextInput(bool enable)=0
virtual void setKeyRepeat(bool enable)=0
Whether held keys emit repeated keypressed events.
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
SDL 键盘后端实现。
Definition Keyboard.h:8