/*软件版本0852*/
先看Wgui 的初始化,在Wgui.c 文件wgui_init(void) 函数。里面有
set_MMI_theme((MMI_theme*) MMI_themes[0]);
gui_initialize_default_themes();
看set_MMI_theme 函数的参数MMI_themes[0], 搜索它,找到是在StandaloneRes.c 文件里定义的,此文件里有函数InitializeResourceVariables() 对其赋值,是个custpack_header 的mmi_themes 变量,且被强制转换成(CUSTPACK_THEME_HEADER*) 这个类型,此类型是个结构,结构里有mmi_themes 这个变量,那我们继续搜索CUSTPACK_THEME_HEADER ,在ThemeRes.c 文件里我们看到一个mtk_theme_header 变量,和刚才的custpack_header 似乎有点关系,看这个变量的类型CUSTPACK_THEME_HEADER ,联系下刚才的赋值。。。,我们看这个变量的初始化,第二个参数mmi_themes 的值是mtk_MMI_themes ,再看mtk_MMI_themes ,是个数组,找到定义,总算找到根了,这个数组值就是一些主题变量。
下面是一些常用主题修改时要修改的一些变量:
UI_filled_area *scrollbar_background_filler;// 滚动条背景
UI_filled_area *scrollbar_indicator_filler;// 滚动条
UI_filled_area *list_selected_item_filler;//57screen 选择框等控件
UI_filled_area *popup_description_background_filler;//list 菜单hint 框
UI_filled_area *inline_edit_focussed_filler;//57screen 编辑框
UI_filled_area *PIN_inputbox_background_filler;//PIN 输入框
UI_filled_area *small_list_menu_normal_filler;// 级联菜单(pop-up 式菜单, 即选项菜单) 背景
UI_filled_area *small_list_screen_border_filler;// 级联菜单(pop-up 式菜单, 即选项菜单) 边框
UI_filled_area *menuitem_single_line_highlight_filler;//2 级菜单情景模式屏幕+3 级和多级菜单高亮,不包括相册屏幕、弹出式菜单等
UI_filled_area *menuitem_two_line_highlight_filler;// 相册、视频播放器等2 行菜单高亮