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

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.  * Organizer.c
  40.  *
  41.  * Project:
  42.  * --------
  43.  * MAUI
  44.  *
  45.  * Description:
  46.  * ------------
  47.  * This file implements main menu screen of Oranizer applications.
  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.  * removed!
  68.  * removed!
  69.  * removed!
  70.  *
  71.  * removed!
  72.  * removed!
  73.  * removed!
  74.  *
  75.  * removed!
  76.  * removed!
  77.  * removed!
  78.  *
  79.  *------------------------------------------------------------------------------
  80.  * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  81.  *============================================================================
  82.  ****************************************************************************/
  83. /**
  84.  * Copyright Notice
  85.  * ?2002 - 2003, Pixtel Communications, Inc., 1489 43rd Ave. W.,
  86.  * Vancouver, B.C. V6M 4K8 Canada. All Rights Reserved.
  87.  *  (It is illegal to remove this copyright notice from this software or any
  88.  *  portion of it)
  89.  */
  90. /**********************************************************************************
  91.    Filename:      Organizer.c
  92.    Author:        Gautam
  93.    Date Created:
  94.    Contains:      Organizer Main Screen
  95. **********************************************************************************/
  96. #ifndef _MMI_ORGANIZER_C
  97. #define _MMI_ORGANIZER_C
  98. /*  Include: MMI header file */
  99. #include "stdC.h"
  100. #include "MMI_Features.h"
  101. #include "L4Dr.h"
  102. #include "L4Dr1.h"
  103. #include "wgui_categories.h"
  104. #include "CustDataRes.h"
  105. #include "GlobalDefs.h"
  106. #include "HistoryGprot.h"
  107. #include "Unicodexdcl.h"
  108. #include "MainMenuDef.h"
  109. #include "CustMenuRes.h"
  110. #include "OrganizerDef.h"
  111. #ifdef __MMI_BIRTHDAY_REMINDER__
  112. #include "PhoneBookTypes.h"
  113. #endif 
  114. #include "CalendarDef.h"
  115. #include "CalendarProt.h"       /* for calendar */
  116. #include "ToDoListDef.h"        /* for to do list */
  117. #include "ToDoListEnum.h"
  118. #include "AlarmGProt.h" /* for alarm */
  119. #include "worldclock.h" /* for world clock */
  120. #include "SettingGprots.h"      /* for aphorism */
  121. #include "SettingProt.h"
  122. #include "SimDetectionGexdcl.h"
  123. #include "MessagesExDcl.h"
  124. #ifdef __MMI_MESSAGES_CLUB__
  125. #include "SATGProts.h"
  126. #endif 
  127. /* 
  128.  * Define
  129.  */
  130. #define APR_TEXT_CHARCTERS    3
  131. /* 
  132.  * Typedef 
  133.  */
  134. /* 
  135.  * Local Variable
  136.  */
  137. /* 
  138.  * Local Function
  139.  */
  140. /* 
  141.  * Global Variable
  142.  */
  143. extern U16 gIndexIconsImageList[];
  144. #if defined(__MMI_APHORISM__)
  145. /* under construction !*/
  146. #endif 
  147. /* 
  148.  * Global Function
  149.  */
  150. /*****************************************************************************
  151.  * FUNCTION
  152.  *  OrgInit
  153.  * DESCRIPTION
  154.  *  Initialize each applications in Organizer.
  155.  * PARAMETERS
  156.  *  void
  157.  * RETURNS
  158.  *  void
  159.  *****************************************************************************/
  160. void OrgInit(void)
  161. {
  162.     /*----------------------------------------------------------------*/
  163.     /* Local Variables                                                */
  164.     /*----------------------------------------------------------------*/
  165.     /*----------------------------------------------------------------*/
  166.     /* Code Body                                                      */
  167.     /*----------------------------------------------------------------*/
  168.     /* calendar */
  169. #if defined(__MMI_CALENDAR__)
  170.     ClndrInit();
  171. #endif 
  172.     /* to do list */
  173.     /* alarm */
  174.     AlmInit();
  175.     /* world clock */
  176. #if defined (__MMI_WORLD_CLOCK__)
  177.     WcInit();
  178. #endif 
  179. }
  180. /*****************************************************************************
  181.  * FUNCTION
  182.  *  OrgDeInit
  183.  * DESCRIPTION
  184.  *  Deinitialize each application of Organizer
  185.  * PARAMETERS
  186.  *  void
  187.  * RETURNS
  188.  *  void
  189.  *****************************************************************************/
  190. void OrgDeInit(void)
  191. {
  192.     /*----------------------------------------------------------------*/
  193.     /* Local Variables                                                */
  194.     /*----------------------------------------------------------------*/
  195.     /*----------------------------------------------------------------*/
  196.     /* Code Body                                                      */
  197.     /*----------------------------------------------------------------*/
  198. #if defined(__MMI_CALENDAR__)
  199.     ClndrDeInit();
  200. #endif 
  201. }
  202. /*****************************************************************************
  203.  * FUNCTION
  204.  *  EntryOrganizer
  205.  * DESCRIPTION
  206.  *  Entry Organizer menu screen
  207.  * PARAMETERS
  208.  *  void
  209.  * RETURNS
  210.  *  void
  211.  *****************************************************************************/
  212. void EntryOrganizer(void)
  213. {
  214.     /*----------------------------------------------------------------*/
  215.     /* Local Variables                                                */
  216.     /*----------------------------------------------------------------*/
  217.     U8 i = 0;
  218.     U8 *guiBuffer;
  219.     S32 num_of_items = 0;
  220.     U16 item_list[MAX_SUB_MENUS];
  221.     U8 *item_string[MAX_SUB_MENUS];
  222.     U16 item_icon[MAX_SUB_MENUS];
  223.     U8 *pop_up_organizer[MAX_SUB_MENUS];
  224. #ifdef __MMI_MESSAGES_CLUB__
  225.     U32 menuItemId = -1;
  226.     U32 maskingByte = -1;
  227. #endif /* __MMI_MESSAGES_CLUB__ */ 
  228.     /*----------------------------------------------------------------*/
  229.     /* Code Body                                                      */
  230.     /*----------------------------------------------------------------*/
  231.     EntryNewScreen(ORGANIZER_SCREENID, NULL, EntryOrganizer, NULL);
  232.     guiBuffer = GetCurrGuiBuffer(ORGANIZER_SCREENID);
  233.     SetParentHandler(MAIN_MENU_ORGANIZER_MENUID);
  234.     num_of_items = GetNumOfChild(MAIN_MENU_ORGANIZER_MENUID);
  235.     GetSequenceStringIds(MAIN_MENU_ORGANIZER_MENUID, item_list);
  236.     GetSequenceImageIds(MAIN_MENU_ORGANIZER_MENUID, item_icon);
  237.     for (i = 0; i < num_of_items; i++)
  238.     {
  239.         item_string[i] = (U8*) GetString(item_list[i]);
  240.     }
  241.     RegisterHighlightHandler(ExecuteCurrHiliteHandler);
  242.     memset(pop_up_organizer, 0, sizeof(pop_up_organizer));
  243. #if defined(__MMI_APHORISM__)
  244. /* under construction !*/
  245. /* under construction !*/
  246. /* under construction !*/
  247. /* under construction !*/
  248. /* under construction !*/
  249. /* under construction !*/
  250. /* under construction !*/
  251. /* under construction !*/
  252. /* under construction !*/
  253. /* under construction !*/
  254. #endif /* defined(__MMI_APHORISM__) */ 
  255. #ifdef __MMI_MESSAGES_CLUB__
  256.     menuItemId = GetChildMenuIDIndexByParentMenuID(MAIN_MENU_ORGANIZER_MENUID, MAIN_MENU_SERVICES_MENUID);
  257.     if (menuItemId != -1)
  258.     {
  259.     #ifndef WAP_SUPPORT
  260.         if (mmi_bootup_is_sim_valid() == MMI_FALSE)
  261.         {
  262.             ||!IsSATPresent())ResetBit(maskingByte, menuItemId);
  263.         }
  264.     #ifdef __MMI_MERGE_SAT_TO_MAINMENU__
  265.         else
  266.         {
  267.             if (IsSATPresent())
  268.             {
  269.                 item_string[menuItemId] = GetSATMainMenuAlphaID();
  270.             }
  271.         }
  272.     #endif /* __MMI_MERGE_SAT_TO_MAINMENU__ */ 
  273.     #endif /* WAP_SUPPORT */ 
  274.     }
  275.     MaskStringItems(pop_up_organizer, (U8) num_of_items, maskingByte);
  276.     MaskItems(item_icon, (U8) num_of_items, maskingByte);
  277.     MaskHiliteItems(MAIN_MENU_ORGANIZER_MENUID, maskingByte);
  278.     num_of_items = MaskItems(item_list, (U8) num_of_items, maskingByte);
  279. #endif /* __MMI_MESSAGES_CLUB__ */ 
  280.     /* MTK Leo add, mini_tab_bar */
  281. #ifdef __MMI_WGUI_MINI_TAB_BAR__
  282.     wgui_enable_mini_tab_bar(MAIN_MENU_ORGANIZER_MENUID);
  283. #endif 
  284.     /* MTK Leo end */
  285.     ShowCategory53Screen(
  286.         ORGANIZER_TITLE_STRINGID,
  287.         ORGANIZER_TITLE_IMAGEID,
  288.         STR_GLOBAL_OK,
  289.         IMG_GLOBAL_OK,
  290.         STR_GLOBAL_BACK,
  291.         IMG_GLOBAL_BACK,
  292.         num_of_items,
  293.         item_string,
  294.         item_icon,
  295.         pop_up_organizer,
  296.         0,
  297.         /* currHiliteItemOrg */ 0,
  298.         guiBuffer);
  299.     SetRightSoftkeyFunction(GoBackHistory, KEY_EVENT_UP);
  300.     SetKeyHandler(GoBackHistory, KEY_LEFT_ARROW, KEY_EVENT_DOWN);
  301. }
  302. #if defined(__MMI_APHORISM__)
  303. /* under construction !*/
  304. /* under construction !*/
  305. /* under construction !*/
  306. /* under construction !*/
  307. /* under construction !*/
  308. /* under construction !*/
  309. /* under construction !*/
  310. /* under construction !*/
  311. /* under construction !*/
  312. /* under construction !*/
  313. /* under construction !*/
  314. /* under construction !*/
  315. /* under construction !*/
  316. /* under construction !*/
  317. /* under construction !*/
  318. /* under construction !*/
  319. /* under construction !*/
  320. /* under construction !*/
  321. /* under construction !*/
  322. /* under construction !*/
  323. /* under construction !*/
  324. /* under construction !*/
  325. /* under construction !*/
  326. /* under construction !*/
  327. /* under construction !*/
  328. /* under construction !*/
  329. /* under construction !*/
  330. /* under construction !*/
  331. /* under construction !*/
  332. /* under construction !*/
  333. #endif /* defined(__MMI_APHORISM__) */ 
  334. #endif /* _MMI_ORGANIZER_C */ // #ifndef _MMI_ORGANIZER_C