📄 mmidialogs.c
字号:
/*******************************************************************************
CONDAT (UK)
********************************************************************************
This software product is the property of Condat (UK) Ltd and may not be
disclosed to any third party without the express permission of the owner.
********************************************************************************
$Project name: Basic MMI
$Project code: BMI (6349)
$Module: MmiDialogs
$File: MmiDialogs.c
$Revision: 1.0
$Author: Condat(UK)
$Date: 25/10/00
********************************************************************************
Description:MMI Information dialogue handling.
********************************************************************************
$History: MmiDialogs.c
25/10/00 Original Condat(UK) BMI version.
$End
*******************************************************************************/
/********************************************************************************
$History: MmiDialogs.c
22/07/00 zy Mobile Innovation change the dialog show win
$End
*******************************************************************************/
/*******************************************************************************
Include Files
*******************************************************************************/
#define ENTITY_MFW
/* includes */
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#if defined (NEW_FRAME)
#include "typedefs.h"
#include "vsi.h"
#include "pei.h"
#include "custom.h"
#include "gsm.h"
#else
#include "stddefs.h"
#include "custom.h"
#include "gsm.h"
#include "vsi.h"
#endif
#include "mfw_mfw.h"
#include "mfw_win.h"
#include "mfw_kbd.h"
#include "mfw_edt.h"
#include "mfw_tim.h"
#include "mfw_phb.h"
#include "mfw_sms.h"
#include "mfw_icn.h"
#include "mfw_mnu.h"
#include "mfw_lng.h"
#include "mfw_sat.h"
#include "mfw_kbd.h"
#include "mfw_nm.h"
#include "dspl.h"
#include "ksd.h"
#include "psa.h"
#include "MmiMain.h"
#include "MmiDummy.h"
//JVJE #include "MmiMsgsEdit.h"
//#include "MmiLists.h"
#include "MmiMmi.h"
#include "MmiDialogs.h"
#include "MmiLists.h"
#include "MmiMenu.h"
#include "MmiSoftKeys.h"
#include "GameDisplay.h"
/* JF Modified
*/
#include "MmiBookController.h"
#include "cus_aci.h"
#include "p_sim.h"
#include "pcm.h"
#include "mmihost.h" //xsf add 2002.08.23
#include "mmiectimedate.h" //xsf add 2 lines 2002.09.20
#include "mmisounds.h"
#include "Mmiicons.h"
#include "Mmistart.h"
#include "mmiservices.h" //wufei add 1017
#include "Pwr.h"//zy for driver_Parameter drvpara
#include "mmismsmenu.h"
#include "mmismssend.h"
#include "mmiouteridle.h"
/*
* START NEW PART
*/
/*2003/11/20, wangyan*/
//#include "TdDisplay.h"
//#define TDTRACE 1
#include "mmiutilapi.h"
//#include "mmiicndialogs.h" /*2004/1/10, wangyan*/
#include "mmiiconresource.h" /* 2004/06 sunsj modify for picture manage */
typedef struct
{
T_MMI_CONTROL mmi_control;
T_MFW_HND parent_win;
T_MFW_HND info_win;
T_MFW_HND info_tim;
T_MFW_HND info_kbd;
T_MFW_HND info_kbd_long;
T_MFW_HND icon;
/* animation fields */
UBYTE number_of_frames;
UBYTE current_frame;
T_MFW_HND anim_time;
MfwIcnAttr *icon_array;
MfwIcnAttr *current_icon;
USHORT iconIndex;
T_MFW_HND animation_timer;
AnimationReason animareason;
T_MFW_HND delete_tim_win;//gdy add
USHORT id; //gdy add
/* internal data */
char *TextString;
USHORT LeftSoftKey;
USHORT RightSoftKey;
char *LSKString; // SH - text for left soft key
char *RSKString; // SH - text for right soft key
BOOL SoftKeyStrings; // SH - TRUE if using text rather than IDs for soft keys
UBYTE WrapStrings; // GW - bits 0,1 set=wrap string 1,2
ULONG Time;
T_MFW_EVENT KeyEvents;
USHORT TextId;
USHORT Identifier;
char * TextString2;
USHORT TextId2;
char * TextString3;
USHORT TextId3;
T_VOID_FUNC Callback;
UINT32 FontColor;
UINT32 BackColor;
} T_dialog_info;
static T_MFW_HND dialog_info_create (T_MFW_HND parent_win);
static void dialog_info_destroy (T_MFW_HND own_window);
static void dialog_info (T_MFW_HND win,
USHORT event, SHORT value, void * parameter);
void DrawAnimFixMovBit(AnimationReason Reason,int animindex );
static int dialog_info_win_cb (T_MFW_EVENT event, T_MFW_WIN * win);
static T_MFW_CB dialog_info_tim_cb (T_MFW_EVENT event, T_MFW_TIM * tc);
static int dialog_info_kbd_cb (T_MFW_EVENT event, T_MFW_KBD * keyboard);
static int dialog_info_kbd_long_cb (T_MFW_EVENT event, T_MFW_KBD * keyboard);
void remind_animal(T_MFW_HND parent_win, int id);
void draw_popup_background(void);
void draw_special_background(void);/*2003/12/19, wangyan modify*/
void draw_dialog_current_page(T_dialog_info * data, int current);
void draw_softkeybar_background(void);
void DrawWelcomeAnim(AnimationReason Reason,int animindex);
void DrawGoodbyeAnim(AnimationReason Reason,int animindex);
void mmi_dialogs_insert_animation_CB (T_MFW_EVENT event, T_MFW_TIM *tc);
void mmi_dialogs_insert_fixmov_animation (T_MFW_HND win_dialog , S32 anim_time ,AnimationReason Reason );/* 2003/10/20, wangyan, Add for incomingcall animation. */
static T_MFW_CB remind_tim_cb(MfwEvt e, MfwTim *tc);
static UINT32 oldfontcolor,oldbackcolor;
static UBYTE tim_NoSimClock=0; //xsf add 12.20
extern T_MFW_HND lowVoltageWin;
extern void Force_refresh();
extern void temptest();//jhxu720 add
extern driver_Parameter drvpara;//zy 10/22 for hall action in call
extern T_MFW_HND info_window;//gdy add for timer 24/02/03
extern T_MFW_MEM_INFO memory;
int currentpage=1;
int totalpage=2;
int firstpage=1;/*wangyan add*/
/*******************************************************************************
$Function: dialog_info_init
$Description: initial function before creating info win
$Returns: void
$Arguments: display info
*******************************************************************************/
void dialog_info_init(T_DISPLAY_DATA * display_info)
{
display_info->TextString ='\0';
display_info->SoftKeyStrings =0;
display_info->LeftSoftKey =0;
display_info->RightSoftKey =TxtSoftBack;
display_info->LSKString ='\0';
display_info->RSKString ='\0';
display_info->Time =0;
display_info->KeyEvents =KEY_RIGHT |KEY_LEFT|KEY_POWER;
display_info->TextId =0;
display_info->Identifier =0;
display_info->TextString2 ='\0';
display_info->TextId2 =0;
display_info->Callback =(T_VOID_FUNC)NULL;
display_info->WrapStrings =0;
display_info->icn ='\0';
display_info->FontColor =0x000000;
display_info->BackColor =0xffffff;
display_info->iconindex =0;
display_info->TextString3 ='\0';//zy add 2003-01-29
display_info->TextId3 =0;
}
/*******************************************************************************
$Function: info_dialog
$Description: Common information dialog
$Returns: Dialogue info win
$Arguments: parent win, display info
*******************************************************************************/
T_MFW_HND info_dialog (T_MFW_HND parent_win, T_DISPLAY_DATA * display_info)
{
T_MFW_HND win;
display_info->SoftKeyStrings = FALSE;
win = dialog_info_create (parent_win);
if( win NEQ NULL )
{
SEND_EVENT (win, DIALOG_INIT, 0, display_info);
}
return win;
}
/*******************************************************************************
$Function: info_dialog_softkeystrings
$Description: Common information dialog, sets "softkeystrings" to TRUE
$Returns: Dialogue info win
$Arguments: parent win, display info, leftsoftkey, rightsoftkey
*******************************************************************************/
T_MFW_HND info_dialog_softkeystrings (T_MFW_HND parent_win, T_DISPLAY_DATA * display_info)
{
T_MFW_HND win;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -