📄 wgui_categories_idlescreen.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!
*
*------------------------------------------------------------------------------
* Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
*============================================================================
****************************************************************************/
#include "MMI_features.h"
#include "stdC.h"
#include "L4Dr1.h"
#include "PixtelDataTypes.h"
#include "GlobalDefs.h"
#include "gui_data_types.h"
#include "CustDataProts.h"
#include "CustMenuRes.h"
#include "EventsDef.h"
#include "gui_themes.h"
#include "wgui.h"
#include "CustThemesRes.h"
#include "wgui_inputs.h"
#include "wgui_categories.h"
#include "wgui_softkeys.h"
#include "wgui_status_icons.h"
#include "wgui_categories_MM.h"
#include "wgui_categories_idlescreen.h"
#include "wgui_categories_multimedia.h"
#include "IdleAppProt.h"
#include "IdleAppDef.h"
#include "SettingDefs.h"
#include "PhoneSetup.h"
//begin add by luo ren 2007/06/21
#ifdef __REJECT_ALL_INCOMING_SHORTCUTS__
#include "NVRAMType.h"
#include "NVRAMProt.h"
#include "TimerEvents.h"
#include "StatusIconRes.h"
#include "Lcd_sw_inc.h"
//begin add by luo ren 2007/08/09
#ifdef __MT190_MMI__
#define ICON_POSITION_EXCURSION 18
#else
#define ICON_POSITION_EXCURSION (-22)
#endif
//end add by luo ren 2007/08/09
#endif
//end add by luo ren 2007/06/21
#ifdef __MMI_AUDIO_PLAYER__
/* dependent headers for AudioPlayerXXX.h" */
#include "gui_data_types.h"
#include "FrameworkStruct.h"
#include "GlobalConstants.h"
#include "mdi_datatype.h"
#include "kal_release.h"
#include "Conversions.h"
#include "FileMgr.h"
#include "AudioPlayerDef.h"
#include "AudioPlayerType.h"
#endif /* __MMI_AUDIO_PLAYER__ */
/* Robin 1208 for Debug */
#include "DebugInitDef.h"
#include "lcd_sw_rnd.h" /* required for macro BLACK_BACKLIGHT, WHITE_BACKLIGHT, BLUE_BACKLIGHT macro */
#include "gdi_include.h" /* include for graphic lib */
#include "SATGProts.h"
#include "wgui_draw_manager.h"
#ifdef __MMI_TOUCH_SCREEN__
#include "QuickAccessMenuItemProt.h"
#include "wgui_touch_screen.h"
#endif /* __MMI_TOUCH_SCREEN__ */
/* PMT HIMANSHU FLIGHT MODE START 20050926 */
#include "SimDetectionGprot.h"
/* PMT HIMANSHU FLIGHT MODE END 2005926 */
#include "fs_type.h"
#include "fs_func.h"
#include "ScrMemMgrGprot.h"
#ifdef __MMI_RESOURCE_ENFB_SUPPORT__
#include "ResMemMgrGprot.h"//120406 warning remove
#endif
#ifdef __DRM_SUPPORT__
#include "Drm_gprot.h"//102406 DRM check
#endif
//zx add begin 20070507
#ifdef __MT170_UI_STYLE__
#include "MainMenuProt.h"
#endif
//zx add end
// wangbei add start 20071010
#ifdef __NEW_IDLE_SCREEN_UI_STYLE__
#include "SimDetectionDef.h"
#include "SimDetectionGexdcl.h"
#include "SimDetectionGprot.h"
#include "Profiles_prot.h"
#include "MainMenuProt.h"
#include "AlarmProt.h"
#include "Calculator.h"
#include "SmsGuiInterfaceProt.h"
#include "Worldclock.h"
#include "ToDoListDef.h"
#include "MessagesResourceData.h"
#include "ToDoListEnum.h"
#include "SMSApi.h"
#define MMI_IDLE_LINE1 (88)
#define MMI_IDLE_LINE2 (122)
#define MMI_IDLE_LINE3 (156)
S32 gShortCutIndex = 0;
extern void ClndrPreEntryApp(void);
#endif
// wangbei add end
scrolling_text scroll_sat_idleText;
#define NORMAL_IDLE_SCREEN 0
#define ANALOG_IDLE_SCREEN 1
#define DIGITAL_IDLE_SCREEN 2
#define NORMAL_SCREEN_SAVER 0
#define ANALOG_SCREEN_SAVER 1
#define DIGITAL_SCREEN_SAVER 2
#define VIEW_WALLPAPER_CLOCK 1
#define VIEW_SCREENSAVER_CLOCK 2
#define PREVIEW_CLOCK 3
#ifdef __MMI_ANALOG_CLOCK__
void show_analog_clock(void);
void analog_clock_initialize(void);
#endif /* __MMI_ANALOG_CLOCK__ */
//begin add by luo ren 2007/06/21
#ifdef __REJECT_ALL_INCOMING_SHORTCUTS__
extern U8 RejectAllIncomingFlag;
#endif
//end add by luo ren 2007/06/21
/***************************************************************************/
#ifdef __MMI_FM_RADIO__
BOOL mmi_fmrdo_is_power_on(void);
UI_string_type mmi_fmrdo_get_channel_name_or_freq(void);
scrolling_text scroll_fmrdo_idleText;
#endif /* __MMI_FM_RADIO__ */
#ifdef __MMI_AUDIO_PLAYER__
extern audply_struct g_audply;
scrolling_text scroll_audply_idleText;
UI_character_type idle_title[FMGR_MAX_FILE_LEN + 1];
#endif /* __MMI_AUDIO_PLAYER__ */
#include "lcd_if.h"
gdi_handle wgui_layer_1 = GDI_LAYER_EMPTY_HANDLE;
gdi_handle wgui_base_layer = GDI_LAYER_EMPTY_HANDLE;
/* store Main lcd width */
extern S32 MAIN_LCD_device_width;
/* store Main LCD height */
extern S32 MAIN_LCD_device_height;
/* MTK Elvis for R2L characters */
extern BOOL r2lMMIFlag;
/* MTK end */
U8 idle_screen_type = NORMAL_IDLE_SCREEN;
static U8 display_network_name = TRUE;
/* 122105 wallpaper Calvin */
#ifdef __MMI_WALLPAPER_ON_BOTTOM__
static U8 gIsWallpaperChange = 0;
#endif
#ifdef __MMI_IDLE_FULL_SCREEN__
extern U16 on_idle_screen;
#endif
static S32 gis_on_idlescreen = 0;
#if defined(ENABLE_ANIMATED_WALLPAPERS) && defined(__GDI_MEMORY_PROFILE_2__)
extern GDI_HANDLE animation_handle;
#endif
/*****************************************************************************
* FUNCTION
* is_on_idlescreen
* DESCRIPTION
*
* PARAMETERS
* void
* RETURNS
*
*****************************************************************************/
S32 is_on_idlescreen(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
return gis_on_idlescreen;
}
/*****************************************************************************
* FUNCTION
* set_on_idlescreen
* DESCRIPTION
*
* PARAMETERS
* temp_on_idlescreen [IN]
* RETURNS
* void
*****************************************************************************/
void set_on_idlescreen(S32 temp_on_idlescreen)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
gis_on_idlescreen = temp_on_idlescreen;
}
/* color wgui_transparent_color={0,0,255,100};//112205 transparent color Calvin */
extern S16 status_icon;
/* Idle screen related wrappers */
/* store the adress of string which stores idle screen netwrok name */
UI_string_type idle_screen_network_name = NULL;
/* store teh address of string which store the netwrok name */
UI_string_type idle_screen_network_status = NULL;
/* store the image id of wallpaper */
extern MMI_ID_TYPE idle_screen_wallpaper_ID;
/* store the image name of wallpaper */
extern S8 *idle_screen_wallpaper_name;
extern S8 *idle_screen_wallpaper_name_original;
extern S8 *idle_screen_screensaver_name;
extern S8 *idle_screen_cache_name;
extern MMI_ID_TYPE idle_screen_cache_id;
/* PMT HIMANSHU START 20050721 */
#if (defined(__MMI_UI_TECHNO_IDLESCREEN_BAR__) && defined(__MMI_MAINLCD_240X320__))
stFontAttribute idle_screen_network_name_font = {1, 0, 0, LARGE_FONT, 0, 0};
#else
stFontAttribute idle_screen_network_name_font = {0, 0, 0, MEDIUM_FONT, 0, 0};
#endif
/* PMT HIMANSHU END 20050721 */
stFontAttribute idle_screen_network_status_font = {0, 0, 0, MEDIUM_FONT, 0, 0};
/* MTK Leo end */
/* store the x position of wallpaer of idle screen */
S32 cat33_image_x;
/* store the y position of wallpaer of idle screen */
S32 cat33_image_y;
/* store the image width of wallpaer of idle screen */
S32 cat33_image_width;
/* store the image height of wallpaer of idle screen */
S32 cat33_image_height;
/* store the total number frames of animation wallpaper */
S32 cat33_n_frames = 0;
/* store the current frame number of animation wallppaer */
S32 cat33_frame_number = 0;
/* store the delay time to show next frame of animation wallpapaer */
S32 cat33_animation_delay = 1000;
/* store the image id ofcategory86 used foe analog clock */
PU8 cat86_image;
/* store x position of image,y position of image ,image widh ,image height */
S32 cat86_image_x,cat86_image_y;//,cat86_image_width,cat86_image_height;//062106 cat128
#ifdef __MMI_LCD_PARTIAL_ON__
static UI_time cat161_time;
static S32 cat161_last_y_offset;
#endif /* __MMI_LCD_PARTIAL_ON__ */
/* MTK Leo add 20040423, add new interface to show screensaver */
/* store the type of screen saver like normal or analog/digital screen saver */
U8 screen_saver_type = NORMAL_SCREEN_SAVER;
U8 *ScreenSaverName;
U8 disp_network_screeen_saver = 0;
extern S32 PhnsetScreenSaverBadFileCallBack(void);
extern void PhnsetWallpaperBadFileCallBack(U16 imgID);
extern void dm_set_scr_bg_image_no_draw(U16 image_id, S8 *file_name, S32 x, S32 y, U8 opacity); /* 092005 grayscale Calvin */
S32 cat128_image_x, cat128_image_y;//, cat128_image_width, cat128_image_height;
PU8 cat128_image;
scrolling_text *extra_scrolling_text = NULL;
S16 extra_text_x1 = -1;
S16 extra_text_y1 = -1;
S16 extra_text_x2 = -1;
S16 extra_text_y2 = -1;
/* 071205 Calvin Start */
#if defined (__MMI_WALLPAPER_ON_BOTTOM__)
static MMI_ID_TYPE idle_scr_bg_ID;
static S8 *idle_scr_bg_filename;
static S32 idle_scr_bg_x, idle_scr_bg_y;
static U8 idle_scr_bg_opacity; /* 070505 Calvin added */
#endif /* defined (__MMI_WALLPAPER_ON_BOTTOM__) */
/* 071205 Calvin End */
/* PMT HIMANSHU START 20050809 */
extern U16 title_bg_id;
/* PMT HIMANSHU END 20050809 */
/* 090605 Idlescreen Calvin Start */
#ifdef __MMI_UI_TECHNO_IDLESCREEN_BAR__
extern MMI_BOOL PhnsetGetShowDateTimeStatus(void);
MMI_ID_TYPE idlescreen_bar_id = IMG_TECHNO_ANALOG_CLOCK;//070306 Alpha layer
#endif
/* 090605 Idlescreen Calvin End */
/* PMT HIMANSHU START 20050625 */
#ifdef __MMI_UI_TECHNO_IDLESCREEN_BAR__
/* PMT HIMANSHU START 20050721 */
#ifdef __MMI_MAINLCD_240X320__
#define IDLESCREEN_TEXT_GAP 10
#else
#define IDLESCREEN_TEXT_GAP 5
#endif
/* PMT HIMANSHU END 20050721 */
#define X_INSERT 20 /* Gap from left and right end for audio. */
#endif /* __MMI_UI_TECHNO_IDLESCREEN_BAR__ */
//PMT HIMANSHU END
//PMT VIKAS START 20050707
#ifdef __MMI_UI_DALMATIAN_STATUSBAR__
extern is_status_bar_shuffled;
#endif
#ifdef __MMI_UI_DALMATIAN_SOFTKEYS__
extern is_button_bar_shuffled;
#endif
#ifdef __MMI_UI_DALMATIAN_IDLESCREEN__
#define X_INSERT 10 /* Gap from left and right end for audio. */
#endif
/* PMT VIKAS END 20050707 */
extern icontext_button MMI_softkeys[];
extern void cat129_clear_icon_bg(void *button);
/**************************************************************************/
/* micha1111, michaSATc3, #212 */
/*****************************************************************************
* FUNCTION
* satIdleTextScrollTimer
* DESCRIPTION
* handle scrolling text of SAT scrrem
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void satIdleTextScrollTimer(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -