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

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.  *   gui_data_types.h
  40.  *
  41.  * Project:
  42.  * --------
  43.  *   MAUI
  44.  *
  45.  * Description:
  46.  * ------------
  47.  *   Basic data types
  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.  *------------------------------------------------------------------------------
  64.  * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!! 
  65.  *==============================================================================
  66.  *******************************************************************************/
  67.  
  68. /**
  69.  * Copyright Notice
  70.  * ?2002 - 2003, Pixtel Communications, Inc., 1489 43rd Ave. W.,
  71.  * Vancouver, B.C. V6M 4K8 Canada. All Rights Reserved.
  72.  *  (It is illegal to remove this copyright notice from this software or any
  73.  *  portion of it)
  74.  */
  75.  
  76. /**********************************************************************************
  77. Filename: gui_data_types.h
  78. Author: manju
  79. Date Created: December-24-2002
  80. Contains: PixTel UI data types
  81. Includes standard and external data types
  82. **********************************************************************************/
  83. #ifndef __GUI_DATA_TYPES_H__
  84. #define __GUI_DATA_TYPES_H__
  85. #ifdef __cplusplus
  86. extern "C"
  87. {
  88. #endif
  89. /* External includes */
  90. #include "pixteldatatypes.h"
  91. #include "PixcomFontengine.h"
  92. #include "FontRes.h"
  93. #include "gui_config.h"
  94. /* Basic datatypes used by the UI */
  95. typedef U8 byte; /* unsigned 8-bit data */
  96. typedef U16 word; /* unsigned 16-bit data */
  97. typedef U32 dword; /* unsigned 32-bit data */
  98. typedef S8 s8; /* signed 8-bit data */
  99. typedef S16 s16; /* signed 16-bit data */
  100. #ifndef __LxS_Types_h__ //iTap define its own s32 type, and disagree with ours.
  101. typedef S32 s32; /* signed 32-bit data */
  102. #endif
  103. /* External datatypes used by the UI */
  104. #define MAX_ANIMATED_IMAGES 32
  105. #define MAX_ANIMATION_FRAMES 32
  106. #define ANIMATED_IMAGE_FRAME_RATE 200 /* milli-seconds */
  107. #define ANIMATED_IMAGE_TRANSPARENT 0x00000001
  108. #define ANIMATED_IMAGE_CYCLE_SELECTED_FRAMES 0x00000002
  109. typedef struct _bitmap
  110. { s32 xsize;
  111. s32 ysize;
  112.     s8 color_depth;
  113.     s32 row_bytes;
  114.     byte *palette;
  115.     byte *data;
  116. } bitmap;
  117. typedef byte* UI_image_type;
  118. typedef byte* UI_audio_type;//101205 audio resource Calvin add
  119. typedef byte UI_transparent_color_type;
  120. typedef stFontAttribute* UI_font_type;
  121. #ifdef __UCS2_ENCODING
  122. typedef U16 UI_character_type;
  123. #else
  124. typedef U8 UI_character_type;
  125. #endif
  126. typedef UI_character_type* UI_string_type;
  127. typedef U8* UI_buffer_type;
  128. typedef struct _animated_image
  129. { s16 n_frames;
  130.     s16 frame_rate;
  131.     s16 frame_counter;
  132. s32 x;
  133. s32 y;
  134. UI_image_type images[MAX_ANIMATION_FRAMES];
  135.     void (*hide_function)(s32 x1,s32 y1,s32 x2,s32 y2);
  136.     dword flags;
  137. s32 clip_x1;
  138. s32 clip_y1;
  139. s32 clip_x2;
  140. s32 clip_y2;
  141. s16 start_frame;
  142. s16 end_frame;
  143. bitmap* graphics_context;
  144. void (*last_frame_function)(void);
  145. } animated_image;
  146. typedef animated_image* UI_animated_image_handle;
  147. extern UI_font_type UI_font;
  148. #define UI_NULL_IMAGE NULL
  149. #define UI_DEFAULT_TRANSPARENT_COLOR 0
  150. #define UI_NULL_TRANSPARENT_COLOR 255
  151. /* Retained for compatibility sake. Will be removed later */
  152. #define UI_IMAGE_ID_NULL NULL
  153. #define UI_UNUSED_PARAMETER(x) ((void)(x))
  154. #if(UI_INDEXED_COLOR_SYSTEM)
  155. #if(UI_COLOR_DEPTH<=8)
  156. typedef byte color;
  157. #else
  158. typedef word color;
  159. #endif
  160. #else
  161. typedef struct _color
  162. { byte r;
  163. byte g;
  164. byte b;
  165. byte alpha;
  166. } color;
  167. #endif
  168. typedef struct _polygon_vertex
  169. { s32 x;
  170. s32 y;
  171. } polygon_vertex;
  172. #ifdef __cplusplus
  173. }
  174. #endif
  175. #endif