unitconvertor.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.  * Filename:
  37.  * ---------
  38.  * Unitconvertor.h
  39.  *
  40.  * Project:
  41.  * --------
  42.  *   MAUI
  43.  *
  44.  * Description:
  45.  * ------------
  46.  *   This file defines struct, enum, and function prototypes of Unit Convertor application.
  47.  *
  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.  *------------------------------------------------------------------------------
  75.  * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!! 
  76.  *==============================================================================
  77.  *******************************************************************************/
  78. /**
  79.  * Copyright Notice
  80.  * ?2002 - 2003, Pixtel Communications, Inc., 1489 43rd Ave. W.,
  81.  * Vancouver, B.C. V6M 4K8 Canada. All Rights Reserved.
  82.  *  (It is illegal to remove this copyright notice from this software or any
  83.  *  portion of it)
  84.  */
  85. /**********************************************************************************
  86.    Filename:      unitconvertor.h
  87.    Author:        Vandana M
  88.    Date Created:  July-14-2003
  89.    Contains:      Unitconvertor
  90. **********************************************************************************/
  91. #ifndef __MMI_UNITCONVERTOR_H
  92. #define __MMI_UNITCONVERTOR_H
  93. #include "MMI_features.h"
  94. #if defined (__MMI_UNIT_CONVERTER__) || defined (__MMI_EXTENDED_UNIT_CONVERTER__)
  95. #include "PixtelDataTypes.h"
  96. /* 
  97.  * Define
  98.  */
  99. /* 
  100.  * Typedef 
  101.  */
  102. typedef enum
  103. {STR_UNITCONVERTOR_WEIGHT = UNIT_CONVERTER + 1,
  104.     STR_UNITCONVERTOR_LENGTH,
  105.     STR_UNITCONVERTOR_CAPTION,
  106.     STR_UNITCONVERTOR_CAPTION1,
  107.     STR_ID_UNITCONVERTOR_RESET,
  108. #ifndef __MMI_EXTENDED_UNIT_CONVERTER__
  109.     STR_UNITCONVERTOR_KGPOUND,
  110.     STR_UNITCONVERTOR_KG,
  111.     STR_UNITCONVERTOR_POUND,
  112.     STR_UCONV_OUNCE,
  113.     STR_UCONV_KGOUNCE,
  114.     STR_UNITCONVERTOR_KMMILE,
  115.     STR_UNITCONVERTOR_MYARD,
  116.     STR_UNITCONVERTOR_MFOOT,
  117.     STR_UNITCONVERTOR_CMINCH,
  118.     STR_UNITCONVERTOR_KM,
  119.     STR_UNITCONVERTOR_METER,
  120.     STR_UNITCONVERTOR_CM,
  121.     STR_UNITCONVERTOR_MILE,
  122.     STR_UNITCONVERTOR_YARD,
  123.     STR_UNITCONVERTOR_FOOT,
  124.     STR_UNITCONVERTOR_INCH,
  125. #else /* __MMI_EXTENDED_UNIT_CONVERTER__ */ 
  126.     STR_ID_UNITCONVERTOR_VOLUME,
  127.     STR_ID_UNITCONVERTOR_MILLILITER,
  128.     STR_ID_UNITCONVERTOR_LITER,
  129.     STR_ID_UNITCONVERTOR_CUBICMM,
  130.     STR_ID_UNITCONVERTOR_CUBICCM,
  131.     STR_ID_UNITCONVERTOR_CUBICMETER,
  132.     STR_ID_UNITCONVERTOR_CUBICINCH,
  133.     STR_ID_UNITCONVERTOR_GALLON,
  134.     STR_ID_UNITCONVERTOR_LIQPT,
  135.     STR_ID_UNITCONVERTOR_LIQOZ,
  136.     STR_ID_UNITCONVERTOR_FLOZ,
  137.     STR_ID_UNITCONVERTOR_BARREL,
  138.     STR_ID_UNITCONVERTOR_TEMPERATURE,
  139.     STR_ID_UNITCONVERTOR_CELSIUS,
  140.     STR_ID_UNITCONVERTOR_FAHRENHEIT,
  141.     STR_ID_UNITCONVERTOR_VELOCITY,
  142.     STR_ID_UNITCONVERTOR_KMH,
  143.     STR_ID_UNITCONVERTOR_METERSEC,
  144.     STR_ID_UNITCONVERTOR_MPH,
  145.     STR_ID_UNITCONVERTOR_FEETSEC,   /* Autumn { *//* Sophie { */
  146.     STR_ID_UNITCONVERTOR_LENGTH_MM,
  147.     STR_ID_UNITCONVERTOR_LENGTH_CM,
  148.     STR_ID_UNITCONVERTOR_LENGTH_M,
  149.     STR_ID_UNITCONVERTOR_LENGTH_KM,
  150.     STR_ID_UNITCONVERTOR_LENGTH_INCH,
  151.     STR_ID_UNITCONVERTOR_LENGTH_FEET,
  152.     STR_ID_UNITCONVERTOR_LENGTH_YARD,
  153.     STR_ID_UNITCONVERTOR_LENGTH_MILES,
  154.     STR_ID_UNITCONVERTOR_WEIGHT_MG,
  155.     STR_ID_UNITCONVERTOR_WEIGHT_G,
  156.     STR_ID_UNITCONVERTOR_WEIGHT_KG,
  157.     STR_ID_UNITCONVERTOR_WEIGHT_TON,
  158.     STR_ID_UNITCONVERTOR_WEIGHT_OUNCE,
  159.     STR_ID_UNITCONVERTOR_WEIGHT_POUND,
  160.     STR_ID_UNITCONVERTOR_SHOES,
  161.     STR_ID_UNITCONVERTOR_SHOES_USA,
  162.     STR_ID_UNITCONVERTOR_SHOES_EUROPE,
  163.     STR_ID_UNITCONVERTOR_SHOES_KOREA,
  164.     STR_ID_UNITCONVERTOR_CLOTHES,
  165.     STR_ID_UNITCONVERTOR_CLOTHES_EUROPE,
  166.     STR_ID_UNITCONVERTOR_CLOTHES_KOREA1,
  167.     STR_ID_UNITCONVERTOR_CLOTHES_KOREA2,
  168.     STR_ID_UNITCONVERTOR_CLOTHES_JAPAN,
  169.     STR_ID_UNITCONVERTOR_CLOTHES_USA,
  170.     STR_ID_UNITCONVERTOR_CLOTHES_UK,
  171.     STR_ID_UNITCONVERTOR_SURFACE,
  172.     STR_ID_UNITCONVERTOR_SURFACE_ACRE,
  173.     STR_ID_UNITCONVERTOR_SURFACE_HECTARE,
  174.     STR_ID_UNITCONVERTOR_SURFACE_SQUARE_MM,
  175.     STR_ID_UNITCONVERTOR_SURFACE_SQUARE_CM,
  176.     STR_ID_UNITCONVERTOR_SURFACE_SQUARE_M,
  177.     STR_ID_UNITCONVERTOR_SURFACE_SQUARE_KM,
  178.     STR_ID_UNITCONVERTOR_SURFACE_SQUARE_IN,
  179.     STR_ID_UNITCONVERTOR_SURFACE_SQUARE_FEET,
  180.     STR_ID_UNITCONVERTOR_SURFACE_SQUARE_YD,
  181.     STR_ID_UNITCONVERTOR_SURFACE_SQUARE_MILES,
  182.     UC_ERROR_UNCORRECT_INPUT,
  183. #endif /* __MMI_EXTENDED_UNIT_CONVERTER__ */ 
  184.     UC_ERROR_EMPTY_STRING,
  185.     EXTRA_MENU_UNITSCONVERTOR_STRINGID
  186. } STR_ID_UCONV_ENUM;
  187. typedef enum
  188. {
  189.     SCR_ID_UCONV_MENU = UNIT_CONVERTER + 1, /* do not change order */
  190.     SCR_ID_UCONV_WEIGHT,                    /* do not change order */
  191.     SCR_ID_UCONV_LENGTH                     /* do not change order */
  192. #ifdef __MMI_EXTENDED_UNIT_CONVERTER__
  193.         , SCR_ID_UCONV_VOLUME,
  194.     SCR_ID_UCONV_TEMPERATURE,
  195.     SCR_ID_UCONV_VELOCITY,
  196.     SCR_ID_UCONV_SHOES,
  197.     SCR_ID_UCONV_CLOTHES,
  198.     SCR_ID_UCONV_SURFACE
  199. #endif /* __MMI_EXTENDED_UNIT_CONVERTER__ */ 
  200. } SCR_ID_UCONV_ENUM;
  201. typedef enum
  202. {
  203.     EXTRA_MENU_UNITSCONVERTOR_IMAGEID = UNIT_CONVERTER + 1,
  204.     IMG_ID_UNITCONVERTOR_RESET
  205. } IMG_ID_UCONV_ENUM;
  206. typedef enum
  207. {
  208.     UCONV_UNIT = 0,
  209.     UCONV_METRIC_CAP,   /* metric caption */
  210.     UCONV_METIRC,       /* metric */
  211.     UCONV_ENG_CAP,      /* English caption */
  212.     UCONV_ENG,          /* English */
  213.     UCONV_INLINE_TOTAL
  214. } UCONV_INLINE_ITEM_ENUM;
  215. typedef enum
  216. {
  217.     UCONV_CAPTION = 0,
  218.     UCONV_UNIT1,
  219.     UCONV_INPUT1,
  220.     UCONV_UNIT2,
  221.     UCONV_RESULT,
  222.     UCONV_INLINE_TOTAL2
  223. } UCONV_INLINE_ITEM_ENUM2;
  224. typedef enum
  225. {
  226.     UCONV_WEIGHT = 0,
  227.     UCONV_LENGTH
  228. #ifdef __MMI_EXTENDED_UNIT_CONVERTER__
  229.         ,
  230.     UCONV_VOLUME,
  231.     UCONV_TEMPERATURE,
  232.     UCONV_VELOCITY,
  233.     UCONV_SHOES,
  234.     UCONV_CLOTHES,
  235.     UCONV_SURFACE
  236. #endif /* __MMI_EXTENDED_UNIT_CONVERTER__ */ 
  237. } UCONV_UNIT_TYPE;
  238. /* 
  239.  * Extern Global Variable
  240.  */
  241. /* 
  242.  * Extern Global Function
  243.  */
  244. extern void UconvInit(void);
  245. extern void UconvDeInit(void);
  246. extern void EntryUConvMenu(void);
  247. extern void UConvCustomInlineFunction(void);
  248. extern void HighlightUconvMenu(void);
  249. #ifdef __MMI_EXTENDED_UNIT_CONVERTER__
  250. extern void mmi_uconv_goto_compute_screen_lg(void);
  251. extern void mmi_uconv_exit_compute_lg(void);
  252. extern void mmi_uconv_entry_compute_lg(void);
  253. extern void mmi_uconv_highlight_inline_item_lg(S32 nIndex);
  254. extern void mmi_uconv_highlight_inline_select1(S32 index);
  255. extern void mmi_uconv_highlight_inline_select2(S32 index);
  256. extern void mmi_uconv_compute_result(U8 *text, U8 *cursor, S32 text_length);
  257. extern void mmi_uconv_compute_temperature_result(U8 *text, U8 *cursor, S32 text_length);
  258. extern void mmi_uconv_compute_shoes_result(void);
  259. extern void mmi_uconv_compute_clothes_result(void);
  260. extern void mmi_uconv_verify_shoes_input(U16 *input);
  261. extern void mmi_uconv_verify_clothes_input(U16 *input);
  262. #else /* __MMI_EXTENDED_UNIT_CONVERTER__ */ 
  263. extern void HighlightUConvInlineLenghSelect(S32 index);
  264. extern void ComputeLengthResult(void);
  265. extern void UConvGoToComputeScreen(void);
  266. extern void EntryUConvCompute(void);
  267. extern void HighlightUConvInlineItem(S32 nIndex);
  268. extern void HighlightUConvInlineWeightSelect(S32 index);
  269. #endif /* __MMI_EXTENDED_UNIT_CONVERTER__ */ 
  270. #endif /* defined (__MMI_UNIT_CONVERTER__) || defined (__MMI_EXTENDED_UNIT_CONVERTER__) */ /* __MMI_UNITCONVERTOR_H */
  271. #endif /* __MMI_UNITCONVERTOR_H */