⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wgui_categories_mm.c

📁 MTK6226修改平台UI的文件介绍
💻 C
📖 第 1 页 / 共 5 页
字号:
/*****************************************************************************
*  Copyright Statement:
*  --------------------
*  This software is protected by Copyright and the information contained
*  herein is confidential. The software may not be copied and the information
*  contained herein may not be used or disclosed except with the written
*  permission of MediaTek Inc. (C) 2005
*
*  BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
*  THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
*  RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
*  AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
*  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
*  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
*  NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
*  SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
*  SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
*  THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
*  NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
*  SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
*
*  BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
*  LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
*  AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
*  OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
*  MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE. 
*
*  THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
*  WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
*  LAWS PRINCIPLES.  ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
*  RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
*  THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
*
*****************************************************************************/

/*****************************************************************************
 *
 * Filename:
 * ---------
 *   wgui_categories_MM.c
 *
 * Project:
 * --------
 *   Maui_Software
 *
 * Description:
 * ------------
 *  Main Menu related categories.
 *
 * Author:
 * -------
 * -------
 * $Log: wgui_categories_MM.c,v $
 * Revision 1.6  2007/07/31 02:01:10  zhouxiang
 * MT190-26
 * Modification Author:zx
 * Date:20070730
 * Content:修改进入写信息/选择符号或插入图片界面错乱问题
 *
 * Revision 1.5  2007/07/25 05:43:08  luoren
 * MT190-20
 * Modification Author:gqy
 * Date: 20070725
 * Content:修改主菜单界面左右切换的菜单点击不能进入问题
 *
 * Revision 1.4  2007/07/12 11:02:56  luoren
 * MT190-8
 * Modification Author:gqy
 * Date: 20070712
 * Content:调整MT190 UI问题
 *
 * Revision 1.3  2007/06/25 11:48:10  wangbei
 * MT118-6
 * Modification Author:wangbei
 * Date: 20070625
 * Content:解决主菜单界面。
 *
 * Revision 1.2  2007/05/17 08:27:25  zhouxiang
 * MT170-8
 * Modification Author:zx
 * Date: 20070507
 * Content:调整MT170 UI显示
 *
 * Revision 1.1.1.1  2007/05/11 08:53:41  zhouxiang
 * no message
 *
 * Revision 1.2  2007/04/05 02:10:57  zhouxiang
 * MT158-12
 * MT158-13
 * Modification Author:zx
 * Date: 20070404
 * Content:修改主菜单二级菜单及黑底风格
 *
 *============================================================================
 *             HISTORY
 * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
 *------------------------------------------------------------------------------
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 *------------------------------------------------------------------------------
 * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
 *============================================================================
 ****************************************************************************/
#include "MMI_features.h"

#include "stdC.h"
#include "L4Dr1.h"
#include "PixtelDataTypes.h"
#include "DebugInitDef.h"

#include "GlobalDefs.h"
#include "gui_data_types.h"
#include "gui_themes.h"
#include "gui.h"
#ifdef __MMI_UI_TECHNO_STATUS_ICON__
#include "Gui_Setting.h"
#endif 
#include "CustDataProts.h"
#include "CustMenuRes.h"
#include "EventsDef.h"
#include "CustThemesRes.h"
#include "MainMenuDef.h"
#include "MainMenuType.h"
#include "gdi_include.h"
#include "lcd_sw_rnd.h"
#include "wgui.h"
#include "wgui_inputs.h"
#include "wgui_categories.h"
#include "wgui_softkeys.h"
#include "wgui_fixed_menus.h"
#include "wgui_categories_defs.h"
#include "wgui_draw_manager.h"
#include "wgui_categories_MM.h"
#ifdef __MMI_WGUI_MINI_TAB_BAR__
#include "wgui_tab_bars.h"
#endif 
#ifdef __MMI_MATRIX_MAIN_MENU_FULL_BACKGROUND__
#include "Wgui_categories_util.h"
#endif 
#ifdef __MMI_TOUCH_SCREEN__
#include "wgui_touch_screen.h"
#endif 
#include "SATGProts.h"

/************ Global Variables *************/
extern S32 wgui_current_pop_up_description_index;
extern color active_title_txt_border_col;
extern BOOL r2lMMIFlag;

#ifdef __MMI_UI_TITLE_TRANSITION__
extern void set_title_transition(wgui_transition_styles style);
extern void reset_title_transition(void);
#endif /* __MMI_UI_TITLE_TRANSITION__ */ 
#ifdef __MMI_UI_MM_HORIZONTAL_PAGE_STYLE__
extern void register_horizontal_fixed_list_keys(void);
#endif 
extern void standard_animated_matrix_highlight_handler_type2(S32 item_index);
extern void mtk_show_animation_frames(S32 x, S32 y, U8 *image, S32 start_frame);

UI_string_type MMI_bg_string;
PU8 MMI_bg_image;
PU8 MMI_bg_animation;

#if (ENABLE_DIRECT_MAIN_MENU_IMPLEMENTATION)

/* Direct main menu implementation                                */
/* Matrix main menu: Fixed number of items with all items being visible */

#ifdef __MMI_MAINLCD_240X320__
#define MAIN_MENU_NORMAL_IMAGE_CLIP_WIDTH    (80)
     // wangbei modify start 20071010
     #ifdef __NEW_MATIX_MAINMENU_STYLE__
     #define MAIN_MENU_NORMAL_IMAGE_CLIP_HEIGHT   (92)  
     #define MAIN_MENU_NORMAL_IMAGE_WIDTH         (40)     
     #define MAIN_MENU_NORMAL_IMAGE_HEIGHT        (40)   
     #define MAIN_MENU_HIGHLIGHTED_IMAGE_WIDTH    (80)
     #define MAIN_MENU_HIGHLIGHTED_IMAGE_HEIGHT   (48)    
     #else
#define MAIN_MENU_NORMAL_IMAGE_CLIP_HEIGHT   (60)
#define MAIN_MENU_NORMAL_IMAGE_WIDTH         (80)
#define MAIN_MENU_NORMAL_IMAGE_HEIGHT        (60)
#define MAIN_MENU_HIGHLIGHTED_IMAGE_WIDTH    (80)
#define MAIN_MENU_HIGHLIGHTED_IMAGE_HEIGHT   (60)
     #endif
     // wangbei modify end
#else
//zx modify begin 20070404
#ifdef __MMI_MAIN_MENU_3X3_MATRIX__
  #define MAIN_MENU_NORMAL_IMAGE_CLIP_WIDTH    (60)
  #define MAIN_MENU_NORMAL_IMAGE_CLIP_HEIGHT      (60)
  #define MAIN_MENU_NORMAL_IMAGE_WIDTH         (60)
  #define MAIN_MENU_NORMAL_IMAGE_HEIGHT        (60)
  #define MAIN_MENU_HIGHLIGHTED_IMAGE_WIDTH    (70)
  #define MAIN_MENU_HIGHLIGHTED_IMAGE_HEIGHT      (70)
#else
#define MAIN_MENU_NORMAL_IMAGE_CLIP_WIDTH    (41)
#define MAIN_MENU_NORMAL_IMAGE_CLIP_HEIGHT      (30)
#define MAIN_MENU_NORMAL_IMAGE_WIDTH         (42)
#define MAIN_MENU_NORMAL_IMAGE_HEIGHT        (31)
#define MAIN_MENU_HIGHLIGHTED_IMAGE_WIDTH    (51)
#define MAIN_MENU_HIGHLIGHTED_IMAGE_HEIGHT      (37)
#endif
//zx modify end
#endif
#define MAIN_MENU_N_ROWS                     (3)
#define MAIN_MENU_N_COLUMNS                  (3)
#define MAIN_MENU_MAX_ITEMS                  (MAIN_MENU_N_ROWS*MAIN_MENU_N_COLUMNS)
#define MAIN_MENU_HIGHLIGHT_OFFSET_X            ((MAIN_MENU_HIGHLIGHTED_IMAGE_WIDTH>>1)-(MAIN_MENU_NORMAL_IMAGE_WIDTH>>1))
#define MAIN_MENU_HIGHLIGHT_OFFSET_Y            ((MAIN_MENU_HIGHLIGHTED_IMAGE_HEIGHT>>1)-(MAIN_MENU_NORMAL_IMAGE_HEIGHT>>1))
#define MAIN_MENU_HIGHLIGHTED_GRID_COLOR     {  0,0,0,100      }
#define MAIN_MENU_NORMAL_GRID_COLOR          {  160,160,160,100   }
#define MAIN_MENU_X1                      (0)
#define MAIN_MENU_Y1                      (MMI_TITLE_HEIGHT+1)
#define MAIN_MENU_X2                      (127)
#define MAIN_MENU_Y2                      (MMI_TITLE_HEIGHT+100+1)

#define MAIN_MENU_ITEM_HIGHLIGHTED           0x00000001
#define MAIN_MENU_LOOP                       0x00000002
#define MAIN_MENU_DISPLAY_GRID               0x00000004
#define MAIN_MENU_DISPLAY_ITEM_GRID          0x00000008

extern U16 title_bg_id;
extern icontext_button MMI_softkeys[];

extern void _show_bitmap(S32 x1, S32 y1, bitmap *b);
extern void _get_bitmap(S32 x1, S32 y1, S32 x2, S32 y2, bitmap *b);
extern void (*MMI_matrix_highlight_handler) (S32 index);

U8 matrix_main_menu_highlight_bitmap_data[(MAIN_MENU_HIGHLIGHTED_IMAGE_WIDTH) * (MAIN_MENU_HIGHLIGHTED_IMAGE_HEIGHT) *
                                          MMI_MAIN_BASE_LAYER_BITS_PER_PIXEL / 8];
/* structure of matrix menu */
/* Store current main menu type..matrix,list,circular */
S32 MMI_main_menu_type = MATRIX_MENU;
U16 gMainMenuAnimation[MAX_MAIN_MENU_ITEMS];
U16 gMainMenuTitleIcon[MAX_MAIN_MENU_ITEMS];
S32 main_menu_index = -1;

PU8 _wgui_main_menu_items[MAIN_MENU_MAX_ITEMS];
matrix_main_menu _wgui_main_menu;
UI_string_type _wgui_main_menu_item_strings[MAIN_MENU_MAX_ITEMS];

#if((UI_ENABLE_FRAME_SKIPPING) && (ENABLE_DIRECT_MAIN_MENU_FRAME_SKIPPING))
S32 wgui_matrix_main_menu_frame_counter = 0;
extern matrix_main_menu _wgui_main_menu;
#endif /* ((UI_ENABLE_FRAME_SKIPPING) && (ENABLE_DIRECT_MAIN_MENU_FRAME_SKIPPING)) */ 
#ifdef __MMI_MATRIX_MAIN_MENU_FULL_BACKGROUND__
BOOL inMatrixNoTitleFlag = FALSE;
#endif 
#ifdef __MMI_BI_DEGREE_MAIN_MENU_STYLE__
void (*Cat414MatrixExitHandler) (S32 index) = NULL;
#endif 

/* 082806 240x320 matrix Start */
#if defined (__MMI_WALLPAPER_ON_BOTTOM__)
static MMI_ID_TYPE mm_bg_ID;
static S8 *mm_bg_filename;
static S32 mm_bg_x, mm_bg_y;
static U8 mm_bg_opacity;
static S32 mm_bg_flags;
#endif /* defined (__MMI_WALLPAPER_ON_BOTTOM__) */ 
/* 082806 240x320 matrix End */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -