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

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.  *   gui_fixed_menuitems.c
  40.  *
  41.  * Project:
  42.  * --------
  43.  *   MAUI
  44.  *
  45.  * Description:
  46.  * ------------
  47.  *   Menu items in fixed menu - UI component
  48.  *
  49.  *   [Text menu item]
  50.  *   [Icontext menu item]
  51.  *   [Icontext-list menu item]
  52.  *   [Twostate menu item]
  53.  *
  54.  * Author:
  55.  * -------
  56.  * -------
  57.  * -------
  58.  * -------
  59.  *
  60.  *==============================================================================
  61.  *             HISTORY
  62.  * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!! 
  63.  *------------------------------------------------------------------------------
  64.  * removed!
  65.  *
  66.  * removed!
  67.  * removed!
  68.  * removed!
  69.  *
  70.  * removed!
  71.  * removed!
  72.  * removed!
  73.  *
  74.  * removed!
  75.  * removed!
  76.  * removed!
  77.  *
  78.  * removed!
  79.  * removed!
  80.  * removed!
  81.  *
  82.  * removed!
  83.  * removed!
  84.  * removed!
  85.  *
  86.  * removed!
  87.  * removed!
  88.  * removed!
  89.  *
  90.  * removed!
  91.  * removed!
  92.  * removed!
  93.  *
  94.  *------------------------------------------------------------------------------
  95.  * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!! 
  96.  *==============================================================================
  97.  *******************************************************************************/
  98. /**
  99.  * Copyright Notice
  100.  * ?2002 - 2003, Pixtel Communications, Inc., 1489 43rd Ave. W.,
  101.  * Vancouver, B.C. V6M 4K8 Canada. All Rights Reserved.
  102.  *  (It is illegal to remove this copyright notice from this software or any
  103.  *  portion of it)
  104.  */
  105. /**********************************************************************************
  106.    Filename:      gui_fixed_menuitems.h
  107.    Author:        manju
  108.    Date Created:  August-13-2002
  109.    Contains:      PixTel UI routines header for Fixed Menuitems
  110. **********************************************************************************/
  111. #ifndef __GUI_FIXED_MENUITEMS_H__
  112. #define __GUI_FIXED_MENUITEMS_H__
  113. #include "gui.h"
  114. #include "gdi_include.h"
  115. /* MTK Leo add,20040318, for new simulator */
  116. #include "gui_theme_struct.h"
  117. /* MTK Leo end */
  118. #include "gui_fixed_menus.h"
  119. #ifdef __cplusplus
  120. extern "C"
  121. {
  122. #endif /* __cplusplus */ 
  123. #ifdef __MMI_TOUCH_SCREEN__
  124. #include "kal_non_specific_general_types.h"
  125. #include "TouchScreenGprot.h"
  126. #endif /* __MMI_TOUCH_SCREEN__ */ 
  127.     extern void UI_dummy_display_pop_up_description(S32 x, S32 y, S32 width, S32 height);
  128.     extern void (*gui_display_pop_up_description) (S32 x, S32 y, S32 width, S32 height);
  129.     /* PMT NEERAJ START 20050712 */
  130. #ifdef __MMI_UI_HINTS_IN_MENUITEM__
  131.     extern UI_string_type UI_dummy_get_current_pop_up_description_string(void);
  132.     extern UI_string_type(*gui_get_current_pop_up_description_string) (void);
  133. #endif /* __MMI_UI_HINTS_IN_MENUITEM__ */ 
  134.     /* PMT NEERAJ END 20050712 */
  135.     /* Fixed text menuitem                       */
  136.     typedef struct _fixed_text_menuitem_type
  137.     {
  138.         UI_string_type text;
  139.         U32 flags;
  140.     } fixed_text_menuitem_type;
  141.     extern UI_fixed_text_menuitem_theme *current_fixed_text_menuitem_theme;
  142.     typedef struct _fixed_text_menuitem
  143.     {
  144.         S32 width, height;
  145.         UI_filled_area *normal_filler;
  146.         UI_filled_area *disabled_filler;
  147.         UI_filled_area *selected_filler;
  148.         UI_filled_area *focussed_filler;
  149.         U32 flags;
  150.         U32 ext_flags;
  151.         S32 text_x, text_y;
  152.         color normal_text_color;
  153.         color disabled_text_color;
  154.         color selected_text_color;
  155.         color focussed_text_color;
  156.         UI_font_type text_font;
  157.         S32 scroll_x, scroll_width;
  158.         S32 text_width;
  159.         fixed_list_menu *parent_list;
  160.         fixed_matrix_menu *parent_matrix;
  161.     } fixed_text_menuitem;
  162.     extern void gui_set_fixed_text_menuitem_theme(fixed_text_menuitem *m, UI_fixed_text_menuitem_theme *t);
  163.     extern void gui_set_fixed_text_menuitem_current_theme(fixed_text_menuitem *m);
  164.     extern void gui_create_fixed_text_menuitem(fixed_text_menuitem *m, S32 width, S32 height);
  165.     extern void gui_fixed_text_menuitem_set_text_position(fixed_text_menuitem *m, S32 x, S32 y);
  166.     extern void gui_resize_fixed_text_menuitem(fixed_text_menuitem *m, S32 width, S32 height);
  167.     extern void gui_show_fixed_text_menuitem(void *item, void *common_item_data, S32 x, S32 y);
  168.     extern void gui_measure_fixed_text_menuitem(void *item, void *common_item_data, S32 *width, S32 *height);
  169.     extern void gui_highlight_fixed_text_menuitem(void *item, void *common_item_data);
  170.     extern void gui_remove_highlight_fixed_text_menuitem(void *item, void *common_item_data);
  171.     extern void gui_fixed_text_menuitem_start_scroll(void);
  172.     extern void gui_fixed_text_menuitem_stop_scroll(void);
  173.     /* UI fixed icontext menuitem structure         */
  174.     typedef struct _fixed_icontext_menuitem_type
  175.     {
  176.         PU8 item_icon;
  177.         /* UI_animated_image_handle     item_icon_handle; */
  178.         gdi_handle item_icon_handle;
  179.         UI_string_type item_text;
  180.         U32 flags;
  181.         U32 ext_flags;
  182.     } fixed_icontext_menuitem_type;
  183.     extern UI_fixed_icontext_menuitem_theme *current_fixed_icontext_menuitem_theme;
  184.     typedef struct _fixed_icontext_menuitem
  185.     {
  186.         S32 width, height;
  187.         UI_filled_area *normal_filler;
  188.         UI_filled_area *disabled_filler;
  189.         UI_filled_area *selected_filler;
  190.         UI_filled_area *focussed_filler;
  191.         U32 flags;
  192.         U32 ext_flags;
  193.         S32 text_x, text_y;
  194.         color normal_text_color;
  195.         color disabled_text_color;
  196.         color selected_text_color;
  197.         color focussed_text_color;
  198.         UI_font_type text_font;
  199.         S32 icon_x, icon_y;
  200.         UI_transparent_color_type icon_transparent_color;
  201.         S32 scroll_x, scroll_width;
  202.         S32 text_width;
  203.         fixed_list_menu *parent_list;
  204.         fixed_matrix_menu *parent_matrix;
  205.     } fixed_icontext_menuitem;
  206.     extern void gui_set_fixed_icontext_menuitem_current_theme(fixed_icontext_menuitem *m);
  207.     extern void gui_set_fixed_icontext_menuitem_theme(fixed_icontext_menuitem *m,
  208.                                               UI_fixed_icontext_menuitem_theme *t);
  209.     extern void gui_create_fixed_icontext_menuitem(fixed_icontext_menuitem *m, S32 width, S32 height);
  210.     extern void gui_fixed_icontext_menuitem_set_text_position(fixed_icontext_menuitem *m, S32 x, S32 y);
  211.     extern void gui_fixed_icontext_menuitem_set_icon_position(fixed_icontext_menuitem *m, S32 x, S32 y);
  212.     extern void gui_resize_fixed_icontext_menuitem(fixed_icontext_menuitem *m, S32 width, S32 height);
  213.     extern void gui_show_fixed_icontext_menuitem(void *item, void *common_item_data, S32 x, S32 y);
  214.     extern void gui_hide_fixed_icontext_menuitem(void *item, void *common_item_data, S32 x, S32 y);
  215.     extern void gui_measure_fixed_icontext_menuitem(void *item, void *common_item_data, S32 *width, S32 *height);
  216.     extern void gui_highlight_fixed_icontext_menuitem(void *item, void *common_item_data);
  217.     extern void gui_remove_highlight_fixed_icontext_menuitem(void *item, void *common_item_data);
  218.     extern void gui_fixed_icontext_menuitem_start_scroll(void);
  219.     extern void gui_fixed_icontext_menuitem_stop_scroll(void);
  220. #if (defined __MMI_UI_TWO_LINE_MENUITEM_STYLES__ || defined __MMI_UI_HINTS_IN_MENUITEM__)
  221.     extern void gui_show_two_line_icontext_menuitem(void *item, void *common_item_data, S32 x, S32 y);
  222.     extern void gui_two_line_scroller_stop(void);
  223. #endif /* (defined __MMI_UI_TWO_LINE_MENUITEM_STYLES__ || defined __MMI_UI_HINTS_IN_MENUITEM__) */ 
  224. #ifdef __MMI_TOUCH_SCREEN__
  225.     extern BOOL gui_fixed_icontext_menuitem_translate_pen_event(
  226.                     void *item,
  227.                     void *common_item_data,
  228.                     S32 item_x,
  229.                     S32 item_y,
  230.                     mmi_pen_event_type_enum pen_event,
  231.                     S16 x,
  232.                     S16 y,
  233.                     gui_list_pen_enum *menuitem_event,
  234.                     gui_pen_event_param_struct *menuitem_param);
  235. #endif /* __MMI_TOUCH_SCREEN__ */ 
  236.     /* UI fixed icontext list menuitem structure    */
  237.     typedef struct _fixed_icontext_list_menuitem_type
  238.     {
  239.         PU8 item_icons[FIXED_ICONTEXT_LIST_MAX_ICON_COLUMNS];
  240.         /* UI_animated_image_handle     item_icon_handles[FIXED_ICONTEXT_LIST_MAX_ICON_COLUMNS]; */
  241.         gdi_handle item_icon_handles[FIXED_ICONTEXT_LIST_MAX_ICON_COLUMNS];
  242.         UI_string_type item_texts[FIXED_ICONTEXT_LIST_MAX_TEXT_COLUMNS];
  243.         U32 flags;
  244.     } fixed_icontext_list_menuitem_type;
  245.     extern UI_fixed_icontext_list_menuitem_theme *current_fixed_icontext_list_menuitem_theme;
  246.     typedef struct _fixed_icontext_list_menuitem
  247.     {
  248.         S32 width, height;
  249.         UI_filled_area *normal_filler;
  250.         UI_filled_area *disabled_filler;
  251.         UI_filled_area *selected_filler;
  252.         UI_filled_area *focussed_filler;
  253.         U32 flags;
  254.         U32 ext_flags;
  255.         S32 n_text_columns;
  256.         S32 n_icon_columns;
  257.         UI_object_coordinates text_coordinates[FIXED_ICONTEXT_LIST_MAX_TEXT_COLUMNS];
  258.         color normal_text_colors[FIXED_ICONTEXT_LIST_MAX_TEXT_COLUMNS];
  259.         color disabled_text_colors[FIXED_ICONTEXT_LIST_MAX_TEXT_COLUMNS];
  260.         color selected_text_colors[FIXED_ICONTEXT_LIST_MAX_TEXT_COLUMNS];
  261.         color focussed_text_colors[FIXED_ICONTEXT_LIST_MAX_TEXT_COLUMNS];
  262.         UI_font_type text_fonts[FIXED_ICONTEXT_LIST_MAX_TEXT_COLUMNS];
  263.         UI_object_coordinates icon_coordinates[FIXED_ICONTEXT_LIST_MAX_ICON_COLUMNS];
  264.         UI_transparent_color_type icon_transparent_color;
  265.         S32 scroll_x, scroll_width;
  266.         S32 text_width;
  267.         void (*post_display_function) (void *item, void *common_item_data, S32 x, S32 y);
  268.         fixed_list_menu *parent_list;
  269.         fixed_matrix_menu *parent_matrix;
  270.     } fixed_icontext_list_menuitem;
  271.     extern void gui_set_fixed_icontext_list_menuitem_current_theme(fixed_icontext_list_menuitem *m);
  272.     extern void gui_set_fixed_icontext_list_menuitem_theme(
  273.                     fixed_icontext_list_menuitem *m,
  274.                     UI_fixed_icontext_list_menuitem_theme *t);
  275.     extern void gui_create_fixed_icontext_list_menuitem(
  276.                     fixed_icontext_list_menuitem *m,
  277.                     S32 width,
  278.                     S32 height,
  279.                     S32 n_text_columns,
  280.                     S32 n_icon_columns);
  281.     void gui_fixed_icontext_list_menuitem_set_post_display(fixed_icontext_list_menuitem *m,
  282.                                                            void (*post_display_function) (void *item,
  283.                                                                                           void *common_item_data, S32 x,
  284.                                                                                           S32 y));
  285.     extern void gui_fixed_icontext_list_menuitem_set_text_coordinates(
  286.                     fixed_icontext_list_menuitem *m,
  287.                     S32 text_column,
  288.                     S32 x,
  289.                     S32 y,
  290.                     S32 width,
  291.                     S32 height);
  292.     extern void gui_fixed_icontext_list_menuitem_set_icon_coordinates(
  293.                     fixed_icontext_list_menuitem *m,
  294.                     S32 icon_column,
  295.                     S32 x,
  296.                     S32 y,
  297.                     S32 width,
  298.                     S32 height);
  299.     extern void gui_resize_fixed_icontext_list_menuitem(fixed_icontext_list_menuitem *m, S32 width, S32 height);
  300.     extern void gui_show_fixed_icontext_list_menuitem(void *item, void *common_item_data, S32 x, S32 y);
  301.     extern void gui_measure_fixed_icontext_list_menuitem(void *item, void *common_item_data, S32 *width, S32 *height);
  302.     extern void gui_highlight_fixed_icontext_list_menuitem(void *item, void *common_item_data);
  303.     extern void gui_remove_highlight_fixed_icontext_list_menuitem(void *item, void *common_item_data);
  304.     extern void gui_fixed_icontext_list_menuitem_start_scroll(void);
  305.     extern void gui_fixed_icontext_list_menuitem_stop_scroll(void);
  306.     /* UI fixed twostate menuitem structure         */
  307.     typedef struct _fixed_twostate_menuitem_type
  308.     {
  309.         UI_string_type item_text;
  310.         U32 flags;
  311.     } fixed_twostate_menuitem_type;
  312.     extern UI_fixed_twostate_menuitem_theme *current_fixed_twostate_menuitem_theme;
  313.     typedef struct _fixed_twostate_menuitem
  314.     {
  315.         S32 width, height;
  316.         UI_filled_area *normal_filler;
  317.         UI_filled_area *disabled_filler;
  318.         UI_filled_area *selected_filler;
  319.         UI_filled_area *focussed_filler;
  320.         U32 flags;
  321.         U32 ext_flags;
  322.         S32 text_x, text_y;
  323.         color normal_text_color;
  324.         color disabled_text_color;
  325.         color selected_text_color;
  326.         color focussed_text_color;
  327.         UI_font_type text_font;
  328.         S32 icon_x, icon_y;
  329.         PU8 ON_icon;
  330.         PU8 OFF_icon;
  331.         UI_transparent_color_type icon_transparent_color;
  332.         S32 scroll_x, scroll_width;
  333.         S32 text_width;
  334.         fixed_list_menu *parent_list;
  335.         fixed_matrix_menu *parent_matrix;        
  336.     } fixed_twostate_menuitem;
  337. /** Vandana DHawan **/
  338.     typedef enum
  339.     {
  340.         ICON_TEXT_ICON = 0,
  341.         ICON_ICON_TEXT,
  342.         TEXT_ICON_ICON
  343.     } CAT73DISPLAY;
  344.     extern void gui_set_fixed_twostate_menuitem_current_theme(fixed_twostate_menuitem *m);
  345.     extern void gui_set_fixed_twostate_menuitem_theme(
  346.                     fixed_twostate_menuitem *m,
  347.                     UI_fixed_twostate_menuitem_theme *t);
  348.     extern void gui_create_fixed_twostate_menuitem(
  349.                     fixed_twostate_menuitem *m,
  350.                     S32 width,
  351.                     S32 height,
  352.                     PU8 ON_icon,
  353.                     PU8 OFF_icon);
  354.     extern void gui_fixed_twostate_menuitem_set_text_position(fixed_twostate_menuitem *m, S32 x, S32 y);
  355.     extern void gui_fixed_twostate_menuitem_set_icon_position(fixed_twostate_menuitem *m, S32 x, S32 y);
  356.     extern void gui_fixed_twostate_menuitem_set_icons(fixed_twostate_menuitem *m, PU8 ON_icon, PU8 OFF_icon);
  357.     extern void gui_resize_fixed_twostate_menuitem(fixed_twostate_menuitem *m, S32 width, S32 height);
  358.     extern void gui_show_fixed_twostate_menuitem(void *item, void *common_item_data, S32 x, S32 y);
  359.     extern void gui_measure_fixed_twostate_menuitem(void *item, void *common_item_data, S32 *width, S32 *height);
  360.     extern void gui_highlight_fixed_twostate_menuitem(void *item, void *common_item_data);
  361.     extern void gui_remove_highlight_fixed_twostate_menuitem(void *item, void *common_item_data);
  362.     extern void gui_fixed_twostate_menuitem_start_scroll(void);
  363.     extern void gui_fixed_twostate_menuitem_stop_scroll(void);
  364. #ifdef __MMI_TOUCH_SCREEN__
  365.     extern BOOL gui_fixed_twostate_menuitem_translate_pen_event(
  366.                     void *item,
  367.                     void *common_item_data,
  368.                     S32 item_x,
  369.                     S32 item_y,
  370.                     mmi_pen_event_type_enum pen_event,
  371.                     S16 x,
  372.                     S16 y,
  373.                     gui_list_pen_enum *menuitem_event,
  374.                     gui_pen_event_param_struct *menuitem_param);
  375. #endif /* __MMI_TOUCH_SCREEN__ */ 
  376.     /* PMT VIKAS START 20050520 */
  377. #ifdef __MMI_UI_TRANSPARENT_EFFECT__
  378.     /* PMT VIKAS START 20050630 */
  379. #define HIGHLIGHTER_COLOR_OPACITY_VALUE 85      /* To set the highlighter opacity factor value. It should have any value from 0 to 100 */
  380.     /* PMT VIKAS END 20050630 */
  381.     extern void gui_block_transparency_effect(void);
  382.     extern void gui_unblock_transparency_effect(void);
  383.     extern void gui_fixed_icontext_enable_transparent_effect(fixed_icontext_menuitem *m);
  384.     extern void gui_fixed_icontext_disable_transparent_effect(fixed_icontext_menuitem *m);
  385.     extern void gui_fixed_icontext_list_enable_transparent_effect(fixed_icontext_list_menuitem *m);
  386.     extern void gui_fixed_icontext_list_disable_transparent_effect(fixed_icontext_list_menuitem *m);
  387.     extern void gui_fixed_text_menuitem_enable_transparent_effect(fixed_text_menuitem *m);
  388.     extern void gui_fixed_text_menuitem_disable_transparent_effect(fixed_text_menuitem *m);
  389.     extern void gui_fixed_twostate_menuitem_enable_transparent_effect(fixed_twostate_menuitem *m);
  390.     extern void gui_fixed_twostate_menuitem_disable_transparent_effect(fixed_twostate_menuitem *m);
  391. #endif /* __MMI_UI_TRANSPARENT_EFFECT__ */ 
  392.     /* PMT VIKAS END */
  393.     /* PMT VIKAS START 20050720 */
  394.     /* LIST HIGHLIGHTER EFFECTS */
  395. #ifdef __MMI_UI_LIST_HIGHLIGHT_EFFECTS__
  396.     typedef enum
  397.     {
  398.         MMI_UI_LIST_HIGHLIGHT_EFFECT_NONE = 0,          /* No Effect */
  399.         MMI_UI_LIST_HIGHLIGHT_EFFECT_TRANSPARENCY = 1,  /* Transparent with increasing opacity */
  400.         MMI_UI_LIST_HIGHLIGHT_EFFECT_FLASH_FEELING = 2, /* Flash effect with increase in Filler area */
  401.         MMI_UI_LIST_HIGHLIGHT_EFFECT_ANIMATION = 3      /* Animatian with gif */
  402.     } gui_list_effect_styles;
  403.     /* PMT VIKAS START 20051117 */
  404. #define LIST_TRANSPARENT_HIGHLIGHTER_TIMER 175
  405. #define LIST_FLASH_HIGHLIGHTER_TIMER 150
  406. #define LIST_ANIMATION_HIGHLIGHTER_TIMER 175
  407.     /* PMT VIKAS END 20051117 */
  408. #define MAX_OPACITY_VALUE_FACTOR 10
  409. #define TRANSPARENCY_START_OPACITY_VALUE 1
  410. #define JUMP_IN_HIGHLIGHTERS_EFFECTS_FRAME 4
  411. #endif /* __MMI_UI_LIST_HIGHLIGHT_EFFECTS__ */ 
  412.     /* function definitions */
  413. #ifdef __MMI_UI_LIST_HIGHLIGHT_EFFECTS__
  414.     extern void gui_callback_highlighter_text_filler(void);
  415.     extern void gui_stop_list_highlight_effect(void);
  416.     extern void gui_draw_animated_highlight_filler(
  417.                     S32 Xstart_effect,
  418.                     S32 Ystart_effect,
  419.                     S32 Xend_effect,
  420.                     S32 Yend_effect,
  421.                     UI_filled_area *f);
  422.     extern void gui_draw_transparent_color_filler(S32 x1, S32 y1, S32 x2, S32 y2, UI_filled_area *f);
  423.     extern void gui_draw_flash_feeling_filler(S32 x1, S32 y1, S32 x2, S32 y2, UI_filled_area *f);
  424.     extern void gui_reset_current_list_effect(void);
  425.     extern void gui_set_current_list_effect_to_default(void);
  426.     extern void gui_draw_list_filled_area(S32 x1, S32 y1, S32 x2, S32 y2, UI_filled_area *f);
  427.     extern void gui_scroll_start_handler_for_list_effects(void);
  428.     extern S32 gui_get_current_list_effect(void);
  429.     extern void gui_dummy_scroll_handler_for_list_effects(void);
  430.     void gui_register_callback_menuitem_scroll(void (*f) (void));
  431.     extern void gui_unblock_list_effect(void);
  432.     extern void gui_block_list_effect(void);
  433.     extern void gui_draw_list_highlight_effect_last_frame(void);
  434.     extern void gui_set_current_list_effect(gui_list_effect_styles list_style);
  435.     extern void gui_restore_current_list_effect(void);
  436.     extern S32 is_draw_next_frame_list_highlight_effect_value(void);
  437.     extern void set_start_position_parameter_for_list_highlighter_effect(S32 x, S32 y);
  438.     extern void set_start_position_and_item_parameters_for_list_highlighter_effect(
  439.                     void *item,
  440.                     void *common_item_data,
  441.                     S32 x,
  442.                     S32 y);
  443. #endif /* __MMI_UI_LIST_HIGHLIGHT_EFFECTS__ */ 
  444.     /* PMT VIKAS END 20050720 */
  445.     /* PMT NEERAJ START 20050825 */
  446. #ifdef __MMI_UI_TWO_LINE_MENUITEM_STYLES__
  447.     extern void UI_dummy_show_two_line_menuitem_part(void);
  448.     extern void (*gui_set_current_two_line_menuitem_data) (void);
  449. #endif /* __MMI_UI_TWO_LINE_MENUITEM_STYLES__ */ 
  450. #if (defined __MMI_UI_TWO_LINE_MENUITEM_STYLES__ || defined __MMI_UI_HINTS_IN_MENUITEM__)
  451.     extern void (*gui_reset_current_two_line_menuitem_data) (void);
  452. #endif 
  453. #ifdef __MMI_UI_TWO_LINE_MENUITEM_STYLES__
  454.     extern pBOOL UI_dummy_get_two_line_menuitem_height(void);
  455.     extern void UI_dummy_set_current_two_line_menuitem_data(void);
  456. #endif /* __MMI_UI_TWO_LINE_MENUITEM_STYLES__ */ 
  457. #if (defined __MMI_UI_TWO_LINE_MENUITEM_STYLES__ || defined __MMI_UI_HINTS_IN_MENUITEM__)
  458.     extern void UI_dummy_reset_current_two_line_menuitem_data(void);
  459. #endif 
  460. #ifdef __MMI_UI_TWO_LINE_MENUITEM_STYLES__
  461.     /* PMT SUKRIT END 09012006 */
  462.     extern void (*gui_show_two_line_menuitem_part) (void);
  463.     extern void UI_dummy_move_two_line_menuitem_part(S32 x, S32 y);
  464.     extern void UI_dummy_resize_two_line_menuitem_part(S32 x, S32 y);
  465.     extern void (*gui_move_two_line_menuitem_part) (S32 x, S32 y);
  466.     extern void (*gui_resize_two_line_menuitem_part) (S32 x, S32 y);
  467.     extern pBOOL(*gui_get_two_line_menuitem_height) (void);
  468.     extern void (*gui_reset_two_line) (void);
  469.     extern void (*gui_two_line_toggle_thumbnail_direction) (void);
  470.     extern U8(*gui_two_line_get_thumbnail_flags) (void);
  471.     extern U8 UI_dummy_two_line_get_thumbnail_flags(void);
  472.     extern void two_line_menuitem_cleanup_function(void);//053006 2 line Calvin
  473. #endif /* __MMI_UI_TWO_LINE_MENUITEM_STYLES__ */ 
  474.     /* PMT NEERAJ END 20050825 */
  475. #ifdef __cplusplus
  476. }
  477. #endif 
  478. #endif /* __GUI_FIXED_MENUITEMS_H__ */