--- nono/vm/keyboard.cpp 2026/04/29 17:05:18 1.1.1.11 +++ nono/vm/keyboard.cpp 2026/04/29 17:05:38 1.1.1.15 @@ -88,7 +88,7 @@ // MakeKey()/BreakKey() : // | // | KEY_INPUT Message : -// | - - - - - - - - - - - -> KeyInputCallback() +// | - - - - - - - - - - - -> KeyInputMessage() // o | // : MD::KeyInput() // | @@ -105,10 +105,30 @@ #include "uimessage.h" #include +// +// 文字入力しか持たないキーボードの下位クラス +// + // コンストラクタ -Keyboard::Keyboard() +DumbKeyboard::DumbKeyboard() : inherited(OBJ_KEYBOARD) { +} + +// デストラクタ +DumbKeyboard::~DumbKeyboard() +{ +} + + +// +// 通常のキーボード +// + +// コンストラクタ +Keyboard::Keyboard() + : inherited() +{ pressed.resize(KC_max); } @@ -121,14 +141,10 @@ Keyboard::~Keyboard() bool Keyboard::Init() { - if (inherited::Init() == false) { - return false; - } - syncer = GetSyncer(); scheduler->ConnectMessage(MessageID::KEY_INPUT, this, - ToMessageCallback(&Keyboard::KeyInputCallback)); + ToMessageCallback(&Keyboard::KeyInputMessage)); return true; } @@ -236,7 +252,7 @@ Keyboard::CharInput(uint charcode) // キー入力メッセージコールバック void -Keyboard::KeyInputCallback(MessageID msgid, uint32 arg) +Keyboard::KeyInputMessage(MessageID msgid, uint32 arg) { uint keystat = arg; switch (keystat) { @@ -315,7 +331,7 @@ Keyboard::KeyInputCommon(uint keystat) if (loglevel >= 1) { std::string msg; - msg += string_format("%d(", keycode); + msg += string_format("%u(", keycode); msg += GetKeyName(keycode); msg += ")";