13 char CharAtCursor, *pCharAtCursor;
14 char sCharAtCursor[5];
19 dword State, SubState;
20 extern TYPE_GrData _TextCursor14_Gd;
23 float AntiAliasFactor;
31 TAP_GetState(&State, &SubState);
40 FMUC_PutStringAA(
OSDMenuKeyboard_rgn, 5, 7, 438,
OSDMenuKeyboard_Title,
COLOR_Orange01, 0, &
KeyboardFont_14, FALSE, ALIGN_CENTER, AntiAliasFactor);
55 FMUC_PutStringAA(
OSDMenuKeyboard_rgn, 23+k*50, 70+(j*50), 70+(k*50),
Keypad[
KeyPadMode][i],
COLOR_Grey19, 0, &
KeyboardFont_14, FALSE, ALIGN_CENTER, AntiAliasFactor);
61 FMUC_PutStringAA(
OSDMenuKeyboard_rgn, 23+k*50, 70+(j*50), 70+(k*50),
Keypad[
KeyPadMode][i],
COLOR_Grey00, 0, &
KeyboardFont_14, FALSE, ALIGN_CENTER, AntiAliasFactor);
73 if(i == 26) keytext =
"Space";
74 else if(i == 27) keytext =
"Backspace";
80 FMUC_PutStringAA(
OSDMenuKeyboard_rgn, 23+k*50, 70+(j*50), 120+(k*50), keytext,
COLOR_Grey19, 0, &
KeyboardFont_14, FALSE, ALIGN_CENTER, AntiAliasFactor);
86 FMUC_PutStringAA(
OSDMenuKeyboard_rgn, 23+k*50, 70+(j*50), 120+(k*50), keytext,
COLOR_Grey00, 0, &
KeyboardFont_14, FALSE, ALIGN_CENTER, AntiAliasFactor);
98 CharAtCursor = *pCharAtCursor;
99 *pCharAtCursor =
'\0';
106 *pCharAtCursor = CharAtCursor;
115 FMUC_PutStringAA(
OSDMenuKeyboard_rgn, x, 280,
MAXX,
"…",
COLOR_Grey19, 0, &
KeyboardFont_14, TRUE, ALIGN_LEFT, AntiAliasFactor);
127 FMUC_PutStringAA(
OSDMenuKeyboard_rgn, x + _TextCursor14_Gd.width, 280,
MAXX,
OSDMenuKeyboard_StringVar,
COLOR_Grey19, 0, &
KeyboardFont_14, TRUE, ALIGN_LEFT, AntiAliasFactor);
131 FMUC_PutStringAA(
OSDMenuKeyboard_rgn, x, 280,
MAXX,
OSDMenuKeyboard_StringVar,
COLOR_Grey19, 0, &
KeyboardFont_14, TRUE, ALIGN_LEFT, AntiAliasFactor);
135 sCharAtCursor[cl] = 0;
141 FMUC_PutStringAA(
OSDMenuKeyboard_rgn, x, 280,
MAXX, StringVarStart,
COLOR_Grey19, 0, &
KeyboardFont_14, TRUE, ALIGN_LEFT, AntiAliasFactor);
153 sCharAtCursor[0] = 0;
160 CharAtCursor = *pCharAtCursor;
161 *pCharAtCursor =
'\0';
162 FMUC_PutStringAA(
OSDMenuKeyboard_rgn, x, 280,
MAXX, StringVarStart,
COLOR_Grey19, 0, &
KeyboardFont_14, TRUE, ALIGN_LEFT, AntiAliasFactor);
170 x += _TextCursor14_Gd.width;
174 *pCharAtCursor = CharAtCursor;
175 FMUC_PutStringAA(
OSDMenuKeyboard_rgn, x, 280,
MAXX, pCharAtCursor,
COLOR_Grey19, 0, &
KeyboardFont_14, TRUE, ALIGN_LEFT, AntiAliasFactor);
179 strncpy(sCharAtCursor, pCharAtCursor, cl);
180 sCharAtCursor[cl] = 0;
186 if (!*sCharAtCursor) strcpy(sCharAtCursor,
" ");
189 FMUC_PutStringAA(
OSDMenuKeyboard_rgn, cx, 280, cx + cw - 1, sCharAtCursor,
COLOR_Grey19,
COLOR_Orange02, &
KeyboardFont_14, TRUE, ALIGN_LEFT, AntiAliasFactor);
char * OSDMenuKeyboard_Title
char Keypad[KPM_NrModes][26][4]
int OSDMenuKeyboard_NrButtons
void OSDMenuKeyboard_DrawLegendButton(dword Line, tButtonIcon ButtonIcon, const char *Text)
char * OSDMenuKeyboard_StringVar
tFontDataUC KeyboardFont_14
int OSDMenuKeyboard_ButtonsX[3]
tOSDMenuKeyboard_Buttons OSDMenuKeyboard_Buttons[20]
int OSDMenuKeyboard_CursorPosition
bool OSDMenuKeyboard_ReturnToNormal
tKeyboardCursor KeyboardCursorType
int OSDMenuKeyboard_TextStartPosition
dword FMUC_GetStringWidth(const char *Text, tFontDataUC *FontData)
void FMUC_PutStringAA(word rgn, dword x, dword y, dword maxX, const char *str, dword fcolor, dword bcolor, tFontDataUC *FontData, byte bDot, byte align, float AntiAliasFactor)
byte * GetUCPos(const byte *String, int CharPos)
bool isUTF8Char(const byte *p, byte *BytesPerChar)