Fix setting page bug on select page.

This commit is contained in:
xiaojiazhu 2023-10-14 20:24:35 +08:00
parent 5ba4a9f588
commit bd661101d5
3 changed files with 22 additions and 5 deletions

View File

@ -34,6 +34,9 @@ TMDEF_END_ITEMS()
// QR Menu Pages // QR Menu Pages
TMDEF_BEGIN_PAGES(QR) TMDEF_BEGIN_PAGES(QR)
TMDEF_PAGE_TEXT_ICON(QR) TMDEF_PAGE_TEXT_ICON(QR)
TMDEF_PAGE_TEXT_ICON(QR)
TMDEF_PAGE_TEXT_ICON(QR)
TMDEF_PAGE_TEXT_ICON(QR)
TMDEF_END_PAGES() TMDEF_END_PAGES()
TMDEF_EMNU(gQrMenu, QR, Qr_MenuCallback) TMDEF_EMNU(gQrMenu, QR, Qr_MenuCallback)

View File

@ -18,6 +18,9 @@ void TM_SelectTab(TM_MENU *pMenu, INT32 iNewSel)
} else { } else {
pMenu->SelPage = iNewSel; pMenu->SelPage = iNewSel;
} }
printf("iNewSel:%d\n", iNewSel);
printf("page count:%d\n", pMenu->Count);
printf("select page changed:%d\n", pMenu->SelPage);
} }
void TM_ShiftTab(TM_MENU *pMenu, INT32 iOffset) void TM_ShiftTab(TM_MENU *pMenu, INT32 iOffset)

View File

@ -118,10 +118,12 @@ static void LV_MenuItem_OnUp(lv_obj_t* obj)
if (pMenu->Status == TMS_ON_TAB) if (pMenu->Status == TMS_ON_TAB)
{ {
printf("handle on tab.\n");
TM_ShiftTab(pMenu, -1); TM_ShiftTab(pMenu, -1);
lv_plugin_menu_select_prev_item(menu_tab); lv_plugin_menu_select_prev_item(menu_tab);
LV_MenuCommonItem_UpdateContent(pMenu); LV_MenuCommonItem_UpdateContent(pMenu);
}else{ }else{
printf("handle on item.\n");
lv_plugin_scr_close(obj, NULL); lv_plugin_scr_close(obj, NULL);
} }
} }
@ -134,10 +136,12 @@ static void LV_MenuItem_OnDown(lv_obj_t* obj)
if (pMenu->Status == TMS_ON_TAB) if (pMenu->Status == TMS_ON_TAB)
{ {
printf("handle on tab.\n");
TM_ShiftTab(pMenu, +1); TM_ShiftTab(pMenu, +1);
lv_plugin_menu_select_next_item(menu_tab); lv_plugin_menu_select_next_item(menu_tab);
LV_MenuCommonItem_UpdateContent(pMenu); LV_MenuCommonItem_UpdateContent(pMenu);
}else{ }else{
printf("handle on item.\n");
LV_MenuItem_OnSelected(obj); LV_MenuItem_OnSelected(obj);
} }
} }
@ -249,10 +253,11 @@ void LV_MenuItem_OnOpen(lv_obj_t* obj)
pCurMenu->pPages[3]= gPlaybackMenu.pPages[0]; //= QR_UI pCurMenu->pPages[3]= gPlaybackMenu.pPages[0]; //= QR_UI
pCurMenu->pPages[4]= gSetupMenu.pPages[0]; //= QR_UI pCurMenu->pPages[4]= gSetupMenu.pPages[0]; //= QR_UI
#endif #endif
pCurMenu->pPages[0]= gSFMoreMenu.pPages[0]; //= QR_UI pCurMenu->pPages[0]= gQrMenu.pPages[0]; //= QR_UI
pCurMenu->pPages[1]= gPhotoMenu.pPages[0]; //= General_UI pCurMenu->pPages[1]= gGeneralMenu.pPages[0]; //= General_UI
pCurMenu->pPages[2]= gPlaybackMenu.pPages[0]; //= Send_UI pCurMenu->pPages[2]= gSendMenu.pPages[0]; //= Send_UI
pCurMenu->pPages[3]= gSetupMenu.pPages[0]; //= QR_UI pCurMenu->pPages[3]= gQrMenu.pPages[0]; //= QR_UI
pCurMenu->Count = 4;
TM_SetMenu(pCurMenu); TM_SetMenu(pCurMenu);
@ -299,6 +304,7 @@ static void LV_MenuCommonItem_UpdateContent(TM_MENU *pMenu)
DBG_DUMP("\r\n %s pMenu FirstPage= %d\r\n", __func__, pMenu->FirstPage); DBG_DUMP("\r\n %s pMenu FirstPage= %d\r\n", __func__, pMenu->FirstPage);
DBG_DUMP("\r\n %s pMenu Count= %d\r\n", __func__, pMenu->Count); DBG_DUMP("\r\n %s pMenu Count= %d\r\n", __func__, pMenu->Count);
#endif #endif
printf("sssssssssssssssssssss select page = %d\n", pMenu->SelPage);
pPage = &pMenu->pPages[pMenu->SelPage]; pPage = &pMenu->pPages[pMenu->SelPage];
pItem = &pPage->pItems[pPage->SelItem]; pItem = &pPage->pItems[pPage->SelItem];
#if 1 #if 1
@ -539,12 +545,14 @@ static void UIFlowMenuCommonItem_Key(lv_obj_t* obj, uint32_t key)
case LV_USER_KEY_NEXT: case LV_USER_KEY_NEXT:
{ {
printf("========================== down.\n");
LV_MenuItem_OnNext(obj); LV_MenuItem_OnNext(obj);
break; break;
} }
case LV_USER_KEY_PREV: case LV_USER_KEY_PREV:
{ {
printf("========================== up.\n");
LV_MenuItem_OnPrev(obj); LV_MenuItem_OnPrev(obj);
break; break;
} }
@ -552,6 +560,7 @@ static void UIFlowMenuCommonItem_Key(lv_obj_t* obj, uint32_t key)
case LV_KEY_LEFT: case LV_KEY_LEFT:
case LV_USER_KEY_UP: case LV_USER_KEY_UP:
{ {
printf("========================== left.\n");
LV_MenuItem_OnUp(obj); LV_MenuItem_OnUp(obj);
break; break;
} }
@ -559,6 +568,7 @@ static void UIFlowMenuCommonItem_Key(lv_obj_t* obj, uint32_t key)
case LV_KEY_RIGHT: case LV_KEY_RIGHT:
case LV_USER_KEY_DOWN: case LV_USER_KEY_DOWN:
{ {
printf("========================== right.\n");
LV_MenuItem_OnDown(obj); LV_MenuItem_OnDown(obj);
break; break;
} }
@ -566,6 +576,7 @@ static void UIFlowMenuCommonItem_Key(lv_obj_t* obj, uint32_t key)
case LV_USER_KEY_SELECT: case LV_USER_KEY_SELECT:
{ {
CHKPNT; CHKPNT;
printf("========================== select.\n");
LV_MenuItem_OnSelected(obj); LV_MenuItem_OnSelected(obj);
break; break;
} }
@ -613,7 +624,7 @@ void container_main_menu_callback(lv_obj_t* obj, lv_event_t event)
void UIFlowMenuCommonItemEventCallback(lv_obj_t* obj, lv_event_t event) void UIFlowMenuCommonItemEventCallback(lv_obj_t* obj, lv_event_t event)
{ {
printf("========================================= %d\n", event);
switch(event) switch(event)
{ {
case LV_PLUGIN_EVENT_SCR_OPEN: case LV_PLUGIN_EVENT_SCR_OPEN: