Simple Analysis of highlight events on the MTK platform only involves applications at the MMI Layer
Involved functions:
Void sethilitehandler (2010itemid, funcptr hilitefuncptr );
Void registerhighlighthandler (void (* f) (s32 item_index ));
Void executecurrhilitehandler (s32 hiliteid );
Principle: 1. registerhighlighthandler (executecurrhilitehandler)
A. executecurrhilitehandler Function
The ID of the highlighted menu: hiliteitemid
Execute the execution function associated with this ID: maxhiliteinfo [hiliteitemid]. entryfuncptr
B. registerhighlighthandler Function
Pass the above function pointer (handle) to the global variable mmi_list_highlight_handler for calling.
2. There are two problems:
A. How is the highlight ID associated with the highlighted execution function?
B. How is the global highlight handle executed?
3. Associate the highlighted ID with the execution function
Sethilitehandler
This function associates the ID with the function:
Maxhiliteinfo [Itemid]. entryfuncptr = hilitefuncptr;
Itemid is the input menu ID, and hilitefuncptr is the input highlighted execution function.
4. Execution of the global highlight handle
No specific analysis is available because it is not currently involved.