627 lines
21 KiB
C
627 lines
21 KiB
C
|
#include <string.h>
|
||
|
#include "FreeRTOS.h"
|
||
|
#include "ostask.h"
|
||
|
#include "cmsis_os2.h"
|
||
|
#include "charge.h"
|
||
|
#include "ps_sms_if.h"
|
||
|
#ifdef FEATURE_DRIVER_KEYPAD_ENABLE
|
||
|
#include "keypad.h"
|
||
|
#include "kpc.h"
|
||
|
#endif
|
||
|
#ifdef FEATURE_SUBSYS_STATUS_ENABLE
|
||
|
#include "status.h"
|
||
|
#endif
|
||
|
#ifdef FEATURE_SUBSYS_MODE_ENABLE
|
||
|
#include "mode.h"
|
||
|
#endif
|
||
|
#include "bsp_custom.h"
|
||
|
#include DEBUG_LOG_HEADER_FILE
|
||
|
#include "plat_config.h"
|
||
|
#ifdef FEATURE_SUBSYS_APPHUB_ENABLE
|
||
|
#include "app.h"
|
||
|
#include "apphub.h"
|
||
|
#endif
|
||
|
|
||
|
#ifdef FEATURE_SUBSYS_SYSLOG_ENABLE
|
||
|
#include "syslog.h"
|
||
|
#endif
|
||
|
|
||
|
#ifdef FEATURE_SUBSYS_GUI_FPUI_ENABLE
|
||
|
#include "fpui.h"
|
||
|
#include "ui.h"
|
||
|
#include "merged.h"
|
||
|
#endif
|
||
|
#include "featureSms.h"
|
||
|
|
||
|
extern int cur_menu_func_id;
|
||
|
extern sub_func sub_func_table[];
|
||
|
int32_t submenu_Proc(AppInfoT *appInfo,AppMsgT *msg, uint32_t reserved2, uint32_t syscallTable);
|
||
|
extern AppT mainApp;
|
||
|
|
||
|
extern lv_obj_t *ui_app_sms_show(fpui_smshow_t *data);
|
||
|
#if (defined(PSRAM_FEATURE_ENABLE) && (PSRAM_EXIST == 1) && (!(defined(TYPE_EC718M))))
|
||
|
static PLAT_FPSRAM_ZI_CUST char gSmsText[40 + 40 + PSIL_SMS_MAX_TXT_SIZE + 1 + 8] = {0};
|
||
|
#else
|
||
|
static char gSmsText[40 + 40 + PSIL_SMS_MAX_TXT_SIZE + 1 + 8] = {0};
|
||
|
#endif
|
||
|
static const char gSmsDetailbtn[3][8] = {"", "", "返回"};
|
||
|
static const fpui_smshow_t gSmsData = {.title = "信息详情", .message = gSmsText, .bottomBtn = gSmsDetailbtn};
|
||
|
static bool gSmsInDetail = false;
|
||
|
|
||
|
fpui_sms_t presetSms_data = {0};
|
||
|
int presetSms_total_num = 0;
|
||
|
int presetSms_cur_item = 0;
|
||
|
char list_presetSms[6][40] = {0};
|
||
|
static char list_presetSmsbtn[3][8] = {
|
||
|
"发送",
|
||
|
"",
|
||
|
"返回",
|
||
|
};
|
||
|
|
||
|
fpui_sms_t smsInbox_data = {0};
|
||
|
int smsInbox_total_num = 0;
|
||
|
int smsInbox_cur_item = 0;
|
||
|
char list_smsInbox[2][3][40] = {0};
|
||
|
static char list_smsInboxbtn[3][8] = {
|
||
|
"查看",
|
||
|
"",
|
||
|
"返回",
|
||
|
};
|
||
|
|
||
|
fpui_sms_t smsOutbox_data = {0};
|
||
|
int smsOutbox_total_num = 0;
|
||
|
int smsOutbox_cur_item = 0;
|
||
|
char list_smsOutbox[2][3][40] = {0};
|
||
|
static char list_smsOutboxbtn[3][8] = {
|
||
|
"",
|
||
|
"",
|
||
|
"返回",
|
||
|
};
|
||
|
|
||
|
extern char cur_menu_name[];
|
||
|
|
||
|
static void showPresetSms(void)
|
||
|
{
|
||
|
presetSms_db *presetSmsDb = NULL;
|
||
|
uint32_t indexBegin = 0;
|
||
|
uint32_t indexEnd = 0;
|
||
|
uint32_t total = 6;
|
||
|
|
||
|
SYSLOG_DEBUG("cur_menu_func_id:%d\r\n",sub_func_table[cur_menu_func_id].index);
|
||
|
SYSLOG_DEBUG("presetSms_cur_item:%d\r\n",presetSms_cur_item);
|
||
|
|
||
|
presetSms_total_num = get_db_item_length(sub_func_table[cur_menu_func_id].index);
|
||
|
|
||
|
memset(&presetSms_data, 0, sizeof(presetSms_data));
|
||
|
memset(list_presetSms, 0, sizeof(list_presetSms));
|
||
|
if (presetSms_total_num > 0)
|
||
|
{
|
||
|
if ((presetSms_total_num > total) && (presetSms_cur_item > total - 1))
|
||
|
{
|
||
|
presetSms_data.total = total;
|
||
|
presetSms_data.select = presetSms_data.total - 1;
|
||
|
indexBegin = presetSms_cur_item - (presetSms_data.total - 1);
|
||
|
indexEnd = presetSms_cur_item;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
presetSms_data.total = (presetSms_total_num > total) ? total : presetSms_total_num;
|
||
|
presetSms_data.select = presetSms_cur_item;
|
||
|
indexBegin = 0;
|
||
|
indexEnd = presetSms_data.total - 1;
|
||
|
}
|
||
|
|
||
|
for (uint32_t i=indexBegin; i<=indexEnd; i++)
|
||
|
{
|
||
|
get_db_item(sub_func_table[cur_menu_func_id].index, i, &presetSmsDb);
|
||
|
if (presetSmsDb != NULL)
|
||
|
{
|
||
|
memcpy(list_presetSms[i - indexBegin], presetSmsDb, strlen(presetSmsDb));
|
||
|
SYSLOG_DEBUG("presetSms_db[%d]: %s\r\n", i, presetSmsDb->data);
|
||
|
#if (defined(PSRAM_FEATURE_ENABLE) && (PSRAM_EXIST == 1) && (!(defined(TYPE_EC718M))))
|
||
|
vPortFree_Psram(presetSmsDb);
|
||
|
#else
|
||
|
free(presetSmsDb);
|
||
|
#endif
|
||
|
presetSmsDb = NULL;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
presetSms_data.title = "常用短信";
|
||
|
presetSms_data.lines = 1;
|
||
|
presetSms_data.context = list_presetSms;
|
||
|
presetSms_data.bottomBtn = list_presetSmsbtn;
|
||
|
SYSLOG_DEBUG("presetSms_data: title=%s, total=%d, select=%d, lines=%d\r\n", presetSms_data.title, presetSms_data.total, presetSms_data.select, presetSms_data.lines);
|
||
|
ui_sms_set(&presetSms_data);
|
||
|
}
|
||
|
|
||
|
static void showSmsInbox(void)
|
||
|
{
|
||
|
smsInbox_db *smsInboxDb = NULL;
|
||
|
|
||
|
SYSLOG_DEBUG("cur_menu_func_id:%d\r\n",sub_func_table[cur_menu_func_id].index);
|
||
|
SYSLOG_DEBUG("smsInbox_cur_item:%d\r\n",smsInbox_cur_item);
|
||
|
|
||
|
smsInbox_total_num = get_db_item_length(sub_func_table[cur_menu_func_id].index);
|
||
|
|
||
|
memset(gSmsText, 0, sizeof(gSmsText));
|
||
|
memset(&smsInbox_data, 0, sizeof(smsInbox_data));
|
||
|
memset(list_smsInbox, 0, sizeof(list_smsInbox));
|
||
|
if(smsInbox_total_num >= 2)
|
||
|
{
|
||
|
smsInbox_data.total = 2;
|
||
|
smsInbox_data.select = (smsInbox_cur_item >= 1) ? 1 : 0;
|
||
|
|
||
|
int index0 = smsInbox_cur_item;
|
||
|
int index1 = smsInbox_cur_item+1;
|
||
|
|
||
|
if(index1 >= smsInbox_total_num || smsInbox_data.select == 1)
|
||
|
{
|
||
|
index0 = smsInbox_cur_item - 1;
|
||
|
index1 = smsInbox_cur_item;
|
||
|
}
|
||
|
|
||
|
get_db_item(sub_func_table[cur_menu_func_id].index, index0, &smsInboxDb);
|
||
|
if (smsInboxDb != NULL)
|
||
|
{
|
||
|
memcpy(list_smsInbox[0], smsInboxDb, sizeof(list_smsInbox[0]) - 1);
|
||
|
SYSLOG_DEBUG("list_smsInbox[0][0]: %s\r\n", list_smsInbox[0][0]);
|
||
|
SYSLOG_DEBUG("list_smsInbox[0][1]: %s\r\n", list_smsInbox[0][1]);
|
||
|
SYSLOG_DEBUG("list_smsInbox[0][2]: %s\r\n", list_smsInbox[0][2]);
|
||
|
if (smsInbox_data.select == 0)
|
||
|
{
|
||
|
memcpy(gSmsText, smsInboxDb->number, strlen(smsInboxDb->number));
|
||
|
memcpy(&gSmsText[strlen(gSmsText)], "\r\n", strlen("\r\n"));
|
||
|
memcpy(&gSmsText[strlen(gSmsText)], smsInboxDb->time, strlen(smsInboxDb->time));
|
||
|
memcpy(&gSmsText[strlen(gSmsText)], "\r\n", strlen("\r\n"));
|
||
|
memcpy(&gSmsText[strlen(gSmsText)], smsInboxDb->data, strlen(smsInboxDb->data));
|
||
|
}
|
||
|
#if (defined(PSRAM_FEATURE_ENABLE) && (PSRAM_EXIST == 1) && (!(defined(TYPE_EC718M))))
|
||
|
vPortFree_Psram(smsInboxDb);
|
||
|
#else
|
||
|
free(smsInboxDb);
|
||
|
#endif
|
||
|
smsInboxDb = NULL;
|
||
|
}
|
||
|
|
||
|
get_db_item(sub_func_table[cur_menu_func_id].index, index1, &smsInboxDb);
|
||
|
if (smsInboxDb != NULL)
|
||
|
{
|
||
|
memcpy(list_smsInbox[1], smsInboxDb, sizeof(list_smsInbox[1]) - 1);
|
||
|
SYSLOG_DEBUG("list_smsInbox[1][0]: %s\r\n", list_smsInbox[1][0]);
|
||
|
SYSLOG_DEBUG("list_smsInbox[1][1]: %s\r\n", list_smsInbox[1][1]);
|
||
|
SYSLOG_DEBUG("list_smsInbox[1][2]: %s\r\n", list_smsInbox[1][2]);
|
||
|
if (smsInbox_data.select == 1)
|
||
|
{
|
||
|
memcpy(gSmsText, list_smsInbox[1][0], strlen(list_smsInbox[1][0]));
|
||
|
memcpy(&gSmsText[strlen(gSmsText)], "\r\n", strlen("\r\n"));
|
||
|
memcpy(&gSmsText[strlen(gSmsText)], list_smsInbox[1][1], strlen(list_smsInbox[1][1]));
|
||
|
memcpy(&gSmsText[strlen(gSmsText)], "\r\n", strlen("\r\n"));
|
||
|
memcpy(&gSmsText[strlen(gSmsText)], list_smsInbox[1][2], strlen(list_smsInbox[1][2]));
|
||
|
}
|
||
|
#if (defined(PSRAM_FEATURE_ENABLE) && (PSRAM_EXIST == 1) && (!(defined(TYPE_EC718M))))
|
||
|
vPortFree_Psram(smsInboxDb);
|
||
|
#else
|
||
|
free(smsInboxDb);
|
||
|
#endif
|
||
|
smsInboxDb = NULL;
|
||
|
}
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
smsInbox_data.total = smsInbox_total_num;
|
||
|
if(smsInbox_total_num > 0)
|
||
|
{
|
||
|
get_db_item(sub_func_table[cur_menu_func_id].index, smsInbox_cur_item, &smsInboxDb);
|
||
|
if (smsInboxDb != NULL)
|
||
|
{
|
||
|
memcpy(list_smsInbox[0], smsInboxDb, sizeof(list_smsInbox[0]) - 1);
|
||
|
SYSLOG_DEBUG("list_smsInbox[0][0]: %s\r\n", list_smsInbox[0][0]);
|
||
|
SYSLOG_DEBUG("list_smsInbox[0][1]: %s\r\n", list_smsInbox[0][1]);
|
||
|
SYSLOG_DEBUG("list_smsInbox[0][2]: %s\r\n", list_smsInbox[0][2]);
|
||
|
memcpy(gSmsText, list_smsInbox[0][0], strlen(list_smsInbox[0][0]));
|
||
|
memcpy(&gSmsText[strlen(gSmsText)], "\r\n", strlen("\r\n"));
|
||
|
memcpy(&gSmsText[strlen(gSmsText)], list_smsInbox[0][1], strlen(list_smsInbox[0][1]));
|
||
|
memcpy(&gSmsText[strlen(gSmsText)], "\r\n", strlen("\r\n"));
|
||
|
memcpy(&gSmsText[strlen(gSmsText)], list_smsInbox[0][2], strlen(list_smsInbox[0][2]));
|
||
|
#if (defined(PSRAM_FEATURE_ENABLE) && (PSRAM_EXIST == 1) && (!(defined(TYPE_EC718M))))
|
||
|
vPortFree_Psram(smsInboxDb);
|
||
|
#else
|
||
|
free(smsInboxDb);
|
||
|
#endif
|
||
|
smsInboxDb = NULL;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
smsInbox_data.title = "收件箱";
|
||
|
smsInbox_data.lines = 3;
|
||
|
smsInbox_data.context = list_smsInbox;
|
||
|
smsInbox_data.bottomBtn = list_smsInboxbtn;
|
||
|
SYSLOG_DEBUG("smsInbox_data: title=%s, total=%d, select=%d, lines=%d\r\n", smsInbox_data.title, smsInbox_data.total, smsInbox_data.select, smsInbox_data.lines);
|
||
|
ui_sms_set(&smsInbox_data);
|
||
|
}
|
||
|
|
||
|
static void showSmsOutbox(void)
|
||
|
{
|
||
|
smsOutbox_db *smsOutboxDb = NULL;
|
||
|
|
||
|
SYSLOG_DEBUG("cur_menu_func_id:%d\r\n",sub_func_table[cur_menu_func_id].index);
|
||
|
SYSLOG_DEBUG("smsOutbox_cur_item:%d\r\n",smsOutbox_cur_item);
|
||
|
|
||
|
smsOutbox_total_num = get_db_item_length(sub_func_table[cur_menu_func_id].index);
|
||
|
|
||
|
memset(&smsOutbox_data, 0, sizeof(smsOutbox_data));
|
||
|
memset(list_smsOutbox, 0, sizeof(list_smsOutbox));
|
||
|
if(smsOutbox_total_num >= 2)
|
||
|
{
|
||
|
smsOutbox_data.total = 2;
|
||
|
smsOutbox_data.select = (smsOutbox_cur_item >= 1) ? 1 : 0;
|
||
|
|
||
|
int index0 = smsOutbox_cur_item;
|
||
|
int index1 = smsOutbox_cur_item+1;
|
||
|
|
||
|
if(index1 >= smsOutbox_total_num || smsOutbox_data.select == 1)
|
||
|
{
|
||
|
index0 = smsOutbox_cur_item - 1;
|
||
|
index1 = smsOutbox_cur_item;
|
||
|
}
|
||
|
|
||
|
get_db_item(sub_func_table[cur_menu_func_id].index, index0, &smsOutboxDb);
|
||
|
if (smsOutboxDb != NULL)
|
||
|
{
|
||
|
memcpy(list_smsOutbox[0], smsOutboxDb, sizeof(smsOutbox_db));
|
||
|
SYSLOG_DEBUG("list_smsOutbox[0][0]: %s\r\n", list_smsOutbox[0][0]);
|
||
|
SYSLOG_DEBUG("list_smsOutbox[0][1]: %s\r\n", list_smsOutbox[0][1]);
|
||
|
SYSLOG_DEBUG("list_smsOutbox[0][2]: %s\r\n", list_smsOutbox[0][2]);
|
||
|
#if (defined(PSRAM_FEATURE_ENABLE) && (PSRAM_EXIST == 1) && (!(defined(TYPE_EC718M))))
|
||
|
vPortFree_Psram(smsOutboxDb);
|
||
|
#else
|
||
|
free(smsOutboxDb);
|
||
|
#endif
|
||
|
smsOutboxDb = NULL;
|
||
|
}
|
||
|
|
||
|
|
||
|
get_db_item(sub_func_table[cur_menu_func_id].index, index1, &smsOutboxDb);
|
||
|
if (smsOutboxDb != NULL)
|
||
|
{
|
||
|
memcpy(list_smsOutbox[1], smsOutboxDb, sizeof(smsOutbox_db));
|
||
|
SYSLOG_DEBUG("list_smsOutbox[1][0]: %s\r\n", list_smsOutbox[1][0]);
|
||
|
SYSLOG_DEBUG("list_smsOutbox[1][1]: %s\r\n", list_smsOutbox[1][1]);
|
||
|
SYSLOG_DEBUG("list_smsOutbox[1][2]: %s\r\n", list_smsOutbox[1][2]);
|
||
|
#if (defined(PSRAM_FEATURE_ENABLE) && (PSRAM_EXIST == 1) && (!(defined(TYPE_EC718M))))
|
||
|
vPortFree_Psram(smsOutboxDb);
|
||
|
#else
|
||
|
free(smsOutboxDb);
|
||
|
#endif
|
||
|
smsOutboxDb = NULL;
|
||
|
}
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
smsOutbox_data.total = smsOutbox_total_num;
|
||
|
if(smsOutbox_total_num > 0)
|
||
|
{
|
||
|
get_db_item(sub_func_table[cur_menu_func_id].index, smsOutbox_cur_item, &smsOutboxDb);
|
||
|
if (smsOutboxDb != NULL)
|
||
|
{
|
||
|
memcpy(list_smsOutbox[0], smsOutboxDb, sizeof(smsOutbox_db));
|
||
|
SYSLOG_DEBUG("list_smsOutbox[0][0]: %s\r\n", list_smsOutbox[0][0]);
|
||
|
SYSLOG_DEBUG("list_smsOutbox[0][1]: %s\r\n", list_smsOutbox[0][1]);
|
||
|
SYSLOG_DEBUG("list_smsOutbox[0][2]: %s\r\n", list_smsOutbox[0][2]);
|
||
|
#if (defined(PSRAM_FEATURE_ENABLE) && (PSRAM_EXIST == 1) && (!(defined(TYPE_EC718M))))
|
||
|
vPortFree_Psram(smsOutboxDb);
|
||
|
#else
|
||
|
free(smsOutboxDb);
|
||
|
#endif
|
||
|
smsOutboxDb = NULL;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
smsOutbox_data.title = "发件箱";
|
||
|
smsOutbox_data.lines = 3;
|
||
|
smsOutbox_data.context = list_smsOutbox;
|
||
|
smsOutbox_data.bottomBtn = list_smsOutboxbtn;
|
||
|
SYSLOG_DEBUG("smsInbox_data: title=%s, total=%d, select=%d, lines=%d\r\n", smsOutbox_data.title, smsOutbox_data.total, smsOutbox_data.select, smsOutbox_data.lines);
|
||
|
ui_sms_set(&smsOutbox_data);
|
||
|
}
|
||
|
|
||
|
int32_t newSms_init(AppInfoT *appInfo,AppMsgT *msg, uint32_t reserved2, uint32_t syscallTable)
|
||
|
{
|
||
|
SYSLOG_DEBUG("newSms_init\r\n");
|
||
|
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
int32_t newSms_proc(AppInfoT *appInfo,AppMsgT *msg, uint32_t reserved2, uint32_t syscallTable)
|
||
|
{
|
||
|
SYSLOG_DEBUG("newSms_proc\r\n");
|
||
|
switch(msg->msgType)
|
||
|
{
|
||
|
case APP_KEY_MSG:
|
||
|
SYSLOG_DEBUG("menu_Proc msgType:%d,key:0x%x\r\n",msg->msgType,msg->param1);
|
||
|
switch(msg->param1)
|
||
|
{
|
||
|
case FUNC_CODE_MENU:
|
||
|
break;
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
int32_t presetSms_init(AppInfoT *appInfo,AppMsgT *msg, uint32_t reserved2, uint32_t syscallTable)
|
||
|
{
|
||
|
SYSLOG_DEBUG("presetSms_init\r\n");
|
||
|
|
||
|
presetSms_cur_item = 0;
|
||
|
showPresetSms();
|
||
|
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
static void saveSmsIntoOutbox(char *number, char *text)
|
||
|
{
|
||
|
if ((number != NULL) && (text != NULL))
|
||
|
{
|
||
|
char outbox[3][40] = {0};
|
||
|
|
||
|
memset(outbox, 0, sizeof(outbox));
|
||
|
memcpy(outbox[0], number, strlen(number));
|
||
|
|
||
|
time_t time1 = time_time(NULL);
|
||
|
struct tm *tmTime = time_gmtime(&time1);
|
||
|
snprintf(outbox[1], sizeof(outbox[1]), "%d-%d-%d %d:%d:%d", 1900 + tmTime->tm_year, tmTime->tm_mon + 1, tmTime->tm_mday, tmTime->tm_hour, tmTime->tm_min, tmTime->tm_sec);
|
||
|
|
||
|
memcpy(outbox[2], text, strlen(text));
|
||
|
#ifdef FEATURE_SUBSYS_JSONDB_ENABLE
|
||
|
jsonDbAddItem("D:/smsOutboxDb.json", "D:/smsOutboxDb.type", outbox);
|
||
|
#endif
|
||
|
}
|
||
|
}
|
||
|
|
||
|
int32_t presetSms_proc(AppInfoT *appInfo,AppMsgT *msg, uint32_t reserved2, uint32_t syscallTable)
|
||
|
{
|
||
|
char *number = "123";
|
||
|
char *text = list_presetSms[presetSms_data.select];
|
||
|
|
||
|
SYSLOG_DEBUG("presetSms_proc\r\n");
|
||
|
switch(msg->msgType)
|
||
|
{
|
||
|
case APP_KEY_MSG:
|
||
|
SYSLOG_DEBUG("menu_Proc msgType:%d,key:0x%x\r\n",msg->msgType,msg->param1);
|
||
|
switch(msg->param1)
|
||
|
{
|
||
|
case FUNC_CODE_MENU:
|
||
|
SYSLOG_DEBUG("Send SMS: number=%s, text=%s\r\n", number, text);
|
||
|
smsSendText(number, text);
|
||
|
saveSmsIntoOutbox(number, text);
|
||
|
break;
|
||
|
|
||
|
case FUNC_CODE_DIR_U:
|
||
|
if (--presetSms_cur_item < 0)
|
||
|
{
|
||
|
presetSms_cur_item = presetSms_total_num - 1;
|
||
|
}
|
||
|
showPresetSms();
|
||
|
|
||
|
SYSLOG_DEBUG("presetSms_total_num:%d\r\n",presetSms_total_num);
|
||
|
SYSLOG_DEBUG("presetSms_cur_item %d\r\n",presetSms_cur_item);
|
||
|
break;
|
||
|
|
||
|
case FUNC_CODE_DIR_D:
|
||
|
if (++presetSms_cur_item >= presetSms_total_num)
|
||
|
{
|
||
|
presetSms_cur_item = 0;
|
||
|
}
|
||
|
showPresetSms();
|
||
|
|
||
|
SYSLOG_DEBUG("presetSms_total_num:%d\r\n",presetSms_total_num);
|
||
|
SYSLOG_DEBUG("presetSms_cur_item %d\r\n",presetSms_cur_item);
|
||
|
break;
|
||
|
|
||
|
case FUNC_CODE_BACK:
|
||
|
mainApp.msgProc = submenu_Proc;
|
||
|
show_list();
|
||
|
break;
|
||
|
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
return 0;
|
||
|
}
|
||
|
int32_t deleteSms_proc(AppInfoT *appInfo,AppMsgT *msg, uint32_t reserved2, uint32_t syscallTable)
|
||
|
{
|
||
|
SYSLOG_DEBUG("deleteSms_proc\r\n");
|
||
|
switch(msg->msgType)
|
||
|
{
|
||
|
case APP_KEY_MSG:
|
||
|
SYSLOG_DEBUG("menu_Proc msgType:%d,key:0x%x\r\n",msg->msgType,msg->param1);
|
||
|
switch(msg->param1)
|
||
|
{
|
||
|
case FUNC_CODE_MENU:
|
||
|
break;
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
return 0;
|
||
|
}
|
||
|
int32_t editSms_proc(AppInfoT *appInfo,AppMsgT *msg, uint32_t reserved2, uint32_t syscallTable)
|
||
|
{
|
||
|
SYSLOG_DEBUG("editSms_proc\r\n");
|
||
|
switch(msg->msgType)
|
||
|
{
|
||
|
case APP_KEY_MSG:
|
||
|
SYSLOG_DEBUG("menu_Proc msgType:%d,key:0x%x\r\n",msg->msgType,msg->param1);
|
||
|
switch(msg->param1)
|
||
|
{
|
||
|
case FUNC_CODE_MENU:
|
||
|
break;
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
int32_t smsOutboxList_init(AppInfoT *appInfo,AppMsgT *msg, uint32_t reserved2, uint32_t syscallTable)
|
||
|
{
|
||
|
SYSLOG_DEBUG("smsOutboxList_init\r\n");
|
||
|
|
||
|
smsOutbox_cur_item = 0;
|
||
|
showSmsOutbox();
|
||
|
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
int32_t smsOutboxList_proc(AppInfoT *appInfo,AppMsgT *msg, uint32_t reserved2, uint32_t syscallTable)
|
||
|
{
|
||
|
SYSLOG_DEBUG("smsOutboxList_proc\r\n");
|
||
|
switch(msg->msgType)
|
||
|
{
|
||
|
case APP_KEY_MSG:
|
||
|
SYSLOG_DEBUG("menu_Proc msgType:%d,key:0x%x\r\n",msg->msgType,msg->param1);
|
||
|
switch(msg->param1)
|
||
|
{
|
||
|
case FUNC_CODE_MENU:
|
||
|
break;
|
||
|
|
||
|
case FUNC_CODE_DIR_U:
|
||
|
if (--smsOutbox_cur_item < 0)
|
||
|
{
|
||
|
smsOutbox_cur_item = smsOutbox_total_num - 1;
|
||
|
}
|
||
|
showSmsOutbox();
|
||
|
|
||
|
SYSLOG_DEBUG("smsOutbox_total_num:%d\r\n",smsOutbox_total_num);
|
||
|
SYSLOG_DEBUG("smsOutbox_cur_item %d\r\n",smsOutbox_cur_item);
|
||
|
break;
|
||
|
|
||
|
case FUNC_CODE_DIR_D:
|
||
|
if (++smsOutbox_cur_item >= smsOutbox_total_num)
|
||
|
{
|
||
|
smsOutbox_cur_item = 0;
|
||
|
}
|
||
|
showSmsOutbox();
|
||
|
|
||
|
SYSLOG_DEBUG("smsOutbox_total_num:%d\r\n",smsOutbox_total_num);
|
||
|
SYSLOG_DEBUG("smsOutbox_cur_item %d\r\n",smsOutbox_cur_item);
|
||
|
break;
|
||
|
|
||
|
case FUNC_CODE_BACK:
|
||
|
mainApp.msgProc = submenu_Proc;
|
||
|
show_list();
|
||
|
break;
|
||
|
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
int32_t smsInboxList_init(AppInfoT *appInfo,AppMsgT *msg, uint32_t reserved2, uint32_t syscallTable)
|
||
|
{
|
||
|
SYSLOG_DEBUG("smsInboxList_init\r\n");
|
||
|
|
||
|
smsInbox_cur_item = 0;
|
||
|
showSmsInbox();
|
||
|
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
int32_t smsInboxList_proc(AppInfoT *appInfo,AppMsgT *msg, uint32_t reserved2, uint32_t syscallTable)
|
||
|
{
|
||
|
SYSLOG_DEBUG("smsInboxList_proc\r\n");
|
||
|
switch(msg->msgType)
|
||
|
{
|
||
|
case APP_KEY_MSG:
|
||
|
SYSLOG_DEBUG("menu_Proc msgType:%d,key:0x%x\r\n",msg->msgType,msg->param1);
|
||
|
switch(msg->param1)
|
||
|
{
|
||
|
case FUNC_CODE_MENU:
|
||
|
if ((smsInbox_total_num != 0) && (gSmsInDetail != true))
|
||
|
{
|
||
|
SYSLOG_DEBUG("gSmsText=%s\r\n", gSmsText);
|
||
|
gSmsInDetail = true;
|
||
|
ui_app_sms_show(&gSmsData);
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
case FUNC_CODE_DIR_U:
|
||
|
if (gSmsInDetail != true)
|
||
|
{
|
||
|
if (--smsInbox_cur_item < 0)
|
||
|
{
|
||
|
smsInbox_cur_item = smsInbox_total_num - 1;
|
||
|
}
|
||
|
showSmsInbox();
|
||
|
|
||
|
SYSLOG_DEBUG("smsInbox_total_num:%d\r\n",smsInbox_total_num);
|
||
|
SYSLOG_DEBUG("smsInbox_cur_item %d\r\n",smsInbox_cur_item);
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
case FUNC_CODE_DIR_D:
|
||
|
if (gSmsInDetail != true)
|
||
|
{
|
||
|
if (++smsInbox_cur_item >= smsInbox_total_num)
|
||
|
{
|
||
|
smsInbox_cur_item = 0;
|
||
|
}
|
||
|
showSmsInbox();
|
||
|
|
||
|
SYSLOG_DEBUG("smsInbox_total_num:%d\r\n",smsInbox_total_num);
|
||
|
SYSLOG_DEBUG("smsInbox_cur_item %d\r\n",smsInbox_cur_item);
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
case FUNC_CODE_BACK:
|
||
|
if (gSmsInDetail == true)
|
||
|
{
|
||
|
gSmsInDetail = false;
|
||
|
showSmsInbox();
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
mainApp.msgProc = submenu_Proc;
|
||
|
show_list();
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
return 0;
|
||
|
}
|