Files
player/Project/Src/MyWinApp/mywin_user_theme.c

88 lines
2.3 KiB
C
Raw Normal View History

#include "mywin_user_theme.h"
2025-06-27 00:32:57 +08:00
#include "flash_manager.h"
#include "mywin_inc.h"
2025-06-27 00:32:57 +08:00
#include "mywin_user_menu.h"
#include "system_file.h"
2025-06-27 00:32:57 +08:00
#include "date.h"
const static MENU_ItemStruct ptr[] = {
{0, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1"},
{0, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>2"},
{0, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>3"},
{0, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>4"},
2025-06-27 00:32:57 +08:00
};
const static char *g_picName[4] = {"1.pic", "2.pic", "3.pic", "4.pic"};
2025-06-27 00:32:57 +08:00
// <20><><EFBFBD><EFBFBD>
WIN_MenuStruct *MENU_ThemeSet(WIN_WindowStruct *base) {
WIN_MenuStruct *menu = WIN_CreatMenu(
base, (void (*)(WIN_WindowStruct *, WIN_MsgStruct *))MENU_ThemeSetMsgLoop,
0, 0, base->x_size, base->y_size);
((WIN_WindowStruct *)menu)->intercept = 1; // <20><><EFBFBD><EFBFBD><EFBFBD>Ͱ<EFBFBD><CDB0><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2025-06-27 00:32:57 +08:00
WIN_SetBackPicPath((WIN_WindowStruct *)menu, base->pic_path);
MENU_SetTitle(menu, 0, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
2025-06-27 00:32:57 +08:00
MENU_SetMaxItem(menu, 4);
for (int i = 0; i < 4; i++) {
MENU_AddItem(menu, ptr[i].img, (char *)ptr[i].txt);
}
2025-06-27 00:32:57 +08:00
WIN_ShowWindow((WIN_WindowStruct *)menu);
return menu;
2025-06-27 00:32:57 +08:00
}
static void MENU_Enter(WIN_MenuStruct *menu) {
SysFile_SetBackPicPath((char *)g_picName[MENU_GetIndex(menu)]);
WIN_WindowStruct *home = WIN_GetWinByTitle(0, "home");
if (home) {
WIN_SetBackPicPath(home, SysFile_GetSysFile()->backPicPath);
MSGBOX_TipsTime((WIN_WindowStruct *)menu, "<EFBFBD><EFBFBD>ʾ", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѹ<EFBFBD><EFBFBD><EFBFBD>", "ȷ<EFBFBD><EFBFBD>",
5000);
} else {
MSGBOX_TipsTime((WIN_WindowStruct *)menu, "<EFBFBD><EFBFBD>ʾ", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>", "ȷ<EFBFBD><EFBFBD>",
5000);
}
// <20><><EFBFBD><EFBFBD>ˢ<EFBFBD><CBA2><EFBFBD>µı<C2B5><C4B1><EFBFBD>
WIN_SetInvalid((WIN_WindowStruct *)menu);
//((WIN_WindowStruct *)menu)->deleteWindow((WIN_WindowStruct *)menu);
}
2025-06-27 00:32:57 +08:00
// <20><>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void MENU_ThemeSetMsgLoop(WIN_MenuStruct *menu, WIN_MsgStruct *msg) {
WIN_MoveStruct *m = 0;
WIN_TouchStruct *t = 0;
WIN_KeyStruct *k = 0;
switch (msg->msg) {
case WIN_MSG_KEY:
k = msg->data.p;
if (k->shortPress & KEY_VALUE_ENTER) {
MENU_Enter(menu);
} else {
MENU_DefaultMsgLoop(menu, msg);
}
break; // case WIN_MSG_KEY:
case WIN_MSG_MOVE:
m = msg->data.p;
switch (m->moveType) {
case MOVE_DATA_SHORT:
if (m->y_move > ((WIN_WindowStruct *)menu)->y_size / 2 - 20 &&
m->y_move < ((WIN_WindowStruct *)menu)->y_size / 2 + 20) {
MENU_Enter(menu);
}
break;
default:
MENU_DefaultMsgLoop(menu, msg);
break;
}
break;
default:
MENU_DefaultMsgLoop(menu, msg);
break;
}
2025-06-27 00:32:57 +08:00
}