[MTK] how to simulate Nokia n73

Source: Internet
Author: User

 

How is the standby interface like Nokia n73?
See the attachment for how to copy the n73 classic interface [Image]

Status Bar 1.1
The status bar displays battery indicators, signals, date and time, carrier names, and status icons.
Battery display:
The icon ID is status_icon_battery_strength.
Located in mainlcd/idlescreen/statusicons/battery, note that the icon guarantees 5 frames. The power display control is located
File poweroncharger. c
The batterystatusindication function sets the number of displayed frames based on the current electrical value.
Coordinates of the icon in the status bar
Wgui_status_icons.c --- function arrange_status_icons ()
Mmi_status_icons [status_icon_battery_strength]. Y = 0;
Mmi_status_icons [status_icon_battery_strength]. x = 220;
Signal icon:
The icon ID is status_icon_signal_strength.
Located in mainlcd/idlescreen/statusicons/signal
File networkfunctions. c
The changestatusiconlevel function sets the number of frames displayed based on the current signal value.
Coordinates of the icon on the standby interface:
File wgui_status_icons.c --- function arrange_status_icons ()
Mmi_status_icons [status_icon_signal_strength]. Y = 0;
Mmi_status_icons [status_icon_signal_strength]. x = 3;
Time and date:
File: wgui_datetime.c
Function: show_main_ LCD _date_time. Set the coordinates of the date, Week, and time.
Note: In the hide_main_ LCD _date_time function, you need to reset the coordinates of the refresh area based on the coordinates of the previous objects. Modify the registration functions of the three functions under wgui_categories_idlescreen.c (previously blocked)
Set_main_ LCD _dt_date_hide_function (cat33_hide_date_display );
Set_main_ LCD _dt_time_hide_function (cat33_hide_time_display );
Set_main_ LCD _day_hide_function (cat33_hide_day_string_display );
In order to display the time format correctly (the 12-hour system is selected, two letters AM/PM will be added), add the format judgment phnsetgettimeformat () to the clip where the time display function show_main_ LCD _date_time (). Set the clip region according to the returned time format.
Network operator
File: wgui_categories_idlescreen.c
Function idle_screen_show_network_details () to adjust the coordinates of the network operator's name
Status icon
Status icons include message receiving prompts, scene modes, and external batteries. The icons are arranged:
File: wgui_status_icons.c
Function: arrange_status_icons ()
Located in code segment:
X-= mmi_status_icons [K]. Width + status_icon_x_gap;
Arrange icons from right to left. Every time a new status is generated, the icons are arranged to the left.
1.2 shortcut keys
Set coordinates and response functions for each shortcut on the standby Interface
File wgui_categories_idlescreen.c
The setup_touch_idle_screen_shortcut function. You can use this function to set the coordinates of shortcut keys and their respective response functions.
File shortcuts. c
Modify the following functions:
The shctexecuteupkey function is changed to move the button up. The first icon or dynamic list item of the shortcut key is highlighted.
The shctexecutedownkey function is changed to move down the key, highlighting the first icon or dynamic list item of the shortcut key.
The shctexecuteleftkey function is changed to move the button to the left to highlight the left module. If it is already the first one, the last one is highlighted.
Modify the shctexecuterightkey function to move the key to the right to highlight the right module. If it is the last one, highlight the first module.
The shctexecuteokkey function enters the corresponding module based on the highlighted shortcut key.
File mmi_features_guipluto.h
Mmi_features_gui.h
You can enable or disable the macro for displaying the export cut.
_ Mmi_touch_idlescreen_shortcuts __.

To display both the shortcut key and the left and right buttons at the bottom of the screen. The dm_data.s32flags | = dm_no_softkey must be blocked in the showcategory33screen function;
1.3 calendar items and music playback tips
To display calendar items and music playing tracks correctly, you need to add a dynamic list on the standby interface.
File wgui_categories_idlescreen.c
Function showcategory33screen ()
Add a dynamic list:
Create_fixed_icontext_menuitems ();
Mmi_current_menu_type = list_menu;
Associate_fixed_icontext_list ();
Set the title and icon of each item in the list:
Init_dynamic_item_buffer (itemsofcat33, cat33getitemcallback, null, ui_dummy_function );
Itemsofcat33: number of items in the dynamic list. Depends on the program running in the current system.
Cat33getitemcallback: This callback function registers the title and icon of each item.
In the preceding function, the storage area of the calendar item is determined whether there is any content. If there is any content, continue to judge whether the date of the calendar item is on the same day. If yes, display the string in the item. If there are multiple items today, the earliest one in the calendar item sequence is displayed. If the date of a calendar item is not today, "No calendar item today" is displayed ".
File todolist. c
Function: tdldeletealltask ()
This function is used to delete all memo calendar items. Therefore, you need to clear records in the record buffer to prevent calendar items from being displayed on the standby interface.
Memset (& g_tdl_cntx.notebuff, 0, max_todo_list_note );
2. Comprehensive
2.1 modify the default date of each new version:
File: custom_hw_default.c
The offset of the base year. 8 represents 2008. The same is true for months and days.
Const kal_uint8 default_hardware_year = 8;
Const kal_uint8 default_hardware_mon = 1;
Const kal_uint8 default_hardware_day = 1;
2.2 calls
File: callmanagementincoming. c
When there is an external call, enter the Function
Entryscrincomingcallevent
File: wgui_categories_cm.c
Function showmomtcallscreen many call event screens need to enter this function. You can use this function to find the process of each call event. You can modify the existing screen.
3.3 dial
File: idleapp. c
Function: idledisablelongpress
Due to the long button, you need to re-register and clear some buttons. In order to achieve this effect, the original function re-called the idlescreendigithandler function. Although it achieved the goal, it would lead to slow response to the first key. Therefore, the idledisablelongpress function cannot call the previous function, write the registration and clearing buttons in the function in idledisablelongpress.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.