added some kbm stuff
This commit is contained in:
1 parent
82e802873f
commit
ab5f5241d0
218 files changed
+4008
-270
No files matched your search
@@ -1,6 +1,7 @@
|
||||
#include "stdafx.h"
|
||||
#include "UI.h"
|
||||
#include "UIScene_SignEntryMenu.h"
|
||||
#include "DirectTextEdit.h"
|
||||
#include "..\..\Minecraft.h"
|
||||
#include "..\..\MultiPlayerLocalPlayer.h"
|
||||
#include "..\..\MultiPlayerLevel.h"
|
||||
@@ -149,7 +150,10 @@ int UIScene_SignEntryMenu::KeyboardCompleteCallback(LPVOID lpParam,bool bRes)
|
||||
{
|
||||
uint16_t pchText[128];
|
||||
ZeroMemory(pchText, 128 * sizeof(uint16_t) );
|
||||
InputManager.GetText(pchText);
|
||||
#ifdef _WINDOWS64
|
||||
if (!DirectTextEdit::TakeText(pchText, 128))
|
||||
#endif
|
||||
InputManager.GetText(pchText);
|
||||
pClass->m_textInputLines[pClass->m_iEditingLine].setLabel((wchar_t *)pchText);
|
||||
}
|
||||
return 0;
|
||||
@@ -169,8 +173,14 @@ void UIScene_SignEntryMenu::handlePress(F64 controlId, F64 childId)
|
||||
case eControl_Line3:
|
||||
case eControl_Line4:
|
||||
{
|
||||
m_iEditingLine = (int)controlId;
|
||||
m_bIgnoreInput = true;
|
||||
m_iEditingLine = (int)controlId;
|
||||
#ifdef _WINDOWS64
|
||||
DirectTextEdit::Begin(&m_textInputLines[m_iEditingLine], NULL, m_textInputLines[m_iEditingLine].getLabel(), 15,
|
||||
C_4JInput::EKeyboardMode_Alphabet,
|
||||
&UIScene_SignEntryMenu::KeyboardCompleteCallback, this);
|
||||
DirectTextEdit::SetLineNav(&UIScene_SignEntryMenu::DirectTextLineNav, this);
|
||||
#else
|
||||
m_bIgnoreInput = true;
|
||||
#ifdef _XBOX_ONE
|
||||
// 4J-PB - Xbox One uses the Windows virtual keyboard, and doesn't have the Xbox 360 Latin keyboard type, so we can't restrict the input set to alphanumeric. The closest we get is the emailSmtpAddress type.
|
||||
int language = XGetLanguage();
|
||||
@@ -188,9 +198,30 @@ void UIScene_SignEntryMenu::handlePress(F64 controlId, F64 childId)
|
||||
#else
|
||||
InputManager.RequestKeyboard(app.GetString(IDS_SIGN_TITLE),m_textInputLines[m_iEditingLine].getLabel(),(DWORD)m_iPad,15,&UIScene_SignEntryMenu::KeyboardCompleteCallback,this,C_4JInput::EKeyboardMode_Alphabet);
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void UIScene_SignEntryMenu::DirectTextLineNav(LPVOID pParam, int iDir)
|
||||
{
|
||||
UIScene_SignEntryMenu *pClass = (UIScene_SignEntryMenu *)pParam;
|
||||
int line = pClass->m_iEditingLine + iDir;
|
||||
if (line < 0 || line > 3)
|
||||
{
|
||||
// Past the last line (Enter/Down): the sign is done.
|
||||
if (iDir > 0)
|
||||
pClass->m_bConfirmed = true;
|
||||
return;
|
||||
}
|
||||
pClass->m_iEditingLine = line;
|
||||
#ifdef _WINDOWS64
|
||||
DirectTextEdit::Begin(&pClass->m_textInputLines[line], NULL, pClass->m_textInputLines[line].getLabel(), 15,
|
||||
C_4JInput::EKeyboardMode_Alphabet,
|
||||
&UIScene_SignEntryMenu::KeyboardCompleteCallback, pClass);
|
||||
DirectTextEdit::SetLineNav(&UIScene_SignEntryMenu::DirectTextLineNav, pClass);
|
||||
#endif
|
||||
}
|
||||
|
||||
void UIScene_SignEntryMenu::handleDestroy()
|
||||
|
||||
Reference in new issue
Block a user