IdleAppDef.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.  * IdleAppDef.h
  40.  *
  41.  * Project:
  42.  * --------
  43.  *   MAUI
  44.  *
  45.  * Description:
  46.  * ------------
  47.  *   This file is isle screen application
  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.  * 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.  * removed!
  95.  * removed!
  96.  * removed!
  97.  *
  98.  * removed!
  99.  * removed!
  100.  * removed!
  101.  *
  102.  * removed!
  103.  * removed!
  104.  * removed!
  105.  *
  106.  * removed!
  107.  * removed!
  108.  * removed!
  109.  *
  110.  *------------------------------------------------------------------------------
  111.  * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  112.  *============================================================================
  113.  ****************************************************************************/
  114. /**
  115.  * Copyright Notice
  116.  * ?2002 - 2003, Pixtel Communications, Inc., 1489 43rd Ave. W.,
  117.  * Vancouver, B.C. V6M 4K8 Canada. All Rights Reserved.
  118.  *  (It is illegal to remove this copyright notice from this software or any
  119.  *  portion of it)
  120.  */
  121. /**********************************************************************************
  122.    Filename:      IdleAppDef.h
  123.    Author:        
  124.    Date Created:  September-13-2002
  125.    Contains:      
  126. **********************************************************************************/
  127. #ifndef __IDLE_H__
  128. #define __IDLE_H__
  129. #include "MMI_features.h"
  130. #include "FrameworkStruct.h"
  131. #define GSM_SERVICE_TYPE            1
  132. #define GPRS_SERVICE_TYPE           2
  133. #define MAX_DIAL_PAD                41
  134. //#define INVALID_LOCATION_SCR_TIMEOUT  1200
  135. //#define NO_PHONE_NUM_SCR_TIMEOUT              1200
  136. #define KEYPAD_LOCK_TIMEOUT            2000
  137. #define TOGGLE_PROFILE_TIMEOUT         500
  138. #define SET_CURRENT_PROFILE            0
  139. #define SET_SILENT_PROFILE          1
  140. #define MAX_IDLE_SCREEN_DIGITS      13
  141. #define MAX_SPEED_DIAL_KEYS         9
  142. /* start vijay 20050629...for grouping touch dial pad keys */
  143. #ifdef __MMI_TOUCH_DIAL_SCREEN__
  144. #define MAX_TOUCH_DIAL_PAD_KEYS     12
  145. #endif 
  146. /* end vijay */
  147. #define MAX_LOCATION_DIGITS         3
  148. #define NORMAL_SCREEN_SAVER                  0
  149. #define ANALOG_SCREEN_SAVER                  1
  150. #define DIGITAL_SCREEN_SAVER                 2
  151. /* Shifted from MiscFunctions.c */
  152. /* 0: Images are enabled. 1: Images are disabled   */
  153. #define DEMO_DISABLE_IMAGES               0
  154. /* Demo timeout values                       */
  155. #define DEMO_OPENING_ANIMATION_TIMEOUT    100
  156. #define DEMO_OPENING_WAIT_TIMEOUT         1000
  157. #define DEMO_OPENING_COPYRIGHT_TIMEOUT    5000
  158. #define DEMO_OPENING_CUSTOM_LOGO_TIMEOUT  2000
  159. #define DEMO_ABOUT_SCREENID               904
  160. #define DEMO_UNDERCONSTRUCTION_SCREENID      905
  161. #define DEMO_UNER_CONS_TEXT               DEMO_APP_BASE+1
  162. // #define      DEMO_RSK_BACK_TEXT                                      DEMO_APP_BASE+2
  163. #define DEMO_ICON_TEXT                 DEMO_APP_BASE+3
  164. #define DEMO_CONSTRUCTION_IMAGE_ID        DEMO_APP_BASE+4
  165. #define DEMO_UNDER_CONSTRUCTION_TITLE_ICON   DEMO_APP_BASE+5
  166. #define DEMO_TEST_BMP_IMAGE_ID            DEMO_APP_BASE+6
  167. #define DEMO_TEST_GIF_IMAGE_ID            DEMO_APP_BASE+7
  168. // #define DEMO_EDIT_TEXT                                               DEMO_APP_BASE+8
  169. // #define DEMO_ANALOG_CLOCK_IMAGE_ID                   DEMO_APP_BASE+10  //MTK 1111, Robin analog clock background using ID:ANALOG_CLOCK, File:analog.gif
  170. /* Shifted from MiscFunctions.c */
  171. /* MTK 1112, Robin for idle screen display boundary */
  172. #define ICON_WIDTH 16
  173. #define MAX_DISPLAY_CHAR 20
  174. enum STR_IDLE_SCREEN_LIST
  175. {
  176.     IDLE_SCREEN_LSK_TEXT = IDLE_APP_BASE + 1,
  177.     DIAL_PAD_MO_CALL_LSK_STR_ID,
  178.     IDLE_SCREEN_RSK_TEXT,
  179.     STR_IDLE_NETWORK_SRCH_SCR,
  180.     STR_INVALID_LOCATION,
  181.     STR_NO_PHONE_NUM,
  182.     STR_NO_SPEED_DIAL_NUM_SAVED,
  183.     STR_DATE_TIME_UPDATE_REMINDER,
  184.     KEYPAD_LOCKED_RSK_TEXT,
  185. #ifdef __MMI_TOUCH_SCREEN__
  186.     SCREEN_LOCKED_TEXT,
  187. #endif 
  188. #ifdef __MMI_VOIP__
  189.     STR_ID_DIALER_SCREEN_OPTIONS_GSM_DIAL,
  190.     STR_ID_DIALER_SCREEN_OPTIONS_WLAN_DIAL,
  191.     STR_ID_DIALER_SCREEN_OPTIONS_CHANGE_MODE,
  192. #endif /* __MMI_VOIP__ */
  193.     STR_IDLE_SCREEN_END
  194. };
  195. enum IMG_IDLE_SCREEN_LIST
  196. {
  197.     IDLE_SCREEN_LSK_ICON = IDLE_APP_BASE + 1,
  198.     DIAL_PAD_MO_CALL_LSK_IMG_ID,
  199.     DIAL_PAD_MO_CALL_RSK_IMG_ID,
  200.     IDLE_SCREEN_RSK_ICON,
  201.     IMG_IDLE_NETWORK_SRCH_SCR,
  202.     POWER_ON_ANIMATION_IMAGE_ID
  203. };
  204. enum SCR_IDLE_SCREEN_LIST
  205. {
  206.     IDLE_SCREEN_ID = IDLE_APP_BASE + 1,
  207.     IDLE_SCREEN_DIGIT_HANDLER_ID,
  208. #ifdef __MMI_VOIP__
  209.     IDLE_SCREEN_DIGIT_OPTIONS_ID,
  210. #endif
  211.     IDLE_SCREEN_SCREENSAVER_ID,
  212.     IDLE_SCREEN_DUMMY_ID,
  213. //KP Jerry add on 2007-4-12 start
  214. #ifdef __MMI_MESSAGES_SENDMSG_QUICKLY__
  215.     IDLE_SCREEN_SCREENOPTION_ID,
  216.  #endif
  217. //KP Jerry add on 2007-4-12 end
  218.     SCREEN_SAVER_PARTIAL_ON_ID,
  219.     POPUP_SCREENID,
  220. POPUP_MATRIX_SCREEN_ID
  221. };
  222. /* Lisen 05062004 for gIsSubLcdOnIdleScreen */
  223. enum SUBLCD_STATE_ENUM
  224. {
  225.     SUBLCD_NOT_ON_IDLE = 0,
  226.     SUBLCD_ON_IDLE_NORMAL,
  227.     SUBLCD_ON_IDLE_INSERT_SIM,
  228.     SUBLCD_ON_IDLE_SIM_BLOCKED
  229. };
  230. enum EMFM_MODE
  231. {
  232.     NORMAL_MODE = 0,
  233.     ENGINEERING_MODE,
  234.     FACTORY_MODE
  235. };
  236. typedef struct
  237. {
  238.     U8 IsOnIdleScreen;              /* This variable tells that current screen is idle screen. */
  239.     U8 IsSubLcdOnIdleScreen;
  240.     U8 IsOnDialerScreen;            /* It tells that current screen is Dialer Screen */
  241.     U8 IsOnSimErrorScreen;
  242.     U8 IsOnSimErrorDialerScreen;
  243.     U8 IsScrSvrSleepIn;             /* is the screensaver exit because lcd sleep-in */
  244.     U8 IsRSKPressOnScreenSaver;     /* This variable tells that Is RSK pressed on Screen saver screen */
  245.     U8 LongPressEnable;             /* MTK amanda change 0107  This variable is to distinguish between speed dial from idle screen and long press of digits from dialer screen. */
  246.     U8 AvoidHistoryofDialerScreen;  /* If the value of this variable is one then don't save the history of dialer screen. */
  247.     U8 ScreenSaverRunFlag;          /* 0 for False, 1 for True */
  248.     U8 ToNameScrFromIdleApp;
  249. #ifdef __MMI_KEYPAD_LOCK_PATTERN_2__    /* Robin 1223 */
  250.     U8 ToMainMenuScrFromIdleApp;
  251. #endif 
  252.     U8 RskPressedFromIdleApp;       /* This variable tells that RSK has been pressed from idle screen. this is used for manual keypad lock. */
  253.     S16 IdleScreenDigitKeyCode; /* For digit handlig on dialing screens, it stores the keycode on press of any key on idle screen. */
  254.     pBOOL ToggleProfile;        /* This varible stored current status of Toggle profile */
  255.     U32 AutoLockTimeOut;    /* This carries the timeout period of Autokeypad lock */
  256. #ifdef __MMI_VOIP__
  257.     S8 DialPadCallBuffer[65 * ENCODING_LENGTH];    /* This buffer stores all dialled digits from idle screen */
  258. #else
  259.     S8 DialPadCallBuffer[MAX_DIAL_PAD * ENCODING_LENGTH];
  260. #endif
  261. } idle_context_struct;
  262. extern idle_context_struct g_idle_context;
  263. typedef struct
  264. {
  265.     U8 gKeyPadLockFlag;                 /* flag to check keypad is locked or unlocked */
  266.     U16 KeyLockLSKStringID;             /* LSK string in keypad lock idle screen */
  267.     U16 KeyLockRSKStringID;             /* RSK string in keypad lock idle screen */
  268.     U16 KeyLockLSKIconID;               /* LSK icon in keypad lock idle screen */
  269.     U16 KeyLockRSKIconID;               /* RSK icon in keypad lock idle screen */
  270.     FuncPtr keypad_lock_screen_exit;    /* diamond, 2006/03/26 Generic exit function for keypad lock callback screens */
  271. } idle_keylock_struct;
  272. extern idle_keylock_struct g_keylock_context;
  273. #endif /* __IDLE_H__ */