OSD按键响应
2020-08-20 21:15:18 4 举报
OSD按键响应流程
作者其他创作
大纲/内容
menuAction = MIA_Nothing不执行动作
KeypadButton
MIA_ExecReset:清除标志位,重置设置,然后执行MIA_RedrawMenu
keypad
MenuActionProcess(menuAction)函数对menuAction加工,如果满足一些条件menuAction会被重新赋值,函数返回值menuAction
是
menuAction
ExecuteKeyEvent(MenuItemActionType menuAction)函数一个switch语句对menuAction里面的各种MIA动作进行响应
menuAction = *((CurrentMenuItem.KeyEvents) + KeypadButton)menuAction被赋值为当前Item的KeyEvent中第KeypadButon个MIA动作
Key_GetKeypadStatus(void)函数,返回值keypad,不同的按键按下,keypad的特定位被置零
Keypadbutton>=BTN_EndBTN
MIA_GotoNext、MIA_GotoPrev:前进和后退,也就是切换Menupage,切换Menupage也需要刷新界面,重画菜单或者画出下级菜单
判断当前Item的KeyEventCurrentMenuItem.KeyEvents
MIA_NextItem、MIA_PrevItem:这里是切换Items的动作,切换Items可能要刷新界面,刷新子菜单等代码都在这里编写
Key_ScanKeypad(void)函数,对keypad取反后赋值给keypadStatus,判断keypadStatus是哪个按键,给KeypadButton赋值功能位枚举
MIA_RedrawMenu:重画菜单,并且保存用户设置,有些动作中需要重画菜单就给menuAction赋值MIA_RedrawMenu
MIA_IncValue、MIA_DecValue:这里对数值进行加减,比如Brightness、Contrast那种需要调节数值和进度条的
MIA_ExecFunc:判断当前Item有没有Function,有则执行,没有就break
Menu_OsdHandler(void)函数,判断Keypadbutton的值
MIA_Exit:清除保存设置标志位,保存用户设置,重画菜单RootMenu,清除一些其他标志位
MIA_JumpAdjustItem、MIA_JumpNaviItem:这里应该是调整Factory模式里面的参数用的,没有动过这部分代码
按键按下
0 条评论
下一页