📄 mmimms_main.c
字号:
FFS_PARAM param
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
LOCAL void SaveFS_SaveDraftboxFile_CallBack(FFS_ERROR_E efs_error, FFS_RESULT result, FFS_PARAM param);
/* ----------------------------------------------------------------------------
* Function Name: SaveFS_SaveMMS_CallBack
* Purpose: 保存彩信回调函数
* Input: FFS_ERROR_E efs_error,
FFS_RESULT result,
FFS_PARAM param
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
LOCAL void SaveFS_SaveMMS_CallBack(FFS_ERROR_E efs_error, FFS_RESULT result, FFS_PARAM param);
/* ----------------------------------------------------------------------------
* Function Name: SaveFS_SaveVideo_CallBack
* Purpose: 保存视频回调函数
* Input: FFS_ERROR_E efs_error,
FFS_RESULT result,
FFS_PARAM param
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
LOCAL void SaveFS_SaveVideo_CallBack(FFS_ERROR_E efs_error, FFS_RESULT result, FFS_PARAM param);
/* ----------------------------------------------------------------------------
* Function Name: SaveFS_SaveMp3_CallBack
* Purpose: 保存MP3回调函数
* Input: FFS_ERROR_E efs_error,
FFS_RESULT result,
FFS_PARAM param
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
LOCAL void SaveFS_SaveMp3_CallBack(FFS_ERROR_E efs_error, FFS_RESULT result, FFS_PARAM param);
/* ----------------------------------------------------------------------------
* Function Name: SaveFS_SaveAutoSign_CallBack
* Purpose: 保存自动签名页回调函数
* Input: FFS_ERROR_E efs_error,
FFS_RESULT result,
FFS_PARAM param
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
LOCAL void SaveFS_SaveAutoSign_CallBack(FFS_ERROR_E efs_error, FFS_RESULT result, FFS_PARAM param);
/* ----------------------------------------------------------------------------
* Function Name: MMIVC_ReadMMS_CallBack
* Purpose: 读取彩信的回调函数
* Input: FFS_ERROR_E a,
FFS_RESULT result,
FFS_PARAM param
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
LOCAL void MMIVC_ReadMMS_CallBack(
FFS_ERROR_E a,
FFS_RESULT result,
FFS_PARAM param
);
/* ----------------------------------------------------------------------------
* Function Name: MMIVC_CallBackDeleteMMSFile
* Purpose: 删除彩信的回调函数
* Input: FFS_ERROR_E a,
FFS_RESULT result,
FFS_PARAM param
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
LOCAL void MMIVC_CallBackDeleteMMSFile(
FFS_ERROR_E a,
FFS_RESULT result,
FFS_PARAM param
);
/* ----------------------------------------------------------------------------
* Function Name: MMIVC_CallBackDeleteManagerFile
* Purpose: 删除彩信管理目录的回调函数
* Input: FFS_ERROR_E a,
FFS_RESULT result,
FFS_PARAM param
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
LOCAL void MMIVC_CallBackDeleteManagerFile(
FFS_ERROR_E a,
FFS_RESULT result,
FFS_PARAM param
);
/* ----------------------------------------------------------------------------
* Function Name: MMIVC_CallBackDeleteManagerInboxFile
* Purpose: 删除彩信收件箱管理目录的回调函数
* Input: FFS_ERROR_E a,
FFS_RESULT result,
FFS_PARAM param
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
LOCAL void MMIVC_CallBackDeleteManagerInboxFile(
FFS_ERROR_E a,
FFS_RESULT result,
FFS_PARAM param
);
/* ----------------------------------------------------------------------------
* Function Name: MMIVC_CallBackDeleteOneMMSFile
* Purpose: 删除某一彩信的回调函数
* Input: FFS_ERROR_E a,
FFS_RESULT result,
FFS_PARAM param
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
LOCAL void MMIVC_CallBackDeleteOneMMSFile(
FFS_ERROR_E a,
FFS_RESULT result,
FFS_PARAM param
);
/* ----------------------------------------------------------------------------
* Function Name: MMIMMS_Notification_Arrive
* Purpose: 彩信通知push处理函数
* Input: void * ptr:push内容
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
LOCAL void MMIMMS_Notification_Arrive(void * ptr);
/* ----------------------------------------------------------------------------
* Function Name: MMIMMS_DeliveryRpt_Arrive
* Purpose: 送达报告处理函数
* Input: void * ptr:push内容
* Returns: void
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
LOCAL void MMIMMS_DeliveryRpt_Arrive(void * ptr);
/* ----------------------------------------------------------------------------
* Function Name: CmsTimeToString
* Purpose: 获得当前时间对应的字符串 指针
* Input: MMI_TM_T:时间结构
* Returns: 对应的字符串指针
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
uint8 * CmsTimeToString(MMI_TM_T tm);
/* ----------------------------------------------------------------------------
* Function Name: CmsTimeToString
* Purpose: 取得文件的长度
* Input: 虚拟文件句柄
* Returns: 虚拟文件的长度
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
uint32 Cms_GetFileLength( FILE_HANDLE file);
/**--------------------------------------------------------------------------*
** FUNCTION DEFINITION *
**--------------------------------------------------------------------------*/
/* ----------------------------------------------------------------------------
* 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)
{
SCI_TRACE_LOW("FNH get_port g_nv_setting_mirror->gateway = %s",g_nv_setting_mirror.gateway);
SCI_TRACE_LOW("FNH get_port g_nv_setting_mirror->port = %s",g_nv_setting_mirror.port);
*curgatway =(char *)g_nv_setting_mirror.gateway;
*curport = (unsigned short)atoi((char *)g_nv_setting_mirror.port);
SCI_TRACE_LOW("FNH *curport = %d",*curport);
return ;
}
/* ----------------------------------------------------------------------------
* Function Name: MMIMMS_IsIPAddress
* Purpose:判断用户输入的网关地址是否是IP地址
* Input: curipaddress: 当前的网关地址
* Output: BOOLEAN
TRUE: 是IP地址
FALSE:不是IP地址
* Returns:
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
BOOLEAN MMIMMS_IsIPAddress(char *curipaddress)
{
char *tempstr = NULL;
char curipnum[34];
short len = 0;
short ipcount = 0;
short curnum = 0;
short curadd = 0;
short index = 0;
tempstr = curipaddress;
len = (short)strlen(curipaddress);
SCI_MEMSET(curipnum,0,sizeof(curipnum));
for (index = 0;index <= len;index ++ )
{
if (((curipaddress[index] <0x30 || curipaddress[index] >0x39) && curipaddress[index] != 0x2E)&& (index != len))
{
return FALSE;
}
curnum ++;
if ((curipaddress[index] == 0x2E) ||(index == len))
{
if ((curnum > 4) || (curnum == 1))
{
return FALSE;
}
else
{
short i = 0;
if (curnum > 2)
{
BOOLEAN firstchar = FALSE;
while(!firstchar)
{
i = 0;
if (curipnum[i] !=0x30)
{
firstchar = TRUE;
}
else
{
if(curipnum[i] == 0x30 && i <curnum-2 && curipnum[i+1] != 0)
{
return FALSE;
}
}
i++;
if (i==curnum)
{
firstchar = TRUE;
}
}
}
curadd = (short)atoi(curipnum);
if (curadd > 0xFF)
{
return FALSE;
}
ipcount ++;
SCI_MEMSET(curipnum,0,sizeof(curipnum));
curnum = 0;
}
}
else
curipnum[curnum-1] = curipaddress[index];
}
if (ipcount == 4)
return TRUE;
else
return FALSE;
}
/* ----------------------------------------------------------------------------
* Function Name: MMIMMS_AddVideo
* Purpose:在当前页添加视频
* Input: T_Composer_Video: 视频结构
pMMS_EDocument: 编辑文档
* Returns:T_WORD
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
T_WORD MMIMMS_AddVideo(T_Composer_Video*Video,pMMS_EDocument p_cur_doc)
{
#ifdef HAVE_MPEG4
int16 type = 0;
char video_fname[MMS_FILE_NAME_LENGTH] = {0};
SCI_FILE* fd = 0;
uint32 value = 0;
SCI_TRACE_LOW("MMIMMS_AddVideo in");
if ((p_cur_doc->totalsize + Video->size) > MMS_SIZE_OF_MESSAGE)
{
SCI_TRACE_LOW("open the file error");
PUBWIN_OpenPromptAlertWin(
PUBWIN_SOFTKEY_ONE,
TXT_MMS_MMS_TOO_BIG,
IMAGE_PROMPT_ICON_WRONG,
ALERT_TIMEOUT,
PNULL
);
return -1;
}
value = MMI_GetFfsTime();
sprintf(video_fname,"%lu",value);
SCI_TRACE_LOW("FNH video_fname = %s",video_fname);
if (Video->Type == MPEG4_3GP_FILE)
{
type = MMS_TYPE_3GP;
strcat(video_fname,".3gp");
}
else if (Video->Type == MPEG4_MP4_FILE)
{
type = MMS_TYPE_MP4;
strcat(video_fname,".mp4");
}
SCI_TRACE_LOW("FNH type = %d",type);
fd =(SCI_FILE*) mmsf_Open((char*)video_fname,"w");
if (!fd )
{
SCI_TRACE_LOW("open the file error");
PUBWIN_OpenPromptAlertWin(
PUBWIN_SOFTKEY_ONE,
TXT_MMS_ADD_FAIL,
IMAGE_PROMPT_ICON_WRONG,
ALERT_TIMEOUT,
PNULL
);
return -1;
}
mmsf_Write((char *)Video->VidBuf, 1, Video->size,(FILE_HANDLE) fd);
mmsf_Close((FILE_HANDLE)fd);
if (MMS_New_Content((unsigned char*)video_fname,type,p_cur_doc->slide_cur,p_cur_doc))
{
SCI_TRACE_LOW("FNH NEW VIDEO IS SUCCESS");
return 0;
}
else
{
SCI_TRACE_LOW("FNH NEW VIDEO IS FAIL");
PUBWIN_OpenPromptAlertWin(
PUBWIN_SOFTKEY_ONE,
TXT_MMS_ADD_FAIL,
IMAGE_PROMPT_ICON_WRONG,
ALERT_TIMEOUT,
PNULL
);
return -1;
}
#endif
}
/* ----------------------------------------------------------------------------
* Function Name: MMIMMS_SetCurSlideDuration
* Purpose:设置当前页面的延时
* Input: T_WORD: 延时时间
* Returns:
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
T_WORD MMIMMS_SetCurSlideDuration(T_WORD delay)
{
g_peditdoc->slide_cur->times = delay* ONE_KILO;
return 1;
}
/* ----------------------------------------------------------------------------
* Function Name: CmsIsSupportType
* Purpose:判断是否是支持的数据类型
* Input: uint16 type:图片文档
* Returns:BOOLEAN
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
BOOLEAN CmsIsSupportType(uint16 type)
{
BOOLEAN returnvalue = FALSE;
if (type == MMS_TYPE_GIF ||
type == MMS_TYPE_JPEG ||
type == MMS_TYPE_WBMP ||
type == MMS_TYPE_BMP1 ||
type == MMS_TYPE_PNG )
{
returnvalue = TRUE;
}
return returnvalue;
}
/* ----------------------------------------------------------------------------
* Function Name: MMIMMS_DeleteCurImage
* Purpose:从当前页删除图像
* Input: pMMS_EDocument:编辑文档
* Returns:
* Author:nihongf@mobilesoft.com.cn
* ----------------------------------------------------------------------------*/
T_WORD MMIMMS_DeleteCurImage(pMMS_EDocument p_cur_doc)
{
uint16 type = 0;
pMMS_Content content = NULL;
pMMS_Slide slide = p_cur_doc->slide_cur;
if(slide->image_flag)
{
content = slide->content_root;
while (content)
{
if (CmsIsSupportType(content->type))
{
type = (uint16)content->type;
break;
}
content = content->next;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -