📄 mmimms_internal.h
字号:
SENDING_LEAVE,
SENDING_SENDING,
SENDING_SEND_SUCCESS,
SENDING_SEND_FAILED,
SENDING_SAVE_SENTBOX_SUCESS,
SENDING_SAVE_SENTBOX_FAIL,
SENDING_SAVE_SENTBOX_NOT_ENOUGH_SPACE,
SENDING_SAVE_OUTBOX_SUCCESS,
SENDING_SAVE_OUTBOX_FAIL,
SENDING_SAVE_OUTBOX_NOT_ENOUGH_SPACE,
SENDING_CANCEL,
SENDING_FINISH
}MMIMMS_SENDING_STATUS_E;
typedef enum
{
DOWNLOADING_LEAVE,
DOWNLOADING_RECEIVE_NTF,
DOWNLOADING_SAVENTF_SUCCESS,
DOWNLOADING_SAVENTF_FAIL,
DOWNLOADING_DOWNLOAD,
DOWNLOADING_DOWNLOAD_SUCCESS,
DOWNLOADING_DOWNLOAD_FAIL,
DOWNLOADING_DOWNLOAD_MMS_TOO_BIG,
DOWNLOADING_SEND_NTF_RESPONSE,
DOWNLOADING_SEND_NTF_RESPONSE_RETURN,
DOWNLOADING_SEND_ACK,
DOWNLOADING_SEND_ACK_RETURN,
DOWNLOADING_SAVE_SUCCESS,
DOWNLOADING_SAVE_FAILED,
DOWNLOADING_SAVE_NOT_ENOUGH_SPACE,
DOWNLOADING_CHECK_STATUS, //check whether we have another mms notification
DOWNLOADING_FINISH
}MMIMMS_DOWNLOADING_STATUS_E;
typedef enum
{
SAVEFS_NOT_ENOUGH_SPACE = 0,
SAVEFS_WRITE_FAIL = 1,
SAVEFS_WRITE_SUCCEED = 2,
SAVEFS_WRITE_PANDING = 3,
SAVEFS_WIRTE_INVALID
}SAVEFS_WRITE_RESULT;
typedef enum
{
SAVEFS_READ_SUCCEED = 4,
SAVEFS_READ_FAIL = 5
}SAVEFS_READ_RESULT;
typedef enum
{
SAVEFS_DELETE_SUCCEED = 7,
SAVEFS_DELETE_FAIL = 8
}SAVEFS_DELETE_RESULT;
typedef struct
{
HEFS hefs; //EFS_Close
MMIMMS_NV_ID_T nv_id; //save in nv
MMIMMS_FILE_ID_T file_id; //save in nv
SAVEFS_WRITE_RESULT write_result; //response of EFS task
uint8 *buf_ptr; //to free it
uint32 buf_size; //to save in nv
BOOLEAN is_new_mms; //to to judge new mms or update old mms
}FFS_OVERLAPPED_RESULT_T;
#define MMS_GROUP_NAME_LEN 25
typedef struct tag_MMS_GROUP
{
BOOLEAN is_ucs2; // 字符串的编码类型
uint8 groupname_len; // alpha数组的BYTE个数
uint8 groupname[MMIPB_NAME_MAX_LEN];
uint16 groupcount ;
p_MMS_RECEPIENT cur_group;
}MMS_GROUP;
typedef MMS_GROUP* p_MMS_GROUP;
typedef struct
{
HEFS hefs; //EFS_Close
//MMI_WINDOW_ID_E win_id; //pass to EFS_OVERLAPPED_RESULT_T, to MMK_PostMsg
SAVEFS_READ_RESULT read_result; //response of EFS task
uint32 buf_size; //to save in nv
uint8 *buf_ptr; //to free it
}FFS_READFILE_RESULT_T;
typedef struct
{
HEFS hefs; //EFS_Close
FILE_DEV_E_T dev_type;
//MMI_WINDOW_ID_E win_id; //pass to EFS_OVERLAPPED_RESULT_T, to MMK_PostMsg
SAVEFS_WRITE_RESULT write_result; //response of EFS task
uint32 buf_size; //to save in nv
uint8 *buf_ptr; //to free it
}FFS_SAVEFILE_RESULT_T;
typedef struct
{
uint32 len;
uint8 *buf_ptr;
}UTF8_T;
/**--------------------------------------------------------------------------*
** FUNCTION DEFINITION *
**--------------------------------------------------------------------------*/
/* ----------------------------------------------------------------------------
* Function Name: CmsMmsParseRecepient
* Purpose: 将得到的字符串解析生成地址链表
* Input: __head: 地址链表指针
str: 字符串
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
void CmsMmsParseRecepient(p_MMS_RECEPIENT __head, char *str);
/* ----------------------------------------------------------------------------
* Function Name: mmicms_replymmsforsms
* Purpose: 电话本和短信回复彩信
* Input: telenum:电话号码
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
void mmicms_replymmsforsms(char *telenum);
/* ----------------------------------------------------------------------------
* Function Name: MMIMMS_WriteNewMMS
* Purpose: 编辑新彩信
* Input: void
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
BOOLEAN MMIMMS_WriteNewMMS(void);
/*****************************************************************************/
// Description : get display string in message box list
// Global resource dependence :
// Author: Bruce.Chi
// Note: for sms
///*****************************************************************************/
void MMIMMS_GetDispContentInList(
uint8 *disp_content_ptr, //in
uint8 length, //in
BOOLEAN is_ucs2, //in
uint8 status, //in, not used now.
MMI_STRING_T *out_string_ptr //out. and the memory is allocated by outer, Length should be larger than MMIMESSAGE_DIAPLAY_LEN(12 now)
);
/*****************************************************************************/
// Description : save caike
// Global resource dependence :
// Author:Bruce.Chi
// Note:
/*****************************************************************************/
BOOLEAN MMIMMS_CaiKeSave(MMIMMS_CAIKE_ITEM_T *caike_item_ptr);
/*****************************************************************************/
// Description : preview caike
// Global resource dependence :
// Author:Bruce.Chi
// Note:
/*****************************************************************************/
BOOLEAN MMIMMS_CaiKePreview(MMIMMS_CAIKE_ITEM_T *caike_item_ptr);
/*****************************************************************************/
// Description : send and save caike
// Global resource dependence :
// Author:Bruce.Chi
// Note: now, it is the save with send
/*****************************************************************************/
BOOLEAN MMIMMS_CaiKeSendAndSave(MMIMMS_CAIKE_ITEM_T *caike_item_ptr);
/* ----------------------------------------------------------------------------
* Function Name: MMIMMS_OptionSubject
* Purpose: 在subject前添加RE或FW
* Input: mms状态(转发或回复)
* Returns: 空,输出的字符串是从第二个字符开始的
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
void MMIMMS_OptionSubject(MMSSTATE mmsstate);
/*****************************************************************************/
// Description : 得到一条MMS可以插入Image的最大空间
// Global resource dependence :
// Author: Great.Tian
// Note:
/*****************************************************************************/
uint32 MMIMMS_GetInsertMaxSize(
void
);
/**************************************************************
* FUNCTION: fnMMS_SaveMmsPushMessage
*
* PURPOST: Save push message come from sms,the push message may
* be mms notification or delivery/read report,when receive
* these information,agent must do some thing to indicate it
* to the user.
* PARAMETER
* InPut :
* unsigned char *pData -- push information's data content.
* unsigned int Length -- the length of the notify data .
* OutPut: none
*
* InOut : none
*
* Return Value: if success return 1 ,else return 0.
*
* Reentrant: none
**************************************************************/
T_BOOL fnMMS_SaveMmsPushMessage(unsigned char *pData,unsigned int Length);
void EditboxStringToGlobalVariable(MMI_CTRL_ID_T ctrl_id);
/*****************************************************************************/
// Description : Get mail box message number.
// Global resource dependence : none
// Author: Bruce.Chi
// Input: mms type
// Output: number of specific mms type
// Note:
/*****************************************************************************/
uint16 MMIMMS_GetMailboxMsgNum(MMIMSG_MAILBOX_TYPE_E mms_type);
/* ----------------------------------------------------------------------------
* Function Name: MMIMMS_get_port
* Purpose: 得到当前的网关和端口号
* Input: curgatway: 当前的网关
curport: 当前的端口号
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
void MMIMMS_get_port(char **curgatway,unsigned short *curport);
/* ----------------------------------------------------------------------------
* Function Name: MMIMMS_SaveDownloadVideo
* Purpose:保存彩信内容中的视频
* Input: video_data_ptr:视频数据指针
memory_size:视频大小
image_type:视频类型
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
void MMIMMS_SaveDownloadVideo(
uint8 *video_data_ptr,
uint32 memory_size,
uint32 image_type,
MMIMULTIM_SAVE_FILE_CALLBACK_PFUNC callback_func
);
/* ----------------------------------------------------------------------------
* Function Name: MMIMMS_SaveDownloadmp3
* Purpose:保存彩信内容中的MP3
* Input: mp3_data_ptr:MP3数据指针
memory_size:MP3大小
mp3_type:MP3频类型
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
void MMIMMS_SaveDownloadmp3(
uint8 *mp3_data_ptr, //in:
uint32 memory_size, //in:
uint32 mp3_type,
MMIMULTIM_SAVE_FILE_CALLBACK_PFUNC callback_func
);
/* ----------------------------------------------------------------------------
* Function Name: MMIMMS_PlayMMSSound
* Purpose: 播放声音(这里的声音是信息提示音)
* Input: void
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
void MMIMMS_PlayMMSSound(void);
BOOLEAN MMIMMS_EditMMS (
MMS_EDIT_SRC_TYPE from_type,
uint32 lparam,
uint32 wparam,
void* param_ptr
);
/*****************************************************************************/
// Description : 取得收件人的个数
// Global resource dependence : none
// Author: NIHONGF
// Note:
/*****************************************************************************/
int32 MmsGetReceiverCount(p_MMS_RECEPIENT p_receiver);
/*****************************************************************************/
// Description : judge whether subject exist
// Global resource dependence : g_mms_save_in_mem
// Author: Bruce.Chi
// Note: used in edit and save moduel
///*****************************************************************************/
BOOLEAN Edit_CurSubjectExist(void);
/* ----------------------------------------------------------------------------
* Function Name: Edit_CurContentTextExist
* Purpose: 判断当前内容是否有文本
* Input: pMMS_EDocument,当前编辑文档
* Returns: 布尔型
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
BOOLEAN Edit_CurContentTextExist(pMMS_EDocument p_cur_doc);
/*****************************************************************************/
// Description : 删除收件人列表
// Global resource dependence :
// Author: nihongf
// Note:
///*****************************************************************************/
void MmsDelAllReceiver(p_MMS_RECEPIENT* p_receiver);
/*****************************************************************************/
// Description : get subject string
// Global resource dependence : g_mms_save_in_mem
// Author: Bruce.Chi
// Note: used in edit and save moduel, return pointer pointing to internal memory
///*****************************************************************************/
MMI_STRING_T Edit_GetSubject(void);
/* ----------------------------------------------------------------------------
* Function Name: Edit_GetContentText
* Purpose:取得当前文本内容
* Input: pMMS_EDocument
* Output: 字符串结构.
* Returns:
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
MMI_STRING_T Edit_GetContentText(pMMS_EDocument p_cur_doc);
/* ----------------------------------------------------------------------------
/* Function Name: CmsGetUnicodeLen
* Purpose:取得unicode字符串的长度
* Input: 输入的字符串
* Output: 长度
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -