Files
player/Project/Src/MyWin/Window/mywin_input.h

89 lines
2.3 KiB
C
Raw Normal View History

2025-06-27 00:32:57 +08:00
#ifndef MYWIN_INPUT_H__
#define MYWIN_INPUT_H__
2025-07-06 18:46:13 +08:00
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>
#define INPUT_WORDS_MAXNUM 256
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>뷨״̬
#define INPUT_MODE_PINYIN 0
#define INPUT_MODE_BIG 1
#define INPUT_MODE_MINI 2
#define INPUT_MODE_NUM 3
#define INPUT_MODE_SYMBOL 4
typedef struct {
int x;
int y;
int x_size;
int y_size;
int press;
char txt[10];
} INPUT_ButtonStruct;
typedef struct {
WIN_WindowStruct win;
int pinyin_y; // ƴ<><C6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
int button_ysize; // <20><><EFBFBD><EFBFBD>Y<EFBFBD><EFBFBD><E1B7BD><EFBFBD>ijߴ<C4B3>
int exit; // <20>Ѵ<EFBFBD><D1B4><EFBFBD><EFBFBD><EFBFBD>Ϊ1<CEAA><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB7A8><EFBFBD><EFBFBD>
int press_x; // <20><>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int press_y;
int press_down_index; // <20><><EFBFBD>ڰ<EFBFBD><DAB0><EFBFBD>״̬<D7B4>ļ<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
int press_down_index_word; // <20><><EFBFBD>ڰ<EFBFBD><DAB0><EFBFBD>״̬<D7B4>ĺ<EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int word_page; // <20><>ѡ<EFBFBD>ַ<EFBFBD>ҳ
int num_symbol_page; // <20><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>ҳ
u8 *word_const; // <20><>ѡ<EFBFBD>ִ<EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>
int inputMode; // <20><><EFBFBD>뷨״̬<D7B4><CCAC>0<EFBFBD><30>ƴ<EFBFBD><C6B4><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD>д<EFBFBD><D0B4>2<EFBFBD><32>Сд<D0A1><D0B4>3<EFBFBD><33><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD>4<EFBFBD><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
char inputPinyin[10]; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4>
char candidateWord[3]; // <20><>ѡ<EFBFBD>֣<EFBFBD>
INPUT_ButtonStruct word[10]; // <20><>ѡ<EFBFBD>ְ<EFBFBD><D6B0><EFBFBD>
char inputWords[INPUT_WORDS_MAXNUM]; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>
INPUT_ButtonStruct button[37];
} WIN_InputStruct;
// <20>ڶ<EFBFBD><DAB6>д<EFBFBD><D0B4><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>
WIN_InputStruct *WIN_CreatInput(WIN_WindowStruct *base,
void (*msgLoop)(struct _WIN_WindowStruct *win,
WIN_MsgStruct *msg),
int x, int y, int x_size, int y_size);
// <20><><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><C4B8>д
void INPUT_SetToAscBig(WIN_InputStruct *input);
// <20><><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>ĸСд
void INPUT_SetToAscMini(WIN_InputStruct *input);
// <20><><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void INPUT_SetToNum(WIN_InputStruct *input);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void INPUT_SetPressDown(WIN_InputStruct *input);
// <20><><EFBFBD><EFBFBD>̧<EFBFBD><CCA7>
void INPUT_SetPressUp(WIN_InputStruct *input);
// <20><><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4>
void INPUT_PinYinAppend(WIN_InputStruct *input);
// ƴ<><C6B4><EFBFBD>ض<EFBFBD>
void INPUT_PinYinCut(WIN_InputStruct *input);
// <20><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7>ض<EFBFBD>
void INPUT_WordCut(WIN_InputStruct *input);
// ׷<><D7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>
void INPUT_WordAppend(WIN_InputStruct *input);
// <20><>ѯ<EFBFBD><D1AF>ѡ<EFBFBD>ַ<EFBFBD>
void INPUT_FindWord(WIN_InputStruct *input);
// Ĭ<>ϻ<EFBFBD><CFBB>ƺ<EFBFBD><C6BA><EFBFBD>
void INPUT_DefaultPaint(WIN_InputStruct *input);
// Ĭ<><C4AC><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void INPUT_DefaultMsgLoop(WIN_InputStruct *input, WIN_MsgStruct *msg);
// ʹ<>ü<EFBFBD><C3BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD>
int INPUT_KeyBoard(WIN_WindowStruct *win, char *txt, int len);
2025-06-27 00:32:57 +08:00
#endif