📄 mainmenu.c
字号:
*****************************************************************************/
void main_menu_shortcut_executer(S32 index)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
S32 n_items = GetNumOfChild(IDLE_SCREEN_MENU_ID);
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
if (index >= 0 && index < n_items)
{
execute_left_softkey_function(KEY_EVENT_UP);
}
}
/* /PMT NEERAJ START 20050616 */
#if defined(__MMI_MAINMENU_TAB_SUPPORT__) && defined(__MMI_MAINMENU_STYLE_CHANGE_EN__) /* 071705 Calvin modified */
#include "wgui_categories_tab.h"
/*****************************************************************************
* FUNCTION
* set_main_menu_tab_pane
* DESCRIPTION
* Set tab pane function for main menu in tab pane
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void set_main_menu_tab_pane(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
MMI_ID_TYPE mm_stringIDs[MAX_MAIN_MENU_ITEMS];
MMI_ID_TYPE mm_iconIDs[MAX_MAIN_MENU_ITEMS];
MMI_ID_TYPE mm_iconIDs_display[MAX_MAIN_MENU_ITEMS];
MMI_ID_TYPE *iconList;
S32 n_items;
S32 i;
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
n_items = GetNumOfChild(IDLE_SCREEN_MENU_ID);
GetSequenceStringIds(IDLE_SCREEN_MENU_ID, mm_stringIDs);
GetSequenceImageIds(IDLE_SCREEN_MENU_ID, mm_iconIDs);
for (i = 0; i < (MAIN_MENU_TAB_ICON_IMGBASE_MAX - MAIN_MENU_TAB_ICON_IMGBASE); i++)
{
mm_iconIDs_display[i] = MAIN_MENU_TAB_ICON_IMGBASE + (mm_iconIDs[i] - MAIN_MENU_ICON_IMGBASE);
}
iconList = mm_iconIDs_display;
SetParentHandler(IDLE_SCREEN_MENU_ID);
register_tab_pane_hilite_handler(ExecuteCurrHiliteHandler);
set_tab_pane(n_items, mm_stringIDs, iconList, 0);
}
#endif /* defined(__MMI_MAINMENU_TAB_SUPPORT__) && defined(__MMI_MAINMENU_STYLE_CHANGE_EN__) */
/* PMT NEERAJ END 20050616 */
/*****************************************************************************
* FUNCTION
* main_menu_custom_highlight_handler
* DESCRIPTION
*
* PARAMETERS
* index [IN]
* RETURNS
* void
*****************************************************************************/
void main_menu_custom_highlight_handler(S32 index)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
/* PMT VIKAS START 20050707 */
#ifdef __MMI_UI_DALMATIAN_SOFTKEYS__
gdi_layer_lock_frame_buffer();
#endif
//PMT VIKAS END 20050707
//MTK JL add no key clear hilite
ExecuteCurrHiliteHandler_Ext(index);
//MTK JL end
//PMT VIKAS START 20050707
#ifdef __MMI_UI_DALMATIAN_SOFTKEYS__
gdi_layer_unlock_frame_buffer();
gui_BLT_double_buffer(0, UI_device_height - MMI_BUTTON_BAR_HEIGHT, UI_device_width - 1, UI_device_height - 1);
#endif /* __MMI_UI_DALMATIAN_SOFTKEYS__ */
//PMT VIKAS END 20050707
//MTK Leo add 20040409, to sync titleicon
#ifndef __MMI_MATRIX_MAIN_MENU_NO_TITLEBAR__ /* 030705 Calvin added */
if (MMI_main_menu_type != ROTATE_MENU && MMI_main_menu_type != CIRCULAR_3D_MENU) /* 113004 Calvin added if check */
{
ChangeTitleIcon((U16) gMainMenuTitleIcon[index]);
draw_title();
}
#endif /* __MMI_MATRIX_MAIN_MENU_NO_TITLEBAR__ */
//MTK Leo end
//if (MMI_main_menu_type == ROTATE_MENU)
main_menu_index = index;
}
/* Robin 1223 */
/*****************************************************************************
* FUNCTION
* EntryMainMenuFromIdleScreen
* DESCRIPTION
*
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void EntryMainMenuFromIdleScreen(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
#ifdef __MMI_KEYPAD_LOCK_PATTERN_2__
g_idle_context.ToMainMenuScrFromIdleApp = 1;
#endif
goto_main_menu();
}
#ifdef __MMI_BI_DEGREE_MAIN_MENU_STYLE__
extern void ShowCategory414Screen(
U16 title,
U16 title_icon,
U16 left_softkey,
U16 left_softkey_icon,
U16 right_softkey,
U16 right_softkey_icon,
S32 number_of_items,
U16 *list_of_items,
U16 *list_of_icons,
U16 *list_of_icons2,
U16 *list_of_menuitem_id,
S32 flags,
S32 highlighted_item,
U8 *history_buffer);
/*****************************************************************************
* FUNCTION
* list_matrix_main_menu_highlight_handler
* DESCRIPTION
*
* PARAMETERS
* index [IN]
* RETURNS
* void
*****************************************************************************/
void list_matrix_main_menu_highlight_handler(S32 index)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
S32 n_items;
U16 nMenuItemList[MAX_SUB_MENUS];
MMI_ID_TYPE mm_stringIDs[MAX_SUB_MENUS];
MMI_ID_TYPE mm_iconIDs[MAX_SUB_MENUS];
U8 *history_buffer;
list_matrix_menu_category_history *h;
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
GetSequenceItemIds(IDLE_SCREEN_MENU_ID, nMenuItemList);
if (nMenuItemList[index] == MAIN_MENU_FILE_MNGR_MENUID)
{
return;
}
history_buffer = GetCurrGuiBuffer(MAIN_MENU_SCREENID);
GetSequenceStringIds(nMenuItemList[index], mm_stringIDs);
GetSequenceImageIds(nMenuItemList[index], mm_iconIDs);
//gqy add begin 20070725
#ifdef __MALATA_STANDARD_441_MEMU__
GetSequenceStringIds(nMenuItemList[index], mm_bg_stringIDs);
switch(index)
{
case 0:
mm_bg_iconIDs[0]=MAIN_MENU_SYSTEM_ICON_A_SELECTED;
mm_bg_iconIDs[1]=MAIN_MENU_SYSTEM_ICON_B_SELECTED;
mm_bg_iconIDs[2]=MAIN_MENU_SYSTEM_ICON_C_SELECTED;
mm_bg_iconIDs[3]=MAIN_MENU_SYSTEM_ICON_D_SELECTED;
mm_bg_highlighticonIDs[0] = MAIN_MENU_MESSAGES_S_ICON;
mm_bg_highlighticonIDs[1] = MAIN_MENU_PHONEBOOK_S_ICON;
mm_bg_highlighticonIDs[2] = MAIN_MENU_CALL_HISTORY_S_ICON;
mm_bg_highlighticonIDs[3] = MAIN_MENU_SETTINGS_S_ICON;
break;
case 1:
mm_bg_iconIDs[0]=MAIN_MENU_AVZONE_ICON_A_SELECTED;
mm_bg_iconIDs[1]=MAIN_MENU_AVZONE_ICON_B_SELECTED;
mm_bg_iconIDs[2]=MAIN_MENU_AVZONE_ICON_C_SELECTED;
mm_bg_iconIDs[3]=MAIN_MENU_AVZONE_ICON_D_SELECTED;
mm_bg_highlighticonIDs[0] = MAIN_MENU_ORGANIZER_S_ICON;
mm_bg_highlighticonIDs[1] = MAIN_MENU_FILEMNGR_S_ICON;
mm_bg_highlighticonIDs[2] = MAIN_MENU_EXTRA_S_ICON;
mm_bg_highlighticonIDs[3] = MAIN_MENU_SHORTCUTS_S_ICON;
break;
case 2:
mm_bg_iconIDs[0]=MAIN_MENU_ENTERTAINMENT_ICON_A_SELECTED;
mm_bg_iconIDs[1]=MAIN_MENU_ENTERTAINMENT_ICON_B_SELECTED;
mm_bg_iconIDs[2]=MAIN_MENU_ENTERTAINMENT_ICON_C_SELECTED;
mm_bg_iconIDs[3]=MAIN_MENU_ENTERTAINMENT_ICON_D_SELECTED;
mm_bg_highlighticonIDs[0] = MAIN_MENU_FUNANDGAMES_S_ICON;
mm_bg_highlighticonIDs[1] = MAIN_MENU_MULTIMEDIA_S_ICON;
mm_bg_highlighticonIDs[2] = MAIN_MENU_MESSAGE_CLUB_S_ICON;
mm_bg_highlighticonIDs[3] = MAIN_MENU_SERVICES_S_ICON;
break;
case 3:
mm_bg_iconIDs[0]=MAIN_MENU_PIM_ICON_A_SELECTED;
mm_bg_iconIDs[1]=MAIN_MENU_PIM_ICON_B_SELECTED;
mm_bg_iconIDs[2]=MAIN_MENU_PIM_ICON_C_SELECTED;
mm_bg_iconIDs[3]=MAIN_MENU_PIM_ICON_D_SELECTED;
mm_bg_highlighticonIDs[0] = MAIN_MENU_MALATA_DZD_S_ICON;
mm_bg_highlighticonIDs[1] = MAIN_MENU_MALATA_GG_S_ICON;
mm_bg_highlighticonIDs[2] = MAIN_MENU_CONNECT_S_ICON;
mm_bg_highlighticonIDs[3] = MAIN_MENU_MALATA_SERVICE_S_ICON;
break;
}
#endif
//gqy add end 20070725
SetParentHandler(nMenuItemList[index]);
n_items = GetNumOfChild(nMenuItemList[index]);
MMI_matrix_highlight_handler = ExecuteCurrHiliteHandler;
ChangeTitleString((U8*) GetString(GetStringIdOfItem(nMenuItemList[index])));
MMI_title_icon = NULL;
draw_title();
if (history_buffer != NULL)
{
h = (list_matrix_menu_category_history*) history_buffer;
ShowCat414Matrix(n_items, mm_stringIDs, mm_iconIDs, MATRIX_MENU, 0, &(h->matrix_menu_history));
}
else
{
ShowCat414Matrix(n_items, mm_stringIDs, mm_iconIDs, MATRIX_MENU, 0, NULL);
}
}
#endif /* __MMI_BI_DEGREE_MAIN_MENU_STYLE__ */
#ifdef __MMI_WGUI_MINI_TAB_BAR__
extern U16 *GetSeqItems(U16 ParentItemId);
#endif
/*****************************************************************************
* FUNCTION
* goto_main_menu
* DESCRIPTION
* Display the main menu.
*
* This a entry function for the main menu
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void goto_main_menu(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
MMI_ID_TYPE mm_stringIDs[MAX_MAIN_MENU_ITEMS];
MMI_ID_TYPE mm_iconIDs[MAX_MAIN_MENU_ITEMS];
#ifdef __MMI_BI_DEGREE_MAIN_MENU_STYLE__
MMI_ID_TYPE mm_iconID2[MAX_MAIN_MENU_ITEMS];
U16 nMenuItemList[MAX_SUB_MENUS];
#endif /* __MMI_BI_DEGREE_MAIN_MENU_STYLE__ */
U8 *history_buffer;
S32 n_items;
S32 attributes;
U8 HighlightMenu = 0;
MMI_ID_TYPE *iconList;
#ifdef __MMI_MAINMENU_STYLE_CHANGE_EN__
U8 menu_style = 0;
MMI_ID_TYPE mm_iconIDs_display[MAX_MAIN_MENU_ITEMS];
U8 i = 0;
#endif /* __MMI_MAINMENU_STYLE_CHANGE_EN__ */
#ifdef __MMI_BI_DEGREE_MAIN_MENU_STYLE__
U8 j = 0;
#endif
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
mmi_phb_reset_scr_id();
//gqy add begin 20070712
#ifdef __MALATA_STANDARD_441_MEMU__
g_BControlFlag =0;
#endif
//gqy add end 20070712
EntryNewScreen(MAIN_MENU_SCREENID, exit_main_menu, NULL, NULL);
history_buffer = GetCurrGuiBuffer(MAIN_MENU_SCREENID);
n_items = GetNumOfChild(IDLE_SCREEN_MENU_ID);
GetSequenceStringIds(IDLE_SCREEN_MENU_ID, mm_stringIDs);
GetSequenceImageIds(IDLE_SCREEN_MENU_ID, mm_iconIDs);
SetParentHandler(IDLE_SCREEN_MENU_ID);
attributes = GetDispAttributeOfItem(IDLE_SCREEN_MENU_ID);
#ifdef __MMI_BI_DEGREE_MAIN_MENU_STYLE__
GetSequenceItemIds(IDLE_SCREEN_MENU_ID, nMenuItemList);
#endif
/* MTK Leo add, for mini_tab_bar */
#ifdef __MMI_WGUI_MINI_TAB_BAR__
wgui_setup_mini_tab_bar(
MMI_content_x,
MMI_content_y,
MMI_content_width,
20,
UI_COLOR_BLACK,
UI_COLOR_RED,
UI_COLOR_GREY,
9 /* n_items */ ,
GetSeqItems(IDLE_SCREEN_MENU_ID),
NULL);
wgui_mini_tab_bar_set_f
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -