wgui_categories_ems.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.  *
  37.  * Filename:
  38.  * ---------
  39.  * wgui_categories_ems.h
  40.  *
  41.  * Project:
  42.  * --------
  43.  *   MAUI
  44.  *
  45.  * Description:
  46.  * ------------
  47.  *   This file is for EMS category screens.
  48.  *
  49.  * Author:
  50.  * -------
  51.  * -------
  52.  *
  53.  *============================================================================
  54.  *             HISTORY
  55.  * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  56.  *------------------------------------------------------------------------------
  57.  * removed!
  58.  *
  59.  * removed!
  60.  * removed!
  61.  * removed!
  62.  *
  63.  * removed!
  64.  * removed!
  65.  * removed!
  66.  *
  67.  *------------------------------------------------------------------------------
  68.  * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  69.  *============================================================================
  70.  *********************************************************************************/
  71. #ifndef __WGUI_CATEGORIES_EMS_H__
  72. #define __WGUI_CATEGORIES_EMS_H__
  73. #if(!UI_DISABLE_EMS_CATEGORY_SCREENS)
  74.     #include "gui_config.h"
  75.     #include "PixtelDataTypes.h"
  76.     #include "gui_ems.h"
  77.     #include "wgui_categories.h"
  78.     /* 062206 EMS category Start */
  79.     #ifdef __MMI_MESSAGES_EMS__
  80.     #define CAT_144_DATA_FILE_SIZE  1600
  81.     #endif 
  82.     /* 062206 EMS buffer End */
  83.     extern void RedrawCategory143Screen(void);
  84.     extern void ShowCategory143Screen(
  85.                     U16 title,
  86.                     U16 title_icon,
  87.                     U16 left_softkey,
  88.                     U16 left_softkey_icon,
  89.                     U16 right_softkey,
  90.                     U16 right_softkey_icon,
  91.                     EMSObject *object_list,
  92.                     S32 *n_items,
  93.                     S32 *index,
  94.                     U8 *history_buffer);
  95.     extern void ExitCategory143Screen(void);
  96.     extern S32 GetCategory143HistorySize(void);
  97.     extern U8 *GetCategory143History(U8 *history_buffer);
  98.     extern S32 GetCategory143DataSize(void);
  99.     extern U8 *GetCategory143Data(U8 *data);
  100.     extern U8 GetCategory143DataType(void);
  101.     extern void GetEMSObjectPDUSize(U8 *data, S32 *size);
  102.     extern S32 GetEMSPredefinedObjectPDUSize(U32 object_type);
  103.     extern void InsertEMSObjectUIHeader(U32 object_type, S32 object_size, U8 *source, U8 *destination);
  104.     extern void RemoveEMSObjectUIHeader(U32 object_type, U8 *source, U8 *destination);
  105.     extern void CreateCategory143ObjectList(EMSData *data, EMSObject **object_list);
  106.     extern void FreeCategory143ObjectList(EMSObject **object_list);
  107.     extern void RedrawCategory144Screen(void);
  108.     extern void ShowCategory144Screen(
  109.                     U8 *title,
  110.                     U16 title_icon,
  111.                     U16 left_softkey,
  112.                     U16 left_softkey_icon,
  113.                     U16 right_softkey,
  114.                     U16 right_softkey_icon,
  115.                     U32 object_type,
  116.                     S32 n_items,
  117.                     U8 **object_titles,
  118.                     U16 *predefined_objects,
  119.                     MMI_BOOL is_short_name,
  120.                     U8 **userdefined_objects,
  121.                     S32 *index,
  122.                     U8 *history_buffer);
  123.     extern void ExitCategory144Screen(void);
  124.     extern S32 GetCategory144HistorySize(void);
  125.     extern U8 *GetCategory144History(U8 *history_buffer);
  126.     void RegisterCategory144ObjectLoader(U8 *(*f) (S32 index));
  127.     extern void EMSObjectStopPlayBack(void);
  128.     extern EMSTATUS EMSObjectPlayback(U32 object_type, U8 *data, S32 index);
  129.     /* Call before EMSPack  */
  130.     extern void EMS_ConvertAsciiEncodingToGSM7BitDefault(EMSData *data);
  131.     extern void EMS_ConvertAsciiEncodingToGSM7BitDefaultWithExtended(EMSData *data);
  132.     /* Call after EMSUnpack */
  133.     extern void EMS_ConvertGSM7BitDefaultEncodingToAscii(EMSData *data);
  134.     extern void EMS_ConvertGSM7BitDefaultEncodingToAsciiWithExtended(EMSData *data);
  135.     extern MMI_BOOL is_EMS_inputbox_in_view_mode(void);
  136. #define CAT145_BLACK_TITLE 0x00000000
  137. #define CAT145_BLUE_TITLE  0x00000001
  138. #define CAT145_RED_TITLE   0x00000002
  139. #define CAT145_GREEN_TITLE 0x00000003
  140.     extern void RedrawCategory145Screen(void);
  141.     extern void ShowCategory145Screen(
  142.                     U8 *title,
  143.                     U16 title_icon,
  144.                     U16 left_softkey,
  145.                     U16 left_softkey_icon,
  146.                     U16 right_softkey,
  147.                     U16 right_softkey_icon,
  148.                     U16 message_icon,
  149.                     U8 *message_title,
  150.                     U8 *message,
  151.                     U32 flags,
  152.                     U8 *history_buffer);
  153.     extern void ExitCategory145Screen(void);
  154.     extern S32 GetCategory145HistorySize(void);
  155.     extern U8 *GetCategory145History(U8 *history_buffer);
  156.     /* PMT VIKAS START 20051217 */
  157. #ifdef UI_SMALL_IMAGE_SELECTOR_SCREEN
  158. #define UI_SMALL_IMAGE_SELECTOR_SHOW_VERTICAL_SCROLLBAR     0x00000001
  159. #define UI_SMALL_IMAGE_SELECTOR_SHOW_HORIZONTAL_SCROLLBAR   0x00000002
  160. #define MAX_IMAGE_SELECTOR_COL (6)
  161. #define MAX_IMAGE_SELECTOR_ROW (4)
  162.     extern void gui_enable_small_image_selector(void);
  163.     extern void gui_disable_small_image_selector(void);
  164.     extern BOOL gui_is_small_image_selector_set(void);
  165.     extern void gui_enable_fixed_list_line_draw(void);
  166.     extern void redraw_small_image_selector_images(void);
  167.     extern void small_image_selector_goto_previous_row(void);
  168.     extern void small_image_selector_goto_next_row(void);
  169.     extern void small_image_selector_compute_row_col(S32 index, S32 *row, S32 *col);
  170.     extern S32 small_image_selector_compute_next_row_image_index(S32 index);
  171.     extern S32 small_image_selector_compute_previous_row_image_index(S32 index);
  172.     extern void small_image_selector_key_handler(S32 vkey_code, S32 key_state);
  173.     extern void ExitSmallImageSelectorScreen(void);
  174.     extern void RedrawSmallImageSelectorScreen(void);
  175.     extern void ShowImageSelectorScreen(
  176.                     S8 *title,
  177.                     U16 title_icon,
  178.                     U16 left_softkey,
  179.                     U16 left_softkey_icon,
  180.                     U16 right_softkey,
  181.                     U16 right_softkey_icon,
  182.                     U32 object_type,
  183.                     S32 n_items,
  184.                     U8 **object_titles,
  185.                     U16 *predefined_objects,
  186.                     U8 **userdefined_objects,
  187.                     S32 *index,
  188.                     U8 *history_buffer);
  189.     typedef struct _small_image_selector
  190.     {
  191.         S32 x, y;
  192.         S32 width, height;
  193.         S32 n_columns;
  194.         S32 n_rows;
  195.         S32 n_images;
  196.         S32 first_displayed_column;
  197.         S32 first_displayed_row;
  198.         S32 first_displayed_image;
  199.         S32 displayed_columns;
  200.         S32 displayed_rows;
  201.         S32 highlighted_column;
  202.         S32 highlighted_row;
  203.         S32 highlighted_image;
  204.         S32 image_width;
  205.         S32 image_height;
  206.         vertical_scrollbar vbar;
  207.         horizontal_scrollbar hbar;
  208.         U32 flags;
  209.         S32 h_gap;
  210.         S32 v_gap;
  211.     } small_image_selector_struct;
  212.     //extern small_image_selector_struct small_image_selector;
  213.     extern void small_image_selector_configure_current_display(
  214.                     small_image_selector_struct *s,
  215.                     S32 new_highlighted_image);
  216.     extern void associate_small_image_selector(small_image_selector_struct *s);
  217.     extern void small_image_selector_auto_calculate(small_image_selector_struct *s);
  218.     extern void small_image_selector_auto_configure(small_image_selector_struct *s);
  219.     extern void small_image_selector_set_up(small_image_selector_struct *s, S32 n_images);
  220.     extern U8 *GetCategory146History(U8 *history_buffer);
  221. #endif /* UI_SMALL_IMAGE_SELECTOR_SCREEN */ 
  222.     /* PMT VIKAS END 20051217 */
  223. #endif /* (!UI_DISABLE_EMS_CATEGORY_SCREENS) */ 
  224. #endif /* __WGUI_CATEGORIES_EMS_H__ */