diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuGeneral.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuGeneral.c index 2c054fb53..422b299d3 100644 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuGeneral.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuGeneral.c @@ -22,11 +22,11 @@ TMDEF_BEGIN_OPTIONS(VIDEA_LENGTH) TMDEF_OPTION_TEXT_S(VIDEA_LENGTH_10S, TM_OPTION_ENABLE) TMDEF_OPTION_TEXT_S(VIDEA_LENGTH_15S, TM_OPTION_ENABLE) TMDEF_END_OPTIONS() -TMDEF_BEGIN_OPTIONS(NIGHT_MODE) -TMDEF_OPTION_TEXT_S(NIGHT_MODE_MAX_RANGE, TM_OPTION_ENABLE) -TMDEF_OPTION_TEXT_S(NIGHT_MODE_BALANCE, TM_OPTION_ENABLE) -TMDEF_OPTION_TEXT_S(NIGHT_MODE_MINBLUR, TM_OPTION_ENABLE) -TMDEF_END_OPTIONS() +// TMDEF_BEGIN_OPTIONS(NIGHT_MODE) +// TMDEF_OPTION_TEXT_S(NIGHT_MODE_MAX_RANGE, TM_OPTION_ENABLE) +// TMDEF_OPTION_TEXT_S(NIGHT_MODE_BALANCE, TM_OPTION_ENABLE) +// TMDEF_OPTION_TEXT_S(NIGHT_MODE_MINBLUR, TM_OPTION_ENABLE) +// TMDEF_END_OPTIONS() TMDEF_BEGIN_OPTIONS(FLASH_POWER) TMDEF_OPTION_TEXT_S(FLASH_POWER_HIGH, TM_OPTION_ENABLE) TMDEF_OPTION_TEXT_S(FLASH_POWER_LOW, TM_OPTION_ENABLE) @@ -55,7 +55,7 @@ TMDEF_ITEM_TEXTID(CAMERA_MODE) TMDEF_ITEM_TEXTID(IMAGE_SIZE) TMDEF_ITEM_TEXTID(VIDEO_SIZE) TMDEF_ITEM_TEXTID(VIDEA_LENGTH) -TMDEF_ITEM_TEXTID(NIGHT_MODE) +// TMDEF_ITEM_TEXTID(NIGHT_MODE) TMDEF_ITEM_TEXTID(FLASH_POWER) TMDEF_ITEM_TEXTID(SENSITIVITY) TMDEF_ITEM_TEXTID(DELAY) diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.c index 002f648ff..56c28de92 100644 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.c @@ -1,6 +1,7 @@ // #include "MenuQR.h" #include "PrjInc.h" #include "UIWnd/UIFlow.h" +#include "UIFlowLVGL/UIFlowLVGL.h" #include "lvgl/src/lv_lib_qrcode/lv_qrcode.h" TMDEF_BEGIN_OPTIONS(NETWORK_SELECTION) TMDEF_OPTION_TEXT_S(END, TM_OPTION_ENABLE) @@ -124,4 +125,243 @@ void hidde_qr_picture_page(void) { lv_obj_del(label); } -} \ No newline at end of file +} + +static int CameraInfoIndex = 0; +static lv_obj_t *CameraInfolabel = NULL; +static int CameraInfoisHidden = 1; +static lv_obj_t *CameraInfoTabLabel = NULL; +static lv_obj_t * btnm = NULL; +void update_Camera_Info_msg(lv_obj_t* obj) +{ + static lv_style_t LabelStyle = {0}; + static lv_style_t FocusedLabelStyle = {0}; + if(NULL == CameraInfolabel) + { + lv_color_t color = {0}; + lv_style_init(&LabelStyle); + STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&LabelStyle, LV_STATE_DEFAULT, color); + STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_text_color(&LabelStyle, LV_STATE_DEFAULT, color); + lv_style_set_text_font(&LabelStyle,LV_STATE_DEFAULT,&sf_ui_text_medium_18_8bpp); + lv_style_set_text_line_space(&LabelStyle, LV_STATE_DEFAULT, 4); + + lv_style_copy(&FocusedLabelStyle, &LabelStyle); + STYLE_COLOR_PROP(0x10, 0x95, 0xC9, 0x3D) ; lv_style_set_text_color(&FocusedLabelStyle, LV_STATE_DEFAULT, color); + + + + CameraInfolabel = lv_label_create(obj, NULL); + lv_label_set_text(CameraInfolabel, ""); + lv_obj_set_pos(CameraInfolabel, 10, 45); + lv_obj_set_width(CameraInfolabel, 300); + lv_obj_add_style(CameraInfolabel, 0, &LabelStyle); + + + // CameraInfoTabLabel = lv_label_create(obj, NULL); + // // lv_obj_set_style_local_text_color(CameraInfoTabLabel, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0xffffff)); + // lv_label_set_recolor(CameraInfoTabLabel, true); + // lv_label_set_text(CameraInfoTabLabel, "#ff 1# #ffff 2# #ffffff 3#"); + // // lv_obj_set_pos(CameraInfoTabLabel, 10, 210); + // lv_obj_set_width(CameraInfolabel, 300); + // lv_obj_align(CameraInfoTabLabel, NULL, LV_ALIGN_IN_BOTTOM_MID, 0, 0); + // lv_obj_add_style(CameraInfoTabLabel, 0, &FocusedLabelStyle); + // lv_obj_set_width(CameraInfoTabLabel, 320); + // lv_obj_set_style_text_align(CameraInfoTabLabel, LV_TXT_FLAG_CENTER, LV_STATE_DEFAULT);//ALIGN_LEFT/RIGHT/CENTER + // lv_label_set_align(CameraInfoTabLabel, LV_LABEL_ALIGN_CENTER); + + } + + UIMenuStoreInfo *puiPara = sf_ui_para_get(); + char CamInfoStr[256] = {0}; + char tmpStr[64] = {0}; + if(CameraInfoIndex == 0) + { + for(int i=0;i<6;i++) + { + memset(tmpStr, 0, sizeof(tmpStr)); + switch(i) + { + case 0: + strcat(CamInfoStr, "Ver:R5.0\n"); + break; + case 1: + if(!CameraInfoisHidden) + { + strcat(CamInfoStr, "7MR5RCwD801\n"); + } + else if(puiPara->QLogSwitch) + { + strcat(CamInfoStr, "Qlog ON\n"); + } + else + { + strcat(CamInfoStr, "Qlog OFF\n"); + } + break; + case 2: + sprintf(tmpStr, "IMEI:%s\n", puiPara->ModuleImei); + strcat(CamInfoStr, tmpStr); + break; + case 3: + sprintf(tmpStr, "MCU:\n"); + strcat(CamInfoStr, tmpStr); + break; + case 4: + if(!CameraInfoisHidden) + { + strcat(CamInfoStr, "7MR5RCwD801\n"); + } + else if(puiPara->DebugMode) + { + strcat(CamInfoStr, "Debug ON\n"); + } + else + { + strcat(CamInfoStr, "Debug OFF\n"); + } + break; + case 5: + sprintf(tmpStr, "MOD:\n"); + strcat(CamInfoStr, tmpStr); + break; + default: + break; + } + } + } + else if(CameraInfoIndex == 1) + { + for(int i=0;i<5;i++) + { + memset(tmpStr, 0, sizeof(tmpStr)); + switch(i) + { + case 0: + sprintf(tmpStr, "ICCID:%s\n", puiPara->SimIccid); + strcat(CamInfoStr, tmpStr); + break; + case 1: + sprintf(tmpStr, "ICCID-A:\n"); + strcat(CamInfoStr, tmpStr); + break; + case 2: + sprintf(tmpStr, "ICCID-V:\n"); + strcat(CamInfoStr, tmpStr); + break; + case 3: + sprintf(tmpStr, "SSID:%s\n", puiPara->strSSID); + strcat(CamInfoStr, tmpStr); + break; + case 4: + sprintf(tmpStr, "BLE:\n"); + strcat(CamInfoStr, tmpStr); + default: + break; + } + } + } + + lv_btnmatrix_set_focused_btn(btnm, CameraInfoIndex); + + lv_label_set_text(CameraInfolabel, CamInfoStr); +} + +void show_Camera_Info_page(lv_obj_t* obj) +{ + CameraInfoIndex = 0; + CameraInfoisHidden = 1; + + lv_color_t color = {0}; + + static lv_style_t style_bg; + lv_style_init(&style_bg); + lv_style_set_pad_all(&style_bg, LV_STATE_DEFAULT, 0); + lv_style_set_clip_corner(&style_bg, LV_STATE_DEFAULT, true); + lv_style_set_radius(&style_bg, LV_STATE_DEFAULT, LV_RADIUS_CIRCLE); + lv_style_set_border_width(&style_bg, LV_STATE_DEFAULT, 0); + color.full = 0x1; lv_style_set_bg_color(&style_bg, LV_STATE_DEFAULT, color); + color.full = 0x1; lv_style_set_bg_color(&style_bg, LV_STATE_FOCUSED, color); + + static lv_style_t style_btn; + lv_style_init(&style_btn); + lv_style_set_radius(&style_btn, LV_STATE_DEFAULT, 0); + lv_style_set_border_width(&style_btn, LV_STATE_DEFAULT, 1); + lv_style_set_border_opa(&style_btn, LV_STATE_DEFAULT, LV_OPA_50); + lv_style_set_border_side(&style_btn, LV_STATE_DEFAULT, LV_BORDER_SIDE_INTERNAL); + lv_style_set_radius(&style_btn, LV_STATE_DEFAULT, 0); + + color.full = 0x1; lv_style_set_bg_color(&style_btn, LV_STATE_DEFAULT, color); + color.full = 0x1; lv_style_set_bg_color(&style_btn, LV_STATE_FOCUSED, color); + color.full = 0x2; lv_style_set_text_color(&style_btn, LV_STATE_DEFAULT, color); + color.full = 0xc8;lv_style_set_text_color(&style_btn, LV_STATE_FOCUSED, color); + + static const char * map[] = {"1", "2", "3", ""}; + + btnm = lv_btnmatrix_create(lv_scr_act(), NULL); + lv_btnmatrix_set_map(btnm, map); + lv_obj_add_style(btnm, 0, &style_bg); + lv_obj_add_style(btnm, 1, &style_btn); + lv_obj_set_pos(btnm, 10, 210); + lv_obj_set_size(btnm, 225, 35); + + lv_btnmatrix_set_btn_ctrl_all(btnm, LV_BTNMATRIX_CTRL_CHECKABLE); + lv_btnmatrix_set_focused_btn(btnm, 0); + + update_Camera_Info_msg(obj); + +} + +void hidde_Camera_Info_page(void) +{ + CameraInfoIndex = 0; + CameraInfoisHidden = 0; + if(CameraInfolabel) + { + lv_obj_del(CameraInfolabel); + } + if(CameraInfoTabLabel) + { + lv_obj_del(CameraInfoTabLabel); + } +} + +void Option_CAMERA_INFO_Key(lv_obj_t* obj, uint32_t key) +{ + UIMenuStoreInfo *puiPara = sf_ui_para_get(); + printf("key:%d\n",key); + switch(key) + { + case LV_USER_KEY_NEXT: + printf("\033[33m[Option_CAMERA_INFO_Key]s\033[0m\n"); + puiPara->QLogSwitch = puiPara->QLogSwitch ? 0 : 1; + update_Camera_Info_msg(obj); + break; + case LV_USER_KEY_PREV: + printf("\033[33m[Option_CAMERA_INFO_Key]w\033[0m\n"); + puiPara->DebugMode = puiPara->DebugMode ? 0 : 1; + update_Camera_Info_msg(obj); + break; + case LV_USER_KEY_LEFT: + printf("\033[33m[Option_CAMERA_INFO_Key]a\033[0m\n"); + CameraInfoIndex--; + if(CameraInfoIndex < 0) + CameraInfoIndex = 0; + update_Camera_Info_msg(obj); + break; + case LV_USER_KEY_RIGHT: + printf("\033[33m[Option_CAMERA_INFO_Key]d\033[0m\n"); + CameraInfoIndex++; + if(CameraInfoIndex > 1) + CameraInfoIndex = 1; + update_Camera_Info_msg(obj); + break; + case LV_USER_KEY_SHUTTER2: + printf("\033[33m[Option_CAMERA_INFO_Key]SELECT\033[0m\n"); + lv_plugin_scr_close(obj, gen_nvtmsg_data(NVTRET_ENTER_MENU, 0)); + break; + default: + break; + } + +} + diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.h b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.h index c94d86ce4..359ba2584 100644 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.h +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.h @@ -6,5 +6,8 @@ extern TM_ITEM gTM_ITEMS_QR[]; extern void show_qr_picture_page(lv_obj_t* obj); extern void hidde_qr_picture_page(void); +extern void show_Camera_Info_page(lv_obj_t* obj); +extern void hidde_Camera_Info_page(void); +extern void Option_CAMERA_INFO_Key(lv_obj_t* obj, uint32_t key); #endif diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/UIFlowMenuCommonItemEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/UIFlowMenuCommonItemEventCallback.c index 53d5af92a..4985265cf 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/UIFlowMenuCommonItemEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/UIFlowMenuCommonItemEventCallback.c @@ -330,6 +330,8 @@ void LV_MenuItem_OnOpen(lv_obj_t* obj) pCurMenu->pPages[3]= gMoreMenu.pPages[0]; //= QR_UI pCurMenu->Count = 4; + + TM_SetMenu(pCurMenu); pMenu = TM_GetMenu(); @@ -438,6 +440,7 @@ static void LV_MenuCommonItem_UpdateContent(TM_MENU *pMenu) if ((itemIndex == pPage->Count) && (i < PER_PAGE_NUM)) { // if ((pPage->SelItem >= pPage->Count) && (i < PER_PAGE_NUM)) { + CHKPNT; lv_plugin_menu_set_item_string_id(menu_item, i, LV_PLUGIN_MENU_ITEM_VISIBLE_STATE_NUM, pItem->TextId); lv_plugin_menu_set_item_img_id(menu_item, i, LV_PLUGIN_MENU_ITEM_VISIBLE_STATE_NUM, pItem->IconId); @@ -498,6 +501,7 @@ static void LV_MenuCommonItem_UpdateContent(TM_MENU *pMenu) if(!u_hiddenitem){ + if(i == 0){ lv_obj_set_hidden(image_option_01_scr_uiflowmenucommonitem, true); lv_plugin_label_set_text(label_option_1_scr_uiflowmenucommonitem, pOption->TextId); @@ -525,6 +529,7 @@ static void LV_MenuCommonItem_UpdateContent(TM_MENU *pMenu) lv_obj_set_hidden(container_option_5_scr_uiflowmenucommonitem, false); } }else{ + if(i == 0){ lv_obj_set_hidden(container_option_1_scr_uiflowmenucommonitem, true); lv_plugin_img_set_src(image_option_01_scr_uiflowmenucommonitem, img_id); diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonOption/UIFlowMenuCommonOptionEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonOption/UIFlowMenuCommonOptionEventCallback.c index 311e7b9b1..f35cd572e 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonOption/UIFlowMenuCommonOptionEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonOption/UIFlowMenuCommonOptionEventCallback.c @@ -87,12 +87,98 @@ static int is_message_item(lv_obj_t* obj) pItem = &pPage->pItems[pPage->SelItem]; UINT16 itemID = pItem->ItemId; switch (itemID) { + // case IDM_NETWORK_SELECTION: + // { + // printf("[is_message_item]IDM_NETWORK_SELECTION\n"); + // return; + // } case IDM_QR_PICTURE: { - printf("Show qr picture.\n"); + printf("[is_message_item]IDM_QR_PICTURE\n"); show_qr_picture_page(obj); return MESSAGE_ITEM_TRUE; } + // case IDM_PASSWORD: + // { + // printf("[is_message_item]IDM_PASSWORD\n"); + // return; + // } + case IDM_CAMERA_INFO: + { + printf("[is_message_item]IDM_CAMERA_INFO\n"); + show_Camera_Info_page(obj); + return MESSAGE_ITEM_TRUE; + } + // case IDM_CAMERA_NAME: + // { + // printf("[is_message_item]IDM_CAMERA_NAME\n"); + // return; + // } + + case IDM_CAMERA_MODE: + { + printf("[is_message_item]IDM_CAMERA_MODE\n"); + // for (i = 0; i < pItem->Count; i++) { + // //check option if disable + // TM_CheckOptionStatus(pMenu, &itemIndex, TRUE); + // if(itemIndex > pItem->Count){ + // break; + // } + // enableIndex[i] = itemIndex; + // //DBG_DUMP("%s enableIndex=%d :%d\r\n", __func__,i,enableIndex[i]); + // OptionEN_Num = i; + // if(enableIndex[i] == SelOption){ + // Selindex = i; + // } + // itemIndex++; + // } + return MESSAGE_ITEM_FALSE; + } + case IDM_IMAGE_SIZE: + { + printf("[is_message_item]IDM_IMAGE_SIZE\n"); + return MESSAGE_ITEM_FALSE; + } + case IDM_VIDEO_SIZE: + { + printf("[is_message_item]IDM_VIDEO_SIZE\n"); + return MESSAGE_ITEM_FALSE; + } + case IDM_VIDEA_LENGTH: + { + printf("[is_message_item]IDM_VIDEA_LENGTH\n"); + return MESSAGE_ITEM_FALSE; + } + case IDM_FLASH_POWER: + { + printf("[is_message_item]IDM_FLASH_POWER\n"); + return MESSAGE_ITEM_FALSE; + } + case IDM_SENSITIVITY: + { + printf("[is_message_item]IDM_SENSITIVITY\n"); + return MESSAGE_ITEM_TRUE; + } + case IDM_DELAY: + { + printf("[is_message_item]IDM_DELAY\n"); + return MESSAGE_ITEM_FALSE; + } + case IDM_OPERATING_TIME: + { + printf("[is_message_item]IDM_OPERATING_TIME\n"); + return MESSAGE_ITEM_FALSE; + } + case IDM_FORMAT_SD: + { + printf("[is_message_item]IDM_FORMAT_SD\n"); + return MESSAGE_ITEM_TRUE; + } + case IDM_DATE_AND_TIME: + { + printf("[is_message_item]IDM_DATE_AND_TIME\n"); + return MESSAGE_ITEM_FALSE; + } default: break; } @@ -107,12 +193,23 @@ static void message_item_close(void) pItem = &pPage->pItems[pPage->SelItem]; UINT16 itemID = pItem->ItemId; switch (itemID) { + case IDM_NETWORK_SELECTION: + { + printf("[message_item_close]IDM_NETWORK_SELECTION\n"); + return; + } case IDM_QR_PICTURE: { - printf("hide qr picture.\n"); - hidde_qr_picture_page(); - return ; + printf("[message_item_close]IDM_QR_PICTURE\n"); + hidde_qr_picture_page(); + return; } + // case IDM_NETWORK_SELECTION: + // { + // printf("[message_item_close]IDM_NETWORK_SELECTION\n"); + // return; + // } + default: break; } @@ -207,6 +304,7 @@ static void LV_MenuCommonOption_UpdateContent(TM_MENU *pMenu) else { lv_obj_set_hidden(container_main_menu_scr_uiflowmenucommonoption, true); + return; } #endif //find startIndex @@ -242,18 +340,18 @@ static void LV_MenuCommonOption_UpdateContent(TM_MENU *pMenu) pOption = &pItem->pOptions[enableIndex[i + (Selindex * OPTION_PAGE_NUM)]]; if (((enableIndex[i + (Selindex * OPTION_PAGE_NUM)]) > (pItem->Count -1)) && (i < OPTION_PAGE_NUM)) { lv_plugin_menu_set_item_string_id(menu_item, i, LV_PLUGIN_MENU_ITEM_VISIBLE_STATE_NUM, pOption->TextId); - //lv_plugin_menu_set_item_img_id(menu_item, i, LV_PLUGIN_MENU_ITEM_VISIBLE_STATE_NUM, pOption->IconId); + lv_plugin_menu_set_item_img_id(menu_item, i, LV_PLUGIN_MENU_ITEM_STATE_DISABLED, pOption->IconId); lv_plugin_menu_set_item_hidden(menu_item, i, true); ui_hidden = true; }else if((i + (Selindex * OPTION_PAGE_NUM)) > OptionEN_Num){ lv_plugin_menu_set_item_string_id(menu_item, i, LV_PLUGIN_MENU_ITEM_VISIBLE_STATE_NUM, pOption->TextId); - //lv_plugin_menu_set_item_img_id(menu_item, i, LV_PLUGIN_MENU_ITEM_VISIBLE_STATE_NUM, pOption->IconId); + lv_plugin_menu_set_item_img_id(menu_item, i, LV_PLUGIN_MENU_ITEM_STATE_DISABLED, pOption->IconId); lv_plugin_menu_set_item_hidden(menu_item, i, true); ui_hidden = true; }else{ lv_plugin_menu_set_item_string_id(menu_item, i, LV_PLUGIN_MENU_ITEM_VISIBLE_STATE_NUM, pOption->TextId); - //lv_plugin_menu_set_item_img_id(menu_item, i, LV_PLUGIN_MENU_ITEM_VISIBLE_STATE_NUM, pOption->IconId); + lv_plugin_menu_set_item_img_id(menu_item, i, LV_PLUGIN_MENU_ITEM_STATE_DISABLED, pOption->IconId); lv_plugin_menu_set_item_hidden(menu_item, i, false); ui_hidden = true; if(enableIndex[i+(Selindex * OPTION_PAGE_NUM)] == SelOption){ @@ -599,32 +697,43 @@ static void UIFlowMenuCommonOption_Key(lv_obj_t* obj, uint32_t key) void UIFlowMenuCommonOptionEventCallback(lv_obj_t* obj, lv_event_t event) { - + TM_MENU* pMenu = TM_GetMenu(); + TM_PAGE* pPage; + TM_ITEM* pItem; + pPage = &pMenu->pPages[pMenu->SelPage]; + pItem = &pPage->pItems[pPage->SelItem]; + UINT16 itemID = pItem->ItemId; + switch(event) { case LV_PLUGIN_EVENT_SCR_OPEN: { + printf("\033[33m[UIFlowMenuCommonOptionEventCallback]LV_PLUGIN_EVENT_SCR_OPEN\033[0m\n"); UIFlowMenuCommonOption_ScrOpen(obj, lv_event_get_data()); break; } case LV_PLUGIN_EVENT_SCR_CLOSE: { + printf("\033[33m[UIFlowMenuCommonOptionEventCallback]LV_PLUGIN_EVENT_SCR_CLOSE\033[0m\n"); UIFlowMenuCommonOption_ScrClose(obj); break; } case LV_PLUGIN_EVENT_CHILD_SCR_CLOSE: { + printf("\033[33m[UIFlowMenuCommonOptionEventCallback]LV_PLUGIN_EVENT_CHILD_SCR_CLOSE\033[0m\n"); UIFlowMenuCommonOption_ChildScrClose(obj); break; } case LV_EVENT_PRESSED: + printf("\033[33m[UIFlowMenuCommonOptionEventCallback]LV_EVENT_PRESSED\033[0m\n"); lv_plugin_menu_set_selected_item_pressed(menu_item); break; case LV_EVENT_RELEASED: + printf("\033[33m[UIFlowMenuCommonOptionEventCallback]LV_EVENT_RELEASED\033[0m\n"); lv_plugin_menu_set_selected_item_released(menu_item); break; @@ -638,7 +747,38 @@ void UIFlowMenuCommonOptionEventCallback(lv_obj_t* obj, lv_event_t event) uint32_t* key = (uint32_t*)lv_event_get_data(); printf("\033[33m[UIFlowMenuCommonOptionEventCallback]LV_EVENT_KEY key:%d\033[0m\n", *key); /* handle key event */ - UIFlowMenuCommonOption_Key(obj, *key); + switch(itemID) + { + case IDM_NETWORK_SELECTION: + break; + case IDM_QR_PICTURE: + UIFlowMenuCommonOption_Key(obj, *key); + break; + case IDM_PASSWORD: + break; + case IDM_CAMERA_INFO: + Option_CAMERA_INFO_Key(obj, *key); + break; + case IDM_CAMERA_NAME: + break; + + case IDM_CAMERA_MODE: + case IDM_IMAGE_SIZE: + case IDM_VIDEO_SIZE: + case IDM_VIDEA_LENGTH: + case IDM_FLASH_POWER: + UIFlowMenuCommonOption_Key(obj, *key); + break; + case IDM_SENSITIVITY: + case IDM_DELAY: + case IDM_OPERATING_TIME: + case IDM_FORMAT_SD: + case IDM_DATE_AND_TIME: + break; + default: + break; + } + /***********************************************************************************