UnifiedMessageGProt.h
上传用户:lqx1163
上传日期:2014-08-13
资源大小:9183k
文件大小:10k
源码类别:

MTK

开发平台:

C/C++

  1. /*****************************************************************************
  2. *  Copyright Statement:
  3. *  --------------------
  4. *  This software is protected by Copyright and the information contained
  5. *  herein is confidential. The software may not be copied and the information
  6. *  contained herein may not be used or disclosed except with the written
  7. *  permission of MediaTek Inc. (C) 2005
  8. *
  9. *  BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
  10. *  THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
  11. *  RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
  12. *  AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
  13. *  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
  14. *  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
  15. *  NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
  16. *  SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
  17. *  SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
  18. *  THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
  19. *  NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
  20. *  SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
  21. *
  22. *  BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
  23. *  LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
  24. *  AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
  25. *  OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
  26. *  MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE. 
  27. *
  28. *  THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
  29. *  WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
  30. *  LAWS PRINCIPLES.  ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
  31. *  RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
  32. *  THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
  33. *
  34. *****************************************************************************/
  35. /*******************************************************************************
  36.  * Filename:
  37.  * ---------
  38.  * UnifiedMessageGProt.h
  39.  *
  40.  * Project:
  41.  * --------
  42.  * MAUI
  43.  *
  44.  * Description:
  45.  * ------------
  46.  * This file defines global enum, constant and prototypes for Unified Message
  47.  *
  48.  * Author:
  49.  * -------
  50.  * -------
  51.  *
  52.  *==============================================================================
  53.  *             HISTORY
  54.  * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!! 
  55.  *------------------------------------------------------------------------------
  56.  * removed!
  57.  *
  58.  * removed!
  59.  * removed!
  60.  * removed!
  61.  *
  62.  * removed!
  63.  * removed!
  64.  * removed!
  65.  *
  66.  * removed!
  67.  * removed!
  68.  * removed!
  69.  *
  70.  * removed!
  71.  * removed!
  72.  * removed!
  73.  *
  74.  *
  75.  *------------------------------------------------------------------------------
  76.  * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!! 
  77.  *==============================================================================
  78.  *******************************************************************************/
  79. #ifndef _MMI_UNIFIED_MESSAGE_GPROT_H
  80. #define _MMI_UNIFIED_MESSAGE_GPROT_H
  81. //#include "MMIDataType.h"
  82. //#include "UnifiedMessageDef.h"
  83. #ifdef __MMI_UNIFIED_MESSAGE__
  84. #define MMI_UM_MAX_GET_LIST_MSG_NUMBER (100)
  85. #define MMI_UM_MAX_GET_MSG_INFO_NUMBER (9)
  86. #define MMI_UM_MAX_ADDR_LEN   (60)
  87. #define MMI_UM_MAX_SUBJECT_LEN   (40)
  88. typedef enum
  89. {
  90.     UM_MSG_BOX_TYPE_INBOX = 0x01,
  91.     UM_MSG_BOX_TYPE_UNSENT = 0x02,
  92.     UM_MSG_BOX_TYPE_SENT = 0x04,
  93.     UM_MSG_BOX_TYPE_DRAFT = 0x08
  94. } UmMsgBoxType;
  95. typedef enum
  96. {
  97.     UM_STATE_IDLE,
  98.     UM_STATE_ENTRY_MAIN_MENU,
  99.     UM_STATE_ENTRY_WRTIE_MSG,
  100.     UM_STATE_ENTRY_TEMPLATE,
  101.     UM_STATE_ENTRY_DELETE_FOLDER,
  102.     UM_STATE_ENTRY_SETTING,
  103.     UM_STATE_ENTRY_INBOX,
  104.     UM_STATE_ENTRY_UNSENT,
  105.     UM_STATE_ENTRY_SENT,
  106.     UM_STATE_ENTRY_DRAFT,
  107.     UM_STATE_ENTRY_NEW_MSG_IND
  108. } um_state_type_enum;
  109. typedef enum
  110. {
  111.     UM_MSG_TYPE_SMS = 0x01,
  112.     UM_MSG_TYPE_MMS = 0x02,
  113.     UM_MSG_TYPE_WAP_PUSH = 0x04
  114. } UmMsgType;
  115. typedef enum
  116. {
  117.     UM_ADDR_TYPE_PHONE_NUMBER,
  118.     UM_ADDR_TYPE_EMAIL_ADDRESS
  119. } UmAddrType;
  120. typedef struct
  121. {
  122.     kal_uint32 timestamp;
  123.     kal_uint16 msg_index;
  124. } mmi_um_list_info_struct;
  125. typedef struct
  126. {
  127.     kal_uint16 msg_index;                           /* message index */
  128.     kal_uint32 timestamp;                           /* message timestamp array */
  129.     UmAddrType address_type;
  130.     kal_uint8 address_length;                       /* Number of characters in address string */
  131.     kal_wchar address[MMI_UM_MAX_ADDR_LEN + 1];     /* sender address for MT msg; receiver address for MO msg */
  132.     kal_uint8 subject_length;                       /* Number of characters in subject string */
  133.     kal_wchar subject[MMI_UM_MAX_SUBJECT_LEN + 1];  /* subject for MMS, WAP Push and E-mai; part of content for SMS */
  134.     kal_uint16 icon_id;
  135. } mmi_um_msg_info_struct;
  136. typedef struct
  137. {
  138.     LOCAL_PARA_HDR UmMsgType msg_type;  /* Type of message */
  139. } mmi_um_generic_req_struct;
  140. typedef struct
  141. {
  142.     LOCAL_PARA_HDR kal_bool result; /* KAL_TRUE means ready; KAL_FALSE means initialization failure */
  143.     UmMsgType msg_type;             /* Type of ready message */
  144. } mmi_um_ready_ind_struct;
  145. typedef struct
  146. {
  147.     LOCAL_PARA_HDR UmMsgType msg_type;  /* Type of message */
  148. } mmi_um_get_msg_num_req_struct;
  149. typedef struct
  150. {
  151.     LOCAL_PARA_HDR kal_bool result; /* KAL_TRUE means OK; KAL_FALSE means failed */
  152.     UmMsgType msg_type;             /* Type of message */
  153.     kal_uint16 inbox_unread_msg_number;
  154.     kal_uint16 inbox_read_msg_number;
  155.     kal_uint16 unsent_msg_number;
  156.     kal_uint16 sent_msg_number;
  157.     kal_uint16 draft_msg_number;
  158. } mmi_um_get_msg_num_rsp_struct;
  159. typedef struct
  160. {
  161.     LOCAL_PARA_HDR UmMsgType msg_type;  /* Type of message */
  162.     UmMsgBoxType msg_box_type;          /* Type of message box */
  163.     kal_uint16 start_entry;             /* From which entry to get list info. Start from 0 */
  164. } mmi_um_get_list_req_struct;
  165. typedef struct
  166. {
  167.     LOCAL_PARA_HDR kal_bool result; /* KAL_TRUE means OK; KAL_FALSE means failed */
  168.     UmMsgType msg_type;             /* Type of message */
  169.     UmMsgBoxType msg_box_type;      /* Type of message box */
  170.     kal_uint16 start_entry;         /* The first entry number in this response primitive */
  171.     kal_uint16 msg_number;          /* Number of messages in this response primitive */
  172.     mmi_um_list_info_struct list_info[MMI_UM_MAX_GET_LIST_MSG_NUMBER];  /* List info array */
  173.     kal_bool more;  /* If there are more msgs besides this response primitive */
  174. } mmi_um_get_list_rsp_struct;
  175. typedef struct
  176. {
  177.     LOCAL_PARA_HDR UmMsgType msg_type;  /* Type of message */
  178.     UmMsgBoxType msg_box_type;          /* Type of message box */
  179.     kal_uint16 start_entry;             /* From which entry to get msg info. Start from 0 */
  180.     kal_uint16 msg_number;              /* Number of messages to get info */
  181. } mmi_um_get_msg_info_req_struct;
  182. typedef struct
  183. {
  184.     LOCAL_PARA_HDR kal_bool result; /* KAL_TRUE means OK; KAL_FALSE means failed */
  185.     UmMsgType msg_type;             /* Type of message */
  186.     UmMsgBoxType msg_box_type;      /* Type of message box */
  187.     kal_uint16 start_entry;         /* The first entry number in this response primitive */
  188.     kal_uint16 msg_number;          /* Number of messages in this response primitive */
  189.     mmi_um_msg_info_struct msg_info[MMI_UM_MAX_GET_MSG_INFO_NUMBER];    /* Message info array */
  190. } mmi_um_get_msg_info_rsp_struct;
  191. typedef struct
  192. {
  193.     LOCAL_PARA_HDR UmMsgType msg_type;  /* Type of message */
  194.     UmMsgBoxType msg_box_type;          /* Types of message boxes to delete; bit mask */
  195. } mmi_um_delete_folder_req_struct;
  196. typedef struct
  197. {
  198.     LOCAL_PARA_HDR UmMsgType msg_type;  /* Type of message */
  199.     kal_bool result;                    /* KAL_TRUE means all msgs are deleted successfully; Otherwise KAL_FALSE */
  200. } mmi_um_delete_folder_rsp_struct;
  201. typedef struct
  202. {
  203.     LOCAL_PARA_HDR UmMsgType msg_type;  /* Type of message */
  204.     UmMsgBoxType msg_box_type;          /* Types of message boxes */
  205.     kal_uint16 msg_index;
  206.     kal_uint32 timestamp;
  207. } mmi_um_new_msg_ind_struct;
  208. typedef struct
  209. {
  210.     LOCAL_PARA_HDR UmMsgType msg_type;  /* Type of message */
  211.     UmMsgBoxType msg_box_type;          /* Types of message boxes */
  212.     kal_uint16 msg_index;
  213. } mmi_um_highlight_msg_ind_struct;
  214. typedef struct
  215. {
  216.     LOCAL_PARA_HDR UmMsgType msg_type;  /* Type of message */
  217.     UmMsgBoxType msg_box_type;          /* Types of message boxes */
  218. } mmi_um_refresh_ind_struct;
  219. typedef struct
  220. {
  221.     LOCAL_PARA_HDR UmMsgType msg_type;  /* Type of message */
  222.     UmMsgBoxType msg_box_type;          /* Types of message boxes to delete; bit mask */
  223. } mmi_um_delete_all_ind_struct;
  224. typedef struct
  225. {
  226.     LOCAL_PARA_HDR UmMsgType msg_type;  /* Type of message */
  227.     kal_bool result;                    /* KAL_TRUE means all msgs are deleted successfully; Otherwise KAL_FALSE */
  228. } mmi_um_delete_all_res_struct;
  229. //typedef struct mmi_um_delete_folder_req_struct mmi_um_delete_all_ind_struct;
  230. //typedef struct mmi_um_delete_folder_rsp_struct mmi_um_delete_all_res_struct;
  231. extern void mmi_um_highlight_main_menu(void);
  232. extern void mmi_um_init(void);
  233. extern void mmi_um_ready_ind(kal_bool result, UmMsgType msg_type);
  234. extern void mmi_um_skip_write_menu(kal_bool operation);
  235. extern void mmi_um_new_msg_ind(
  236.                 UmMsgType msg_type,
  237.                 UmMsgBoxType msg_box_type,
  238.                 kal_uint16 msg_index,
  239.                 kal_uint32 timestamp);
  240. extern void mmi_um_highlight_msg_ind(UmMsgType msg_type, UmMsgBoxType msg_box_type, kal_uint16 msg_index);
  241. extern void mmi_um_set_highlight_msg(kal_uint16 list_index);
  242. extern kal_uint8 mmi_um_check_new_msg(void);
  243. extern void mmi_um_pre_entry_new_msg_ind(void);
  244. extern UmMsgBoxType mmi_um_get_current_msg_box_type(void);
  245. extern kal_bool mmi_um_is_available(void);
  246. extern void mmi_um_on_enter_idle_screen(void);
  247. extern void mmi_um_handle_sim_refresh(UmMsgType msg_type, kal_uint8 popup_displayed);
  248. extern kal_bool mmi_um_check_ready(void);
  249. extern kal_bool mmi_um_is_sending_num_msg(void);
  250. #endif /* __MMI_UNIFIED_MESSAGE__ */ 
  251. #endif /* _MMI_UNIFIED_MESSAGE_GPROT_H */