📄 wgui_draw_manager.c
字号:
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
*------------------------------------------------------------------------------
* Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
*==============================================================================
*******************************************************************************/
/* Include: MMI header file */
#include "MMI_features.h"
#ifdef __MMI_DRAW_MANAGER__
#include "FrameworkStruct.h"
#include "CustDataRes.h"
#include "gui_panel.h"
#include "wgui_draw_manager.h"
#include "wgui_fixed_menus.h"
#include "wgui_status_icons.h"
#include "wgui_categories_mm.h"
#include "wgui_categories_inputs.h"
#include "wgui_ems.h"
#include "wgui_categories_popup.h"
#include "wgui_categories_sublcd.h"
#include "wgui_categories_idlescreen.h"
#include "wgui_fixed_menus.h"
#include "wgui_softkeys.h"
#include "DebugInitDef.h"
#include "gui_fixed_menuitems.h"
#include "lcd_sw.h"
#include "gdi_include.h"
#include "wgui_categories_util.h"
#include "wgui_calendar.h"
#include "wgui_tab_bars.h"
#include "wgui_virtual_keyboard.h"
#include "gui_setting.h"
#include "MainMenuDef.h" //zx add 20070405
#ifdef __MMI_TOUCH_SCREEN__
#include "wgui_touch_screen.h"
#endif
#if defined(__MMI_TOUCH_SCREEN__)
#include "EditorPen.h"
#endif
#ifdef __MMI_STOPWATCH__
#include "StopwatchDef.h"
#include "wgui_categories_stopwatch.h"
#include "StopwatchStruct.h"
#endif /* __MMI_STOPWATCH__ */
#ifdef __MMI_SCREEN_ROTATE__
#include "ScreenRotationGprot.h"
#endif
/* START VIJAY PMT 20051202 */
#ifdef __MMI_UI_SMALL_SCREEN_SUPPORT__
#include "HistoryGprot.h"
#endif
#include "ProfilingEngine.h"
// begin add by luo ren 2007/04/28
#ifdef __MMI_CLOSE_STATUS_ICONS_IN_SUBMENUS__
#include "SimDetectionDef.h"
#include "MessagesResourceData.h"
#include "CallhistoryEnum.h"
#include "IdleAppDef.h"
#include "SimDetectionDef.h" //add by luo ren 2007/05/07
#include "CallmanagementIdDef.h" //add by luo ren 2007/05/14
#include "PhoneBookDef.h" //zx add 20070521
#include "vObjectsEnum.h" //zx add 20070523
#endif
//end add by luo ren 2007/04/28
/* END VIJAY PMT 20051202 */
/*****************************************************************************
* Local Variable
*****************************************************************************/
/**************************************************/
/* Currently, we keep two context for MainLCD and SubLCD */
/* In the future, we may have more than 2 LCDs */
/* More context data would be needed in the future */
/**************************************************/
/* Start of Draw Manager MainLCD Context */
/* DM internal context */
static dm_cntx_struct g_dm_cntx;
static dm_scr_bg_cntx_struct g_dm_scr_bg_cntx;
/* DM components */
/* -Layers */
#ifndef __GDI_MEMORY_PROFILE_2__
static U16 new_layer_x = 0;
static U16 new_layer_y = 0;
#endif /* __GDI_MEMORY_PROFILE_2__ */
/* Currently used layers in Draw Manager */
static GDI_HANDLE dm_layers[GDI_LAYER_TOTAL_LAYER_COUNT];
/* Total currently used layers in Draw Manager */
static U16 dm_layers_count = 0;
static GDI_HANDLE dm_wallpaper_layer = GDI_ERROR_HANDLE;
/* -Strings */
static dm_string_data_struct dm_string_array[DM_MAX_STRINGS];
static S32 dm_string_count = 0;
/* -Images */
static dm_image_data_struct dm_image_array[DM_MAX_IMAGES];
static S32 dm_image_count = 0;
/* -Background fillers */
static UI_filled_area *dm_back_fill_array[DM_MAX_FILL_AREAS];
static S32 dm_back_fill_count = 0;
/* -Rectangles */
static dm_rectangle_data_struct dm_rectangle_array[DM_MAX_RECTANGLES];
static S32 dm_rectangle_count = 0;
/* -Lines */
static color dm_line_array[DM_MAX_LINES];
static S32 dm_line_count = 0;
/* -Scrolling Text objects */
static scrolling_text dm_scroll_text[DM_MAX_SCROLL_TEXT];
static U8 dm_scroll_text_buf[DM_MAX_SCROLL_TEXT][MAX_SUBMENU_CHARACTERS];
static S32 dm_scroll_text_count = 0;
static scrolling_text *dm_current_scroll_text = NULL;
/* slide controls */
S32 dm_slide_control_count = 0;
/* buttons */
static icontext_button dm_button_array[DM_MAX_BUTTONS];
static S32 dm_button_count = 0;
#ifdef __MMI_DRAW_MANAGER__
static FuncPtr dm_button_func_ptrs[DM_MAX_BUTTONS][MAX_KEY_TYPE];
#endif
/* percentage bar */
static dm_percentage_bar_struct dm_percentage_bar_array[DM_MAX_PERCENTAGE_BAR];
static S32 dm_percentage_bar_count = 0;
/* -Panel */
static gui_panel_struct dm_panel_array[DM_MAX_PANEL];
static S32 dm_panel_count = 0;
/* others */
static dm_previous_control_coordinates_struct prev_control_coordinates;
static dm_aligned_area_data_struct dm_aligned_area_data;
static FuncPtr dm_show_vkpad_callback = UI_dummy_function;
/* End of MainLCD context */
/* DM SubLCD context stat */
#ifdef __MMI_SUBLCD__
/* -Layers */
static GDI_HANDLE dm_layers_sub[GDI_LAYER_TOTAL_LAYER_COUNT];
static U16 dm_layers_count_sub = 0;
/* -Strings */
static dm_string_data_struct dm_string_array_sub[DM_MAX_SUBLCD_STRINGS];
static S32 dm_string_count_sub = 0;
/* -Images */
static dm_image_data_struct dm_image_array_sub[DM_MAX_SUBLCD_IMAGES];
static S32 dm_image_count_sub = 0;
#if (0) /* Currently Not used */
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
#endif /* (0) */
#endif /* __MMI_SUBLCD__ */
/* End of SubLCD context */
/*****************************************************************************
* Global Variable
*****************************************************************************/
dm_data_struct g_dm_data;
dm_data_struct g_dm_sublcd_data;
void (*dm_backup_exit_category_function) (void);
#ifdef __MMI_SUBLCD__
void (*dm_sub_backup_exit_category_function) (void);
#endif
void (*dm_category_controlled_area_callback) (dm_coordinates *coordinate);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -