feat(ui): add Tab button handler for CSimpleEditBox

This commit is contained in:
VDm 2025-03-29 17:37:52 +04:00
parent 6030a75530
commit c4a516c44d
2 changed files with 13 additions and 0 deletions

View File

@ -878,6 +878,11 @@ int32_t CSimpleEditBox::OnLayerKeyDown(const CKeyEvent& evt) {
return 1;
}
case KEY_TAB: {
this->RunOnTabPressedScript();
return 1;
}
// TODO
// - remaining keys
@ -1001,6 +1006,13 @@ void CSimpleEditBox::RunOnEnterPressedScript() {
}
}
void CSimpleEditBox::RunOnTabPressedScript() {
if (this->m_onTabPressed.luaRef) {
this->RunScript(this->m_onTabPressed, 0, 0);
}
// TODO: virtual call of CSimpleEditBox::DispatchAction ?
}
void CSimpleEditBox::RunOnTextChangedScript(int32_t changed) {
if (this->m_onTextChanged.luaRef) {
auto L = FrameScript_GetContext();

View File

@ -99,6 +99,7 @@ class CSimpleEditBox : public CSimpleFrame, CSimpleFontedFrame {
void RunOnEditFocusGainedScript();
void RunOnEditFocusLostScript();
void RunOnEnterPressedScript();
void RunOnTabPressedScript();
void RunOnTextChangedScript(int32_t changed);
void SetCursorPosition(int32_t position);
void SetHistoryLines(int32_t a2);