刚接触MTK的人也许会感觉到它的主题风格很神奇,感觉只要稍微的改一些东西就可以改变使其风格
迥异,控制风格的这些东西何去何从呢?虽然不知道路径也不会影响任何的工作,可是知道还是好一
些,毕竟心里亮堂一些。以前曾经查过它的路径,可是当时感觉乱乱的,后来因为有事就放在一边了
,今天闲来无事,就找了一下,没想到还真找到了一条路径,不过没有经过验证,还请各位高手给知
道一下!
大家都知道,我们修改字体颜色,填充颜色等主题风格时只要在themecomponents.h里找到相应的参
数改一下就行了,那么,这些参数在那里使用呢?我们可以在ThemeRes.c里找到它们的身影,在变量
theme_defaultTheme 里它们一一呈现在我们眼前,现在我们需要找 theme_defaultTheme 在那里用
的了。呵呵,它还在这个文件里,找一下mtk_MMI_themes[MAX_MMI_THEMES],我们发现
theme_defaultTheme 做为它的一员而存在(也许是仅有的一员哦)。再找下去!令我们意外的是在
一个很陌生的文件里我们找到了它:resource_image_jtbl.c里的image2ndJumpTbl[] 第三个成员就是它了。然后我们搜索image2ndJumpTbl,在StandaloneRes.c文件里的函数
void InitializeResourceVariables(void)里,我们发现这样一个赋值:
MMI_themes = (MMI_theme **) (image2ndJumpTbl[2]);
这不就是image2ndJumpTbl吗?现在我们总算看到了一丝希望了,因为继续找下去会来到
void wgui_init(void)这个函数,很熟悉吧,在往下看,
set_MMI_theme((MMI_theme*) MMI_themes[0]);不就是我们的目的地吗?
废话了这么多,其实也就是下面这几行:
函数或文件 变量或语句
themecomponents.h 相应变量 ->
ThemeRes.c theme_defaultTheme ->
ThemeRes.c mtk_MMI_themes[MAX_MMI_THEMES] ->
resource_image_jtbl.c image2ndJumpTbl[] ->
void InitializeResourceVariables(void)
MMI_themes = (MMI_theme **) (image2ndJumpTbl[2]);->
void wgui_init(void) set_MMI_theme((MMI_theme*) MMI_themes[0]);