MTK平台学习--History管理机制与EntryNewScreen函数的关系
2008-05-20 12:44
309 查看
主要简单分析一下左右软件的事件,以左软键事件为例
牵涉到的常用函数:
void SetKeyHandler( FuncPtr funcPtr, U16 keyCode, U16 keyType );
void SetLeftSoftkeyFunction( void (*f)(void), MMI_key_event_type k );
void ChangeLeftSoftkey( U16 s, U16 i );
1. SetKeyHandler与SetLeftSoftkeyFunction
(1). SetKeyHandler
主要作用就是将需要起作用的函数的指针(funcPtr)
-->全局矩阵数组currKeyFuncPtrs[keyCode][keyType]的指定位置 ;
(2). SetLeftSoftkeyFunction
该函数内部主要流程:
Step1. call register_left_softkey_handler( )
这个函数call SetKeyHandler: 存储需要起作用的函数(left_softkey_down/left_softkey_up)
以left_softkey为例, 该函数首先首先刷新按键区域图像(redraw_softkey),
然后执行关联函数(softkey_functions[key][k]).
Step2. 在上一步里我们会发现,softkey_functions[key][k]里的函数指针没有初始化
通过 call set_left_softkey_function(f, k);
--->softkey_functions[key][k] = f;
这样,就成功的把按键按下/放开的作用函数与具体的动作关联起来了。
Step3. 最后call SetInputboxLSKFunction(f)
--->将上述函数与特定的输入(如触摸笔)关联起来。
(3). 以上两个函数的主要区别:
SetLeftSoftkeyFunction可以识别长按状态并且可以关联触摸笔操作等。
2. ChangeLeftSoftkey
主要执行流程:
Step1. call change_left_softkey: 设置左软键图表,文字
Step2. redraw_softkey: 刷新左软键显示区域
牵涉到的常用函数:
void SetKeyHandler( FuncPtr funcPtr, U16 keyCode, U16 keyType );
void SetLeftSoftkeyFunction( void (*f)(void), MMI_key_event_type k );
void ChangeLeftSoftkey( U16 s, U16 i );
1. SetKeyHandler与SetLeftSoftkeyFunction
(1). SetKeyHandler
主要作用就是将需要起作用的函数的指针(funcPtr)
-->全局矩阵数组currKeyFuncPtrs[keyCode][keyType]的指定位置 ;
(2). SetLeftSoftkeyFunction
该函数内部主要流程:
Step1. call register_left_softkey_handler( )
这个函数call SetKeyHandler: 存储需要起作用的函数(left_softkey_down/left_softkey_up)
以left_softkey为例, 该函数首先首先刷新按键区域图像(redraw_softkey),
然后执行关联函数(softkey_functions[key][k]).
Step2. 在上一步里我们会发现,softkey_functions[key][k]里的函数指针没有初始化
通过 call set_left_softkey_function(f, k);
--->softkey_functions[key][k] = f;
这样,就成功的把按键按下/放开的作用函数与具体的动作关联起来了。
Step3. 最后call SetInputboxLSKFunction(f)
--->将上述函数与特定的输入(如触摸笔)关联起来。
(3). 以上两个函数的主要区别:
SetLeftSoftkeyFunction可以识别长按状态并且可以关联触摸笔操作等。
2. ChangeLeftSoftkey
主要执行流程:
Step1. call change_left_softkey: 设置左软键图表,文字
Step2. redraw_softkey: 刷新左软键显示区域
相关文章推荐
- History管理机制与EntryNewScreen函数的关系
- History管理机制与EntryNewScreen的关系
- MTK平台学习----消息通讯机制
- .Net 初步学习笔记之一——.Net 平台与.Net FrameWork框架的关系
- zigbee学习笔记--电源管理OSAL机制的ZigBee低功耗管理(CC2530)
- history管理机制
- 轻松学习Linux之认识内存管理机制
- ucGUI的视窗管理回调机制学习
- 第124讲:Hadoop集群管理之fsimage和edits工作机制内幕详解学习笔记
- 第125讲:Hadoop集群管理之SecondaryNamenode目录元数据结构详解及其内幕机制学习笔记
- MTK平台源码学习笔记之-------(queue.c)的学习
- dubbo学习笔记(1)-注册中心和管理平台部署
- 规则执行管理平台中远程和服务管理的学习2
- Tomcat6源代码学习--容器组件通讯机制与生命周期管理
- Dubbo学习——Dubbo-admin管理平台搭建(三)
- dubbo学习一:Zookeeper注册中心和Dubbo-Admin管理平台的搭建
- Handler 机制学习之Handler、Looper、MessageQueue、Message之间的关系
- 浅谈MTK平台下Android开发比较学习笔记
- (dubbo学习)Dubbo admin 管理控制平台的启动
- VM Depot 镜像新增系列II – 学习管理系统,内容管理系统以及平台管理工具