📄 mmicall.h
字号:
/*******************************************************************************
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: Call
$File: MmiCall.h
$Revision: 1.0
$Author: Condat(UK)
$Date: 25/10/00
********************************************************************************
Description:
********************************************************************************
$History: MmiCall.h
25/10/00 Original Condat(UK) BMI version.
$End
*******************************************************************************/
/********************************************************************************
$History: MmiCall.h
22/07/02 zy Mobile Innovation add the different information win
$End
*******************************************************************************/
#ifndef _DEF_MMI_CALL_H_
#define _DEF_MMI_CALL_H_
#define ALLOC_MEMORY mfwAlloc
#define FREE_MEMORY mfwFree
#include "mfw_phb.h"
#include "mfw_cm.h"
#include "MmiMmi.h"
#include "MmiDialogs.h" //GW 29/11/01 - Added
#include "MmiIdle.h" // SPR#0630 - SH - EDITOR_SIZE now defined in MmiIdle.h
typedef enum
{
CallNone=CallDummy,
CallNormal,
CallDone,
CallNew,
CallSingle,
CallTwo,
CallConference,
CallPrivateCall,
CallSingleMultiparty,
CallMultipartySingle
};
typedef enum
{
ViewConnect,
ViewEnd,
ViewMenu,
ViewCalling,
ViewIncoming,
ViewDTMF,
ViewDTMFAuto,
ViewCallError,
ViewSelectPrivateCall,
ViewScratchPad,
ViewWaitingAnswer,
ViewAutoRedial,
ViewSendingDTMF,
ViewShortWait, //GW Added
ViewMulticallControl,
ViewMulticallControlCallWaiting,
ViewMulticallControlIncomingCall
};
typedef enum
{
CallActive,
CallInactive
};
extern UBYTE callStatus;
extern int idwithheld;
#define true 1
#define false 0
//#define MAX_CALLS 5
#define MAX_CALLS 6//zy Mobile Innovation add for 5 conference call and one single call
#define MAX_CHAR 15
#define MAX_LINE 14
#define MAX_NAMELEN 7
#define MAX_ONENAMELEN 12
#define CALL_NAME_LENGTH 22
#define FIRST_TYPED 20000
/***************zy Mobile Innovation add the different information dialog flag*******************/
/*#define MMI_OUTGOING_CALL_DIALOG_NORMAL (201)
#define MMI_OUTGOING_CALL_DIALOG_SAT (202)
#define MMI_OUTGOING_CALL_DIALOG_RINGOFF (203)
#define MMI_INCOMING_CALL_DIALOG_NORMAL (204)
#define MMI_SHOWCALLICON_DIALOG (205)
#define MMI_OUTGOING_CALL_SAT_RINGOFF (206)*//*2003/12/4, wangyan delete*/
/********end of zy Mobile Innovation add the different information dialog flag*********/
typedef struct{
short id;
char number[MAX_CHAR];
char name[MAX_CHAR];
UBYTE state;
} tMmiCall;
typedef struct{
int mode;
UBYTE muted;
UBYTE view;
UBYTE numCalls;
SHORT selected;
long time[MAX_CALLS];
T_MFW_CM_STATUS status[MAX_CALLS];
} tMmiCallTable;
typedef enum
{
CALL_INIT,
CALL_SCRATCHPAD_INIT,
CALL_SCRATCHPAD_DESTROY,
CALL_CALLSELECT_INIT, //GW Added ????
CALL_DESTROY_WAITING,
CALL_OUTGOING_SAT,
CALL_DESTROY_CALLING_WINDOW,
CALL_DESTROY_ALL
};
struct QUEUETYPE
{
SHORT call_number;
struct QUEUETYPE* next;
};
typedef struct QUEUETYPE TYPEQUEUE;
typedef struct
{
T_MMI_CONTROL mmi_control;
T_MFW_HND win; // window handle
T_MFW_HND kbd;
T_MFW_HND kbd_long;
T_MFW_HND win_search;
T_MFW_HND cm;
T_MFW_HND win_incoming;
T_MFW_HND win_calling;
T_MFW_HND win_ending;
T_MFW_HND win_menu;
T_MFW_HND win_waiting;
T_MFW_HND win_sending_dtmf;
T_MFW_HND editCall;
T_MFW_HND win_redial;
// T_MFW_HND win_active;
//T_MFW_HND active_tim;/*2003/12/16, wangyan modify*/
T_MFW_HND win_scratch;
/*begin of zy add 2003-04-01 notify these win build in call*/
T_MFW_HND win_sms;//send sms win incall
T_MFW_HND win_phb;//phb win incall
T_MFW_HND win_memo;//memo win incall
T_MFW_HND win_voicerecord;//voicerecord win incall
T_MFW_HND win_adjustvolume;//adjustvolume win incall
/*end of zy change 2003-04-01*/
T_MFW_PHB_ENTRY entry;
int current_command;
UBYTE callStatus;
tMmiCallTable calls;
int accessEnd; // controls when several calls are to be ended
int callWaitingEnd;
int emergencyCall;
int callsToEnd;
long timeEnded;
TYPEQUEUE *endQueue;
SHORT incCall;
SHORT outCall;
int refreshConnect;
int firstChar;
int currentModule;
int currentVolume;
SHORT singleCall;
unsigned char charSent;
char sendingDTMF;
T_MFW_CM_CW_INFO globalCWInfo; /* information about incoming call */
char phbNameNumber[CALL_NAME_LENGTH+2];
char edtBufDTMF[30]; /* edit buffer zy 2003-0429 change it from EDITOR_SIZE to 30 */
MfwEdtAttr edtAttrCall;
MfwEdtAttr edtAttrDTMF; /* edit attributes: */
T_MFW_CM_AOC_INFO aocInfo;
USHORT ignore_disconnect;
UBYTE call_direction;
UBYTE colp_number[MFW_NUM_LEN]; /* colp number */
UBYTE isHandSetMode; //zy for handset is plugin
UBYTE handSetKeyDone; //zy for handset already done
UBYTE handSetOldStatus; //zy for handset oldstatus
USHORT mintalert;
// UBYTE active_current_frame;/*2003/12/16, wangyan add*/
// UBYTE active_number_of_frames;
} T_call;
/* PROTOTYPES */
void callInit (MfwHnd parent);
void callExit (void);
T_MFW_HND call_create (T_MFW_HND parent_window);
void call_destroy (T_MFW_HND own_window);
void callExec (int reason, MmiState next);
void callNumber(UBYTE* number);
UBYTE call_status(void);
MfwHnd call_get_window(void);
void StartsendDTMFString(char * String);
int menuInCallTimerOn(MfwMnu* m, MfwMnuItem* i);
int menuInCallTimerOff(MfwMnu* m, MfwMnuItem* i);
void print_mfw_link(void);/*yq 2003-03-19*/
void saveRejNuminhalloff(void);/*zy 2003-04-04*/
extern BOOL call_win_flag;
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -