📄 gui_fixed_menus.c
字号:
/*****************************************************************************
* 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:
* ---------
* gui_fixed_menus.c
*
* Project:
* --------
* MAUI
*
* Description:
* ------------
* Fixed-list menu - UI component
*
* 1. The number of menu items stays unchanged after the UI component is created.
* 2. The storage of all menu item data is preallocated.
*
* Author:
* -------
* -------
* -------
* -------
* $Log: gui_fixed_menus.c,v $
* Revision 1.7 2007/08/17 12:19:07 zhangruixian
* MT190-214
* Modification Author:zx
* Date: 20070802
* Content:修改进入符号列表中触屏不准的问题
*
* Revision 1.6 2007/08/06 08:57:10 zhouxiang
* MT190-120
* Modification Author:zx
* Date: 20070802
* Content:登录到网络退出后图标变为数字序号
*
* Revision 1.5 2007/07/31 01:42:59 zhouxiang
* MT190-27
* Modification Author:zx
* Date:20070730
* Content:修改进入写信息/选择符号后退出主菜单显示错乱
*
* Revision 1.4 2007/07/25 05:37:02 luoren
* MT190-20
* Modification Author:gqy
* Date: 20070725
* Content:修改主菜单界面左右切换的菜单点击不能进入问题
*
* Revision 1.3 2007/07/12 10:28:48 luoren
* MT190-8
* Modification Author:gqy
* Date: 20070712
* Content:调整MT190 UI问题
*
* Revision 1.2 2007/06/13 07:15:05 wangbei
* MT118-2
* Modification Author:wangbei
* Date: 20070613
* Content:修改创建MT118_A工程时关掉某些宏定义引起的编译不过的问题。
*
* Revision 1.1.1.1 2007/05/11 08:53:39 zhouxiang
* no message
*
* Revision 1.3 2007/04/09 03:28:52 wangbei
* MT158-27
* Modification Author:wangbei
* Date: 2007/04/009
* Content:调整多媒体模块界面.
*
* Revision 1.2 2007/04/06 10:35:44 zhouxiang
* MT158-12
* Modification Author:zx
* Date: 20070405
* 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!
*
* 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!!
*============================================================================
****************************************************************************/
/**
* Copyright Notice
* (c) 2002 - 2003, Pixtel Communications, Inc., 1489 43rd Ave. W.,
* Vancouver, B.C. V6M 4K8 Canada. All Rights Reserved.
* (It is illegal to remove this copyright notice from this software or any
* portion of it)
*/
/**********************************************************************************
Filename: gui_fixed_menus.c
Author: manju
Date Created: July-22-2002
Contains: PixTel UI routines for Fixed Menus
**********************************************************************************/
#include "MMI_Features.h"
#include "gui_config.h"
#include "gui_fixed_menus.h"
#include "CustMenuRes.h"
#include "wgui_inline_edit.h"
#include "gui_windows.h"
#include "DebugInitDef.h"
#include "gui_themes.h"
#include "wgui_categories_util.h"
#include "gui_setting.h"
#include "kal_non_specific_general_types.h"
#include "lcd_sw_rnd.h"
#include "gdi_include.h"
#include "wgui.h"
//zx add begin 20070405
//#ifdef __MMI_MAIN_MENU_3X3_MATRIX__ //zx del 20070730
#if (defined(__MMI_MAIN_MENU_3X3_MATRIX__)||defined(__MALATA_STANDARD_441_MEMU__)||defined(__NEW_UI_STYLE__)) //zx add 20070730 // wangbei add __NEW_UI_STYLE__ 20071010
#include "MainMenuDef.h"
#include "CommonScreensenum.h" // zrx add 20070817
#include "MessagesresourceData.h"
#endif
//zx add end
extern gdi_handle wgui_layer_1;
extern gdi_handle wgui_base_layer;
extern PU8 get_image(MMI_ID_TYPE);
#if defined(__MMI_MATRIX_MAIN_MENU_FULL_BACKGROUND__) && defined(__MMI_MATRIX_MAIN_MENU_OPTIMIZE__)
#if (__MMI_MAIN_BASE_LAYER_FORMAT__ == GDI_COLOR_FORMAT_32)
#define OPTIMIZE_MM_BUF_SIZE 14400
#elif (__MMI_MAIN_BASE_LAYER_FORMAT__ == GDI_COLOR_FORMAT_24)
#define OPTIMIZE_MM_BUF_SIZE 10800
#else
#define OPTIMIZE_MM_BUF_SIZE 7200
#endif
U8 opt_mm_buf[OPTIMIZE_MM_BUF_SIZE];
#endif /* defined(__MMI_MATRIX_MAIN_MENU_FULL_BACKGROUND__) && defined(__MMI_MATRIX_MAIN_MENU_OPTIMIZE__) */
/*
* Resident background filler cache of list menu shared among multiple screens
*/
/* Enable resident filler cache if no hardware GIF and lcd size >= 176x220 */
#if (!defined(GDI_USING_HW_GIF) && !defined(GDI_USING_HW_GIF_V2)) && defined(__MMI_UI_LIST_CACHE_BACKGROUND__) && (!defined(__MMI_MAINLCD_128X128__) && !defined(__MMI_MAINLCD_128X160__))
#define __MMI_UI_LIST_RESIDENT_FILLER_CACHE__
#endif
/*
* [TODO] the following check can be removed after we use the same color format for both
* base layer and other created layer (planned in 07A branch)
*/
#if defined(MMI_MAIN_BASE_LAYER_BITS_PER_PIXEL) && (MMI_MAIN_BASE_LAYER_BITS_PER_PIXEL != GDI_MAINLCD_BIT_PER_PIXEL)
/* We cannot support cache layer and base layer with different format in gdi_2d_memory_blt() */
#undef __MMI_UI_LIST_RESIDENT_FILLER_CACHE__
#endif
#ifdef __MMI_UI_LIST_RESIDENT_FILLER_CACHE__
#define GUI_LIST_MENU_FILLER_CACHE_MAX_WIDTH GDI_LCD_WIDTH
/* Sometimes menu height is slightly larger than MMI_CONTENT_HEIGHT */
#define GUI_LIST_MENU_FILLER_CACHE_MAX_HEIGHT (MMI_CONTENT_HEIGHT + 10)
#if (GUI_LIST_MENU_FILLER_CACHE_MAX_HEIGHT > GDI_LCD_HEIGHT)
#undef GUI_LIST_MENU_FILLER_CACHE_MAX_HEIGHT
#define GUI_LIST_MENU_FILLER_CACHE_MAX_HEIGHT GDI_LCD_HEIGHT
#endif /* (GUI_LIST_MENU_FILLER_CACHE_MAX_HEIGHT > GDI_LCD_HEIGHT) */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -