📄 wgui_status_icons.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!
*
*------------------------------------------------------------------------------
* Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
*============================================================================
****************************************************************************/
/**
* Copyright Notice
* (c) 2002 - 2003, Pixtel Communications, Inc., 1489 43rd Ave. W.,
* Vancouver, B.C. V6M 4K8 Canada. All Rights Reserved.
* (It is illegal to remove this copyright notice from this software or any
* portion of it)
*/
/**********************************************************************************
Filename: wgui_status_icons.c
Author: manju
Date Created: August-07-2002
Contains: PixTel UI wrapper routines
Status Icon wrappers
**********************************************************************************/
#include "wgui_status_icons.h"
#include "gdi_include.h"
/* To be removed later..and put in boot up init file..Right now needed for
initializing status icon data */
#include "CustDataRes.h"
#include "StatusIconRes.h"
#include "MMI_features.h"
#include "SimDetectionGexdcl.h"
#include "SimDetectionGprot.h"
#include "IdleAppDef.h"
#include "IdleAppProt.h"//110606 compile warning
#ifdef __MMI_TOUCH_SCREEN__
#include "wgui_touch_screen.h"
#include "TouchScreenGprot.h"
#endif /* __MMI_TOUCH_SCREEN__ */
#if defined(__MMI_UI_TECHNO_STATUS_ICON__)
#include "MainMenuDef.h"
#endif
#if defined(__MMI_UI_STATUS_BAR_AT_BOTTOM__)
#include "wgui_categories_idlescreen.h"
#endif
#ifdef __MMI_DOWNLOADABLE_THEMES_SUPPORT__
#include "ThemeManager.h"
#endif
#ifdef __MMI_WLAN_FEATURES__
#include "DataAccountResDef.h"
extern U8 mmi_netset_get_active_preferred_mode(void);
#endif /* __MMI_WLAN_FEATURES__ */
#ifdef __QQ_SUPPORT__ //xhc start
#include "IM_QQ_res_def.h"
#endif //__QQ_SUPPORT__ //xhc end
/* Externals for graphics context switching */
extern bitmap main_LCD_device_bitmap;
extern bitmap sub_LCD_device_bitmap;
#if defined(__MMI_MAINLCD_176X220__) || defined (__MMI_MAINLCD_240X320__) || defined (__MMI_MAINLCD_320X240__)
extern MMI_BOOL if_full_screen_hide_status_icons(void);
#endif
extern MMI_BOOL mmi_flight_mode_is_status_icon_visible(S16 icon_ID, U32 icon_flag);
void UI_set_main_LCD_graphics_context(void);
void UI_set_sub_LCD_graphics_context(void);
extern bitmap *current_LCD_device_bitmap;
extern BOOL IsClamClose(void);
MMI_BOOL wgui_status_icon_blocking = MMI_FALSE;
void wgui_status_icon_set_block(MMI_BOOL blocking);
static U8 IsReArrangeNeeded = 0;
/* Moved from down HIMANSHU modified */
extern S32 MAIN_LCD_device_width;
extern S32 MAIN_LCD_device_height;
/* This is the customizable list of status icons */
/* Use (x,y)=(0,0) for automatic positioning. Automatic positioning is */
/* only valid with Icon bars having STATUS_ICON_BAR_ARRANGE_XXXXXXXX */
/* Set width=0, height=0 for all icons. These values are autocalculated */
/* If there is no icon, use IMAGE_ID_NULL for the MMI_ID_TYPE value */
/* FLAGS: Set status icon specific flags here. Usually this value is 0 */
/* STATE: Set the default state of a multi-state status icon here */
/* GROUP: Set the group number for grouped icons here. */
/* 0 = Icon is not grouped */
/* PRIORITY: Set the status icon priority here. If there are more status */
/* icons than what can be displayed in the status icon bar */
/* area, priority is used to determine which icons are */
/* displayed and which are not. */
/* 0 = Icon is always displayed */
/* IMAGE: Pointer to Icons image data. Autocalculated. Always set to NULL */
/* NFRAMES: Number of frames in the image. Autocalculated. Always set to 0 */
/* !!NOTE: Currently the priority field is dummy, the icons need to be */
/* manually arranged according to the desired priority */
/* Also, grouped icons need to be arranged consecutively in the list */
MMI_status_icon MMI_status_icons[MAX_STATUS_ICONS] =
{
/* ICON_NUMBER X Y WIDTH HEIGHT MMI_ID_TYPE FLAGS STATE GROUP PRIORITY IMAGE NFRAMES */
#ifndef __MMI_DUAL_SIM_MASTER__
/* 0 */ {MMI_UI_STATUSBAR_GAP, 2, 0, 0, IMG_SI_SIGNAL_STRENGTH, 0, 0, 0, 0, NULL, 0,},
#else /* else __MMI_DUAL_SIM_MASTER__ */
/* 0 */ {MMI_UI_STATUSBAR_GAP, 2, 0, 0, IMG_SI_MASTER_SIGNAL_CLOSED, 0, 0, 0, 0, NULL, 0,},
#endif /* end __MMI_DUAL_SIM_MASTER__ */
/* 1 */ {111, 4, 0, 0, IMG_SI_BATTERY_STRENGTH, 0, 0, 0, 0, NULL, 0,},
#ifdef __MMI_DUAL_SIM_MASTER__
/*2*/{0, 0,0, 0,IMG_SI_SLAVE_SIGNAL_CLOSED, 0,0,0,0,NULL,0,},
#endif /* __MMI_DUAL_SIM_MASTER__ */
#ifdef __MMI_WLAN_FEATURES__
/* 54 */ {0, 0, 0, 0, IMG_ID_DTCNT_WLAN_STATUS_DISCONNECT, 0, 0, 0, 0, NULL, 0,},
#endif
#ifndef __MMI_STATUS_ICON_SIGNAL_WITH_LINE_SWITCH__ /* 022505 Calvin added */
/* 2 */ {0, 0, 0, 0, IMG_SI_LINE_L1, 0, 0, 1, 0, NULL, 0,},
/* 3 */ {0, 0, 0, 0, IMG_SI_LINE_L2, 0, 0, 1, 0, NULL, 0,},
#endif /* __MMI_STATUS_ICON_SIGNAL_WITH_LINE_SWITCH__ */
#if defined(__GSM_RAT__) && defined(__WCDMA_RAT__) /* 112805 3G icon Calvin */
/* under construction !*/
/* under construction !*/
#endif /* defined(__GSM_RAT__) && defined(__WCDMA_RAT__) */
#ifdef __MMI_VOIP__
/* 5 */ {0, 0, 0, 0, IMG_SI_VOIP, 0, 0, 0, 0, NULL, 0,},//091806 voip icon
#endif
/* 6 */ {0, 0, 0, 0, IMG_SI_ROAMING_INDICATOR, 0, 0, 0, 0, NULL, 0,},
#ifdef __MMI_DUAL_SIM_MASTER__
/**/ {0,0,0,0,IMG_SI_SLAVE_ROAMING_INDICATOR,0,0,0,0,NULL,0,},
#endif /* __MMI_DUAL_SIM_MASTER__ */
/* 7 */ {0, 0, 0, 0, IMG_SI_CALL_DIVERT_L1L2, 0, 0, 2, 0, NULL, 0,},
/* 8 */ {0, 0, 0, 0, IMG_SI_CALL_DIVERT_L1, 0, 0, 2, 0, NULL, 0,},
/* 9 */ {0, 0, 0, 0, IMG_SI_CALL_DIVERT_L2, 0, 0, 2, 0, NULL, 0,},
#ifdef __MMI_DUAL_SIM_MASTER__
/*3*/{0, 0,0, 0,IMG_SLAVE_CALL_FORWARD,0, 0,0,0,NULL,0,},
{0, 0,0, 0,IMG_SLAVE_CALL_FORWARD_L1,0, 0,0,0,NULL,0,},
{0, 0,0, 0,IMG_SLAVE_CALL_FORWARD_L2,0, 0,0,0,NULL,0,},
#endif /* __MMI_DUAL_SIM_MASTER__ */
/* 10 */ {0, 0, 0, 0, IMG_SI_MUTE, 0, 0, 0, 0, NULL, 0,},
/* 11 */ {0, 0, 0, 0, IMG_SI_SMS_INDICATOR, 0, 0, 0, 0, NULL, 0,},
#ifdef __MMI_DUAL_SIM_MASTER__
/**/ {0,0,0,0,IMG_SI_SLAVE_SMS_INDICATOR,0,0,0,0, NULL,0,},
#endif /* __MMI_DUAL_SIM_MASTER__ */
/* 12 */ {0, 0, 0, 0, IMG_SI_MMS_UNREAD_INDICATOR, 0, 0, 0, 0, NULL, 0,},
/* 13 */ {0, 0, 0, 0, IMG_SI_MMS_BUSY_INDICATOR, 0, 0, 0, 0, NULL, 0,},
#ifdef __MMI_DUAL_SIM_MASTER__
{0, 0, 0, 0, IMG_SI_MMS_UNREAD_INDICATOR_SIM1, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_MMS_UNREAD_INDICATOR_SIM2, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_MMS_BUSY_INDICATOR_SIM1, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_MMS_BUSY_INDICATOR_SIM2, 0, 0, 0, 0, NULL, 0,},
#endif /* __MMI_DUAL_SIM_MASTER__ */
#ifdef __UNIFIED_MESSAGE_BACKGROUND_SEND_SUPPORT__
/* 11 */ {0, 0, 0, 0, IMG_SI_OUTBOX_INDICATOR, 0, 0, 0, 0, NULL, 0,},
#endif
/* 14 */ {0, 0, 0, 0, IMG_SI_VIBRATE, 0, 0, 3, 0, NULL, 0,},
/* 15 */ {0, 0, 0, 0, IMG_SI_SILENT, 0, 0, 3, 0, NULL, 0,},
/* 16 */ {0, 0, 0, 0, IMG_SI_RING, 0, 0, 3, 0, NULL, 0,},
/* 17 */ {0, 0, 0, 0, IMG_SI_VIBRATE_AND_RING, 0, 0, 3, 0, NULL, 0,},
/* 18 */ {0, 0, 0, 0, IMG_SI_VIBRATE_THEN_RING, 0, 0, 3, 0, NULL, 0,},
#ifndef __MMI_DUAL_SIM_MASTER__
/* 19 */ {0, 0, 0, 0, IMG_SI_EDGE, 0, 0, 9, 0, NULL, 0,},
/* 20 */ {0, 0, 0, 0, IMG_SI_GPRS_INDICATOR, 0, 0, 9, 0, NULL, 0,},
/* 21 */ {0, 0, 0, 0, IMG_SI_EDGEC, 0, 0, 10, 0, NULL, 0,},
/* 22 */ {0, 0, 0, 0, IMG_SI_GPRS_ATT_NO_PDP_INDICATOR, 0, 0, 10, 0, NULL, 0,},
#else
/* 19 */ {0, 0, 0, 0, IMG_SI_EDGE_SIM1, 0, 0, 9, 0, NULL, 0,},
/* 20 */ {0, 0, 0, 0, IMG_SI_GPRS_SERVICE_SIM1, 0, 0, 9, 0, NULL, 0,},
/* 21 */ {0, 0, 0, 0, IMG_SI_EDGEC_SIM1, 0, 0, 10, 0, NULL, 0,},
/* 22 */ {0, 0, 0, 0, IMG_SI_GPRS_ATT_NO_PDP_INDICATOR_SIM1, 0, 0, 10, 0, NULL, 0,},
/* 19 */ {0, 0, 0, 0, IMG_SI_EDGE_SIM2, 0, 0, 9, 0, NULL, 0,},
/* 20 */ {0, 0, 0, 0, IMG_SI_GPRS_SERVICE_SIM2, 0, 0, 9, 0, NULL, 0,},
/* 21 */ {0, 0, 0, 0, IMG_SI_EDGEC_SIM2, 0, 0, 10, 0, NULL, 0,},
/* 22 */ {0, 0, 0, 0, IMG_SI_GPRS_ATT_NO_PDP_INDICATOR_SIM2, 0, 0, 10, 0, NULL, 0,},
#endif /* __MMI_DUAL_SIM_MASTER__ */
#if (defined(OBIGO_Q05A) || defined(JATAAYU_SUPPORT)) && defined(WAP_SUPPORT)
/* 23 */ {0, 0, 0, 0, IMG_SI_SECURITY, 0, 0, 0, 0, NULL, 0,},
#endif
/* 24 */ {0, 0, 0, 0, IMG_SI_EARPHONE_INDICATOR, 0, 0, 0, 0, NULL, 0,},
/* 25 */ {0, 0, 0, 0, IMG_SI_ALARM_ACTIVATED, 0, 0, 0, 0, NULL, 0,},
/* 26 */ {0, 0, 0, 0, IMG_SI_VOICE_RECORD, 0, 0, 0, 0, NULL, 0,},
/* 27 */ {0, 0, 0, 0, IMG_SI_KEYPAD_LOCK, 0, 0, 0, 0, NULL, 0,},
#ifndef __MMI_DUAL_SIM_MASTER__
/* 28 */ {0, 0, 0, 0, IMG_SI_MISSED_CALL_INDICATOR, 0, 0, 0, 0, NULL, 0,},
#else
/* */ {0, 0, 0, 0, IMG_SI_CARD1MISSED_CALL_INDICATOR, 0, 0, 0, 0, NULL, 0,},
/* */ {0, 0, 0, 0, IMG_SI_CARD2MISSED_CALL_INDICATOR, 0, 0, 0, 0, NULL, 0,},
#endif/*__MMI_DUAL_SIM_MASTER__*/
{0, 0, 0, 0, IMG_SI_UNREAD_EMAIL, 0, 0, 0, 0, NULL, 0,},
/* 29 */ {0, 0, 0, 0, IMG_SI_UNREAD_VOICE_L1L2, 0, 0, 4, 0, NULL, 0,},
/* 30 */ {0, 0, 0, 0, IMG_SI_UNREAD_VOICE_L1, 0, 0, 4, 0, NULL, 0,},
/* 31 */ {0, 0, 0, 0, IMG_SI_UNREAD_VOICE_L2, 0, 0, 4, 0, NULL, 0,},
/* 32 */ {0, 0, 0, 0, IMG_SI_UNREAD_FAX_L1L2, 0, 0, 5, 0, NULL, 0,},
/* 33 */ {0, 0, 0, 0, IMG_SI_UNREAD_FAX_L1, 0, 0, 5, 0, NULL, 0,},
/* 34 */ {0, 0, 0, 0, IMG_SI_UNREAD_FAX_L2, 0, 0, 5, 0, NULL, 0,},
/* 35 */ {0, 0, 0, 0, IMG_SI_UNREAD_EMAIL_L1L2, 0, 0, 6, 0, NULL, 0,},
/* 36 */ {0, 0, 0, 0, IMG_SI_UNREAD_EMAIL_L1, 0, 0, 6, 0, NULL, 0,},
/* 37 */ {0, 0, 0, 0, IMG_SI_UNREAD_EMAIL_L2, 0, 0, 6, 0, NULL, 0,},
#ifdef __MMI_DUAL_SIM_MASTER__
{0, 0, 0, 0, IMG_SI_UNREAD_VOICE_L1_MASTER, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_VOICE_L2_MASTER, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_VOICE_L1L2_MASTER, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_FAX_L1_MASTER, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_FAX_L2_MASTER, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_FAX_L1L2_MASTER, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_EMAIL_L1_MASTER, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_EMAIL_L2_MASTER, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_EMAIL_L1L2_MASTER, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_NET_L1_MASTER, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_NET_L2_MASTER, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_NET_L1L2_MASTER, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_VOICE_L1_SLAVE, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_VOICE_L2_SLAVE, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_VOICE_L1L2_SLAVE, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_FAX_L1_SLAVE, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_FAX_L2_SLAVE, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_FAX_L1L2_SLAVE, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_EMAIL_L1_SLAVE, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_EMAIL_L2_SLAVE, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_EMAIL_L1L2_SLAVE, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_NET_L1_SLAVE, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_NET_L2_SLAVE, 0, 0, 0, 0, NULL, 0,},
{0, 0, 0, 0, IMG_SI_UNREAD_NET_L1L2_SLAVE, 0, 0, 0, 0, NULL, 0,},
#endif /*__MMI_DUAL_SIM_MASTER__*/
/* 38 */ {0, 0, 0, 0, IMG_SI_IMPS_MSG, 0, 0, 8, 0, NULL, 0,},
/* 39 */ {0, 0, 0, 0, IMG_SI_IMPS_LOGIN, 0, 0, 8, 0, NULL, 0,},
/* 40 */ {0, 0, 0, 0, IMG_SI_WAP, 0, 0, 0, 0, NULL, 0,},
/* 41 */ {0, 0, 0, 0, IMG_SI_POC, 0, 0, 0, 0, NULL, 0,},
/* 030705 Calvin added */
/* 42 */ {0, 0, 0, 0, IMG_SI_BT, 0, 0, 0, 0, NULL, 0,},
/* 43 */ {0, 0, 0, 0, IMG_SI_BT_CON, 0, 0, 0, 0, NULL, 0,},
/* 44 */ {0, 0, 0, 0, IMG_SI_BT_ND, 0, 0, 0, 0, NULL, 0,},
/* 45 */ {0, 0, 0, 0, IMG_SI_IR_INDICATOR, 0, 0, 0, 0, NULL, 0,},
/* 46 */ {0, 0, 0, 0, IMG_SI_STOPWATCH, 0, 0, 0, 0, NULL, 0,},
/* 47 */ {0, 0, 0, 0, IMG_BLINKINGICON_CHAT_ROOM1, 0, 0, 0, 0, NULL, 0,},
/* SMS Chat Status Icon - Gurinder 20/4/2004 */
/* 48 */ {0, 0, 0, 0, IMG_BLINKINGICON_CHAT_ROOM2, 0, 0, 0, 0, NULL, 0,},
/* */
/* 021505 Calvin added */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -