1 /*************************************************************************** 2 * Copyright (c) 2024 Microsoft Corporation 3 * 4 * This program and the accompanying materials are made available under the 5 * terms of the MIT License which is available at 6 * https://opensource.org/licenses/MIT. 7 * 8 * SPDX-License-Identifier: MIT 9 **************************************************************************/ 10 11 12 /**************************************************************************/ 13 /**************************************************************************/ 14 /** */ 15 /** GUIX Component */ 16 /** */ 17 /** Application Interface (API) */ 18 /** */ 19 /**************************************************************************/ 20 /**************************************************************************/ 21 /**************************************************************************/ 22 /* */ 23 /* APPLICATION INTERFACE DEFINITION RELEASE */ 24 /* */ 25 /* gx_api.h PORTABLE C */ 26 /* 6.4.1 */ 27 /* AUTHOR */ 28 /* */ 29 /* Kenneth Maxwell, Microsoft Corporation */ 30 /* */ 31 /* DESCRIPTION */ 32 /* */ 33 /* This file defines the basic Application Interface (API) to the */ 34 /* high-performance GUIX UI framework. All service prototypes */ 35 /* and data structure definitions are defined in this file. */ 36 /* Please note that basic data type definitions and other architecture-*/ 37 /* specific information is contained in the file gx_port.h. */ 38 /* */ 39 /* RELEASE HISTORY */ 40 /* */ 41 /* DATE NAME DESCRIPTION */ 42 /* */ 43 /* 05-19-2020 Kenneth Maxwell Initial Version 6.0 */ 44 /* 09-30-2020 Kenneth Maxwell Modified comment(s), */ 45 /* added line break status, */ 46 /* updated product constants, */ 47 /* modified controls blocks, */ 48 /* added new APIs, */ 49 /* resulting in version 6.1 */ 50 /* 12-31-2020 Kenneth Maxwell Modified comment(s), added */ 51 /* display rotation support, */ 52 /* declare new APIs, */ 53 /* defined new status, */ 54 /* resulting in version 6.1.3 */ 55 /* 03-02-2021 Kenneth Maxwell Modified comment(s), */ 56 /* change scroll_wheel style */ 57 /* flag to status flag, */ 58 /* renamed */ 59 /* GX_STATUS_TRACKING_START to */ 60 /* GX_STATUS_TRACKING_PEN, */ 61 /* added rotation angle */ 62 /* definitions, changed */ 63 /* pixelmap rotation flag */ 64 /* definitions, */ 65 /* resulting in version 6.1.5 */ 66 /* 06-02-2021 Ting Zhu Modified comment(s), */ 67 /* added new widget type */ 68 /* GX_GENERIC_SCROLL_WHEEL, */ 69 /* added animation delete API, */ 70 /* added generic Dave2D */ 71 /* graphics accelerator */ 72 /* support, */ 73 /* resulting in version 6.1.7 */ 74 /* 08-02-2021 Ting Zhu Modified comment(s), added */ 75 /* GX_TICKS_SECOND definition */ 76 /* resulting in version 6.1.8 */ 77 /* 10-15-2021 Ting Zhu Modified comment(s), */ 78 /* updated patch number, */ 79 /* resulting in version 6.1.9 */ 80 /* 01-31-2022 Kenneth Maxwell Modified comment(s), */ 81 /* removed errant semicolons, */ 82 /* added new member to struct */ 83 /* GX_RADIAL_SLIDER_INFO, */ 84 /* added new member to */ 85 /* vertical and horizontal */ 86 /* list control blocks, */ 87 /* resulting in version 6.1.10 */ 88 /* 04-25-2022 Ting Zhu Modified comment(s), */ 89 /* added new member to struct */ 90 /* GX_DISPLAY_LAYER_SERVICES, */ 91 /* added new animation flag */ 92 /* GX_ANIMATION_BLOCK_MOVE, */ 93 /* resulting in version 6.1.11 */ 94 /* 07-29-2022 Kenneth Maxwell Modified comment(s), */ 95 /* added new style */ 96 /* GX_STYLE_REPEAT_SELECT, */ 97 /* resulting in version 6.1.12 */ 98 /* 10-31-2022 Kenneth Maxwell Modified comment(s), */ 99 /* removed unused style flag */ 100 /* GX_SCROLLBAR_BACKGROUND_ */ 101 /* TILE, */ 102 /* resulting in version 6.2.0 */ 103 /* 03-08-2023 Ting Zhu Modified comment(s), */ 104 /* updated patch version, */ 105 /* resulting in version 6.2.1 */ 106 /* 10-31-2023 Ting Zhu Modified comment(s), */ 107 /* added new APIs for loading */ 108 /* pixelmap and font from */ 109 /* standalone binary, */ 110 /* removed unused defines, */ 111 /* added partial canvas buffer */ 112 /* support, */ 113 /* resulting in version 6.3.0 */ 114 /* 12-31-2023 Ting Zhu Modified comment(s), */ 115 /* updated patch version, */ 116 /* resulting in version 6.4.0 */ 117 /* 03-01-2024 Ting Zhu Modified comment(s), */ 118 /* updated patch version, */ 119 /* resulting in version 6.4.1 */ 120 /* */ 121 /**************************************************************************/ 122 123 #ifndef GX_API_H 124 #define GX_API_H 125 126 /* Determine if a C++ compiler is being used. If so, ensure that standard 127 C is used to process the API information. */ 128 129 #ifdef __cplusplus 130 131 /* Yes, C++ compiler is present. Use standard C. */ 132 extern "C" { 133 134 #endif 135 136 137 /* Define the major/minor version information that can be used by the application 138 and the GUIX source as well. */ 139 140 #define AZURE_RTOS_GUIX 141 #define GUIX_MAJOR_VERSION 6 142 #define GUIX_MINOR_VERSION 4 143 #define GUIX_PATCH_VERSION 1 144 145 /* The following symbols are defined for backward compatibility reasons.*/ 146 #define __PRODUCT_GUIX__ 147 #define __GUIX_MAJOR_VERSION GUIX_MAJOR_VERSION 148 #define __GUIX_MINOR_VERSION GUIX_MINOR_VERSION 149 150 /* Ensure that ThreadX error checking is disabled for GUIX source code. */ 151 152 #ifdef GX_SOURCE_CODE 153 #ifndef TX_DISABLE_ERROR_CHECKING 154 #define TX_DISABLE_ERROR_CHECKING 155 #endif 156 #endif 157 158 /* Include ThreadX API and GUIX port-specific include file. */ 159 #ifndef GX_DISABLE_THREADX_BINDING 160 #include "tx_api.h" 161 #define GX_THREADX_BINDING 162 #else 163 164 /* Define data types used by GUIX that are normally defined within ThreadX headers */ 165 166 #define VOID void 167 typedef char CHAR; 168 typedef unsigned char UCHAR; 169 typedef int INT; 170 typedef unsigned int UINT; 171 typedef long LONG; 172 typedef unsigned long ULONG; 173 typedef short SHORT; 174 typedef unsigned short USHORT; 175 #endif 176 177 #include "gx_port.h" 178 179 /* Define signed 8-bit value */ 180 typedef signed char GX_BYTE; 181 182 /* Define unsigned 8-bit value */ 183 typedef unsigned char GX_UBYTE; 184 185 /* Define Resource ID. */ 186 typedef ULONG GX_RESOURCE_ID; 187 188 /* Define Color type. */ 189 typedef ULONG GX_COLOR; 190 191 /* Fixed point math data type */ 192 typedef signed long GX_FIXED_VAL; 193 194 typedef char GX_CHAR; 195 196 /* Define the String type. */ 197 typedef struct GX_STRING_STRUCT 198 { 199 GX_CONST GX_CHAR *gx_string_ptr; /* Pointer to string. */ 200 UINT gx_string_length; /* String length in bytes. */ 201 } GX_STRING; 202 203 /* Define constants for GUIX. */ 204 205 /* Define configuration-specific constants. These constants can be redefined externally. */ 206 207 /* Default 20ms GUIX system timer. */ 208 #ifndef GX_SYSTEM_TIMER_MS 209 #define GX_SYSTEM_TIMER_MS 20 210 #endif 211 212 #ifndef GX_DISABLE_DEPRECATED_STRING_API 213 #define GX_ENABLE_DEPRECATED_STRING_API 214 #endif 215 216 #if defined(GX_THREADX_BINDING) 217 218 /* Set default ThreadX timer tick frequency 100Hz (10ms timer). */ 219 #ifndef TX_TIMER_TICKS_PER_SECOND 220 #define TX_TIMER_TICKS_PER_SECOND ((ULONG)100) 221 #endif 222 223 /* Derive GX_SYSTEM_TIMER_TICKS based on GX_SYSTEM_TIMER_MS value. */ 224 #ifndef GX_SYSTEM_TIMER_TICKS 225 #define GX_SYSTEM_TIMER_TICKS ((GX_SYSTEM_TIMER_MS * TX_TIMER_TICKS_PER_SECOND) / 1000) 226 #endif 227 228 #ifndef GX_TICKS_SECOND 229 #define GX_TICKS_SECOND (1000 / GX_SYSTEM_TIMER_MS) 230 #endif 231 232 #endif /* GX_THREADX_BINDING */ 233 234 #ifndef GX_DISABLE_MULTITHREAD_SUPPORT 235 #define GX_MULTITHREAD_SUPPORT 236 #endif 237 238 #ifndef GX_DISABLE_UTF8_SUPPORT 239 #define GX_UTF8_SUPPORT 240 #endif 241 242 #ifndef GX_DISABLE_ARC_DRAWING_SUPPORT 243 #define GX_ARC_DRAWING_SUPPORT 244 #endif 245 246 #ifndef GX_DISABLE_SOFTWARE_DECODER_SUPPORT 247 #define GX_SOFTWARE_DECODER_SUPPORT 248 #endif 249 250 #ifndef GX_DISABLE_BINARY_RESOURCE_SUPPORT 251 #define GX_BINARY_RESOURCE_SUPPORT 252 #endif 253 254 #ifndef GX_DISABLE_BRUSH_ALPHA_SUPPORT 255 #define GX_BRUSH_ALPHA_SUPPORT 256 #endif 257 258 #ifndef GX_DISABLE_EXPO_ELASTIC_EASING_SUPPORT 259 #define GX_EXPO_ELASTIC_EASING_SUPPORT 260 #endif 261 262 #ifndef GX_REPEAT_BUTTON_INITIAL_TICS 263 #define GX_REPEAT_BUTTON_INITIAL_TICS 10 264 #endif 265 266 #ifndef GX_REPEAT_BUTTON_REPEAT_TICS 267 #define GX_REPEAT_BUTTON_REPEAT_TICS 3 268 #endif 269 270 /* define size of the GUIX event queue */ 271 #ifndef GX_MAX_QUEUE_EVENTS 272 #define GX_MAX_QUEUE_EVENTS 48 273 #endif 274 275 #ifndef GX_MAX_DIRTY_AREAS 276 #define GX_MAX_DIRTY_AREAS 64 277 #endif 278 279 /* define depth of drawing context stack */ 280 #ifndef GX_MAX_CONTEXT_NESTING 281 #define GX_MAX_CONTEXT_NESTING 8 282 #endif 283 284 /* define depth of input capture stack */ 285 286 #ifndef GX_MAX_INPUT_CAPTURE_NESTING 287 #define GX_MAX_INPUT_CAPTURE_NESTING 4 288 #endif 289 290 #ifndef GX_SYSTEM_THREAD_PRIORITY 291 #define GX_SYSTEM_THREAD_PRIORITY 16 292 #endif 293 294 #ifndef GX_SYSTEM_THREAD_TIMESLICE 295 #define GX_SYSTEM_THREAD_TIMESLICE 10 296 #endif 297 298 #ifndef GX_CURSOR_BLINK_INTERVAL 299 #define GX_CURSOR_BLINK_INTERVAL 20 300 #endif 301 302 #ifndef GX_MULTI_LINE_INDEX_CACHE_SIZE 303 #define GX_MULTI_LINE_INDEX_CACHE_SIZE 32 304 #endif 305 306 #ifndef GX_MULTI_LINE_TEXT_BUTTON_MAX_LINES 307 #define GX_MULTI_LINE_TEXT_BUTTON_MAX_LINES 4 308 #endif 309 310 /* Define rich text context stack size. */ 311 #ifndef GX_MAX_RICH_TEXT_CONTEXT_NESTING 312 #define GX_MAX_RICH_TEXT_CONTEXT_NESTING 10 313 #endif 314 315 /* maximum number of polygon edges */ 316 #ifndef GX_POLYGON_MAX_EDGE_NUM 317 #define GX_POLYGON_MAX_EDGE_NUM 10 318 #endif 319 320 #ifndef GX_NUMERIC_SCROLL_WHEEL_STRING_BUFFER_SIZE 321 #define GX_NUMERIC_SCROLL_WHEEL_STRING_BUFFER_SIZE 16 322 #endif 323 324 #ifndef GX_DEFAULT_CIRCULAR_GAUGE_ANIMATION_DELAY 325 #define GX_DEFAULT_CIRCULAR_GAUGE_ANIMATION_DELAY 5 326 #endif 327 328 /* define the largest string needed by a NUMERIC prompt widget */ 329 #ifndef GX_NUMERIC_PROMPT_BUFFER_SIZE 330 #define GX_NUMERIC_PROMPT_BUFFER_SIZE 16 331 #endif 332 333 /* define size of the GX_ANIMATION pool, i.e. max sumultaneous animations */ 334 #ifndef GX_ANIMATION_POOL_SIZE 335 #define GX_ANIMATION_POOL_SIZE 6 336 #endif 337 338 /* define maximum string length. */ 339 #ifndef GX_MAX_STRING_LENGTH 340 #define GX_MAX_STRING_LENGTH 102400 341 #endif 342 343 #ifndef GX_PALETTE_MODE_AA_TEXT_COLORS 344 #define GX_PALETTE_MODE_AA_TEXT_COLORS 8 345 #endif 346 347 #ifndef GX_PARAMETER_NOT_USED 348 #define GX_PARAMETER_NOT_USED(p) ((void) (p)) 349 #endif /* GX_PARAMETER_NOT_USED */ 350 351 /* defines for backwards compatiblity */ 352 #ifndef GX_RENESAS_DAVE2D_DRAW 353 #ifdef GX_USE_SYNERGY_DRW 354 #define GX_RENESAS_DAVE2D_DRAW 355 #endif 356 #endif 357 358 #ifndef GX_RENESAS_DAVE2D_FONT_SUPPORT 359 #ifdef GX_SYNERGY_FONT_FORMAT_SUPPORT 360 #define GX_RENESAS_DAVE2D_FONT_SUPPORT 361 #endif 362 #endif 363 /* end of defines for backwards compatiblity */ 364 365 #define GX_MAX_PIXELMAP_RESOLUTION 0x3FFF 366 367 /* Define screen rotation types. */ 368 #define GX_SCREEN_ROTATION_NONE 0 369 #define GX_SCREEN_ROTATION_CW 90 370 #define GX_SCREEN_ROTATION_CCW 270 371 #define GX_SCREEN_ROTATION_FLIP 180 372 373 /* API input parameters and general constants. */ 374 375 #define GX_TRUE 1 376 #define GX_FALSE 0 377 #define GX_NULL 0 378 #define GX_ID_NONE 0 379 #define GX_MAGIC_NUMBER 0x4758U /* GX */ 380 #define GX_RESOURCE_TYPE_BINRES_NORMAL 0x4758U /* GX */ 381 #define GX_RESOURCE_TYPE_BINRES_STANDALONE 0x4753U /* GS */ 382 383 /* API return values. */ 384 385 #define GX_SUCCESS 0x00 386 #define GX_DELETED 0x01 387 #define GX_INVALID_ID 0x02 388 #define GX_NO_VIEWS 0x03 389 #define GX_OUT_OF_TIMERS 0x04 390 #define GX_DRAW_NESTING_EXCEEDED 0x05 391 #define GX_INVALID_CONTEXT 0x06 392 #define GX_PTR_ERROR 0x07 393 #define GX_NO_CHANGE 0x08 394 #define GX_NOT_FOUND 0x09 395 #define GX_FAILURE 0x10 396 #define GX_CALLER_ERROR 0x11 397 #define GX_INVALID_WIDGET 0x12 398 #define GX_ALREADY_CREATED 0x13 399 #define GX_INVALID_WIDGET_SIZE 0x14 400 #define GX_INVALID_COLOR 0x15 401 #define GX_INVALID_FONT 0x16 402 #define GX_INVALID_STRING 0x17 403 #define GX_INVALID_STYLE 0x18 404 #define GX_INVALID_SIZE 0x19 405 #define GX_INVALID_ALPHA 0x1A 406 #define GX_INVALID_TYPE 0x1B 407 #define GX_INVALID_CANVAS_SIZE 0x1C 408 #define GX_INVALID_DISPLAY 0x1D 409 #define GX_INVALID_WIDTH 0x1E 410 #define GX_INVALID_HEIGHT 0x1F 411 #define GX_INVALID_CANVAS 0x20 412 #define GX_INVALID_COORDINATE 0x21 413 #define GX_INVALID_VALUE 0x22 414 #define GX_INVALID_DISPLAY_SIZE 0x23 415 #define GX_INVALID_FORMAT 0x24 416 #define GX_INVALID_APPEARANCE 0x25 417 #define GX_INVALID_STATUS 0x26 418 #define GX_INPUT_CAPTURE_NESTING_EXCEEDED 0x27 419 #define GX_NOT_SUPPORTED 0x28 420 #define GX_INVALID_MEMORY_SIZE 0x29 421 #define GX_SYSTEM_MEMORY_ERROR 0x30 422 #define GX_OUT_OF_ANIMATIONS 0x31 423 #define GX_INVALID_ANIMATION 0x32 424 #define GX_INVALID_RESOURCE_ID 0x33 425 #define GX_INVALID_STRING_LENGTH 0x34 426 #define GX_MATH_OVERFLOW 0x35 427 #define GX_RICH_STYLE_NESTING_EXEEDED 0x36 428 #define GX_SYSTEM_ERROR 0xFE 429 430 431 432 /* Define system error constants. */ 433 434 #define GX_SYSTEM_THREAD_CREATE_FAILED 1 435 #define GX_SYSTEM_QUEUE_CREATE_FAILED 2 436 #define GX_SYSTEM_MUTEX_CREATE_FAILED 3 437 #define GX_SYSTEM_EVENT_SIZE_MISMATCH 4 438 #define GX_SYSTEM_EVENT_RECEIVE_ERROR 5 439 #define GX_SYSTEM_PROTECTION_ERROR 6 440 #define GX_SYSTEM_DRIVER_SETUP_ERROR 7 441 #define GX_SYSTEM_OUT_OF_VIEWS 8 442 443 /* Define supported frame buffer color formats. */ 444 445 #define GX_COLOR_FORMAT_MONOCHROME 1 /* 0 = black, 1 = white */ 446 #define GX_COLOR_FORMAT_MONOCHROME_INVERTED 2 /* 1 = black, 0 = white */ 447 #define GX_COLOR_FORMAT_2BIT_GRAY 3 /* 2 bit-per-pixel grayscale */ 448 #define GX_COLOR_FORMAT_2BIT_GRAY_INVERTED 4 /* 2 bit-per-pixel grayscale inverted */ 449 #define GX_COLOR_FORMAT_4BIT_GRAY 5 /* 4 bit-per-pixel grayscale */ 450 #define GX_COLOR_FORMAT_4BIT_GRAY_INVERTED 6 451 #define GX_COLOR_FORMAT_4BIT_VGA 7 /* Obsolete VGA planar format, 16 colors */ 452 #define GX_COLOR_FORMAT_8BIT_GRAY 8 /* 256 shades of gray */ 453 #define GX_COLOR_FORMAT_8BIT_GRAY_INVERTED 9 /* 256 shades of gray, 0 = white */ 454 #define GX_COLOR_FORMAT_8BIT_PALETTE 10 /* 256 color palette mode */ 455 #define GX_COLOR_FORMAT_8BIT_PACKED_PIXEL 11 /* 3:3:2 color mode */ 456 #define GX_COLOR_FORMAT_5551BGRX 12 /* 15 bpp, b:g:r order */ 457 #define GX_COLOR_FORMAT_1555XRGB 13 /* 15 bpp, r:g:b order */ 458 #define GX_COLOR_FORMAT_565RGB 14 /* 16 bpp, r:g:b order */ 459 #define GX_COLOR_FORMAT_4444ARGB 15 /* 16 bpp, 4:4:4:4 argb order */ 460 #define GX_COLOR_FORMAT_4444BGRA 16 /* 16 bpp, 4:4:4:4 bgra order */ 461 #define GX_COLOR_FORMAT_565BGR 17 /* 16 bpp, b:g:r order */ 462 #define GX_COLOR_FORMAT_24RGB 18 /* 24 bpp, r:g:b order, packed */ 463 #define GX_COLOR_FORMAT_24BGR 19 /* 24 bpp, b:g:r order, packed */ 464 #define GX_COLOR_FORMAT_24XRGB 20 /* 24 bpp, r:g:b order, unpacked */ 465 #define GX_COLOR_FORMAT_24BGRX 21 /* 24 bpp, b:g:r order, unpacked */ 466 #define GX_COLOR_FORMAT_32ARGB 22 /* 32 bpp, a:r:g:b order */ 467 #define GX_COLOR_FORMAT_32RGBA 23 /* 32 bpp, r:g:b:a order */ 468 #define GX_COLOR_FORMAT_32ABGR 24 /* 32 BPP, a:b:g:r order */ 469 #define GX_COLOR_FORMAT_32BGRA 25 /* 32 BPP, b:g:r:a order */ 470 #define GX_COLOR_FORMAT_8BIT_ALPHAMAP 26 /* 8 bit alpha only */ 471 472 /* Predefined color Resource IDs. */ 473 474 #define GX_COLOR_ID_CANVAS 0 475 #define GX_COLOR_ID_WIDGET_FILL 1 476 #define GX_COLOR_ID_WINDOW_FILL 2 477 #define GX_COLOR_ID_DEFAULT_BORDER 3 478 #define GX_COLOR_ID_WINDOW_BORDER 4 479 #define GX_COLOR_ID_TEXT 5 480 #define GX_COLOR_ID_SELECTED_TEXT 6 481 #define GX_COLOR_ID_SELECTED_FILL 7 482 483 #define GX_COLOR_ID_SHADOW 8 484 #define GX_COLOR_ID_SHINE 9 485 486 /* Button color Resource IDs. */ 487 488 #define GX_COLOR_ID_BTN_BORDER 10 489 #define GX_COLOR_ID_BUTTON_BORDER GX_COLOR_ID_BTN_BORDER 490 #define GX_COLOR_ID_BTN_UPPER 11 491 #define GX_COLOR_ID_BUTTON_UPPER GX_COLOR_ID_BTN_UPPER 492 #define GX_COLOR_ID_BTN_LOWER 12 493 #define GX_COLOR_ID_BUTTON_LOWER GX_COLOR_ID_BTN_LOWER 494 #define GX_COLOR_ID_BTN_TEXT 13 495 #define GX_COLOR_ID_BUTTON_TEXT GX_COLOR_ID_BTN_TEXT 496 497 /* Scrollbar color Resource IDs. */ 498 499 #define GX_COLOR_ID_SCROLL_FILL 14 500 #define GX_COLOR_ID_SCROLL_BUTTON 15 501 502 /* Text input color Resource IDs. */ 503 504 #define GX_COLOR_ID_TEXT_INPUT_TEXT 16 505 #define GX_COLOR_ID_TEXT_INPUT_FILL 17 506 507 /* slider color resource ids */ 508 509 #define GX_COLOR_ID_SLIDER_TICK 18 510 #define GX_COLOR_ID_SLIDER_GROOVE_TOP 19 /* LIGHTGRAY */ 511 #define GX_COLOR_ID_SLIDER_GROOVE_BOTTOM 20 /* WHITE */ 512 #define GX_COLOR_ID_SLIDER_NEEDLE_OUTLINE 21 /* BLACK */ 513 #define GX_COLOR_ID_SLIDER_NEEDLE_FILL 22 /* DARKGRAY */ 514 #define GX_COLOR_ID_SLIDER_NEEDLE_LINE1 23 /* LIGHTGRAY */ 515 #define GX_COLOR_ID_SLIDER_NEEDLE_LINE2 24 /* BTN_BORDER */ 516 517 /* Text widget color resource ids */ 518 #define GX_COLOR_ID_DISABLED_TEXT 25 519 #define GX_COLOR_ID_DISABLED_FILL 26 520 #define GX_COLOR_ID_READONLY_TEXT 27 521 #define GX_COLOR_ID_READONLY_FILL 28 522 523 #define GX_MAX_DEFAULT_COLORS 29 524 #define GX_FIRST_USER_COLOR GX_MAX_DEFAULT_COLORS 525 526 /* Default font Resource IDs. */ 527 528 #define GX_FONT_ID_DEFAULT 0 529 #define GX_FONT_ID_SYSTEM GX_FONT_ID_DEFAULT 530 #define GX_FONT_ID_BUTTON 1 531 #define GX_FONT_ID_PROMPT 2 532 #define GX_FONT_ID_TEXT_INPUT 3 533 #define GX_DEFAULT_FONT_COUNT 4 534 #define GX_FIRST_USER_FONT GX_DEFAULT_FONT_COUNT 535 536 /* Default PIXELMAP Resource IDs. */ 537 538 #define GX_PIXELMAP_NULL 0 539 #define GX_PIXELMAP_RADIO_ON_ID 1 540 #define GX_PIXELMAP_ID_RADIO_ON GX_PIXELMAP_RADIO_ON_ID 541 #define GX_PIXELMAP_RADIO_OFF_ID 2 542 #define GX_PIXELMAP_ID_RADIO_OFF GX_PIXELMAP_RADIO_OFF_ID 543 #define GX_PIXELMAP_CHECKBOX_ON_ID 3 544 #define GX_PIXELMAP_ID_CHECKBOX_ON GX_PIXELMAP_CHECKBOX_ON_ID 545 #define GX_PIXELMAP_CHECKBOX_OFF_ID 4 546 #define GX_PIXELMAP_ID_CHECKBOX_OFF GX_PIXELMAP_CHECKBOX_OFF_ID 547 #define GX_DEFAULT_PIXELMAP_COUNT 5 548 #define GX_FIRST_USER_PIXELMAP GX_DEFAULT_PIXELMAP_COUNT 549 550 /* Predefined a:r:g:b color values, these follow the standard 16 VGA color names. */ 551 552 #define GX_COLOR_BLACK 0xff000000UL 553 #define GX_COLOR_RED 0xffb80000UL 554 #define GX_COLOR_GREEN 0xff00bc00UL 555 #define GX_COLOR_BROWN 0xffb8bc00UL 556 #define GX_COLOR_BLUE 0xff0000b8UL 557 #define GX_COLOR_MAGENTA 0xffb800b8UL 558 #define GX_COLOR_CYAN 0xff00bcb8UL 559 #define GX_COLOR_LIGHTGRAY 0xffc0c0c0UL 560 #define GX_COLOR_DARKGRAY 0xff808080UL 561 #define GX_COLOR_LIGHTRED 0xffff0000UL 562 #define GX_COLOR_LIGHTGREEN 0xff00ff00UL 563 #define GX_COLOR_YELLOW 0xffffff00UL 564 #define GX_COLOR_LIGHTBLUE 0xff0000ffUL 565 #define GX_COLOR_LIGHTMAGENTA 0xffff00ffUL 566 #define GX_COLOR_LIGHTCYAN 0xff00ffffUL 567 #define GX_COLOR_WHITE 0xffffffffUL 568 569 /* Define events. The the event ranges are: 570 571 0x00000000 to 0x000000ff 256 pre-defined system event types 572 0x00000100 to 0x00ffffff Signals from child widgets 573 0x01000000 to 0x3fffffff Unused 574 0x40000000 to 0xffffffff Application defined 575 576 */ 577 #define GX_FIRST_SIGNAL 0x100 578 #define GX_LAST_SIGNAL 0x00ffffffUL 579 #define GX_SIGNAL_EVENT_MASK 0xff 580 581 582 /* Define the pre-defined Widget event types. */ 583 584 #define GX_EVENT_TERMINATE 1 585 #define GX_EVENT_REDRAW 2 586 #define GX_EVENT_SHOW 3 587 #define GX_EVENT_HIDE 4 588 #define GX_EVENT_RESIZED 5 589 #define GX_EVENT_SLIDE 6 590 #define GX_EVENT_FOCUS_GAINED 7 591 #define GX_EVENT_FOCUS_LOST 8 592 #define GX_EVENT_HORIZONTAL_SCROLL 9 593 #define GX_EVENT_VERTICAL_SCROLL 10 594 #define GX_EVENT_TIMER 11 595 #define GX_EVENT_PEN_DOWN 12 596 #define GX_EVENT_PEN_UP 13 597 #define GX_EVENT_PEN_MOVE 14 598 #define GX_EVENT_PEN_DRAG 15 599 #define GX_EVENT_KEY_DOWN 16 600 #define GX_EVENT_KEY_UP 17 601 #define GX_EVENT_CLOSE 18 602 #define GX_EVENT_DELETE 19 603 #define GX_EVENT_SLIDER_VALUE 20 604 #define GX_EVENT_TOGGLE_ON 21 605 #define GX_EVENT_TOGGLE_OFF 22 606 #define GX_EVENT_RADIO_SELECT 23 607 #define GX_EVENT_RADIO_DESELECT 24 608 #define GX_EVENT_CLICKED 25 609 #define GX_EVENT_LIST_SELECT 26 610 #define GX_EVENT_VERTICAL_FLICK 27 611 #define GX_EVENT_HORIZONTAL_FLICK 28 612 613 #define GX_EVENT_PARENT_SIZED 30 614 #define GX_EVENT_CLOSE_POPUP 31 615 #define GX_EVENT_ZOOM_IN 32 616 #define GX_EVENT_ZOOM_OUT 33 617 #define GX_EVENT_LANGUAGE_CHANGE 34 618 #define GX_EVENT_RESOURCE_CHANGE 35 619 #define GX_EVENT_ANIMATION_COMPLETE 36 620 #define GX_EVENT_SPRITE_COMPLETE 37 621 #define GX_EVENT_TEXT_EDITED 40 622 #define GX_EVENT_ANIMATION_START 41 623 624 #define GX_EVENT_FOCUS_NEXT 42 625 #define GX_EVENT_FOCUS_PREVIOUS 43 626 #define GX_EVENT_FOCUS_GAIN_NOTIFY 44 627 #define GX_EVENT_SELECT 45 628 #define GX_EVENT_DESELECT 46 629 #define GX_EVENT_PROGRESS_VALUE 47 630 #define GX_EVENT_TOUCH_CALIBRATION_COMPLETE 48 631 #define GX_EVENT_INPUT_RELEASE 49 632 #define GX_EVENT_TREE_SELECT 50 633 #define GX_EVENT_STYLE_CHANGED 51 634 #define GX_EVENT_CLIENT_UPDATED 52 635 #define GX_EVENT_CUT 53 636 #define GX_EVENT_COPY 54 637 #define GX_EVENT_PASTE 55 638 #define GX_EVENT_MARK_NEXT 56 639 #define GX_EVENT_MARK_PREVIOUS 57 640 #define GX_EVENT_MARK_UP 58 641 #define GX_EVENT_MARK_DOWN 59 642 #define GX_EVENT_MARK_END 60 643 #define GX_EVENT_MARK_HOME 61 644 #define GX_EVENT_DYNAMIC_BIDI_TEXT_ENABLE 62 645 #define GX_EVENT_DYNAMIC_BIDI_TEXT_DISABLE 63 646 647 /* Define the pre-defined Widgets ID. */ 648 #define ID_DROP_LIST_BUTTON 65535 649 650 /* Define the value of the first application defined event type. */ 651 652 #define GX_FIRST_USER_EVENT 0x40000000UL 653 654 /* The following name has been deprecated, please use GX_FIRST_USER_EVENT */ 655 656 #define GX_FIRST_APP_EVENT GX_FIRST_USER_EVENT 657 658 659 /* Define logical key values. */ 660 661 #define GX_KEY_PAGE_UP 0x1b01U 662 #define GX_KEY_PAGE_DOWN 0x1b02U 663 #define GX_KEY_END 0x1b03U 664 #define GX_KEY_HOME 0x1b04U 665 #define GX_KEY_LEFT_ARROW 0x1b05U 666 #define GX_KEY_UP_ARROW 0x1b06U 667 #define GX_KEY_RIGHT_ARROW 0x1b07U 668 #define GX_KEY_DOWN_ARROW 0x1b08U 669 #define GX_KEY_NEXT 0x1b09U 670 #define GX_KEY_PREVIOUS 0x1b0aU 671 #define GX_KEY_CAPS_LOCK 0x1b10U 672 #define GX_KEY_SHIFT 0x1b11U 673 #define GX_KEY_CONTROL 0x1b12U 674 #define GX_KEY_NUMLOCK 0x1b13U 675 #define GX_KEY_SEPARATOR 0x1b14U 676 677 #define GX_KEY_BACKSPACE 0x08 678 #define GX_KEY_SPACE 0x20 679 #define GX_KEY_DELETE 0x7f 680 #define GX_KEY_CARRIAGE_RETURN 0x0d 681 #define GX_KEY_LINE_FEED 0x0a 682 #define GX_KEY_SELECT GX_KEY_CARRIAGE_RETURN 683 684 685 686 /* Define the Widget types. */ 687 688 #define GX_TYPE_WIDGET 1 689 #define GX_TYPE_BUTTON 2 690 #define GX_TYPE_TEXT_BUTTON 3 691 #define GX_TYPE_MULTI_LINE_TEXT_BUTTON 4 692 #define GX_TYPE_RADIO_BUTTON 5 693 #define GX_TYPE_CHECKBOX 6 694 #define GX_TYPE_PIXELMAP_BUTTON 7 695 #define GX_TYPE_SHADOW_BUTTON 8 696 #define GX_TYPE_ICON_BUTTON 9 697 #define GX_TYPE_SPIN_BUTTON 10 698 #define GX_TYPE_ICON 11 699 #define GX_TYPE_SPRITE 12 700 #define GX_TYPE_CIRCULAR_GAUGE 13 701 702 #define GX_TYPE_SLIDER 20 703 #define GX_TYPE_PIXELMAP_SLIDER 21 704 #define GX_TYPE_VERTICAL_SCROLL 22 705 #define GX_TYPE_HORIZONTAL_SCROLL 23 706 #define GX_TYPE_PROGRESS_BAR 24 707 #define GX_TYPE_RADIAL_PROGRESS_BAR 25 708 #define GX_TYPE_RADIAL_SLIDER 26 709 710 #define GX_TYPE_PROMPT 30 711 #define GX_TYPE_NUMERIC_PROMPT 31 712 #define GX_TYPE_PIXELMAP_PROMPT 32 713 #define GX_TYPE_NUMERIC_PIXELMAP_PROMPT 33 714 715 #define GX_TYPE_SINGLE_LINE_TEXT_INPUT 64 716 #define GX_TYPE_PIXELMAP_TEXT_INPUT 65 717 #define GX_TYPE_DROP_LIST 70 718 719 #define GX_TYPE_MENU_LIST 75 720 #define GX_TYPE_MENU 76 721 #define GX_TYPE_ACCORDION_MENU 77 722 723 /* Define the Window derived types. These types must always be >= GX_TYPE_WINDOW 724 to insure type-safe casting in the GUIX internal code. */ 725 726 #define GX_TYPE_WINDOW 128 727 #define GX_TYPE_ROOT_WINDOW 129 728 #define GX_TYPE_VERTICAL_LIST 131 729 #define GX_TYPE_HORIZONTAL_LIST 132 730 #define GX_TYPE_POPUP_LIST 133 731 #define GX_TYPE_MULTI_LINE_TEXT_VIEW 134 732 #define GX_TYPE_MULTI_LINE_TEXT_INPUT 135 733 #define GX_TYPE_LINE_CHART 136 734 #define GX_TYPE_DIALOG 137 735 #define GX_TYPE_KEYBOARD 138 736 #define GX_TYPE_SCROLL_WHEEL 139 737 #define GX_TYPE_TEXT_SCROLL_WHEEL 140 738 #define GX_TYPE_STRING_SCROLL_WHEEL 141 739 #define GX_TYPE_NUMERIC_SCROLL_WHEEL 142 740 #define GX_TYPE_TREE_VIEW 143 741 #define GX_TYPE_RICH_TEXT_VIEW 144 742 #define GX_TYPE_GENERIC_SCROLL_WHEEL 145 743 744 /* A pseudo-type, used by Studio code generator */ 745 #define GX_TYPE_TEMPLATE 200 746 747 /* Applications can define their own window types */ 748 #define GX_FIRST_USER_WINDOW_TYPE 256 749 750 751 /* Define Widget status flags. */ 752 753 #define GX_STATUS_VISIBLE 0x00000001UL 754 #define GX_STATUS_SELECTABLE 0x00000002UL 755 #define GX_STATUS_ACCEPTS_INPUT 0x00000004UL 756 #define GX_STATUS_HIDDEN 0x00000008UL 757 758 #define GX_STATUS_DEFAULT_FOCUS 0x00000010UL 759 #define GX_STATUS_ACCEPTS_FOCUS 0x00000020UL 760 #define GX_STATUS_HAS_FOCUS 0x00000040UL 761 #define GX_STATUS_NOTIFY_ON_GAIN_FOCUS 0x00000080UL 762 763 #define GX_STATUS_NAV_STOP 0x00000100UL 764 #define GX_STATUS_NAV_PARENT 0x00000200UL 765 766 #define GX_STATUS_MOVABLE 0x00001000UL 767 #define GX_STATUS_BUTTON_DERIVED 0x00002000UL 768 #define GX_STATUS_TOGGLE_UNLOCK 0x00004000UL 769 #define GX_STATUS_DIRTY 0x00008000UL 770 771 /* define cursor status flags */ 772 #define GX_STATUS_CURSOR_SHOW 0x00010000UL 773 #define GX_STATUS_CURSOR_DRAW 0x00020000UL 774 #define GX_STATUS_MARK_PREVIOUS 0x00040000UL 775 #define GX_STATUS_MARK_NEXT 0x00080000UL 776 777 /* Define radial slider status flags */ 778 #define GX_STATUS_ANIMATION_NONE 0x00010000UL 779 #define GX_STATUS_TRACKING_PEN 0x00020000UL 780 781 #define GX_STATUS_MODAL 0x00100000UL 782 783 #define GX_STATUS_DYNAMIC_BUFFER 0x01000000UL 784 #define GX_STATUS_LINE_BREAK_PROCESSED 0x02000000UL 785 #define GX_STATUS_RESIZE_NOTIFY 0x04000000UL 786 #define GX_STATUS_STUDIO_CREATED 0x08000000UL 787 788 #define GX_STATUS_TRANSPARENT 0x10000000UL 789 #define GX_STATUS_NONCLIENT 0x20000000UL 790 #define GX_STATUS_OWNS_INPUT 0x40000000UL 791 #define GX_STATUS_DYNAMICALLY_ALLOCATED 0x80000000UL 792 793 /* Define Widget style flags. */ 794 795 #define GX_STYLE_NONE 0x00000000UL 796 #define GX_STYLE_BORDER_NONE 0x00000000UL 797 #define GX_STYLE_BORDER_RAISED 0x00000001UL 798 #define GX_STYLE_BORDER_RECESSED 0x00000002UL 799 #define GX_STYLE_BORDER_THIN 0x00000004UL 800 #define GX_STYLE_BORDER_THICK 0x00000008UL 801 #define GX_STYLE_BORDER_MASK 0x0000000fUL 802 803 /* Define global style flags. */ 804 805 #define GX_STYLE_TRANSPARENT 0x10000000UL 806 #define GX_STYLE_DRAW_SELECTED 0x20000000UL 807 #define GX_STYLE_ENABLED 0x40000000UL 808 #define GX_STYLE_DYNAMICALLY_ALLOCATED 0x80000000UL 809 #define GX_STYLE_USE_LOCAL_ALPHA 0x01000000UL 810 811 /* Define Button style flags. */ 812 813 #define GX_STYLE_BUTTON_PUSHED 0x00000010UL 814 #define GX_STYLE_BUTTON_TOGGLE 0x00000020UL 815 #define GX_STYLE_BUTTON_RADIO 0x00000040UL 816 #define GX_STYLE_BUTTON_EVENT_ON_PUSH 0x00000080UL 817 #define GX_STYLE_BUTTON_REPEAT 0x00000100UL 818 819 /* Define Sprite style flags */ 820 821 #define GX_STYLE_SPRITE_AUTO 0x00000010UL 822 #define GX_STYLE_SPRITE_LOOP 0x00000020UL 823 824 /* Define List style flags. */ 825 826 #define GX_STYLE_CENTER_SELECTED 0x00000010UL 827 #define GX_STYLE_WRAP 0x00000020UL 828 #define GX_STYLE_FLICKABLE 0x00000040UL 829 #define GX_STYLE_REPEAT_SELECT 0x00000080UL 830 831 832 /* Define Icon, Pixelmap button and Icon button alignment flags. */ 833 834 #define GX_STYLE_HALIGN_CENTER 0x00010000UL 835 #define GX_STYLE_HALIGN_LEFT 0x00020000UL 836 #define GX_STYLE_HALIGN_RIGHT 0x00040000UL 837 #define GX_STYLE_VALIGN_CENTER 0x00080000UL 838 #define GX_STYLE_VALIGN_TOP 0x00100000UL 839 #define GX_STYLE_VALIGN_BOTTOM 0x00200000UL 840 841 #define GX_PIXELMAP_HALIGN_MASK 0x00070000UL 842 #define GX_PIXELMAP_VALIGN_MASK 0x00380000UL 843 844 845 /* Define Slider style flags. */ 846 847 #define GX_STYLE_SHOW_NEEDLE 0x00000200UL 848 #define GX_STYLE_SHOW_TICKMARKS 0x00000400UL 849 #define GX_STYLE_SLIDER_VERTICAL 0x00000800UL 850 851 /* Define Pixelmap Slider flags. */ 852 853 #define GX_STYLE_TILE_BACKGROUND 0x00001000UL 854 855 /* Define Progress Bar style flags. */ 856 857 #define GX_STYLE_PROGRESS_PERCENT 0x00000010UL 858 #define GX_STYLE_PROGRESS_TEXT_DRAW 0x00000020UL 859 #define GX_STYLE_PROGRESS_VERTICAL 0x00000040UL 860 861 #define GX_STYLE_PROGRESS_SEGMENTED_FILL 0x00000100UL 862 863 /* Define Radial Progress Bar style flags. */ 864 #define GX_STYLE_RADIAL_PROGRESS_ALIAS 0x00000200UL 865 #define GX_STYLE_RADIAL_PROGRESS_ROUND 0x00000400UL 866 #define GX_STYLE_RADIAL_PROGRESS_NO_BACKTRACK 0x00000800UL 867 868 /* Define Text alignment styles. */ 869 870 #define GX_STYLE_TEXT_LEFT 0x00001000UL 871 #define GX_STYLE_TEXT_RIGHT 0x00002000UL 872 #define GX_STYLE_TEXT_CENTER 0x00004000UL 873 #define GX_STYLE_TEXT_ALIGNMENT_MASK 0x00007000UL 874 #define GX_STYLE_TEXT_COPY 0x00008000UL 875 876 /* define cursor style flags */ 877 #define GX_STYLE_CURSOR_BLINK 0x00000040UL 878 #define GX_STYLE_CURSOR_ALWAYS 0x00000080UL 879 880 /* text input style */ 881 #define GX_STYLE_TEXT_INPUT_NOTIFY_ALL 0x00000100UL 882 #define GX_STYLE_TEXT_INPUT_READONLY 0x00000200UL 883 884 /* Define Window styles. */ 885 #define GX_STYLE_TILE_WALLPAPER 0x00040000UL 886 887 /* Define circular gauge styles. */ 888 #define GX_STYLE_CIRCULAR_GAUGE_CCW 0x00000010UL 889 890 /* Define menu styles. */ 891 #define GX_STYLE_MENU_EXPANDED 0x00000010UL 892 893 /* Define tree view styles. */ 894 #define GX_STYLE_TREE_VIEW_SHOW_ROOT_LINES 0x00000010UL 895 896 /* Define Scroll Bar styles. */ 897 898 #define GX_SCROLLBAR_RELATIVE_THUMB 0x00020000UL 899 #define GX_SCROLLBAR_END_BUTTONS 0x00040000UL 900 #define GX_SCROLLBAR_VERTICAL 0x01000000UL 901 #define GX_SCROLLBAR_HORIZONTAL 0x02000000UL 902 903 904 /* Define text scroll wheel styles*/ 905 #define GX_STYLE_TEXT_SCROLL_WHEEL_ROUND 0x00000100UL 906 907 /* Define animation status. */ 908 #define GX_ANIMATION_IDLE 0x01U 909 #define GX_ANIMATION_ACTIVE 0x02U 910 #define GX_ANIMATION_SLIDE_TRACKING 0x03U 911 #define GX_ANIMATION_SLIDE_LANDING 0x04U 912 913 /* Define pre-defined animation type flags. */ 914 915 #define GX_ANIMATION_NONE 0x0000U 916 #define GX_ANIMATION_TRANSLATE 0x0001U 917 #define GX_ANIMATION_SCREEN_DRAG 0x0002U 918 #define GX_ANIMATION_BLOCK_MOVE 0x0004U 919 920 /* flags that can be used in combination with screen drag animation */ 921 #define GX_ANIMATION_WRAP 0x0100U 922 #define GX_ANIMATION_HORIZONTAL 0x0200U 923 #define GX_ANIMATION_VERTICAL 0x0400U 924 925 /* flag that can be used in combination with translate animation */ 926 #define GX_ANIMATION_PUSH_STACK 0x4000U 927 #define GX_ANIMATION_DETACH 0x8000U 928 #define GX_ANIMATION_EASING_FUNC_MASK 0x10f0U 929 #define GX_ANIMATION_BACK_EASE_IN 0x0010U 930 #define GX_ANIMATION_BACK_EASE_OUT 0x0020U 931 #define GX_ANIMATION_BACK_EASE_IN_OUT 0x0030U 932 #define GX_ANIMATION_BOUNCE_EASE_IN 0x0040U 933 #define GX_ANIMATION_BOUNCE_EASE_OUT 0x0050U 934 #define GX_ANIMATION_BOUNCE_EASE_IN_OUT 0x0060U 935 #define GX_ANIMATION_CIRC_EASE_IN 0x0070U 936 #define GX_ANIMATION_CIRC_EASE_OUT 0x0080U 937 #define GX_ANIMATION_CIRC_EASE_IN_OUT 0x0090U 938 #define GX_ANIMATION_CUBIC_EASE_IN 0x00a0U 939 #define GX_ANIMATION_CUBIC_EASE_OUT 0x00b0U 940 #define GX_ANIMATION_CUBIC_EASE_IN_OUT 0x00c0U 941 #define GX_ANIMATION_ELASTIC_EASE_IN 0x00d0U 942 #define GX_ANIMATION_ELASTIC_EASE_OUT 0x00e0U 943 #define GX_ANIMATION_ELASTIC_EASE_IN_OUT 0x00f0U 944 #define GX_ANIMATION_EXPO_EASE_IN 0x1000U 945 #define GX_ANIMATION_EXPO_EASE_OUT 0x1010U 946 #define GX_ANIMATION_EXPO_EASE_IN_OUT 0x1020U 947 #define GX_ANIMATION_QUAD_EASE_IN 0x1030U 948 #define GX_ANIMATION_QUAD_EASE_OUT 0x1040U 949 #define GX_ANIMATION_QUAD_EASE_IN_OUT 0x1050U 950 #define GX_ANIMATION_QUART_EASE_IN 0x1060U 951 #define GX_ANIMATION_QUART_EASE_OUT 0x1070U 952 #define GX_ANIMATION_QUART_EASE_IN_OUT 0x1080U 953 #define GX_ANIMATION_QUINT_EASE_IN 0x1090U 954 #define GX_ANIMATION_QUINT_EASE_OUT 0x10a0U 955 #define GX_ANIMATION_QUINT_EASE_IN_OUT 0x10b0U 956 #define GX_ANIMATION_SINE_EASE_IN 0x10c0U 957 #define GX_ANIMATION_SINE_EASE_OUT 0x10d0U 958 #define GX_ANIMATION_SINE_EASE_IN_OUT 0x10e0U 959 960 /* Sprite background operations */ 961 962 #define GX_SPRITE_BACKGROUND_NO_ACTION 0x00 /* do nothing between frames */ 963 #define GX_SPRITE_BACKGROUND_SOLID_FILL 0x01 /* draw background with solid color */ 964 #define GX_SPRITE_BACKGROUND_RESTORE 0x02 /* draw background with first image */ 965 966 967 /* Define Font information. */ 968 969 #define GX_FONT_ALIASED 0x01 970 971 /* Define Brush attributes. */ 972 973 #define GX_BRUSH_OUTLINE 0x0000U /* for rectangle, text, polygon */ 974 #define GX_BRUSH_SOLID_FILL 0x0001U /* For rectangle, text, polygon */ 975 #define GX_BRUSH_PIXELMAP_FILL 0x0002U /* For rectangle, polygon */ 976 #define GX_BRUSH_ALIAS 0x0004U /* For lines */ 977 #define GX_BRUSH_UNDERLINE 0x0008U /* Underlined text */ 978 #define GX_BRUSH_ROUND 0x0010U /* For lines */ 979 980 981 /* Define Canvas information. */ 982 983 #define GX_CANVAS_SIMPLE 0x01 /* Canvas is memory-only canvas (no display) */ 984 #define GX_CANVAS_MANAGED 0x02 /* canvas is composited to frame buffer */ 985 #define GX_CANVAS_VISIBLE 0x04 /* Canvas is visible */ 986 #define GX_CANVAS_MODIFIED 0x08 987 #define GX_CANVAS_COMPOSITE 0x20 /* Canvas is a buffer for creating composite*/ 988 #define GX_CANVAS_PARTIAL_FRAME_BUFFER 0x40 989 990 /* Define common combinations. */ 991 992 #define GX_CANVAS_MANAGED_VISIBLE (GX_CANVAS_MANAGED | GX_CANVAS_VISIBLE) 993 #define GX_ALPHA_VALUE_OPAQUE 255 994 995 996 /* Define pre-defined Widget Resource IDs. */ 997 998 #define GX_ID_VERTICAL_SCROLL 0xff00U 999 #define GX_ID_HORIZONTAL_SCROLL 0xff01U 1000 #define GX_ID_SCROLL_UP_LEFT 0xff02U 1001 #define GX_ID_SCROLL_DOWN_RIGHT 0xff03U 1002 #define GX_ID_SCROLL_THUMB 0xff04U 1003 #define GX_ID_DROP_BUTTON 0xff05U 1004 1005 /* pre-defined timer IDs */ 1006 #define GX_BUTTON_TIMER 0xff00U 1007 #define GX_CIRCULAR_GAUGE_TIMER 0xff01U 1008 #define GX_RADIAL_SLIDER_TIMER 0xff02U 1009 1010 /* Define the echo mode of Single-line Text input. */ 1011 1012 #define GX_STAR_ECHO 0x01 1013 #define GX_ECHO 0x02 1014 1015 /* Define image type. */ 1016 #define GX_IMAGE_TYPE_BMP 0x01 1017 #define GX_IMAGE_TYPE_GIF 0x02 1018 #define GX_IMAGE_TYPE_PNG 0x03 1019 #define GX_IMAGE_TYPE_JPG 0x04 1020 1021 /* Define action types for Studio generated screen flow */ 1022 1023 #define GX_ACTION_TYPE_ATTACH 1 1024 #define GX_ACTION_TYPE_DETACH 2 1025 #define GX_ACTION_TYPE_TOGGLE 3 1026 #define GX_ACTION_TYPE_SHOW 4 1027 #define GX_ACTION_TYPE_HIDE 5 1028 #define GX_ACTION_TYPE_ANIMATION 6 1029 #define GX_ACTION_TYPE_WINDOW_EXECUTE 7 1030 #define GX_ACTION_TYPE_WINDOW_EXECUTE_STOP 8 1031 #define GX_ACTION_TYPE_SCREEN_STACK_PUSH 9 1032 #define GX_ACTION_TYPE_SCREEN_STACK_POP 10 1033 #define GX_ACTION_TYPE_SCREEN_STACK_RESET 11 1034 1035 /* Gradient Styles */ 1036 #define GX_GRADIENT_TYPE_VERTICAL 0x01 1037 #define GX_GRADIENT_TYPE_ALPHA 0x02 1038 #define GX_GRADIENT_TYPE_MIRROR 0x04 1039 1040 /* Mouse status flags */ 1041 #define GX_MOUSE_ENABLED 0x01 1042 #define GX_MOUSE_VISIBLE 0x02 1043 1044 1045 /* Text input cursor flags */ 1046 #define GX_CURSOR_USE_CUSTOM_HEIGHT 0x01 1047 1048 /* Text render stlyles */ 1049 #if defined(GX_THAI_GLYPH_SHAPING_SUPPORT) 1050 #define GX_TEXT_RENDER_THAI_GLYPH_SHAPING 0x01 1051 #endif 1052 1053 /* Language direction flags. */ 1054 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 1055 #define GX_LANGUAGE_DIRECTION_LTR 0x01 1056 #define GX_LANGUAGE_DIRECTION_RTL 0x02 1057 #endif 1058 1059 /* Define macros used in GUIX. */ 1060 #ifndef GX_MIN 1061 #define GX_MIN(_a, _b) (((_a) < (_b)) ? (_a) : (_b)) 1062 #endif 1063 1064 #ifndef GX_ABS 1065 #define GX_ABS(_a) (((_a) < 0) ? (-(_a)) : (_a)) 1066 #endif 1067 1068 #ifndef GX_MEMCPY 1069 #define GX_MEMCPY(a, b, c) memcpy(a, b, c) 1070 #endif 1071 1072 #if defined(GX_UTF8_SUPPORT) 1073 #if defined(GX_EXTENDED_UNICODE_SUPPORT) 1074 /* support 32 bit character codes */ 1075 typedef ULONG GX_CHAR_CODE; 1076 #define GX_MAX_GLYPH_CODE 0x10ffff 1077 #else 1078 /* support 16 bit character codes */ 1079 typedef USHORT GX_CHAR_CODE; 1080 #define GX_MAX_GLYPH_CODE 0xffff 1081 #endif 1082 #else 1083 /* support 8 bit character codes */ 1084 typedef GX_UBYTE GX_CHAR_CODE; 1085 #define GX_MAX_GLYPH_CODE 0xff 1086 #endif 1087 1088 #ifndef GX_STRLEN 1089 #define GX_STRLEN(a) strlen((char *)a) 1090 #endif 1091 1092 #ifndef GX_STRCPY 1093 #define GX_STRCPY(a, b) strcpy(a, b) 1094 #endif 1095 1096 #ifndef GX_STRCAT 1097 #define GX_STRCAT(a, b) strcat(a, b) 1098 #endif 1099 1100 #define GX_SIGNAL(_a, _b) (((_a) << 8) | (_b)) 1101 #define IS_SIGNAL(_a) (_a >= GX_FIRST_SIGNAL && _a <= GX_LAST_SIGNAL) 1102 #define GX_SWAP_VALS(_a, _b) {_a ^= _b; _b ^= _a; _a ^= _b; } 1103 #define GX_SEARCH_DEPTH_INFINITE 65535 1104 1105 #if defined(GX_MOUSE_SUPPORT) 1106 #if !defined(GX_MOUSE_MAX_RESOLUTION) 1107 #define GX_MOUSE_MAX_RESOLUTION 32 1108 #endif 1109 #endif 1110 1111 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 1112 #define GX_PROMPT_BIDI_RESOLVED_TEXT_INFO GX_BIDI_RESOLVED_TEXT_INFO *gx_prompt_bidi_resolved_text_info; 1113 #define GX_TEXT_BUTTON_BIDI_RESOLVED_TEXT_INFO GX_BIDI_RESOLVED_TEXT_INFO *gx_text_button_bidi_resolved_text_info; 1114 #define GX_MULTI_LINE_TEXT_VIEW_BIDI_RESOLVED_TEXT_INFO GX_BIDI_RESOLVED_TEXT_INFO *gx_multi_line_text_view_bidi_resolved_text_info; 1115 #define GX_TEXT_SCROLL_WHEEL_BIDI_RESOLVED_TEXT_INFO GX_BIDI_RESOLVED_TEXT_INFO **gx_text_scroll_wheel_bidi_resolved_text_info; 1116 #else 1117 #define GX_PROMPT_BIDI_RESOLVED_TEXT_INFO 1118 #define GX_TEXT_BUTTON_BIDI_RESOLVED_TEXT_INFO 1119 #define GX_MULTI_LINE_TEXT_VIEW_BIDI_RESOLVED_TEXT_INFO 1120 #define GX_TEXT_SCROLL_WHEEL_BIDI_RESOLVED_TEXT_INFO 1121 #endif 1122 1123 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 1124 #define GX_STRING_SCROLL_WHEEL_STRING_LIST_DEPRECATED GX_CONST GX_CHAR **gx_string_scroll_wheel_string_list_deprecated; 1125 #define GX_TEXT_SCROLL_WHEEL_TEXT_GET_DEPRECATED GX_CONST GX_CHAR* (*gx_text_scroll_wheel_text_get_deprecated)(struct GX_TEXT_SCROLL_WHEEL_STRUCT*, INT); 1126 #else 1127 #define GX_STRING_SCROLL_WHEEL_STRING_LIST_DEPRECATED 1128 #define GX_TEXT_SCROLL_WHEEL_TEXT_GET_DEPRECATED 1129 #endif 1130 1131 /* Define the Point type. */ 1132 1133 typedef struct GX_POINT_STRUCT 1134 { 1135 GX_VALUE gx_point_x; 1136 GX_VALUE gx_point_y; 1137 } GX_POINT; 1138 1139 /* Define the edge type. */ 1140 typedef struct GX_POLYGON_EDGE_STRUCT 1141 { 1142 INT gx_polygon_edge_xi; 1143 INT gx_polygon_edge_dx; 1144 INT gx_polygon_edge_dy; 1145 INT gx_polygon_edge_sign; 1146 INT gx_polygon_edge_x_decision; 1147 INT gx_polygon_edge_ymax; 1148 INT gx_polygon_edge_ymin; 1149 } GX_POLYGON_EDGE; 1150 1151 /* Define the Rectangle type. */ 1152 1153 typedef struct GX_RECTANGLE_STRUCT 1154 { 1155 GX_VALUE gx_rectangle_left; 1156 GX_VALUE gx_rectangle_top; 1157 GX_VALUE gx_rectangle_right; 1158 GX_VALUE gx_rectangle_bottom; 1159 } GX_RECTANGLE; 1160 1161 1162 /* Define the View type. */ 1163 1164 typedef struct GX_VIEW_STRUCT 1165 { 1166 GX_RECTANGLE gx_view_rectangle; 1167 struct GX_VIEW_STRUCT *gx_view_next; 1168 } GX_VIEW; 1169 1170 1171 /* Define the Glyph type. */ 1172 1173 /* Define macro for GX_GLYPH_STRUCT members. */ 1174 #define GX_GLYPH_MEMBERS_DECLARE \ 1175 GX_CONST GX_UBYTE *gx_glyph_map; /* Pointer to glyph data */ \ 1176 SHORT gx_glyph_ascent; /* Glyph ascent above baseline */ \ 1177 SHORT gx_glyph_descent; /* Glyph descent below baseline */ \ 1178 GX_UBYTE gx_glyph_advance; /* Glyph advance */ \ 1179 GX_BYTE gx_glyph_leading; /* Pen x-pre-advance */ \ 1180 GX_UBYTE gx_glyph_width; \ 1181 GX_UBYTE gx_glyph_height; 1182 1183 /* Define the Glyph type. */ 1184 typedef struct GX_GLYPH_STRUCT 1185 { 1186 GX_GLYPH_MEMBERS_DECLARE 1187 } GX_GLYPH; 1188 1189 #if defined (GX_FONT_KERNING_SUPPORT) 1190 /* Define the Kerning Glyph type. */ 1191 typedef struct GX_KERNING_GLYPH_STRUCT 1192 { 1193 GX_GLYPH_MEMBERS_DECLARE 1194 GX_CONST GX_UBYTE *gx_kerning_table; /* Kerning table */ 1195 } GX_KERNING_GLYPH; 1196 #endif 1197 1198 /* Define the Compressed Glyph type. */ 1199 typedef struct GX_COMPRESSED_GLYPH_STRUCT 1200 { 1201 GX_GLYPH_MEMBERS_DECLARE 1202 USHORT gx_glyph_map_size; /* Glyph size */ 1203 } GX_COMPRESSED_GLYPH; 1204 1205 /* Define the Font type. */ 1206 typedef struct GX_FONT_STRUCT 1207 { 1208 GX_UBYTE gx_font_format; /* Format flags, defined below */ 1209 GX_UBYTE gx_font_prespace; /* Line spacing above, pixels */ 1210 GX_UBYTE gx_font_postspace; /* Line spacing below, pixels */ 1211 GX_UBYTE gx_font_line_height; /* Font height, excluding spacing */ 1212 GX_UBYTE gx_font_baseline; /* Font baseline */ 1213 GX_CHAR_CODE gx_font_first_glyph; /* First glyph on this page */ 1214 GX_CHAR_CODE gx_font_last_glyph; /* Last glyph on this page */ 1215 union { 1216 GX_CONST GX_GLYPH *gx_font_normal_glyphs; /* Array of GX_GLYPH structures */ 1217 GX_CONST GX_COMPRESSED_GLYPH *gx_font_compressed_glyphs; /* Array of GX_COMPRESSED_GLYPH structures */ 1218 #if defined (GX_FONT_KERNING_SUPPORT) 1219 GX_CONST GX_KERNING_GLYPH *gx_font_kerning_glyphs; /* Array of GX_KERNING_GLYPH structures */ 1220 #endif 1221 } gx_font_glyphs; 1222 GX_CONST struct GX_FONT_STRUCT *gx_font_next_page; /* For multiple page fonts (Unicode) */ 1223 } GX_FONT; 1224 1225 #define GX_FONT_FORMAT_BPP_MASK 0x03 1226 #define GX_FONT_FORMAT_1BPP 0x00 1227 #define GX_FONT_FORMAT_2BPP 0x01 1228 #define GX_FONT_FORMAT_4BPP 0x02 1229 #define GX_FONT_FORMAT_8BPP 0x03 1230 1231 #define GX_FONT_FORMAT_COMPRESSED 0x10 1232 #define GX_FONT_FORMAT_FREETYPE 0x20 1233 #define GX_FONT_FORMAT_KERNING 0x40 1234 #define GX_FONT_FORMAT_REVERSED_ORDER 0x80 /* For 4bpp font, half bytes order reversed. For 1bpp font, bits order reversed with least signigicant bit in left. */ 1235 #define GX_FONT_FORMAT_ROTATED_90 0x04 1236 #define GX_FONT_FORMAT_ROTATED_270 0x08 1237 1238 /* Define Pixelmap type. */ 1239 1240 typedef struct GX_PIXELMAP_STRUCT 1241 { 1242 GX_UBYTE gx_pixelmap_version_major; /* Pixelmap major version number */ 1243 GX_UBYTE gx_pixelmap_version_minor; /* Pixelmap minor version number */ 1244 GX_UBYTE gx_pixelmap_flags; /* Flags defined below */ 1245 GX_UBYTE gx_pixelmap_format; /* Color format, defined below */ 1246 GX_CONST GX_UBYTE *gx_pixelmap_data; /* Pointer to pixelmap data */ 1247 ULONG gx_pixelmap_data_size; /* Size of the pixelmap data array */ 1248 GX_CONST GX_UBYTE *gx_pixelmap_aux_data; /* Auxiliary data array. */ 1249 ULONG gx_pixelmap_aux_data_size; /* Size of the auxiliary data array */ 1250 ULONG gx_pixelmap_transparent_color; /* Used for translated GIF images */ 1251 GX_VALUE gx_pixelmap_width; /* Width - in pixels */ 1252 GX_VALUE gx_pixelmap_height; /* Height - in pixels */ 1253 } GX_PIXELMAP; 1254 1255 1256 /* Pixelmap flags that can be in GX_PIXELMAP.gx_pixelmap_flags above. */ 1257 1258 #define GX_PIXELMAP_TRANSPARENT 0x01 /* Pixelmap has transparent pixels */ 1259 #define GX_PIXELMAP_COMPRESSED 0x02 /* Pixelmap is compressed format */ 1260 #define GX_PIXELMAP_ALPHA 0x04 /* Pixelmap has alpha channel */ 1261 #define GX_PIXELMAP_TARGA 0x08 /* Pixelmap uses Targa format compresssion */ 1262 #define GX_PIXELMAP_RAW_FORMAT 0x10 /* RAW JPG/PNG format */ 1263 #define GX_PIXELMAP_DYNAMICALLY_ALLOCATED 0x20 /* Pixelmap is dynamically allocated */ 1264 1265 #define GX_PIXELMAP_ROTATED_CW 0x40 1266 #define GX_PIXELMAP_ROTATED_CCW 0x80 1267 1268 /* Deprecated definitions, provided only for backward compatibility */ 1269 #define GX_PIXELMAP_ROTATED_90 GX_PIXELMAP_ROTATED_CW 1270 #define GX_PIXELMAP_ROTATED_270 GX_PIXELMAP_ROTATED_CCW 1271 1272 #define PIXELMAP_IS_TRANSPARENT(a) (a -> gx_pixelmap_flags & (GX_PIXELMAP_TRANSPARENT | GX_PIXELMAP_ALPHA)) 1273 1274 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 1275 typedef struct GX_BIDI_TEXT_INFO_STRUCT 1276 { 1277 GX_STRING gx_bidi_text_info_text; 1278 GX_FONT *gx_bidi_text_info_font; 1279 GX_VALUE gx_bidi_text_info_display_width; 1280 GX_BYTE gx_bidi_text_info_direction; 1281 } GX_BIDI_TEXT_INFO; 1282 1283 typedef struct GX_BIDI_RESOLVED_TEXT_INFO_STRUCT 1284 { 1285 GX_STRING *gx_bidi_resolved_text_info_text; 1286 UINT gx_bidi_resolved_text_info_total_lines; 1287 struct GX_BIDI_RESOLVED_TEXT_INFO_STRUCT *gx_bidi_resolved_text_info_next; 1288 } GX_BIDI_RESOLVED_TEXT_INFO; 1289 #endif 1290 1291 /* Define Brush type. */ 1292 1293 typedef struct GX_BRUSH_STRUCT 1294 { 1295 GX_PIXELMAP *gx_brush_pixelmap; /* Used for fills and line ends */ 1296 GX_FONT *gx_brush_font; /* Used for drawing text */ 1297 ULONG gx_brush_line_pattern; /* Used for drawing dashed lines */ 1298 ULONG gx_brush_pattern_mask; /* Used for drawing dashed lines */ 1299 GX_COLOR gx_brush_fill_color; /* For solid color fills */ 1300 GX_COLOR gx_brush_line_color; /* For lines and outlines */ 1301 UINT gx_brush_style; /* Flags defined below */ 1302 GX_VALUE gx_brush_width; /* Line width */ 1303 UCHAR gx_brush_alpha; /* for blending */ 1304 } GX_BRUSH; 1305 1306 1307 1308 /* forward reference */ 1309 struct GX_WIDGET_STRUCT; 1310 struct GX_TEXT_SCROLL_WHEEL_STRUCT; 1311 1312 /* Define Dirty Area type. */ 1313 typedef struct GX_DIRTY_AREA_STRUCT 1314 { 1315 GX_RECTANGLE gx_dirty_area_rectangle; 1316 struct GX_WIDGET_STRUCT *gx_dirty_area_widget; 1317 } GX_DIRTY_AREA; 1318 1319 1320 /* Define Event type. Note: the size of this structure must be less than or equal to the constant 1321 GX_EVENT_SIZE defined previously. */ 1322 1323 typedef struct GX_EVENT_STRUCT 1324 { 1325 ULONG gx_event_type; /* Global event type */ 1326 ULONG gx_event_display_handle; 1327 struct GX_WIDGET_STRUCT *gx_event_target; /* receiver of event */ 1328 USHORT gx_event_sender; /* ID of the event sender */ 1329 union 1330 { 1331 UINT gx_event_timer_id; 1332 GX_POINT gx_event_pointdata; 1333 GX_UBYTE gx_event_uchardata[4]; 1334 USHORT gx_event_ushortdata[2]; 1335 ULONG gx_event_ulongdata; 1336 GX_BYTE gx_event_chardata[4]; 1337 SHORT gx_event_shortdata[2]; 1338 INT gx_event_intdata[2]; 1339 LONG gx_event_longdata; 1340 } gx_event_payload; 1341 } GX_EVENT; 1342 1343 #define GX_EVENT_SIZE sizeof(GX_EVENT) 1344 #define GX_EVENT_ULONGS ((GX_EVENT_SIZE + 3) / sizeof(ULONG)) 1345 1346 1347 /* Define Scroll information structure. This structure is used to define the position 1348 and scaling of the scroll bar thumb button. */ 1349 1350 typedef struct GX_SCROLL_INFO_STRUCT 1351 { 1352 INT gx_scroll_value; 1353 INT gx_scroll_minimum; 1354 INT gx_scroll_maximum; 1355 GX_VALUE gx_scroll_visible; 1356 GX_VALUE gx_scroll_increment; 1357 } GX_SCROLL_INFO; 1358 1359 1360 /* Define Slider information structure. This structure is used to define the 1361 appearance of a Pixelmap Slider. */ 1362 1363 typedef struct GX_SLIDER_INFO_STRUCT 1364 { 1365 INT gx_slider_info_min_val; 1366 INT gx_slider_info_max_val; 1367 INT gx_slider_info_current_val; 1368 INT gx_slider_info_increment; 1369 GX_VALUE gx_slider_info_min_travel; 1370 GX_VALUE gx_slider_info_max_travel; 1371 GX_VALUE gx_slider_info_needle_width; 1372 GX_VALUE gx_slider_info_needle_height; 1373 GX_VALUE gx_slider_info_needle_inset; 1374 GX_VALUE gx_slider_info_needle_hotspot_offset; 1375 } GX_SLIDER_INFO; 1376 1377 1378 typedef struct GX_PIXELMAP_SLIDER_INFO_STRUCT 1379 { 1380 GX_RESOURCE_ID gx_pixelmap_slider_info_lower_background_pixelmap; 1381 GX_RESOURCE_ID gx_pixelmap_slider_info_upper_background_pixelmap; 1382 GX_RESOURCE_ID gx_pixelmap_slider_info_needle_pixelmap; 1383 } GX_PIXELMAP_SLIDER_INFO; 1384 1385 /* Define Progress bar information structure. This structure is used to define the 1386 appearance of a Progress bar. */ 1387 1388 typedef struct GX_PROGRESS_BAR_INFO_STRUCT 1389 { 1390 INT gx_progress_bar_info_min_val; 1391 INT gx_progress_bar_info_max_val; 1392 INT gx_progress_bar_info_current_val; 1393 GX_RESOURCE_ID gx_progress_bar_font_id; 1394 GX_RESOURCE_ID gx_progress_bar_normal_text_color; 1395 GX_RESOURCE_ID gx_progress_bar_selected_text_color; 1396 GX_RESOURCE_ID gx_progress_bar_disabled_text_color; 1397 GX_RESOURCE_ID gx_progress_bar_fill_pixelmap; 1398 } GX_PROGRESS_BAR_INFO; 1399 1400 /* Define circular gauge information structure, this structure is used to 1401 define the appearance of the circular gauge widget. */ 1402 typedef struct GX_CIRCULAR_GAUGE_INFO_STRUCT 1403 { 1404 /* Rotating steps. */ 1405 INT gx_circular_gauge_info_animation_steps; 1406 1407 /* Delay time between each step. */ 1408 INT gx_circular_gauge_info_animation_delay; 1409 1410 /* Offset of needle cor relative to parent. */ 1411 GX_VALUE gx_circular_gauge_info_needle_xpos; 1412 GX_VALUE gx_circular_gauge_info_needle_ypos; 1413 1414 /* Rotation center. */ 1415 GX_VALUE gx_circular_gauge_info_needle_xcor; 1416 GX_VALUE gx_circular_gauge_info_needle_ycor; 1417 GX_RESOURCE_ID gx_circular_gauge_info_needle_pixelmap; 1418 } GX_CIRCULAR_GAUGE_INFO; 1419 1420 /* Define radial progress bar information structure, this structure is used to 1421 define the appearance of the radial progress bar widget. */ 1422 1423 typedef struct GX_RADIAL_PROGRESS_BAR_INFO_STRUCT 1424 { 1425 GX_VALUE gx_radial_progress_bar_info_xcenter; 1426 GX_VALUE gx_radial_progress_bar_info_ycenter; 1427 GX_VALUE gx_radial_progress_bar_info_radius; /* radius of circular track. */ 1428 GX_VALUE gx_radial_progress_bar_info_current_val; /* current value. */ 1429 GX_VALUE gx_radial_progress_bar_info_anchor_val; /* starting angle for the circular arc. */ 1430 GX_RESOURCE_ID gx_radial_progress_bar_info_font_id; 1431 GX_RESOURCE_ID gx_radial_progress_bar_info_normal_text_color; /* resource ID of color for normal text. */ 1432 GX_RESOURCE_ID gx_radial_progress_bar_info_selected_text_color; /* resource ID of color for selected text. */ 1433 GX_RESOURCE_ID gx_radial_progress_bar_info_disabled_text_color; 1434 GX_VALUE gx_radial_progress_bar_info_normal_brush_width; /* width of lower track. */ 1435 GX_VALUE gx_radial_progress_bar_info_selected_brush_width; /* width of upper track. */ 1436 GX_RESOURCE_ID gx_radial_progress_bar_info_normal_brush_color; /* resource ID of color for lower track. */ 1437 GX_RESOURCE_ID gx_radial_progress_bar_info_selected_brush_color; /* resource ID of color for upper track. */ 1438 1439 } GX_RADIAL_PROGRESS_BAR_INFO; 1440 1441 /* Define radial slider information structure, this structure is used to 1442 define the appearance of the radial slider widget. */ 1443 typedef struct GX_RADIAL_SLIDER_INFO_STRUCT 1444 { 1445 GX_VALUE gx_radial_slider_info_xcenter; 1446 GX_VALUE gx_radial_slider_info_ycenter; 1447 USHORT gx_radial_slider_info_radius; 1448 USHORT gx_radial_slider_info_track_width; 1449 GX_VALUE gx_radial_slider_info_needle_offset; 1450 GX_VALUE gx_radial_slider_info_current_angle; 1451 GX_VALUE gx_radial_slider_info_min_angle; 1452 GX_VALUE gx_radial_slider_info_max_angle; 1453 GX_VALUE *gx_radial_slider_info_angle_list; 1454 USHORT gx_radial_slider_info_list_count; 1455 GX_RESOURCE_ID gx_radial_slider_info_background_pixelmap; 1456 GX_RESOURCE_ID gx_radial_slider_info_needle_pixelmap; 1457 }GX_RADIAL_SLIDER_INFO; 1458 1459 /* Define GX_LINE_CHART information structure, this structure is used to 1460 define the appearance of the line chart widget. */ 1461 typedef struct GX_LINE_CHART_INFO_STRUCT 1462 { 1463 INT gx_line_chart_min_val; 1464 INT gx_line_chart_max_val; 1465 INT *gx_line_chart_data; 1466 GX_VALUE gx_line_chart_left_margin; 1467 GX_VALUE gx_line_chart_top_margin; 1468 GX_VALUE gx_line_chart_right_margin; 1469 GX_VALUE gx_line_chart_bottom_margin; 1470 GX_VALUE gx_line_chart_max_data_count; 1471 GX_VALUE gx_line_chart_active_data_count; 1472 GX_VALUE gx_line_chart_axis_line_width; 1473 GX_VALUE gx_line_chart_data_line_width; 1474 GX_RESOURCE_ID gx_line_chart_axis_color; 1475 GX_RESOURCE_ID gx_line_chart_line_color; 1476 } GX_LINE_CHART_INFO; 1477 1478 1479 /* Define Scroll Appearance structure. This structure is used to define the 1480 appearance of a scroll bar. */ 1481 1482 typedef struct GX_SCROLLBAR_APPEARANCE_STRUCT 1483 { 1484 GX_VALUE gx_scroll_width; 1485 GX_VALUE gx_scroll_thumb_width; 1486 GX_VALUE gx_scroll_thumb_travel_min; 1487 GX_VALUE gx_scroll_thumb_travel_max; 1488 GX_UBYTE gx_scroll_thumb_border_style; 1489 GX_RESOURCE_ID gx_scroll_fill_pixelmap; 1490 GX_RESOURCE_ID gx_scroll_thumb_pixelmap; 1491 GX_RESOURCE_ID gx_scroll_up_pixelmap; 1492 GX_RESOURCE_ID gx_scroll_down_pixelmap; 1493 GX_RESOURCE_ID gx_scroll_thumb_color; 1494 GX_RESOURCE_ID gx_scroll_thumb_border_color; 1495 GX_RESOURCE_ID gx_scroll_button_color; 1496 } GX_SCROLLBAR_APPEARANCE; 1497 1498 /* Sprite frame structure. This structure is used to define the 1499 parameters of a GX_SPRITE animation sequence. */ 1500 1501 typedef struct GX_SPRITE_FRAME_STRUCT 1502 { 1503 GX_RESOURCE_ID gx_sprite_frame_pixelmap; 1504 GX_VALUE gx_sprite_frame_x_offset; 1505 GX_VALUE gx_sprite_frame_y_offset; 1506 UINT gx_sprite_frame_delay; 1507 UINT gx_sprite_frame_background_operation; 1508 UCHAR gx_sprite_frame_alpha; 1509 } GX_SPRITE_FRAME; 1510 1511 /* GX_GRADIENT structure. This structure is used to support 1512 runtime gradient pixelmap creation */ 1513 typedef struct GX_GRADIENT_STRUCT { 1514 struct GX_GRADIENT_STRUCT *gx_gradient_next; 1515 struct GX_GRADIENT_STRUCT *gx_gradient_previous; 1516 UCHAR gx_gradient_type; 1517 UCHAR gx_gradient_alpha_start; 1518 UCHAR gx_gradient_alpha_end; 1519 GX_FIXED_VAL gx_gradient_alpha_step; 1520 GX_FIXED_VAL gx_gradient_alpha_current; 1521 GX_PIXELMAP gx_gradient_pixelmap; 1522 } GX_GRADIENT; 1523 1524 1525 /* Define Drawing Context type. */ 1526 1527 typedef struct GX_DRAW_CONTEXT_STRUCT 1528 { 1529 GX_BRUSH gx_draw_context_brush; 1530 struct GX_CANVAS_STRUCT *gx_draw_context_canvas; 1531 struct GX_DISPLAY_STRUCT *gx_draw_context_display; 1532 GX_VIEW *gx_draw_context_view_head; 1533 GX_VIEW gx_draw_context_simple_view; 1534 GX_COLOR *gx_draw_context_memory; 1535 GX_RECTANGLE gx_draw_context_dirty; 1536 GX_RECTANGLE *gx_draw_context_clip; 1537 GX_VALUE gx_draw_context_pitch; 1538 #if defined GX_ENABLE_CANVAS_PARTIAL_FRAME_BUFFER 1539 GX_VALUE gx_draw_context_offset_x; 1540 GX_VALUE gx_draw_context_offset_y; 1541 #endif 1542 } GX_DRAW_CONTEXT; 1543 1544 /* Define fill map info type. */ 1545 typedef struct GX_FILL_PIXELMAP_INFO_STRUCT 1546 { 1547 GX_PIXELMAP *pixelmap; 1548 GX_BOOL draw; 1549 GX_UBYTE *current_pixel_ptr; 1550 GX_UBYTE *current_aux_ptr; 1551 GX_UBYTE mask; 1552 INT x_offset; 1553 INT y_offset; 1554 }GX_FILL_PIXELMAP_INFO; 1555 1556 /* Display layer services structure type. These services may be provided by display drivers 1557 support multiple hardware graphics layers. */ 1558 1559 1560 typedef struct GX_DISPLAY_LAYER_SERVICES_STRUCT 1561 { 1562 UINT (*gx_display_layer_initialize)(INT layer, struct GX_CANVAS_STRUCT *canvas); 1563 VOID (*gx_display_layer_show)(INT layer); 1564 VOID (*gx_display_layer_hide)(INT layer); 1565 VOID (*gx_display_layer_alpha_set)(INT layer, GX_UBYTE alpha); 1566 VOID (*gx_display_layer_offset_set)(INT layer, GX_VALUE xoffset, GX_VALUE yoffset); 1567 VOID (*gx_display_layer_active_display_area_set)(INT layer, GX_RECTANGLE *size); 1568 } GX_DISPLAY_LAYER_SERVICES; 1569 1570 #if defined(GX_MOUSE_SUPPORT) 1571 typedef struct GX_MOUSE_CURSOR_INFO_STRUCT 1572 { 1573 GX_RESOURCE_ID gx_mouse_cursor_image_id; 1574 GX_VALUE gx_mouse_cursor_hotspot_x; 1575 GX_VALUE gx_mouse_cursor_hotspot_y; 1576 } GX_MOUSE_CURSOR_INFO; 1577 1578 typedef struct GX_DISPLAY_MOUSE_STRUCT 1579 { 1580 GX_MOUSE_CURSOR_INFO *gx_mouse_cursor_info; 1581 struct GX_CANVAS_STRUCT *gx_mouse_canvas; 1582 GX_POINT gx_mouse_position; 1583 GX_UBYTE gx_mouse_status; 1584 1585 #if !defined(GX_HARDWARE_MOUSE_SUPPORT) 1586 GX_RECTANGLE gx_mouse_rect; 1587 GX_UBYTE *gx_mouse_capture_memory; 1588 #endif 1589 } GX_DISPLAY_MOUSE; 1590 #endif 1591 1592 /* Define the display control block structure. */ 1593 typedef struct GX_DISPLAY_STRUCT 1594 { 1595 /* Define the display ID and name. The display ID is used simply to see if the 1596 control block is valid. */ 1597 ULONG gx_display_id; /* Control block ID GX_DISPLAY_ID */ 1598 ULONG gx_display_handle; /* used to identify unique display instance */ 1599 GX_CONST GX_CHAR *gx_display_name; /* Pointer to display's name */ 1600 1601 struct GX_DISPLAY_STRUCT *gx_display_created_next; /* Pointer to next control block */ 1602 struct GX_DISPLAY_STRUCT *gx_display_created_previous; /* Pointer to previous control block */ 1603 1604 GX_COLOR *gx_display_color_table; /* color ID to native value mapping table */ 1605 GX_PIXELMAP **gx_display_pixelmap_table; /* pixelmap ID to GX_PIXELMAP mapping table */ 1606 GX_FONT **gx_display_font_table; /* font ID to GX_FONT mapping table */ 1607 GX_COLOR *gx_display_palette; /* only used for 8-bpp palette mode driver */ 1608 1609 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 1610 GX_CONST GX_CHAR ***gx_display_language_table_deprecated; 1611 #endif 1612 GX_CONST GX_STRING **gx_display_language_table; /* Define the language table. */ 1613 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 1614 GX_CONST GX_UBYTE *gx_display_language_direction_table; /* Define the langauge direction table. */ 1615 #endif 1616 UINT gx_display_color_table_size; 1617 UINT gx_display_pixelmap_table_size; 1618 UINT gx_display_font_table_size; 1619 UINT gx_display_string_table_size; 1620 UINT gx_display_palette_size; /* only used for 8-bpp palette mode driver */ 1621 1622 GX_UBYTE gx_display_color_format; 1623 GX_UBYTE gx_display_active_language; /* Define the active language. */ 1624 GX_UBYTE gx_display_language_table_size; 1625 GX_UBYTE gx_display_driver_ready; 1626 USHORT gx_display_rotation_angle; 1627 1628 GX_VALUE gx_display_width; 1629 GX_VALUE gx_display_height; 1630 1631 VOID *gx_display_driver_data; 1632 VOID *gx_display_accelerator; /* graphics accelerator handle/instance */ 1633 1634 GX_DISPLAY_LAYER_SERVICES *gx_display_layer_services; /* optional additional hardware graphics layer services */ 1635 1636 /* function to initiate drawing sequence */ 1637 VOID (*gx_display_driver_drawing_initiate)(struct GX_DISPLAY_STRUCT *display, struct GX_CANVAS_STRUCT *canvas); 1638 1639 /* function to terminate drawing sequence */ 1640 VOID (*gx_display_driver_drawing_complete)(struct GX_DISPLAY_STRUCT *display, struct GX_CANVAS_STRUCT *canvas); 1641 1642 /* function for installing palette (only used for certain palette mode drivers) */ 1643 VOID (*gx_display_driver_palette_set)(struct GX_DISPLAY_STRUCT *display, GX_COLOR *palette, INT count); 1644 1645 /* Function for drawing non-aliased, single pixel line */ 1646 VOID (*gx_display_driver_simple_line_draw)(GX_DRAW_CONTEXT *context, 1647 INT x1, INT y1, INT x2, INT y2); 1648 1649 /* Function for drawing non-aliased, wide line */ 1650 VOID (*gx_display_driver_simple_wide_line_draw)(GX_DRAW_CONTEXT *context, 1651 INT x1, INT y1, INT x2, INT y2); 1652 1653 /* Function for drawing anti-aliased aliased, single-pixel line */ 1654 VOID (*gx_display_driver_anti_aliased_line_draw)(GX_DRAW_CONTEXT *context, 1655 INT x1, INT y1, INT x2, INT y2); 1656 1657 /* Function for drawing anti-aliased aliased, wide line */ 1658 VOID (*gx_display_driver_anti_aliased_wide_line_draw)(GX_DRAW_CONTEXT *context, 1659 INT x1, INT y1, INT x2, INT y2); 1660 1661 VOID (*gx_display_driver_horizontal_line_draw)(GX_DRAW_CONTEXT *context, 1662 INT x1, INT x2, INT ypos, INT width, GX_COLOR color); 1663 VOID (*gx_display_driver_horizontal_pixelmap_line_draw)(GX_DRAW_CONTEXT *context, INT xstart, INT xend, INT y, GX_FILL_PIXELMAP_INFO *info); 1664 VOID (*gx_display_driver_vertical_line_draw)(GX_DRAW_CONTEXT *context, 1665 INT y1, INT y2, INT xpos, INT width, GX_COLOR color); 1666 VOID (*gx_display_driver_horizontal_pattern_line_draw)(GX_DRAW_CONTEXT *context, 1667 INT x1, INT x2, INT ypos); 1668 VOID (*gx_display_driver_vertical_pattern_line_draw)(GX_DRAW_CONTEXT *context, 1669 INT y1, INT y2, INT xpos); 1670 /* Define driver function pointers for canvas composite */ 1671 VOID (*gx_display_driver_canvas_copy)(struct GX_CANVAS_STRUCT *source, 1672 struct GX_CANVAS_STRUCT *dest); 1673 /* Define driver function pointers for canvas composite */ 1674 VOID (*gx_display_driver_canvas_blend)(struct GX_CANVAS_STRUCT *source, 1675 struct GX_CANVAS_STRUCT *dest); 1676 1677 /* Define driver function pointers for pixelmap drawing */ 1678 VOID (*gx_display_driver_pixelmap_draw)(GX_DRAW_CONTEXT *context, 1679 INT xpos, INT ypos, GX_PIXELMAP *pmp); 1680 VOID (*gx_display_driver_pixelmap_blend)(GX_DRAW_CONTEXT *context, 1681 INT xpos, INT ypos, GX_PIXELMAP *pmp, GX_UBYTE alpha); 1682 VOID (*gx_display_driver_alphamap_draw)(GX_DRAW_CONTEXT *context, 1683 INT xpos, INT ypos, GX_PIXELMAP *pmp); 1684 1685 #if defined(GX_SOFTWARE_DECODER_SUPPORT) 1686 /* driver function for decode raw jpg directly to frame buffer */ 1687 VOID (*gx_display_driver_jpeg_draw)(GX_DRAW_CONTEXT *context, INT x, INT y, GX_PIXELMAP *pixelmap); 1688 VOID (*gx_display_driver_png_draw)(GX_DRAW_CONTEXT *context, INT x, INT y, GX_PIXELMAP *pixelmap); 1689 #endif 1690 1691 VOID (*gx_display_driver_pixelmap_rotate)(GX_DRAW_CONTEXT *context, INT xpos, INT ypos, GX_PIXELMAP *pixelmap, 1692 INT angle, INT rot_cx, INT rot_cy); 1693 1694 /* Define driver function pointer for low-level pixel writing. */ 1695 VOID (*gx_display_driver_pixel_write)(GX_DRAW_CONTEXT *context, 1696 INT x, INT y, GX_COLOR color); 1697 1698 /* Define driver function for block move. */ 1699 VOID (*gx_display_driver_block_move)(GX_DRAW_CONTEXT *context, 1700 GX_RECTANGLE *block, INT xshift, INT yshift); 1701 1702 /* Define driver function pointer for low-level pixel blending. */ 1703 VOID (*gx_display_driver_pixel_blend)(GX_DRAW_CONTEXT *context, 1704 INT x, INT y, GX_COLOR color, GX_UBYTE alpha); 1705 1706 /* Define driver function pointer to convert 32-bit color to native format. */ 1707 GX_COLOR (*gx_display_driver_native_color_get)(struct GX_DISPLAY_STRUCT *display, GX_COLOR rawcolor); 1708 1709 /* Define driver function pointer to return row pitch, in bytes, for given canvas width. */ 1710 USHORT (*gx_display_driver_row_pitch_get)(USHORT width); 1711 1712 /* Define driver function pointer for low-level buffer toggle. */ 1713 VOID (*gx_display_driver_buffer_toggle)(struct GX_CANVAS_STRUCT *canvas, 1714 GX_RECTANGLE *dirty_area); 1715 1716 /* Define driver function pointer for drawing polygon. */ 1717 VOID (*gx_display_driver_polygon_draw)(GX_DRAW_CONTEXT *context, GX_POINT *vertex, INT num); 1718 1719 /* Define driver function pointer for filling polygon shape. */ 1720 VOID (*gx_display_driver_polygon_fill)(GX_DRAW_CONTEXT *context, GX_POINT *vertex, INT num); 1721 1722 /* Define driver function pointer for drawing aliased 8bit glyph (may be NULL). */ 1723 VOID (*gx_display_driver_8bit_glyph_draw)(GX_DRAW_CONTEXT *context, GX_RECTANGLE *draw_area, 1724 GX_POINT *map_offset, GX_CONST GX_GLYPH *glyph); 1725 1726 /* Define driver function pointer for drawing aliased 4bit glyph (may be NULL). */ 1727 VOID (*gx_display_driver_4bit_glyph_draw)(GX_DRAW_CONTEXT *context, GX_RECTANGLE *draw_area, 1728 GX_POINT *map_offset, GX_CONST GX_GLYPH *glyph); 1729 1730 /* Define driver function pointer for drawing 1bit (monochrome) glyph. */ 1731 VOID (*gx_display_driver_1bit_glyph_draw)(GX_DRAW_CONTEXT *context, GX_RECTANGLE *draw_area, 1732 GX_POINT *map_offset, GX_CONST GX_GLYPH *glyph); 1733 1734 /* Define driver function pointer for drawing aliased 8bit compressed glyph (may be NULL). */ 1735 VOID (*gx_display_driver_8bit_compressed_glyph_draw)(GX_DRAW_CONTEXT *context, GX_RECTANGLE *draw_area, 1736 GX_POINT *map_offset, GX_CONST GX_GLYPH *glyph); 1737 1738 /* Define driver function pointer for drawing aliased 4bit compressed glyph (may be NULL). */ 1739 VOID (*gx_display_driver_4bit_compressed_glyph_draw)(GX_DRAW_CONTEXT *context, GX_RECTANGLE *draw_area, 1740 GX_POINT *map_offset, GX_CONST GX_GLYPH *glyph); 1741 1742 /* Define driver function pointer for drawing 1bit (monochrome) compressed glyph. */ 1743 VOID (*gx_display_driver_1bit_compressed_glyph_draw)(GX_DRAW_CONTEXT *context, GX_RECTANGLE *draw_area, 1744 GX_POINT *map_offset, GX_CONST GX_GLYPH *glyph); 1745 1746 VOID (*gx_display_driver_callback_assign)(UINT(*wait_func)(VOID *), VOID *); 1747 1748 #if defined(GX_ARC_DRAWING_SUPPORT) 1749 1750 /* Define driver function pointer for drawing circle. */ 1751 VOID (*gx_display_driver_circle_draw)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, UINT r); 1752 1753 /* Define driver function pointer for drawing anti-aliased circle. */ 1754 VOID (*gx_display_driver_anti_aliased_circle_draw)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, UINT r); 1755 1756 /* Define driver function pointer for drawing circle with wide outlines. */ 1757 VOID (*gx_display_driver_wide_circle_draw)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, UINT r); 1758 1759 /* Define driver function pointer for drawing anti-aliased circle with wide outlines. */ 1760 VOID (*gx_display_driver_anti_aliased_wide_circle_draw)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, UINT r); 1761 1762 /* Define driver function pointer for filling circle shape. */ 1763 VOID (*gx_display_driver_circle_fill)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, UINT r); 1764 1765 1766 /* Define driver function pointer for drawing circle arc. */ 1767 VOID (*gx_display_driver_arc_draw)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, UINT r, INT start_angle, INT end_angle); 1768 1769 /* Define driver function pointer for drawing anti-aliased circle arc. */ 1770 VOID (*gx_display_driver_anti_aliased_arc_draw)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, UINT r, INT start_angle, INT end_angle); 1771 1772 /* Define driver function pointer for drawing circle arc with wide outlines. */ 1773 VOID (*gx_display_driver_wide_arc_draw)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, UINT r, INT start_angle, INT end_angle); 1774 1775 /* Define driver function pointer for drawing anti-aliased circle arc with wide outlines. */ 1776 VOID (*gx_display_driver_anti_aliased_wide_arc_draw)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, UINT r, INT start_angle, INT end_angle); 1777 1778 /* Define driver function pointer for filling circle arc shape. */ 1779 VOID (*gx_display_driver_arc_fill)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, UINT r, INT start_angle, INT end_angle); 1780 1781 /* Define driver function pointer for filling pie shape. */ 1782 VOID (*gx_display_driver_pie_fill)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, UINT r, INT start_angle, INT end_angle); 1783 1784 /* Define driver function pointer for drawing ellipse. */ 1785 VOID (*gx_display_driver_ellipse_draw)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, INT a, INT b); 1786 1787 /* Define driver function pointer for drawing anti-aliased ellipse. */ 1788 VOID (*gx_display_driver_anti_aliased_ellipse_draw)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, INT a, INT b); 1789 1790 /* Define driver function pointer for drawing ellipse with wide outlines. */ 1791 VOID (*gx_display_driver_wide_ellipse_draw)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, INT a, INT b); 1792 1793 /* Define driver function pointer for drawing anti-aliased ellipse with wide outlines. */ 1794 VOID (*gx_display_driver_anti_aliased_wide_ellipse_draw)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, INT a, INT b); 1795 1796 /* Define driver function pointer for drawing a filled ellipse. */ 1797 VOID (*gx_display_driver_ellipse_fill)(GX_DRAW_CONTEXT *context, INT xcenter, INT ycenter, INT a, INT b); 1798 #endif 1799 1800 #if defined (GX_MOUSE_SUPPORT) 1801 GX_DISPLAY_MOUSE gx_display_mouse; 1802 /* Define driver function pointer for setting pixelmap for mouse. */ 1803 VOID (*gx_display_mouse_define)(struct GX_DISPLAY_STRUCT *display, struct GX_CANVAS_STRUCT *canvas, GX_MOUSE_CURSOR_INFO *info); 1804 VOID (*gx_display_mouse_position_set)(struct GX_DISPLAY_STRUCT *display, GX_POINT *pos); 1805 VOID (*gx_display_mouse_enable)(struct GX_DISPLAY_STRUCT *display, GX_BOOL enable); 1806 #if !defined(GX_HARDWARE_MOUSE_SUPPORT) 1807 VOID (*gx_display_mouse_capture)(struct GX_DISPLAY_STRUCT *display); 1808 VOID (*gx_display_mouse_restore)(struct GX_DISPLAY_STRUCT *display); 1809 VOID (*gx_display_mouse_draw)(struct GX_DISPLAY_STRUCT *display); 1810 #endif 1811 #endif 1812 1813 } GX_DISPLAY; 1814 1815 1816 /* Define Canvas type. */ 1817 1818 typedef struct GX_CANVAS_STRUCT 1819 { 1820 /* Define the canvas ID and name. The canvas ID is used simply to see if the 1821 control block is valid. */ 1822 ULONG gx_canvas_id; /* Control block ID */ 1823 GX_CONST GX_CHAR *gx_canvas_name; /* Pointer to canvas name */ 1824 1825 /* Define pointers to the next and previous canvases in the created list. */ 1826 struct GX_CANVAS_STRUCT *gx_canvas_created_next, 1827 *gx_canvas_created_previous; 1828 1829 /* Define the canvas memory pointer. */ 1830 GX_COLOR *gx_canvas_memory; 1831 #ifdef GX_ENABLE_CANVAS_PARTIAL_FRAME_BUFFER 1832 GX_VALUE gx_canvas_memory_width; 1833 GX_VALUE gx_canvas_memory_height; 1834 GX_VALUE gx_canvas_memory_offset_x; 1835 GX_VALUE gx_canvas_memory_offset_y; 1836 #endif 1837 1838 /* padded canvas memory buffer, only needed for Win32 */ 1839 #ifdef GX_TARGET_WIN32 1840 GX_COLOR *gx_canvas_padded_memory; 1841 #endif 1842 1843 /* Define the size of the canvas memory. */ 1844 ULONG gx_canvas_memory_size; 1845 1846 /* Which display driver is used to paint on this canvas. */ 1847 GX_DISPLAY *gx_canvas_display; 1848 1849 /* Prior to drawing on a canvas, we must know what portion needs to be updated */ 1850 GX_RECTANGLE gx_canvas_dirty_area; 1851 GX_DIRTY_AREA gx_canvas_dirty_list[GX_MAX_DIRTY_AREAS]; 1852 UINT gx_canvas_dirty_count; 1853 UINT gx_canvas_draw_count; 1854 UINT gx_canvas_status; 1855 1856 GX_VALUE gx_canvas_x_resolution; 1857 GX_VALUE gx_canvas_y_resolution; 1858 GX_VALUE gx_canvas_display_offset_x; 1859 GX_VALUE gx_canvas_display_offset_y; 1860 1861 GX_UBYTE gx_canvas_alpha; 1862 GX_UBYTE gx_canvas_draw_nesting; 1863 GX_BYTE gx_canvas_hardware_layer; 1864 } GX_CANVAS; 1865 1866 /* Define Theme type */ 1867 typedef struct GX_THEME_STRUCT 1868 { 1869 GX_COLOR *theme_color_table; 1870 GX_FONT **theme_font_table; 1871 GX_PIXELMAP **theme_pixelmap_table; 1872 GX_COLOR *theme_palette; 1873 GX_SCROLLBAR_APPEARANCE theme_vertical_scrollbar_appearance; 1874 GX_SCROLLBAR_APPEARANCE theme_horizontal_scrollbar_appearance; 1875 ULONG theme_vertical_scroll_style; 1876 ULONG theme_horizontal_scroll_style; 1877 1878 USHORT theme_color_table_size; 1879 USHORT theme_font_table_size; 1880 USHORT theme_pixelmap_table_size; 1881 USHORT theme_palette_size; 1882 } GX_THEME; 1883 1884 /* Define text input cursor control block */ 1885 typedef struct GX_TEXT_INPUT_CURSOR_STRUCT 1886 { 1887 GX_VALUE gx_text_input_cursor_blink_interval; 1888 1889 /* User defined cursor width and height */ 1890 GX_VALUE gx_text_input_cursor_width; 1891 GX_VALUE gx_text_input_cursor_height; 1892 GX_UBYTE gx_text_input_cursor_flags; 1893 1894 /* Cursor position information, managed by the cursor control code.*/ 1895 GX_POINT gx_text_input_cursor_pos; 1896 } GX_TEXT_INPUT_CURSOR; 1897 1898 /* Define pen configuration structure. */ 1899 typedef struct GX_PEN_CONFIGURATION_STRUCT 1900 { 1901 GX_FIXED_VAL gx_pen_configuration_min_drag_dist; 1902 UINT gx_pen_configuration_max_pen_speed_ticks; 1903 } GX_PEN_CONFIGURATION; 1904 1905 #define GX_RESOURCE_HEADER_SIZE 20 1906 #define GX_THEME_HEADER_SIZE 114 1907 #define GX_COLOR_HEADER_SIZE 8 1908 #define GX_PALETTE_HEADER_SIZE 8 1909 #define GX_FONT_HEADER_SIZE 16 1910 #define GX_PAGE_HEADER_SIZE 21 1911 #define GX_GLYPH_HEADER_SIZE 22 1912 #define GX_KERNING_GLYPH_HEADER_SIZE 24 1913 #define GX_PIXELMAP_HEADER_SIZE 32 1914 #define GX_STRING_HEADER_SIZE 10 1915 #define GX_LANGUAGE_HEADER_SIZE 72 1916 #define GX_LANGUAGE_HEADER_NAME_SIZE 64 1917 1918 /* Degine binary resource header type. */ 1919 typedef struct GX_RESOURCE_HEADER_STRUCT{ 1920 USHORT gx_resource_header_magic_number; 1921 USHORT gx_resource_header_version; 1922 USHORT gx_resource_header_theme_count; 1923 USHORT gx_resource_header_language_count; 1924 ULONG gx_resource_header_theme_data_size; 1925 ULONG gx_resource_header_string_data_size; 1926 ULONG gx_resource_header_data_size; 1927 } GX_RESOURCE_HEADER; 1928 1929 /* Define binary theme header type. */ 1930 typedef struct GX_THEME_HEADER_STRUCT{ 1931 USHORT gx_theme_header_magic_number; 1932 USHORT gx_theme_header_index; 1933 USHORT gx_theme_header_color_count; 1934 USHORT gx_theme_header_palette_count; 1935 USHORT gx_theme_header_font_count; 1936 USHORT gx_theme_header_pixelmap_count; 1937 GX_SCROLLBAR_APPEARANCE gx_theme_header_vscroll_appearance; 1938 GX_SCROLLBAR_APPEARANCE gx_theme_header_hscroll_appearance; 1939 ULONG gx_theme_header_vscroll_style; 1940 ULONG gx_theme_header_hscroll_style; 1941 ULONG gx_theme_header_color_data_size; 1942 ULONG gx_theme_header_palette_data_size; 1943 ULONG gx_theme_header_font_data_size; 1944 ULONG gx_theme_header_pixelmap_data_size; 1945 ULONG gx_theme_header_data_size; 1946 } GX_THEME_HEADER; 1947 1948 /* Define binary color header type. */ 1949 typedef struct GX_COLOR_HEADER_STRUCT{ 1950 USHORT gx_color_header_magic_number; 1951 USHORT gx_color_header_color_count; 1952 ULONG gx_color_header_data_size; 1953 }GX_COLOR_HEADER; 1954 1955 /* Define binary palette header type. */ 1956 typedef struct GX_PALETTE_HEADER_STRUCT{ 1957 USHORT gx_palette_header_magic_number; 1958 USHORT gx_palette_header_color_count; 1959 ULONG gx_palette_header_data_size; 1960 }GX_PALETTE_HEADER; 1961 1962 /* Define font header type. */ 1963 typedef struct GX_FONT_HEADER_STRUCT{ 1964 USHORT gx_font_header_magic_number; 1965 USHORT gx_font_header_index; 1966 USHORT gx_font_header_page_count; 1967 GX_UBYTE gx_font_header_deault; 1968 GX_UBYTE gx_font_header_bits; 1969 ULONG gx_font_header_data_size; 1970 ULONG gx_font_header_data_offset; 1971 }GX_FONT_HEADER; 1972 1973 /* Define font page header type. */ 1974 typedef struct GX_PAGE_HEADER_STRUCT{ 1975 USHORT gx_page_header_magic_number; 1976 USHORT gx_page_header_index; 1977 GX_UBYTE gx_page_header_format; 1978 GX_UBYTE gx_page_header_prespace; 1979 GX_UBYTE gx_page_header_postspace; 1980 GX_UBYTE gx_page_header_line_height; 1981 GX_UBYTE gx_page_header_baseline; 1982 GX_CHAR_CODE gx_page_header_first_glyph; 1983 GX_CHAR_CODE gx_page_header_last_glyph; 1984 ULONG gx_page_header_data_size; 1985 }GX_PAGE_HEADER; 1986 1987 /* define glyph header type members. */ 1988 #define GX_GLYPH_HEADER_MEMBERS_DECLARE \ 1989 USHORT gx_glyph_header_magic_number; \ 1990 USHORT gx_glyph_header_map_size; \ 1991 ULONG gx_glyph_header_map_offset; \ 1992 USHORT gx_glyph_header_index; \ 1993 SHORT gx_glyph_header_ascent; \ 1994 SHORT gx_glyph_header_descent; \ 1995 GX_UBYTE gx_glyph_header_advance; \ 1996 GX_BYTE gx_glyph_header_leading; \ 1997 GX_UBYTE gx_glyph_header_width; \ 1998 GX_UBYTE gx_glyph_header_height; 1999 2000 /* Used for Guix after version 5.3.4(include). */ 2001 typedef struct GX_GLYPH_HEADER_STRUCT { 2002 GX_GLYPH_HEADER_MEMBERS_DECLARE 2003 ULONG gx_glyph_header_data_size; 2004 USHORT gx_glyph_header_kerning_table_size; 2005 }GX_KERNING_GLYPH_HEADER; 2006 2007 /* define glyph header type. */ 2008 /* Used for Guix berfore Kerning. */ 2009 typedef struct GX_GLYPH_HEADER_BEFORE_KERNING_STRUCT { 2010 GX_GLYPH_HEADER_MEMBERS_DECLARE 2011 ULONG gx_glyph_header_data_size; 2012 }GX_GLYPH_HEADER; 2013 2014 /* Define pixelmap header type. */ 2015 typedef struct GX_PIXELMAP_HEADER_STRUCT{ 2016 USHORT gx_pixelmap_header_magic_number; 2017 USHORT gx_pixelmap_header_index; 2018 GX_UBYTE gx_pixelmap_header_version_major; 2019 GX_UBYTE gx_pixelmap_header_version_minor; 2020 GX_UBYTE gx_pixelmap_header_flags; 2021 GX_UBYTE gx_pixelmap_header_format; 2022 ULONG gx_pixelmap_header_map_size; 2023 ULONG gx_pixelmap_header_aux_data_size; 2024 GX_COLOR gx_pixelmap_header_transparent_color; 2025 USHORT gx_pixelmap_header_width; 2026 USHORT gx_pixelmap_header_height; 2027 ULONG gx_pixelmap_header_data_size; 2028 ULONG gx_pixelmap_header_data_offset; 2029 }GX_PIXELMAP_HEADER; 2030 2031 /* Define string header type. */ 2032 typedef struct GX_STRING_HEADER_STRUCT{ 2033 USHORT gx_string_header_magic_number; 2034 USHORT gx_string_header_language_count; 2035 USHORT gx_string_header_string_count; 2036 ULONG gx_string_header_data_size; 2037 }GX_STRING_HEADER; 2038 2039 /* Define language header type. */ 2040 typedef struct GX_LANGUAGE_HEADER_STRUCT{ 2041 USHORT gx_language_header_magic_number; 2042 USHORT gx_language_header_index; 2043 UCHAR gx_language_header_name[GX_LANGUAGE_HEADER_NAME_SIZE]; 2044 ULONG gx_language_header_data_size; 2045 }GX_LANGUAGE_HEADER; 2046 2047 /* Define rich tet view fonts structure. */ 2048 typedef struct GX_RICH_TEXT_FONTS_STRUCT{ 2049 GX_RESOURCE_ID gx_rich_text_fonts_normal_id; 2050 GX_RESOURCE_ID gx_rich_text_fonts_bold_id; 2051 GX_RESOURCE_ID gx_rich_text_fonts_italic_id; 2052 GX_RESOURCE_ID gx_rich_text_fonts_bold_italic_id; 2053 }GX_RICH_TEXT_FONTS; 2054 2055 /* Define rich text flags. */ 2056 #define GX_RICH_TEXT_BOLD 0x01 2057 #define GX_RICH_TEXT_ITALIC 0x02 2058 #define GX_RICH_TEXT_UNDERLINE 0x04 2059 #define GX_RICH_TEXT_LEFT 0x00 2060 #define GX_RICH_TEXT_CENTER 0x10 2061 #define GX_RICH_TEXT_RIGHT 0x20 2062 #define GX_RICH_TEXT_ALIGN_MASK 0x30 2063 2064 /* Define rich text view draw style structure. */ 2065 typedef struct GX_RICH_TEXT_FORMAT_STRUCT 2066 { 2067 GX_RESOURCE_ID gx_rich_text_color; 2068 GX_RESOURCE_ID gx_rich_text_highlight_color; 2069 GX_RESOURCE_ID gx_rich_text_font_id; 2070 GX_UBYTE gx_rich_text_flags; 2071 }GX_RICH_TEXT_FORMAT; 2072 2073 /* Define rich text context structure. */ 2074 typedef struct GX_RICH_TEXT_CONTEXT_STRUCT 2075 { 2076 GX_RICH_TEXT_FORMAT gx_rich_text_context_format; 2077 GX_CONST GX_STRING *gx_rich_text_context_tag; 2078 }GX_RICH_TEXT_CONTEXT; 2079 2080 /* Define rich text context stack structure. */ 2081 typedef struct GX_RICH_TEXT_CONTEXT_STACK_STRUCT 2082 { 2083 GX_RICH_TEXT_CONTEXT gx_rich_text_context_stack[GX_MAX_RICH_TEXT_CONTEXT_NESTING]; 2084 GX_UBYTE gx_rich_text_context_stack_top; 2085 } GX_RICH_TEXT_CONTEXT_STACK; 2086 2087 /* Define macro for GX_WIDGET members. */ 2088 2089 #if defined(GX_WIDGET_USER_DATA) 2090 #define GX_USER_DATA_FIELD INT gx_widget_user_data; 2091 #else 2092 #define GX_USER_DATA_FIELD 2093 #endif 2094 2095 /* Define macro for GX_WIDGET and GX_RADIAL_PROGRESS_BAR members. */ 2096 #if defined(GX_BRUSH_ALPHA_SUPPORT) 2097 #define GX_WIDGET_ALPHA_FIELD GX_UBYTE gx_widget_alpha; 2098 #define GX_RADIAL_PROGRESS_BAR_CANVAS_FIELD GX_CANVAS gx_radial_progress_bar_canvas; 2099 #else 2100 #define GX_WIDGET_ALPHA_FIELD 2101 #define GX_RADIAL_PROGRESS_BAR_CANVAS_FIELD 2102 #endif 2103 2104 #define GX_WIDGET_MEMBERS_DECLARE \ 2105 GX_CONST GX_CHAR *gx_widget_name; \ 2106 struct GX_WIDGET_STRUCT *gx_widget_parent; \ 2107 struct GX_WIDGET_STRUCT *gx_widget_first_child; \ 2108 struct GX_WIDGET_STRUCT *gx_widget_last_child; \ 2109 struct GX_WIDGET_STRUCT *gx_widget_next; \ 2110 struct GX_WIDGET_STRUCT *gx_widget_previous; \ 2111 struct GX_WIDGET_STRUCT *gx_widget_nav_next; \ 2112 struct GX_WIDGET_STRUCT *gx_widget_nav_previous; \ 2113 GX_RECTANGLE gx_widget_size; \ 2114 GX_RECTANGLE gx_widget_clip; \ 2115 UINT (*gx_widget_event_process_function)(struct GX_WIDGET_STRUCT *, GX_EVENT *); \ 2116 VOID (*gx_widget_draw_function)(struct GX_WIDGET_STRUCT *); \ 2117 ULONG gx_widget_status; \ 2118 ULONG gx_widget_style; \ 2119 GX_RESOURCE_ID gx_widget_normal_fill_color; \ 2120 GX_RESOURCE_ID gx_widget_selected_fill_color; \ 2121 GX_RESOURCE_ID gx_widget_disabled_fill_color; \ 2122 USHORT gx_widget_type; \ 2123 USHORT gx_widget_id; \ 2124 GX_USER_DATA_FIELD \ 2125 GX_WIDGET_ALPHA_FIELD 2126 2127 2128 /* Define macro for GX_PROMPT, based on GX_WIDGET. */ 2129 2130 #define GX_PROMPT_MEMBERS_DECLARE \ 2131 GX_WIDGET_MEMBERS_DECLARE \ 2132 GX_STRING gx_prompt_string; \ 2133 VOID (*gx_prompt_text_get_function)(struct GX_PROMPT_STRUCT *, GX_STRING *); \ 2134 GX_RESOURCE_ID gx_prompt_text_id; \ 2135 GX_RESOURCE_ID gx_prompt_font_id; \ 2136 GX_RESOURCE_ID gx_prompt_normal_text_color; \ 2137 GX_RESOURCE_ID gx_prompt_selected_text_color; \ 2138 GX_RESOURCE_ID gx_prompt_disabled_text_color; \ 2139 GX_PROMPT_BIDI_RESOLVED_TEXT_INFO 2140 2141 #define GX_NUMERIC_PROMPT_MEMBERS_DECLARE \ 2142 GX_PROMPT_MEMBERS_DECLARE \ 2143 GX_CHAR gx_numeric_prompt_buffer[GX_NUMERIC_PROMPT_BUFFER_SIZE]; \ 2144 VOID(*gx_numeric_prompt_format_function)(struct GX_NUMERIC_PROMPT_STRUCT *, INT); 2145 2146 /* Define macro for PIXELMAP_PROMPT, based on GX_PROMPT. */ 2147 2148 #define GX_PIXELMAP_PROMPT_MEMBERS_DECLARE \ 2149 GX_PROMPT_MEMBERS_DECLARE \ 2150 GX_RESOURCE_ID gx_normal_left_pixelmap_id; \ 2151 GX_RESOURCE_ID gx_normal_right_pixelmap_id; \ 2152 GX_RESOURCE_ID gx_normal_fill_pixelmap_id; \ 2153 GX_RESOURCE_ID gx_selected_left_pixelmap_id; \ 2154 GX_RESOURCE_ID gx_selected_right_pixelmap_id; \ 2155 GX_RESOURCE_ID gx_selected_fill_pixelmap_id; 2156 2157 /* Defube macro for NUMERIC_PIXEMAP_PROMPT, based on GX_PIXELMAP_PROMPT. */ 2158 #define GX_NUMERIC_PIXELMAP_PROMPT_MEMBERS_DECLARE \ 2159 GX_PIXELMAP_PROMPT_MEMBERS_DECLARE \ 2160 GX_CHAR gx_numeric_pixelmap_prompt_buffer[GX_NUMERIC_PROMPT_BUFFER_SIZE]; \ 2161 VOID(*gx_numeric_pixelmap_prompt_format_function)(struct GX_NUMERIC_PIXELMAP_PROMPT_STRUCT *, INT); 2162 2163 /* Define macro for GX_SINGLE_LINE_TEXT_INPUT, based on GX_PROMPT. */ 2164 2165 #define GX_SINGLE_LINE_TEXT_INPUT_MEMBERS_DECLARE \ 2166 GX_PROMPT_MEMBERS_DECLARE \ 2167 GX_CHAR *gx_single_line_text_input_buffer; \ 2168 UINT gx_single_line_text_input_buffer_size; \ 2169 UINT gx_single_line_text_input_string_size; \ 2170 GX_VALUE gx_single_line_text_input_xoffset; \ 2171 GX_VALUE gx_single_line_text_input_yoffset; \ 2172 UINT gx_single_line_text_input_insert_pos; \ 2173 UINT gx_single_line_text_input_was_modified; \ 2174 GX_TEXT_INPUT_CURSOR gx_single_line_text_input_cursor_instance; \ 2175 GX_RESOURCE_ID gx_single_line_text_input_readonly_text_color; \ 2176 GX_RESOURCE_ID gx_single_line_text_input_readonly_fill_color; \ 2177 UINT gx_single_line_text_input_start_mark; \ 2178 UINT gx_single_line_text_input_end_mark; \ 2179 2180 2181 /* Define macro for GX_ICON, based on GX_WIDGET. */ 2182 2183 #define GX_ICON_MEMBERS_DECLARE \ 2184 GX_WIDGET_MEMBERS_DECLARE \ 2185 GX_RESOURCE_ID gx_icon_normal_pixelmap; \ 2186 GX_RESOURCE_ID gx_icon_selected_pixelmap; 2187 2188 /* Define macro for GX_SPRITE, based on GX_WIDGET. */ 2189 2190 #define GX_SPRITE_MEMBERS_DECLARE \ 2191 GX_WIDGET_MEMBERS_DECLARE \ 2192 GX_SPRITE_FRAME * gx_sprite_frame_list; \ 2193 USHORT gx_sprite_frame_count; \ 2194 USHORT gx_sprite_current_frame; \ 2195 UCHAR gx_sprite_run_state; 2196 2197 2198 /* Define macro for GX_BUTTON, based on GX_WIDGET. */ 2199 2200 #define GX_BUTTON_MEMBERS_DECLARE \ 2201 GX_WIDGET_MEMBERS_DECLARE \ 2202 VOID (*gx_button_select_handler)(GX_WIDGET *button); \ 2203 VOID (*gx_button_deselect_handler)(GX_WIDGET *button, GX_BOOL gen_event); 2204 2205 2206 /* Define macro for GX_TEXT_BUTTON, based on GX_BUTTON. */ 2207 2208 #define GX_TEXT_BUTTON_MEMBERS_DECLARE \ 2209 GX_BUTTON_MEMBERS_DECLARE \ 2210 GX_RESOURCE_ID gx_text_button_text_id; \ 2211 GX_RESOURCE_ID gx_text_button_font_id; \ 2212 GX_STRING gx_text_button_string; \ 2213 GX_RESOURCE_ID gx_text_button_normal_text_color; \ 2214 GX_RESOURCE_ID gx_text_button_selected_text_color; \ 2215 GX_RESOURCE_ID gx_text_button_disabled_text_color; \ 2216 GX_TEXT_BUTTON_BIDI_RESOLVED_TEXT_INFO 2217 2218 /* Define macro for GX_MULTI_LINE_TEXT_BUTTON, based on GX_TEXT_BUTTON. */ 2219 2220 #define GX_MULTI_LINE_TEXT_BUTTON_MEMBERS_DECLARE \ 2221 GX_TEXT_BUTTON_MEMBERS_DECLARE \ 2222 INT gx_multi_line_text_button_line_count; \ 2223 GX_STRING gx_multi_line_text_button_lines[GX_MULTI_LINE_TEXT_BUTTON_MAX_LINES]; 2224 2225 /* Define macro for GX_RADIO_BUTTON, based on GX_TEXT_BUTTON. */ 2226 2227 #define GX_RADIO_BUTTON_MEMBERS_DECLARE \ 2228 GX_TEXT_BUTTON_MEMBERS_DECLARE \ 2229 GX_RESOURCE_ID gx_radio_button_off_pixelmap_id; \ 2230 GX_RESOURCE_ID gx_radio_button_on_pixelmap_id; \ 2231 GX_RESOURCE_ID gx_radio_button_off_disabled_pixelmap_id; \ 2232 GX_RESOURCE_ID gx_radio_button_on_disabled_pixelmap_id; 2233 2234 2235 /* Define macro for GX_CHECKBOX, based on GX_TEXT_BUTTON. */ 2236 2237 #define GX_CHECKBOX_MEMBERS_DECLARE \ 2238 GX_TEXT_BUTTON_MEMBERS_DECLARE \ 2239 GX_RESOURCE_ID gx_checkbox_unchecked_pixelmap_id; \ 2240 GX_RESOURCE_ID gx_checkbox_checked_pixelmap_id; \ 2241 GX_RESOURCE_ID gx_checkbox_unchecked_disabled_pixelmap_id; \ 2242 GX_RESOURCE_ID gx_checkbox_checked_disabled_pixelmap_id; 2243 2244 /* Define macro for GX_ICON_BUTTON, based ON GX_BUTTON. */ 2245 2246 #define GX_ICON_BUTTON_MEMBERS_DECLARE \ 2247 GX_BUTTON_MEMBERS_DECLARE \ 2248 GX_RESOURCE_ID gx_icon_button_icon_id; 2249 2250 /* Define macro for GX_PIXELMAP_BUTTON, based ON GX_BUTTON. */ 2251 2252 #define GX_PIXELMAP_BUTTON_MEMBERS_DECLARE \ 2253 GX_BUTTON_MEMBERS_DECLARE \ 2254 GX_RESOURCE_ID gx_pixelmap_button_normal_id; \ 2255 GX_RESOURCE_ID gx_pixelmap_button_selected_id; \ 2256 GX_RESOURCE_ID gx_pixelmap_button_disabled_id; 2257 2258 2259 /* Define macro for GX_WINDOW, based on GX_WIDGET. */ 2260 2261 #define GX_WINDOW_MEMBERS_DECLARE \ 2262 GX_WIDGET_MEMBERS_DECLARE \ 2263 GX_RECTANGLE gx_window_client; \ 2264 GX_VIEW *gx_window_views; \ 2265 VOID (*gx_window_scroll_info_get)(struct GX_WINDOW_STRUCT *window, ULONG style, GX_SCROLL_INFO *info); \ 2266 GX_BOOL gx_window_move_mode; \ 2267 GX_POINT gx_window_move_start; \ 2268 GX_RESOURCE_ID gx_window_wallpaper; 2269 2270 /* Define macro for GX_WINDOW_ROOT, based on GX_WINDOW. */ 2271 2272 #define GX_WINDOW_ROOT_MEMBERS_DECLARE \ 2273 GX_WINDOW_MEMBERS_DECLARE \ 2274 GX_CANVAS *gx_window_root_canvas; \ 2275 GX_BOOL gx_window_root_views_changed; 2276 2277 /* Define macro for GX_SCROLL_THUMB, based on GX_BUTTON. */ 2278 #define GX_SCROLL_THUMB_MEMBERS_DECLARE \ 2279 GX_BUTTON_MEMBERS_DECLARE \ 2280 GX_RESOURCE_ID gx_scroll_thumb_pixelmap; \ 2281 GX_RESOURCE_ID gx_scroll_thumb_border_color; \ 2282 GX_BOOL gx_scroll_thumb_drag_mode; \ 2283 INT gx_scroll_thumb_start_drag; 2284 2285 2286 /* Define macro for GX_SCROLLBAR, based on GX_WIDGET. */ 2287 2288 #define GX_SCROLLBAR_MEMBERS_DECLARE \ 2289 GX_WIDGET_MEMBERS_DECLARE \ 2290 GX_SCROLLBAR_APPEARANCE gx_scrollbar_appearance; \ 2291 GX_SCROLL_INFO gx_scrollbar_info; \ 2292 GX_BUTTON gx_scrollbar_upleft; \ 2293 GX_BUTTON gx_scrollbar_downright; \ 2294 GX_SCROLL_THUMB gx_scrollbar_thumb; 2295 2296 2297 /* Define macro for GX_SLIDER, based on GX_WIDGET. */ 2298 2299 #define GX_SLIDER_MEMBERS_DECLARE \ 2300 GX_WIDGET_MEMBERS_DECLARE \ 2301 GX_SLIDER_INFO gx_slider_info; \ 2302 INT gx_slider_tick_count; \ 2303 GX_RESOURCE_ID gx_slider_tick_color; 2304 2305 2306 /* Define macro for GX_PIXELMAP_SLIDER, based on GX_WIDGET. */ 2307 #define GX_PIXELMAP_SLIDER_MEMBERS_DECLARE \ 2308 GX_SLIDER_MEMBERS_DECLARE \ 2309 GX_PIXELMAP_SLIDER_INFO gx_pixelmap_slider_pixelmap_info; 2310 2311 2312 /* Define macro for GX_VERTICAL_LIST, based on GX_WINDOW. */ 2313 #define GX_VERTICAL_LIST_MEMBERS_DECLARE \ 2314 GX_WINDOW_MEMBERS_DECLARE \ 2315 VOID (*gx_vertical_list_callback)(struct GX_VERTICAL_LIST_STRUCT *, GX_WIDGET *widget, INT index); \ 2316 INT gx_vertical_list_selected; \ 2317 INT gx_vertical_list_pen_index; \ 2318 INT gx_vertical_list_top_index; \ 2319 INT gx_vertical_list_total_rows; \ 2320 GX_VALUE gx_vertical_list_seperation; \ 2321 GX_VALUE gx_vertical_list_visible_rows; \ 2322 GX_VALUE gx_vertical_list_child_count; \ 2323 GX_VALUE gx_vertical_list_child_height; \ 2324 GX_VALUE gx_vertical_list_snap_back_distance; \ 2325 GX_WIDGET *gx_vertical_list_idle_child_list; 2326 2327 /* Define macro for GX_VERTICAL_LIST, based on GX_WINDOW. */ 2328 #define GX_HORIZONTAL_LIST_MEMBERS_DECLARE \ 2329 GX_WINDOW_MEMBERS_DECLARE \ 2330 VOID (*gx_horizontal_list_callback)(struct GX_HORIZONTAL_LIST_STRUCT *, GX_WIDGET *widget, INT index); \ 2331 INT gx_horizontal_list_selected; \ 2332 INT gx_horizontal_list_pen_index; \ 2333 INT gx_horizontal_list_top_index; \ 2334 INT gx_horizontal_list_total_columns; \ 2335 GX_VALUE gx_horizontal_list_seperation; \ 2336 GX_VALUE gx_horizontal_list_visible_columns; \ 2337 GX_VALUE gx_horizontal_list_child_count; \ 2338 GX_VALUE gx_horizontal_list_child_width; \ 2339 GX_VALUE gx_horizontal_list_snap_back_distance; \ 2340 GX_WIDGET *gx_horizontal_list_idle_child_list; 2341 2342 #define GX_POPUP_LIST_MEMBERS_DECLARE \ 2343 GX_VERTICAL_LIST gx_popup_list_list; \ 2344 GX_WIDGET *gx_popup_list_owner; 2345 2346 /* Define macro for GX_DROP_LIST, based on GX_WIDGET */ 2347 #define GX_DROP_LIST_MEMBERS_DECLARE \ 2348 GX_WIDGET_MEMBERS_DECLARE \ 2349 GX_POPUP_LIST gx_drop_list_popup; \ 2350 INT gx_drop_list_open_height; \ 2351 GX_RESOURCE_ID gx_drop_list_pixelmap; \ 2352 GX_BOOL gx_drop_list_popup_open; 2353 2354 2355 /* Define macro for GX_MULTI_LINE_TEXT_VIEW, based on GX_WINDOW. */ 2356 2357 #define GX_MULTI_LINE_TEXT_VIEW_MEMBERS_DECLARE \ 2358 GX_WINDOW_MEMBERS_DECLARE \ 2359 GX_RESOURCE_ID gx_multi_line_text_view_text_id; \ 2360 GX_RESOURCE_ID gx_multi_line_text_view_font_id; \ 2361 GX_RESOURCE_ID gx_multi_line_text_view_normal_text_color; \ 2362 GX_RESOURCE_ID gx_multi_line_text_view_selected_text_color; \ 2363 GX_RESOURCE_ID gx_multi_line_text_view_disabled_text_color; \ 2364 UINT gx_multi_line_text_view_text_total_rows; \ 2365 UINT gx_multi_line_text_view_text_visible_rows; \ 2366 INT gx_multi_line_text_view_text_scroll_shift; \ 2367 GX_STRING gx_multi_line_text_view_text; \ 2368 GX_UBYTE gx_multi_line_text_view_whitespace; \ 2369 GX_BYTE gx_multi_line_text_view_line_space; \ 2370 GX_BOOL gx_multi_line_text_view_line_index_old; \ 2371 GX_UBYTE gx_multi_line_text_view_cache_size; \ 2372 UINT gx_multi_line_text_view_first_cache_line; \ 2373 UINT gx_multi_line_text_view_line_index[GX_MULTI_LINE_INDEX_CACHE_SIZE]; \ 2374 GX_MULTI_LINE_TEXT_VIEW_BIDI_RESOLVED_TEXT_INFO 2375 2376 /* Define macro for GX_RICH_TEXT_VIEW, based on GX_MULTI_LINE_TEXT_VIEW. */ 2377 2378 #define GX_RICH_TEXT_VIEW_MEMBERS_DECLARE \ 2379 GX_MULTI_LINE_TEXT_VIEW_MEMBERS_DECLARE \ 2380 GX_RICH_TEXT_FONTS gx_rich_text_view_fonts; \ 2381 ULONG gx_rich_text_view_text_total_height; 2382 2383 /* GX_MULTI_LINE_TEXT_INPUT, based on GX_MULTI_LINE_TEXT_VIEW */ 2384 #define GX_MULTI_LINE_TEXT_INPUT_MEMBERS_DECLARE \ 2385 GX_MULTI_LINE_TEXT_VIEW_MEMBERS_DECLARE \ 2386 UINT gx_multi_line_text_input_buffer_size; \ 2387 UINT gx_multi_line_text_input_text_insert_position; \ 2388 UINT gx_multi_line_text_input_text_was_modified; \ 2389 UINT gx_multi_line_text_input_text_cursor_line; \ 2390 GX_TEXT_INPUT_CURSOR gx_multi_line_text_input_cursor_instance; \ 2391 GX_RESOURCE_ID gx_multi_line_text_input_readonly_text_color; \ 2392 GX_RESOURCE_ID gx_multi_line_text_input_readonly_fill_color; \ 2393 UINT gx_multi_line_text_input_start_mark; \ 2394 UINT gx_multi_line_text_input_end_mark; \ 2395 GX_UBYTE gx_multi_line_text_input_new_line_character[3]; \ 2396 GX_UBYTE gx_multi_line_text_input_new_line_character_size; 2397 2398 /* Define macro for GX_PROGRESS_BAR, based on GX_WIDGET. */ 2399 #define GX_PROGRESS_BAR_MEMBERS_DECLARE \ 2400 GX_WIDGET_MEMBERS_DECLARE \ 2401 GX_PROGRESS_BAR_INFO gx_progress_bar_info; 2402 2403 /* Define macro for GX_CIRCULAR_GAUGE members. */ 2404 #define GX_CIRCULAR_GAUGE_MEMBERS_DECLARE \ 2405 GX_ICON_MEMBERS_DECLARE \ 2406 GX_CIRCULAR_GAUGE_INFO gx_circular_gauge_info; \ 2407 GX_PIXELMAP gx_circular_gauge_needle_rotated; \ 2408 GX_PIXELMAP *gx_circular_gauge_needle_source; \ 2409 INT gx_circular_gauge_current_needle_x; \ 2410 INT gx_circular_gauge_current_needle_y; \ 2411 INT gx_circular_gauge_start_angle; \ 2412 INT gx_circular_gauge_current_angle; \ 2413 INT gx_circular_gauge_target_angle; \ 2414 INT gx_circular_gauge_angle_increment; \ 2415 INT gx_circular_gauge_animation_step; \ 2416 GX_RECTANGLE gx_circular_gauge_current_needle_rectangle; 2417 2418 /* Define macro for GX_RADIAL_PROGRESS_BAR members. */ 2419 #define GX_RADIAL_PROGRESS_BAR_MEMBERS_DECLARE \ 2420 GX_WIDGET_MEMBERS_DECLARE \ 2421 GX_RADIAL_PROGRESS_BAR_INFO gx_radial_progress_bar_info; \ 2422 GX_RADIAL_PROGRESS_BAR_CANVAS_FIELD 2423 2424 /* Define macro of GX_RADIAL_SLIDER members. */ 2425 #define GX_RADIAL_SLIDER_MEMBERS_DECLARE \ 2426 GX_WIDGET_MEMBERS_DECLARE \ 2427 GX_RADIAL_SLIDER_INFO gx_radial_slider_info; \ 2428 GX_VALUE gx_radial_slider_start_angle; \ 2429 GX_VALUE gx_radial_slider_target_angle; \ 2430 GX_POINT gx_radial_slider_pendown_point; \ 2431 USHORT gx_radial_slider_animation_total_steps; \ 2432 USHORT gx_radial_slider_animation_step; \ 2433 USHORT gx_radial_slider_animation_delay; \ 2434 USHORT gx_radial_slider_animation_style; \ 2435 VOID (*gx_radial_slider_animation_update_callback)(struct GX_RADIAL_SLIDER_STRUCT *slider); 2436 2437 /* Define macro for GX_LINE_CHART members. */ 2438 #define GX_LINE_CHART_MEMBERS_DECLARE \ 2439 GX_WINDOW_MEMBERS_DECLARE \ 2440 GX_LINE_CHART_INFO gx_line_chart_info; 2441 2442 /* Define macro for GX_SCROLL_WHEEL members */ 2443 #define GX_SCROLL_WHEEL_MEMBERS_DECLARE \ 2444 GX_WINDOW_MEMBERS_DECLARE \ 2445 UINT (*gx_scroll_wheel_scroll)(struct GX_SCROLL_WHEEL_STRUCT *wheel, GX_VALUE amount); \ 2446 GX_BOOL (*gx_scroll_wheel_wrap_style_check)(struct GX_SCROLL_WHEEL_STRUCT *wheel); \ 2447 INT gx_scroll_wheel_selected_row; \ 2448 INT gx_scroll_wheel_total_rows; \ 2449 GX_RESOURCE_ID gx_scroll_wheel_selected_background; \ 2450 GX_GRADIENT gx_scroll_wheel_gradient; \ 2451 GX_VALUE gx_scroll_wheel_selected_yshift; \ 2452 GX_VALUE gx_scroll_wheel_animation_speed; \ 2453 GX_VALUE gx_scroll_wheel_animation_end_speed; \ 2454 GX_VALUE gx_scroll_wheel_animation_steps; \ 2455 GX_VALUE gx_scroll_wheel_animation_delay; \ 2456 GX_VALUE gx_scroll_wheel_animation_max_steps; \ 2457 GX_FIXED_VAL gx_scroll_wheel_animation_start_speed_rate; \ 2458 GX_FIXED_VAL gx_scroll_wheel_animation_end_speed_rate; \ 2459 GX_VALUE gx_scroll_wheel_row_height; \ 2460 GX_VALUE gx_scroll_wheel_shift_error; 2461 2462 /* Define macro for GX_GENERIC_SCROLL_WHEEL members. */ 2463 #define GX_GENERIC_SCROLL_WHEEL_MEMBERS_DECLARE \ 2464 GX_SCROLL_WHEEL_MEMBERS_DECLARE \ 2465 VOID (*gx_generic_scroll_wheel_callback)(struct GX_GENERIC_SCROLL_WHEEL_STRUCT *, GX_WIDGET *widget, INT index); \ 2466 INT gx_generic_scroll_wheel_top_index; \ 2467 INT gx_generic_scroll_wheel_child_count; \ 2468 INT gx_generic_scroll_wheel_visible_rows; 2469 2470 /* Define macro for GX_TEXT_SCROLL_WHEEL members. */ 2471 #define GX_TEXT_SCROLL_WHEEL_MEMBERS_DECLARE \ 2472 GX_SCROLL_WHEEL_MEMBERS_DECLARE \ 2473 GX_RESOURCE_ID gx_text_scroll_wheel_normal_font; \ 2474 GX_RESOURCE_ID gx_text_scroll_wheel_selected_font; \ 2475 GX_RESOURCE_ID gx_text_scroll_wheel_normal_text_color; \ 2476 GX_RESOURCE_ID gx_text_scroll_wheel_selected_text_color; \ 2477 GX_RESOURCE_ID gx_text_scroll_wheel_disabled_text_color; \ 2478 UINT (*gx_text_scroll_wheel_text_get)(struct GX_TEXT_SCROLL_WHEEL_STRUCT *, INT, GX_STRING *);\ 2479 GX_TEXT_SCROLL_WHEEL_TEXT_GET_DEPRECATED \ 2480 GX_TEXT_SCROLL_WHEEL_BIDI_RESOLVED_TEXT_INFO 2481 2482 /* Define macro for GX_STRING_SCROLL_WHEEL members. */ 2483 #define GX_STRING_SCROLL_WHEEL_MEMBERS_DECLARE \ 2484 GX_TEXT_SCROLL_WHEEL_MEMBERS_DECLARE \ 2485 GX_CONST GX_STRING *gx_string_scroll_wheel_string_list; \ 2486 USHORT gx_string_scroll_wheel_string_list_buffer_size;\ 2487 GX_CONST GX_RESOURCE_ID *gx_string_scroll_wheel_string_id_list; \ 2488 GX_STRING_SCROLL_WHEEL_STRING_LIST_DEPRECATED 2489 2490 /* Define macro for GX_RANGE_SCROLL_WHEEL members. */ 2491 #define GX_NUMERIC_SCROLL_WHEEL_MEMBERS_DECLARE \ 2492 GX_TEXT_SCROLL_WHEEL_MEMBERS_DECLARE \ 2493 INT gx_numeric_scroll_wheel_start_val; \ 2494 INT gx_numeric_scroll_wheel_end_val; \ 2495 GX_CHAR gx_numeric_scroll_wheel_string_buffer[GX_NUMERIC_SCROLL_WHEEL_STRING_BUFFER_SIZE]; 2496 2497 #define GX_MENU_LIST_MEMBERS_DECLARE \ 2498 GX_WIDGET_MEMBERS_DECLARE \ 2499 GX_WIDGET *gx_menu_list_owner; 2500 2501 #define GX_MENU_MEMBERS_DECLARE \ 2502 GX_PIXELMAP_PROMPT_MEMBERS_DECLARE \ 2503 GX_MENU_LIST gx_menu_list; \ 2504 GX_VALUE gx_menu_list_total_count; \ 2505 GX_VALUE gx_menu_text_x_offset; \ 2506 GX_VALUE gx_menu_text_y_offset; 2507 2508 #define GX_ACCORDION_MENU_MEMBERS_DECLARE \ 2509 GX_WIDGET_MEMBERS_DECLARE \ 2510 GX_WIDGET *gx_accordion_menu_collapse_item; \ 2511 GX_WIDGET *gx_accordion_menu_expand_item; \ 2512 GX_UBYTE gx_accordion_menu_animation_status; 2513 2514 #define GX_TREE_VIEW_MEMBERS_DECLARE \ 2515 GX_WINDOW_MEMBERS_DECLARE \ 2516 GX_RESOURCE_ID gx_tree_view_collapse_pixelmap_id; \ 2517 GX_RESOURCE_ID gx_tree_view_expand_pixelmap_id; \ 2518 GX_RESOURCE_ID gx_tree_view_root_line_color; \ 2519 GX_VALUE gx_tree_view_indentation; \ 2520 GX_VALUE gx_tree_view_x_shift; \ 2521 GX_VALUE gx_tree_view_y_shift; \ 2522 GX_VALUE gx_tree_view_tree_width; \ 2523 GX_VALUE gx_tree_view_tree_height; \ 2524 GX_WIDGET *gx_tree_view_selected; 2525 2526 /* Define Widget type. */ 2527 2528 typedef struct GX_WIDGET_STRUCT 2529 { 2530 GX_WIDGET_MEMBERS_DECLARE 2531 } GX_WIDGET; 2532 2533 2534 /* Define Prompt type. */ 2535 2536 typedef struct GX_PROMPT_STRUCT 2537 { 2538 GX_PROMPT_MEMBERS_DECLARE 2539 } GX_PROMPT; 2540 2541 /* Define Numeric Prompt type. */ 2542 2543 typedef struct GX_NUMERIC_PROMPT_STRUCT 2544 { 2545 GX_NUMERIC_PROMPT_MEMBERS_DECLARE 2546 }GX_NUMERIC_PROMPT; 2547 2548 /* Define Pixelmap type. */ 2549 2550 typedef struct GX_PIXELMAP_PROMPT_STRUCT 2551 { 2552 GX_PIXELMAP_PROMPT_MEMBERS_DECLARE 2553 } GX_PIXELMAP_PROMPT; 2554 2555 /* Define Numeric Pixelmap Prompt type. */ 2556 typedef struct GX_NUMERIC_PIXELMAP_PROMPT_STRUCT 2557 { 2558 GX_NUMERIC_PIXELMAP_PROMPT_MEMBERS_DECLARE 2559 }GX_NUMERIC_PIXELMAP_PROMPT; 2560 2561 /* Define Icon type. */ 2562 2563 typedef struct GX_ICON_STRUCT 2564 { 2565 GX_ICON_MEMBERS_DECLARE 2566 } GX_ICON; 2567 2568 /* Define Sprite type. */ 2569 2570 typedef struct GX_SPRITE_STRUCT 2571 { 2572 GX_SPRITE_MEMBERS_DECLARE 2573 } GX_SPRITE; 2574 2575 2576 /* Define Button type. */ 2577 2578 typedef struct GX_BUTTON_STRUCT 2579 { 2580 GX_BUTTON_MEMBERS_DECLARE 2581 } GX_BUTTON; 2582 2583 2584 /* Define Text Button type. */ 2585 2586 typedef struct GX_TEXT_BUTTON_STRUCT 2587 { 2588 GX_TEXT_BUTTON_MEMBERS_DECLARE 2589 } GX_TEXT_BUTTON; 2590 2591 2592 /* Define Multi-line Text Button type. */ 2593 2594 typedef struct GX_MULTI_LINE_TEXT_BUTTON_STRUCT 2595 { 2596 GX_MULTI_LINE_TEXT_BUTTON_MEMBERS_DECLARE 2597 } GX_MULTI_LINE_TEXT_BUTTON; 2598 2599 2600 /* Define Radio Button type. */ 2601 2602 typedef struct GX_RADIO_BUTTON_STRUCT 2603 { 2604 GX_RADIO_BUTTON_MEMBERS_DECLARE 2605 } GX_RADIO_BUTTON; 2606 2607 2608 /* Define Checkbox type. */ 2609 2610 typedef struct GX_CHECKBOX_STRUCT 2611 { 2612 GX_CHECKBOX_MEMBERS_DECLARE 2613 } GX_CHECKBOX; 2614 2615 2616 /* Defing Icon Button type. */ 2617 2618 typedef struct GX_ICON_BUTTON_STRUCT 2619 { 2620 GX_ICON_BUTTON_MEMBERS_DECLARE 2621 } GX_ICON_BUTTON; 2622 2623 2624 /* Define Pixelmap Button type. */ 2625 2626 typedef struct GX_PIXELMAP_BUTTON_STRUCT 2627 { 2628 GX_PIXELMAP_BUTTON_MEMBERS_DECLARE 2629 } GX_PIXELMAP_BUTTON; 2630 2631 2632 /* Define Scroll Thumb type. */ 2633 2634 typedef struct GX_SCROLL_THUMB_STRUCT 2635 { 2636 GX_SCROLL_THUMB_MEMBERS_DECLARE 2637 } GX_SCROLL_THUMB; 2638 2639 2640 /* Define Scrollbar type. */ 2641 2642 typedef struct GX_SCROLLBAR_STRUCT 2643 { 2644 GX_SCROLLBAR_MEMBERS_DECLARE 2645 } GX_SCROLLBAR; 2646 2647 2648 /* Define Slider type. */ 2649 2650 typedef struct GX_SLIDER_STRUCT 2651 { 2652 GX_SLIDER_MEMBERS_DECLARE 2653 } GX_SLIDER; 2654 2655 2656 /* Define Pixelmap Slider type. */ 2657 2658 typedef struct GX_PIXELMAP_SLIDER_STRUCT 2659 { 2660 GX_PIXELMAP_SLIDER_MEMBERS_DECLARE 2661 } GX_PIXELMAP_SLIDER; 2662 2663 2664 /* Define Window type. */ 2665 2666 typedef struct GX_WINDOW_STRUCT 2667 { 2668 GX_WINDOW_MEMBERS_DECLARE 2669 } GX_WINDOW; 2670 2671 /* Define Root Window type. */ 2672 2673 typedef struct GX_WINDOW_ROOT_STRUCT 2674 { 2675 GX_WINDOW_ROOT_MEMBERS_DECLARE 2676 } GX_WINDOW_ROOT; 2677 2678 /*Define Single Line Text Input type. */ 2679 2680 typedef struct GX_SINGLE_LINE_TEXT_INPUT_STRUCT 2681 { 2682 GX_SINGLE_LINE_TEXT_INPUT_MEMBERS_DECLARE 2683 } GX_SINGLE_LINE_TEXT_INPUT; 2684 2685 2686 /* Define Multi Line Text View type. */ 2687 2688 typedef struct GX_MULTI_LINE_TEXT_VIEW_STRUCT 2689 { 2690 GX_MULTI_LINE_TEXT_VIEW_MEMBERS_DECLARE 2691 } GX_MULTI_LINE_TEXT_VIEW; 2692 2693 /* Define Rich Text View type. */ 2694 2695 typedef struct GX_RICH_TEXT_VIEW_STRUCT 2696 { 2697 GX_RICH_TEXT_VIEW_MEMBERS_DECLARE 2698 } GX_RICH_TEXT_VIEW; 2699 2700 /*Define GX_MULTI_LINE_TEXT_INFO type. */ 2701 typedef struct GX_MULTI_LINE_TEXT_INFO_STRUCT 2702 { 2703 USHORT gx_text_display_width; 2704 USHORT gx_text_display_number; 2705 } GX_MULTI_LINE_TEXT_INFO; 2706 2707 typedef struct GX_RICH_TEXT_INOT_STRUCT 2708 { 2709 GX_COLOR gx_rich_text_info_foreground_color; 2710 GX_COLOR gx_rich_text_info_background_color; 2711 USHORT gx_rich_text_info_style; 2712 ULONG gx_rich_text_info_start_index; 2713 ULONG gx_rich_text_info_end_index; 2714 }GX_RICH_TEXT_INFO; 2715 2716 /*Define GX_MULTI_TEXT_INPUT type. */ 2717 2718 typedef struct GX_MULTI_LINE_TEXT_INPUT_STRUCT 2719 { 2720 GX_MULTI_LINE_TEXT_INPUT_MEMBERS_DECLARE 2721 } GX_MULTI_LINE_TEXT_INPUT; 2722 2723 typedef struct GX_VERTICAL_LIST_STRUCT 2724 { 2725 GX_VERTICAL_LIST_MEMBERS_DECLARE 2726 } GX_VERTICAL_LIST; 2727 2728 typedef struct GX_HORIZONTAL_LIST_STRUCT 2729 { 2730 GX_HORIZONTAL_LIST_MEMBERS_DECLARE 2731 } GX_HORIZONTAL_LIST; 2732 2733 typedef struct GX_POPUP_LIST_STRUCT 2734 { 2735 GX_POPUP_LIST_MEMBERS_DECLARE 2736 } GX_POPUP_LIST; 2737 2738 typedef struct GX_DROP_LIST_STRUCT 2739 { 2740 GX_DROP_LIST_MEMBERS_DECLARE 2741 } GX_DROP_LIST; 2742 2743 /* Define GX_PROGRESS_BAR type. */ 2744 2745 typedef struct GX_PROGRESS_BAR_STRUCT 2746 { 2747 GX_PROGRESS_BAR_MEMBERS_DECLARE 2748 } GX_PROGRESS_BAR; 2749 2750 /* Circular gauge control block */ 2751 typedef struct GX_CIRCULAR_GAUGE_STRUCT 2752 { 2753 GX_CIRCULAR_GAUGE_MEMBERS_DECLARE 2754 } GX_CIRCULAR_GAUGE; 2755 2756 /* Define Radial Progress Bar type */ 2757 typedef struct GX_RADIAL_PROGRESS_BAR_STRUCT 2758 { 2759 GX_RADIAL_PROGRESS_BAR_MEMBERS_DECLARE 2760 } GX_RADIAL_PROGRESS_BAR; 2761 2762 /* Define Radial Slider type. */ 2763 typedef struct GX_RADIAL_SLIDER_STRUCT 2764 { 2765 GX_RADIAL_SLIDER_MEMBERS_DECLARE 2766 } GX_RADIAL_SLIDER; 2767 2768 /* Define GX_LINE_CHART control block type */ 2769 typedef struct GX_LINE_CHART_STRUCT 2770 { 2771 GX_LINE_CHART_MEMBERS_DECLARE 2772 } GX_LINE_CHART; 2773 2774 /* Define GX_SCROLL_WHEEL control block type */ 2775 typedef struct GX_SCROLL_WHEEL_STRUCT 2776 { 2777 GX_SCROLL_WHEEL_MEMBERS_DECLARE 2778 } GX_SCROLL_WHEEL; 2779 2780 /* Define GX_GENERIC_SCROLL_WHEEL control block type. */ 2781 typedef struct GX_GENERIC_SCROLL_WHEEL_STRUCT 2782 { 2783 GX_GENERIC_SCROLL_WHEEL_MEMBERS_DECLARE 2784 } GX_GENERIC_SCROLL_WHEEL; 2785 2786 /* Define GX_TEXT_SCROLL_WHEEL_BASE control block type */ 2787 typedef struct GX_TEXT_SCROLL_WHEEL_STRUCT 2788 { 2789 GX_TEXT_SCROLL_WHEEL_MEMBERS_DECLARE 2790 } GX_TEXT_SCROLL_WHEEL; 2791 2792 /* Define GX_STRING_SCROLL_WHEEL control block type */ 2793 typedef struct GX_STRING_SCROLL_WHEEL_STRUCT 2794 { 2795 GX_STRING_SCROLL_WHEEL_MEMBERS_DECLARE 2796 } GX_STRING_SCROLL_WHEEL; 2797 2798 /* Define GX_NUMERIC_SCROLL_WHEEL control block type */ 2799 typedef struct GX_NUMERIC_SCROLL_WHEEL_STRUCT 2800 { 2801 GX_NUMERIC_SCROLL_WHEEL_MEMBERS_DECLARE 2802 } GX_NUMERIC_SCROLL_WHEEL; 2803 2804 2805 typedef struct GX_MENU_LIST_STRUCT 2806 { 2807 GX_MENU_LIST_MEMBERS_DECLARE 2808 }GX_MENU_LIST; 2809 2810 typedef struct GX_MENU_STRUCT 2811 { 2812 GX_MENU_MEMBERS_DECLARE 2813 }GX_MENU; 2814 2815 typedef struct GX_ACCORDION_MENU_STRUCT 2816 { 2817 GX_ACCORDION_MENU_MEMBERS_DECLARE 2818 }GX_ACCORDION_MENU; 2819 2820 typedef struct GX_TREE_VIEW_STRUCT 2821 { 2822 GX_TREE_VIEW_MEMBERS_DECLARE 2823 }GX_TREE_VIEW; 2824 2825 /* Animation information structure. This structure is used to define the 2826 parameters of a screen transition animation. */ 2827 2828 typedef struct GX_ANIMATION_INFO_STRUCT 2829 { 2830 GX_WIDGET *gx_animation_target; 2831 GX_WIDGET *gx_animation_parent; 2832 GX_WIDGET **gx_animation_slide_screen_list; 2833 USHORT gx_animation_style; 2834 USHORT gx_animation_id; 2835 USHORT gx_animation_start_delay; 2836 USHORT gx_animation_frame_interval; 2837 GX_POINT gx_animation_start_position; 2838 GX_POINT gx_animation_end_position; 2839 GX_UBYTE gx_animation_start_alpha; 2840 GX_UBYTE gx_animation_end_alpha; 2841 GX_UBYTE gx_animation_steps; 2842 } GX_ANIMATION_INFO; 2843 2844 /* Animation control block */ 2845 typedef struct GX_ANIMATION_STRUCT 2846 { 2847 GX_ANIMATION_INFO gx_animation_info; 2848 GX_CANVAS *gx_animation_canvas; 2849 struct GX_ANIMATION_STRUCT *gx_animation_next; 2850 UINT (*gx_animation_original_event_process_function)(struct GX_WIDGET_STRUCT *, GX_EVENT *); 2851 2852 GX_VALUE gx_animation_slide_target_index_1; 2853 GX_VALUE gx_animation_slide_target_index_2; 2854 GX_VALUE gx_animation_slide_tracking_start_pos; 2855 GX_VALUE gx_animation_slide_tracking_current_pos; 2856 USHORT gx_animation_landing_speed; 2857 USHORT gx_animation_timer; 2858 USHORT gx_animation_slide_screen_list_size; 2859 GX_UBYTE gx_animation_status; 2860 GX_UBYTE gx_animation_slide_direction; 2861 GX_UBYTE gx_animation_system_allocated; 2862 GX_UBYTE gx_animation_total_steps; 2863 } GX_ANIMATION; 2864 2865 typedef struct GX_PIXEL_STRUCT 2866 { 2867 GX_UBYTE gx_pixel_red; 2868 GX_UBYTE gx_pixel_green; 2869 GX_UBYTE gx_pixel_blue; 2870 GX_UBYTE gx_pixel_alpha; 2871 } GX_PIXEL; 2872 2873 /* Image reader control block */ 2874 typedef struct GX_IMAGE_READER_STRUCT 2875 { 2876 UINT (*gx_image_reader_pixel_write)(struct GX_IMAGE_READER_STRUCT *image_reader, GX_PIXEL *pixel); 2877 UINT (*gx_image_reader_pixel_read)(struct GX_IMAGE_READER_STRUCT *image_reader, INT index, GX_PIXEL *pixel); 2878 GX_CONST GX_UBYTE *gx_image_reader_source_data; 2879 UINT gx_image_reader_source_data_size; 2880 GX_UBYTE *gx_image_reader_getdata; 2881 GX_UBYTE *gx_image_reader_getauxdata; 2882 GX_UBYTE *gx_image_reader_putdata; 2883 GX_UBYTE *gx_image_reader_putauxdata; 2884 GX_UBYTE *gx_image_reader_putdatarow; 2885 GX_UBYTE *gx_image_reader_putauxdatarow; 2886 GX_UBYTE gx_image_reader_color_format; 2887 GX_UBYTE gx_image_reader_mode; 2888 GX_UBYTE gx_image_reader_image_type; 2889 GX_UBYTE gx_image_reader_putdata_mask; 2890 GX_UBYTE gx_image_reader_putauxdata_mask; 2891 GX_UBYTE gx_image_reader_mono_shreshold; 2892 GX_COLOR *gx_image_reader_palette; 2893 UINT gx_image_reader_palette_size; 2894 UINT gx_image_reader_input_stride; 2895 GX_BYTE gx_image_reader_putdatarow_stride; 2896 GX_BYTE gx_image_reader_putauxdatarow_stride; 2897 GX_BOOL gx_image_reader_size_testing; 2898 GX_COLOR *gx_image_reader_png_trans; 2899 GX_COLOR *gx_image_reader_png_palette; 2900 UINT gx_image_reader_png_palette_size; 2901 UINT gx_image_reader_image_width; 2902 UINT gx_image_reader_image_height; 2903 } GX_IMAGE_READER; 2904 2905 #define GX_IMAGE_READER_MODE_NONE 0x00 2906 #define GX_IMAGE_READER_MODE_COMPRESS 0x01 2907 #define GX_IMAGE_READER_MODE_ALPHA 0x02 2908 #define GX_IMAGE_READER_MODE_DITHER 0x04 2909 #define GX_IMAGE_READER_MODE_ROTATE_CW 0x10 2910 #define GX_IMAGE_READER_MODE_ROTATE_CCW 0x20 2911 2912 /* Define Screen stack control block */ 2913 typedef struct GX_SCREEN_STACK_CONTROL_STRUCT 2914 { 2915 GX_WIDGET **gx_screen_stack_control_memory; 2916 INT gx_screen_stack_control_top; 2917 INT gx_screen_stack_control_max; 2918 } GX_SCREEN_STACK_CONTROL; 2919 2920 /* define resistive touch screen calibration params */ 2921 typedef struct TOUCH_CAL_MATRIX_STRUCT { 2922 INT An; /* A = An/Divider */ 2923 INT Bn; /* B = Bn/Divider */ 2924 INT Cn; /* C = Cn/Divider */ 2925 INT Dn; /* D = Dn/Divider */ 2926 INT En; /* E = En/Divider */ 2927 INT Fn; /* F = Fn/Divider */ 2928 INT Divider ; 2929 } TOUCH_CALIBRATION_MATRIX; 2930 2931 /* touch driver info specified by application. This information is required 2932 to run the touch screen calibration */ 2933 typedef struct GX_RESISTIVE_TOUCH_INFO_STRUCT { 2934 GX_RESOURCE_ID gx_touch_info_string_id_no_touch; 2935 GX_RESOURCE_ID gx_touch_info_string_id_touch_1; 2936 GX_RESOURCE_ID gx_touch_info_string_id_touch_2; 2937 GX_RESOURCE_ID gx_touch_info_string_id_touch_3; 2938 GX_MULTI_LINE_TEXT_VIEW *gx_touch_info_text; 2939 GX_ICON *gx_touch_info_target; 2940 } GX_RESISTIVE_TOUCH_INFO; 2941 2942 /* touch driver control block */ 2943 typedef struct GX_RESISTIVE_TOUCH_STRUCT { 2944 GX_RESISTIVE_TOUCH_INFO gx_resistive_touch_info; 2945 GX_BOOL gx_resistive_touch_calibrated; 2946 USHORT gx_resistive_touch_min_drag_delta; 2947 USHORT gx_resistive_touch_sample_size; 2948 USHORT gx_resistive_touch_max_retries; 2949 USHORT gx_resistive_touch_stability_limit; 2950 USHORT gx_resistive_touch_x_range; 2951 USHORT gx_resistive_touch_y_range; 2952 USHORT gx_resistive_touch_current_touch_state; 2953 USHORT gx_resistive_touch_last_touch_state; 2954 GX_POINT *gx_resistive_touch_sample_ram; 2955 GX_POINT gx_resistive_touch_current_touch_coord; 2956 GX_POINT gx_resistive_touch_last_touch_coord; 2957 GX_BOOL (*gx_resistive_touch_pen_down_detect)(VOID); 2958 USHORT (*gx_resistive_touch_sample_read)(GX_VALUE axis); 2959 TOUCH_CALIBRATION_MATRIX gx_resistive_touch_calibration_matrix; 2960 } GX_RESISTIVE_TOUCH; 2961 2962 /* pen down or up status, returned to generic driver */ 2963 #define GX_TOUCH_STATE_TOUCHED 1 2964 #define GX_TOUCH_STATE_RELEASED 2 2965 #define GX_TOUCH_X_AXIS 1 2966 #define GX_TOUCH_Y_AXIS 2 2967 2968 /* GUIX fixed point math helpers */ 2969 2970 typedef struct GX_FIXED_POINT_STRUCT 2971 { 2972 GX_FIXED_VAL x; 2973 GX_FIXED_VAL y; 2974 } GX_FIXED_POINT; 2975 2976 #define GX_FIXED_VAL_SHIFT 10 2977 #define GX_FIXED_VAL_HALF 512 2978 #define GX_FIXED_VAL_ONE 1024 2979 #define GX_FIXED_VAL_FRACTION_MASK 0x3ff 2980 2981 #define GX_FIXED_VAL_MAKE(_a) (((int)_a) << GX_FIXED_VAL_SHIFT) 2982 #define GX_FIXED_VAL_TO_INT(_a) ((int)(((int)_a) >> GX_FIXED_VAL_SHIFT)) 2983 #define GX_FIXED_VAL_MUL(_a, _b) ((((int)_a) * (_b)) >> GX_FIXED_VAL_SHIFT) 2984 #define GX_FIXED_VAL_DIV(_a, _b) ((((int)_a) << GX_FIXED_VAL_SHIFT) / ((int)_b)) 2985 #define GX_FIXED_VAL_RND(_a) (GX_VALUE)((((GX_FIXED_VAL)_a) + GX_FIXED_VAL_HALF) >> GX_FIXED_VAL_SHIFT) 2986 #define GX_FIXED_VAL_RND_UP(_a) ((((GX_FIXED_VAL)_a) + GX_FIXED_VAL_ONE - 1) >> GX_FIXED_VAL_SHIFT) 2987 #define GX_FIXED_VAL_ADD_ONE(_a) (((int)_a) + GX_FIXED_VAL_ONE) 2988 #define GX_FIXED_VAL_SUB_ONE(_a) (((int)_a) - GX_FIXED_VAL_ONE) 2989 2990 /* Define the system API mappings based on the error checking 2991 selected by the user. Note: this section is only applicable to 2992 application source code, hence the conditional that turns off this 2993 stuff when the include file is processed by the GUIX source. */ 2994 2995 #ifndef GX_SOURCE_CODE 2996 2997 2998 /* Determine if error checking is desired. If so, map API functions 2999 to the appropriate error checking front-ends. Otherwise, map API 3000 functions to the core functions that actually perform the work. 3001 Note: error checking is enabled by default. */ 3002 3003 #ifdef GX_DISABLE_ERROR_CHECKING 3004 3005 3006 /* Services without error checking. */ 3007 3008 #define gx_accordion_menu_create(a, b, c, d, e, f) _gx_accordion_menu_create(a, b, c, d, e, f) 3009 #define gx_accordion_menu_draw _gx_accordion_menu_draw 3010 #define gx_accordion_menu_event_process _gx_accordion_menu_event_process 3011 #define gx_accordion_menu_position(a) _gx_accordion_menu_position(a) 3012 3013 #define gx_animation_canvas_define _gx_animation_canvas_define 3014 #define gx_animation_create _gx_animation_create 3015 #define gx_animation_delete _gx_animation_delete 3016 #define gx_animation_drag_disable _gx_animation_drag_disable 3017 #define gx_animation_drag_enable _gx_animation_drag_enable 3018 #define gx_animation_landing_speed_set _gx_animation_landing_speed_set 3019 #define gx_animation_start _gx_animation_start 3020 #define gx_animation_stop _gx_animation_stop 3021 3022 #define gx_binres_language_count_get _gx_binres_language_count_get 3023 #define gx_binres_language_info_load _gx_binres_language_info_load 3024 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3025 #define gx_binres_language_table_load _gx_binres_language_table_load 3026 #endif 3027 #define gx_binres_language_table_load_ext _gx_binres_language_table_load_ext 3028 #define gx_binres_theme_load _gx_binres_theme_load 3029 #define gx_binres_pixelmap_load _gx_binres_pixelmap_load 3030 #define gx_binres_font_load _gx_binres_font_load 3031 3032 #define gx_brush_default _gx_brush_default 3033 #define gx_brush_define _gx_brush_define 3034 3035 #define gx_button_background_draw _gx_button_background_draw 3036 #define gx_button_create(a, b, c, d, e, f) _gx_button_create(a, b, (GX_WIDGET *)c, d, e, f) 3037 #define gx_button_deselect _gx_button_deselect 3038 #define gx_button_draw _gx_button_draw 3039 #define gx_button_event_process _gx_button_event_process 3040 #define gx_button_select _gx_button_select 3041 3042 #define gx_canvas_alpha_set _gx_canvas_alpha_set 3043 #define gx_canvas_arc_draw _gx_canvas_arc_draw 3044 #define gx_canvas_block_move(a, b, c, d) _gx_canvas_block_move(a, b, c, d) 3045 #define gx_canvas_circle_draw _gx_canvas_circle_draw 3046 #define gx_canvas_create _gx_canvas_create 3047 #define gx_canvas_delete _gx_canvas_delete 3048 #define gx_canvas_drawing_complete _gx_canvas_drawing_complete 3049 #define gx_canvas_drawing_initiate(a, b, c) _gx_canvas_drawing_initiate(a, (GX_WIDGET *)b, c) 3050 #define gx_canvas_ellipse_draw _gx_canvas_ellipse_draw 3051 #define gx_canvas_hardware_layer_bind _gx_canvas_hardware_layer_bind 3052 #define gx_canvas_hide _gx_canvas_hide 3053 #define gx_canvas_line_draw _gx_canvas_line_draw 3054 #define gx_canvas_memory_define _gx_canvas_memory_define 3055 3056 #if defined (GX_MOUSE_SUPPORT) 3057 #define gx_canvas_mouse_define _gx_canvas_mouse_define 3058 #define gx_canvas_mouse_hide _gx_canvas_mouse_hide 3059 #define gx_canvas_mouse_show _gx_canvas_mouse_show 3060 #endif 3061 #define gx_canvas_offset_set _gx_canvas_offset_set 3062 #define gx_canvas_pixel_draw _gx_canvas_pixel_draw 3063 #define gx_canvas_pixelmap_blend _gx_canvas_pixelmap_blend 3064 #define gx_canvas_pixelmap_draw _gx_canvas_pixelmap_draw 3065 #define gx_canvas_pixelmap_get _gx_canvas_pixelmap_get 3066 #define gx_canvas_pixelmap_rotate _gx_canvas_pixelmap_rotate 3067 #define gx_canvas_pixelmap_tile _gx_canvas_pixelmap_tile 3068 #define gx_canvas_polygon_draw _gx_canvas_polygon_draw 3069 #define gx_canvas_pie_draw _gx_canvas_pie_draw 3070 #define gx_canvas_rectangle_draw _gx_canvas_rectangle_draw 3071 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3072 #define gx_canvas_rotated_text_draw _gx_canvas_rotated_text_draw 3073 #endif 3074 #define gx_canvas_rotated_text_draw_ext _gx_canvas_rotated_text_draw_ext 3075 #define gx_canvas_shift _gx_canvas_shift 3076 #define gx_canvas_show _gx_canvas_show 3077 #define gx_canvas_aligned_text_draw _gx_canvas_aligned_text_draw 3078 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3079 #define gx_canvas_text_draw _gx_canvas_text_draw 3080 #endif 3081 #define gx_canvas_text_draw_ext _gx_canvas_text_draw_ext 3082 3083 #define gx_checkbox_create(a, b, c, d, e, f, g) _gx_checkbox_create(a, b, (GX_WIDGET *)c, d, e, f, g) 3084 #define gx_checkbox_draw _gx_checkbox_draw 3085 #define gx_checkbox_event_process _gx_checkbox_event_process 3086 #define gx_checkbox_pixelmap_set _gx_checkbox_pixelmap_set 3087 #define gx_checkbox_select _gx_checkbox_select 3088 3089 #define gx_circular_gauge_angle_get _gx_circular_gauge_angle_get 3090 #define gx_circular_gauge_angle_set _gx_circular_gauge_angle_set 3091 #define gx_circular_gauge_animation_set _gx_circular_gauge_animation_set 3092 #define gx_circular_gauge_background_draw _gx_circular_gauge_background_draw 3093 #define gx_circular_gauge_create(a, b, c, d, e, f, g, h, i) _gx_circular_gauge_create((GX_CIRCULAR_GAUGE *) a, b, c, d, e, f, g, h, i) 3094 #define gx_circular_gauge_draw _gx_circular_gauge_draw 3095 #define gx_circular_gauge_event_process _gx_circular_gauge_event_process 3096 3097 #define gx_context_brush_default _gx_context_brush_default 3098 #define gx_context_brush_define _gx_context_brush_define 3099 #define gx_context_brush_get _gx_context_brush_get 3100 #define gx_context_brush_pattern_set _gx_context_brush_pattern_set 3101 #define gx_context_brush_set _gx_context_brush_set 3102 #define gx_context_brush_style_set _gx_context_brush_style_set 3103 #define gx_context_brush_width_set _gx_context_brush_width_set 3104 #define gx_context_color_get _gx_context_color_get 3105 #define gx_context_fill_color_set _gx_context_fill_color_set 3106 #define gx_context_font_get _gx_context_font_get 3107 #define gx_context_font_set _gx_context_font_set 3108 #define gx_context_line_color_set _gx_context_line_color_set 3109 #define gx_context_pixelmap_get _gx_context_pixelmap_get 3110 #define gx_context_pixelmap_set _gx_context_pixelmap_set 3111 #define gx_context_raw_brush_define _gx_context_raw_brush_define 3112 #define gx_context_raw_fill_color_set _gx_context_raw_fill_color_set 3113 #define gx_context_raw_line_color_set _gx_context_raw_line_color_set 3114 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3115 #define gx_context_string_get _gx_context_string_get 3116 #endif 3117 #define gx_context_string_get_ext _gx_context_string_get_ext 3118 3119 #define gx_display_active_language_set _gx_display_active_language_set 3120 #define gx_display_color_set _gx_display_color_set 3121 #define gx_display_color_table_set _gx_display_color_table_set 3122 #define gx_display_create _gx_display_create 3123 #define gx_display_delete _gx_display_delete 3124 #define gx_display_font_table_set _gx_display_font_table_set 3125 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3126 #define gx_display_language_table_get _gx_display_language_table_get 3127 #define gx_display_language_table_set _gx_display_language_table_set 3128 #endif 3129 #define gx_display_language_table_get_ext _gx_display_language_table_get_ext 3130 #define gx_display_language_table_set_ext _gx_display_language_table_set_ext 3131 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 3132 #define gx_display_language_direction_table_set _gx_display_language_direction_table_set 3133 #endif 3134 #define gx_display_pixelmap_table_set _gx_display_pixelmap_table_set 3135 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3136 #define gx_display_string_get _gx_display_string_get 3137 #define gx_display_string_table_get _gx_display_string_table_get 3138 #endif 3139 #define gx_display_string_get_ext _gx_display_string_get_ext 3140 #define gx_display_string_table_get_ext _gx_display_string_table_get_ext 3141 #define gx_display_theme_install _gx_display_theme_install 3142 3143 #define gx_drop_list_close _gx_drop_list_close 3144 #define gx_drop_list_create(a, b, c, d, e, f, g, h, i) _gx_drop_list_create(a, b, (GX_WIDGET *)c, d, e, f, g, h, i) 3145 #define gx_drop_list_event_process _gx_drop_list_event_process 3146 #define gx_drop_list_open _gx_drop_list_open 3147 #define gx_drop_list_pixelmap_set _gx_drop_list_pixelmap_set 3148 #define gx_drop_list_popup_get _gx_drop_list_popup_get 3149 3150 #define gx_generic_scroll_wheel_children_position _gx_generic_scroll_wheel_children_position 3151 #define gx_generic_scroll_wheel_create _gx_generic_scroll_wheel_create 3152 #define gx_generic_scroll_wheel_draw _gx_generic_scroll_wheel_draw 3153 #define gx_generic_scroll_wheel_event_process _gx_generic_scroll_wheel_event_process 3154 #define gx_generic_scroll_wheel_row_height_set _gx_generic_scroll_wheel_row_height_set 3155 #define gx_generic_scroll_wheel_total_rows_set _gx_generic_scroll_wheel_total_rows_set 3156 3157 #define gx_horizontal_list_children_position _gx_horizontal_list_children_position 3158 #define gx_horizontal_list_create(a, b, c, d, e, f, g, h) _gx_horizontal_list_create(a, b, (GX_WIDGET *)c, d, e, f, g, h) 3159 #define gx_horizontal_list_event_process _gx_horizontal_list_event_process 3160 #define gx_horizontal_list_page_index_set(a, b) _gx_horizontal_list_page_index_set((GX_HORIZONTAL_LIST *)a, b) 3161 #define gx_horizontal_list_selected_index_get(a, b) _gx_horizontal_list_selected_index_get(a, b) 3162 #define gx_horizontal_list_selected_set(a, b) _gx_horizontal_list_selected_set(a, b) 3163 #define gx_horizontal_list_selected_widget_get(a, b) _gx_horizontal_list_selected_widget_get(a, (GX_WIDGET **)b) 3164 #define gx_horizontal_list_total_columns_set(a, b) _gx_horizontal_list_total_columns_set((GX_HORIZONTAL_LIST *)a, b) 3165 3166 #define gx_horizontal_scrollbar_create(a, b, c, d, e) _gx_horizontal_scrollbar_create(a, b, (GX_WINDOW *)c, d, e) 3167 3168 #define gx_icon_background_draw _gx_icon_background_draw 3169 #define gx_icon_button_create(a, b, c, d, e, f, g) _gx_icon_button_create(a, b, (GX_WIDGET *)c, d, e, f, g) 3170 #define gx_icon_button_draw _gx_icon_button_draw 3171 #define gx_icon_button_pixelmap_set _gx_icon_button_pixelmap_set 3172 #define gx_icon_create(a, b, c, d, e, f, g, h) _gx_icon_create(a, b, (GX_WIDGET *)c, d, e, f, g, h) 3173 #define gx_icon_draw _gx_icon_draw 3174 #define gx_icon_event_process _gx_icon_event_process 3175 #define gx_icon_pixelmap_set _gx_icon_pixelmap_set 3176 3177 #define gx_image_reader_create _gx_image_reader_create 3178 #define gx_image_reader_palette_set _gx_image_reader_palette_set 3179 #define gx_image_reader_start _gx_image_reader_start 3180 3181 #define gx_line_chart_axis_draw _gx_line_chart_axis_draw 3182 #define gx_line_chart_create(a, b, c, d, e, f, g) _gx_line_chart_create(a, b, (GX_WIDGET *) c, d, e, f, g) 3183 #define gx_line_chart_data_draw _gx_line_chart_data_draw 3184 #define gx_line_chart_draw _gx_line_chart_draw 3185 #define gx_line_chart_update _gx_line_chart_update 3186 #define gx_line_chart_y_scale_calculate _gx_line_chart_y_scale_calculate 3187 3188 #define gx_menu_create(a, b, c, d, e, f, g, h) _gx_menu_create((GX_MENU *)a, b, (GX_WIDGET *)c, d, e, f, g, h) 3189 #define gx_menu_draw _gx_menu_draw 3190 #define gx_menu_event_process _gx_menu_event_process 3191 #define gx_menu_insert _gx_menu_insert 3192 #define gx_menu_remove _gx_menu_remove 3193 #define gx_menu_remove _gx_menu_remove 3194 #define gx_menu_text_draw _gx_menu_text_draw 3195 #define gx_menu_text_offset_set _gx_menu_text_offset_set 3196 3197 #define gx_multi_line_text_button_create(a, b, c, d, e, f, g) _gx_multi_line_text_button_create(a, b, (GX_WIDGET *)c, d, e, f, g) 3198 #define gx_multi_line_text_button_draw _gx_multi_line_text_button_draw 3199 #define gx_multi_line_text_button_event_process _gx_multi_line_text_button_event_process 3200 #define gx_multi_line_text_button_text_draw _gx_multi_line_text_button_text_draw 3201 #define gx_multi_line_text_button_text_id_set _gx_multi_line_text_button_text_id_set 3202 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3203 #define gx_multi_line_text_button_text_set _gx_multi_line_text_button_text_set 3204 #endif 3205 #define gx_multi_line_text_button_text_set_ext _gx_multi_line_text_button_text_set_ext 3206 3207 #define gx_multi_line_text_input_backspace _gx_multi_line_text_input_backspace 3208 #define gx_multi_line_text_input_buffer_clear _gx_multi_line_text_input_buffer_clear 3209 #define gx_multi_line_text_input_buffer_get _gx_multi_line_text_input_buffer_get 3210 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3211 #define gx_multi_line_text_input_char_insert _gx_multi_line_text_input_char_insert 3212 #endif 3213 #define gx_multi_line_text_input_char_insert_ext _gx_multi_line_text_input_char_insert_ext 3214 #define gx_multi_line_text_input_create(a, b, c, d, e, f, g, h) _gx_multi_line_text_input_create(a, b, (GX_WIDGET *)c, d, e, f, g, h) 3215 #define gx_multi_line_text_input_cursor_pos_get _gx_multi_line_text_input_cursor_pos_get 3216 #define gx_multi_line_text_input_delete _gx_multi_line_text_input_delete 3217 #define gx_multi_line_text_input_down_arrow _gx_multi_line_text_input_down_arrow 3218 #define gx_multi_line_text_input_end _gx_multi_line_text_input_end 3219 #define gx_multi_line_text_input_event_process _gx_multi_line_text_input_event_process 3220 #define gx_multi_line_text_input_fill_color_set _gx_multi_line_text_input_fill_color_set 3221 #define gx_multi_line_text_input_home _gx_multi_line_text_input_home 3222 #define gx_multi_line_text_input_left_arrow _gx_multi_line_text_input_left_arrow 3223 #define gx_multi_line_text_input_right_arrow _gx_multi_line_text_input_right_arrow 3224 #define gx_multi_line_text_input_style_add _gx_multi_line_text_input_style_add 3225 #define gx_multi_line_text_input_style_remove _gx_multi_line_text_input_style_remove 3226 #define gx_multi_line_text_input_style_set _gx_multi_line_text_input_style_set 3227 #define gx_multi_line_text_input_text_color_set _gx_multi_line_text_input_text_color_set 3228 #define gx_multi_line_text_input_text_select _gx_multi_line_text_input_text_select 3229 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3230 #define gx_multi_line_text_input_text_set _gx_multi_line_text_input_text_set 3231 #endif 3232 #define gx_multi_line_text_input_text_set_ext _gx_multi_line_text_input_text_set_ext 3233 #define gx_multi_line_text_input_up_arrow _gx_multi_line_text_input_up_arrow 3234 3235 #define gx_multi_line_text_view_create(a, b, c, d, e, f, g) _gx_multi_line_text_view_create(a, b, (GX_WIDGET *)c, d, e, f, g) 3236 #define gx_multi_line_text_view_draw _gx_multi_line_text_view_draw 3237 #define gx_multi_line_text_view_event_process _gx_multi_line_text_view_event_process 3238 #define gx_multi_line_text_view_font_set _gx_multi_line_text_view_font_set 3239 #define gx_multi_line_text_view_line_space_set _gx_multi_line_text_view_line_space_set 3240 #define gx_multi_line_text_view_scroll_info_get _gx_multi_line_text_view_scroll_info_get 3241 #if defined(GUIX_5_4_0_COMPATIBILITY) 3242 #define gx_multi_line_text_view_text_color_set(a, b, c) _gx_multi_line_text_view_text_color_set((GX_MUILTI_LINE_TEXT_VIEW *)a, b, c, b) 3243 #else 3244 #define gx_multi_line_text_view_text_color_set _gx_multi_line_text_view_text_color_set 3245 #endif 3246 #define gx_multi_line_text_view_text_id_set _gx_multi_line_text_view_text_id_set 3247 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3248 #define gx_multi_line_text_view_text_set _gx_multi_line_text_view_text_set 3249 #endif 3250 #define gx_multi_line_text_view_text_set_ext _gx_multi_line_text_view_text_set_ext 3251 #define gx_multi_line_text_view_whitespace_set _gx_multi_line_text_view_whitespace_set 3252 3253 #define gx_rich_text_view_create(a, b, c, d, e, f, g, h) _gx_rich_text_view_create(a, b, (GX_WIDGET *)c, d, e, f, g, h) 3254 #define gx_rich_text_view_draw _gx_rich_text_view_draw 3255 #define gx_rich_text_view_text_draw _gx_rich_text_view_text_draw 3256 #define gx_rich_text_view_fonts_set _gx_rich_text_view_fonts_set 3257 3258 #define gx_numeric_pixelmap_prompt_create _gx_numeric_pixelmap_prompt_create 3259 #define gx_numeric_pixelmap_prompt_format_function_set _gx_numeric_pixelmap_prompt_format_function_set 3260 #define gx_numeric_pixelmap_prompt_value_set _gx_numeric_pixelmap_prompt_value_set 3261 3262 #define gx_numeric_prompt_create _gx_numeric_prompt_create 3263 #define gx_numeric_prompt_format_function_set _gx_numeric_prompt_format_function_set 3264 #define gx_numeric_prompt_value_set _gx_numeric_prompt_value_set 3265 3266 #define gx_numeric_scroll_wheel_create(a, b, c, d, e, f, g, h) _gx_numeric_scroll_wheel_create(a, b, (GX_WIDGET *) c, d, e, f, g, h) 3267 #define gx_numeric_scroll_wheel_range_set _gx_numeric_scroll_wheel_range_set 3268 3269 #define gx_pixelmap_button_create(a, b, c, d, e, f, g, h, i) _gx_pixelmap_button_create(a, b, (GX_WIDGET *)c, d, e, f, g, h, i) 3270 #define gx_pixelmap_button_draw _gx_pixelmap_button_draw 3271 #define gx_pixelmap_button_event_process _gx_pixelmap_button_event_process 3272 #define gx_pixelmap_button_pixelmap_set _gx_pixelmap_button_pixelmap_set 3273 3274 #define gx_pixelmap_prompt_create(a, b, c, d, e, f, g, h) _gx_pixelmap_prompt_create(a, b, (GX_WIDGET *)c, d, e, f, g, h) 3275 #define gx_pixelmap_prompt_draw _gx_pixelmap_prompt_draw 3276 #define gx_pixelmap_prompt_pixelmap_set _gx_pixelmap_prompt_pixelmap_set 3277 3278 #define gx_pixelmap_slider_create(a, b, c, d, e, f, g, h) _gx_pixelmap_slider_create(a, b, (GX_WIDGET *)c, d, e, f, g, h) 3279 #define gx_pixelmap_slider_draw _gx_pixelmap_slider_draw 3280 #define gx_pixelmap_slider_event_process _gx_pixelmap_slider_event_process 3281 #define gx_pixelmap_slider_pixelmap_set _gx_pixelmap_slider_pixelmap_set 3282 3283 #define gx_progress_bar_background_draw _gx_progress_bar_background_draw 3284 #define gx_progress_bar_create(a, b, c, d, e, f, g) _gx_progress_bar_create(a, b, (GX_WIDGET *)c, d, e, f, g) 3285 #define gx_progress_bar_draw _gx_progress_bar_draw 3286 #define gx_progress_bar_event_process _gx_progress_bar_event_process 3287 #define gx_progress_bar_font_set _gx_progress_bar_font_set 3288 #define gx_progress_bar_info_set(a, b) _gx_progress_bar_info_set((GX_PROGRESS_BAR *)a, b) 3289 #define gx_progress_bar_pixelmap_set _gx_progress_bar_pixelmap_set 3290 #define gx_progress_bar_range_set _gx_progress_bar_range_set 3291 #if defined(GUIX_5_4_0_COMPATIBILITY) 3292 #define gx_progress_bar_text_color_set(a, b, c) _gx_progress_bar_text_color_set((GX_PROGRESS_BAR *)a, b, c, b) 3293 #else 3294 #define gx_progress_bar_text_color_set _gx_progress_bar_text_color_set 3295 #endif 3296 #define gx_progress_bar_text_draw _gx_progress_bar_text_draw 3297 #define gx_progress_bar_value_set _gx_progress_bar_value_set 3298 3299 #define gx_prompt_create(a, b, c, d, e, f, g) _gx_prompt_create(a, b, (GX_WIDGET *)c, d, e, f, g) 3300 #define gx_prompt_event_process _gx_prompt_event_process 3301 #define gx_prompt_draw _gx_prompt_draw 3302 #define gx_prompt_font_set _gx_prompt_font_set 3303 3304 #if defined(GUIX_5_4_0_COMPATIBILITY) 3305 #define gx_prompt_text_color_set(a, b, c) _gx_prompt_text_color_set((GX_PROGRESS_BAR *)a, b, c, b) 3306 #else 3307 #define gx_prompt_text_color_set _gx_prompt_text_color_set 3308 #endif 3309 #define gx_prompt_text_draw _gx_prompt_text_draw 3310 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3311 #define gx_prompt_text_get _gx_prompt_text_get 3312 #endif 3313 #define gx_prompt_text_get_ext _gx_prompt_text_get_ext 3314 #define gx_prompt_text_id_set _gx_prompt_text_id_set 3315 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3316 #define gx_prompt_text_set _gx_prompt_text_set 3317 #endif 3318 #define gx_prompt_text_set_ext _gx_prompt_text_set_ext 3319 3320 #define gx_radial_progress_bar_anchor_set _gx_radial_progress_bar_anchor_set 3321 #define gx_radial_progress_bar_background_draw _gx_radial_progress_bar_background_draw 3322 #define gx_radial_progress_bar_create _gx_radial_progress_bar_create 3323 #define gx_radial_progress_bar_draw _gx_radial_progress_bar_draw 3324 #define gx_radial_progress_bar_event_process _gx_radial_progress_bar_event_process 3325 #define gx_radial_progress_bar_font_set _gx_radial_progress_bar_font_set 3326 #define gx_radial_progress_bar_info_set _gx_radial_progress_bar_info_set 3327 #if defined(GUIX_5_4_0_COMPATIBILITY) 3328 #define gx_radial_progress_bar_text_color_set(a, b, c) _gx_radial_progress_bar_text_color_set((GX_RADIAL_PROGRESS_BAR *)a, b, c, b) 3329 #else 3330 #define gx_radial_progress_bar_text_color_set _gx_radial_progress_bar_text_color_set 3331 #endif 3332 #define gx_radial_progress_bar_text_draw _gx_radial_progress_bar_text_draw 3333 #define gx_radial_progress_bar_value_set _gx_radial_progress_bar_value_set 3334 3335 #define gx_radial_slider_anchor_angles_set _gx_radial_slider_anchor_anglees_set 3336 #define gx_radial_slider_animation_set _gx_radial_slider_animation_set 3337 #define gx_radial_slider_animation_start _gx_radial_slider_animation_start 3338 #define gx_radial_slider_create _gx_radial_slider_create 3339 #define gx_radial_slider_draw _gx_radial_slider_draw 3340 #define gx_radial_slider_event_process _gx_radial_slider_event_process 3341 #define gx_radial_slider_info_get _gx_radial_slider_info_get 3342 #define gx_radial_slider_info_set _gx_radial_slider_info_set 3343 #define gx_radial_slider_pixelmap_set _gx_radial_slider_pixelmap_set 3344 #define gx_radial_slider_angle_set _gx_radial_slider_angle_set 3345 3346 #define gx_radio_button_create(a, b, c, d, e, f, g) _gx_radio_button_create(a, b, (GX_WIDGET *)c, d, e, f, g) 3347 #define gx_radio_button_draw _gx_radio_button_draw 3348 #define gx_radio_button_pixelmap_set _gx_radio_button_pixelmap_set 3349 3350 #define gx_screen_stack_create _gx_screen_stack_create 3351 #define gx_screen_stack_pop _gx_screen_stack_pop 3352 #define gx_screen_stack_push _gx_screen_stack_push 3353 #define gx_screen_stack_reset _gx_screen_stack_reset 3354 3355 #define gx_scroll_thumb_create _gx_scroll_thumb_create 3356 #define gx_scroll_thumb_draw _gx_scroll_thumb_draw 3357 #define gx_scroll_thumb_event_process _gx_scroll_thumb_event_process 3358 3359 #define gx_scrollbar_draw _gx_scrollbar_draw 3360 #define gx_scrollbar_event_process _gx_scrollbar_event_process 3361 #define gx_scrollbar_limit_check _gx_scrollbar_limit_check 3362 #define gx_scrollbar_reset _gx_scrollbar_reset 3363 #define gx_scrollbar_value_set _gx_scrollbar_value_set 3364 3365 #define gx_scroll_wheel_create _gx_scroll_wheel_create 3366 #define gx_scroll_wheel_event_process _gx_scroll_wheel_event_process 3367 #define gx_scroll_wheel_gradient_alpha_set(a, b, c) _gx_scroll_wheel_gradient_alpha_set((GX_SCROLL_WHEEL *) a, b, c) 3368 #define gx_scroll_wheel_row_height_set(a, b) _gx_scroll_wheel_row_height_set((GX_SCROLL_WHEEL *) a, b) 3369 #define gx_scroll_wheel_selected_background_set(a, b) _gx_scroll_wheel_selected_background_set((GX_SCROLL_WHEEL *) a, b) 3370 #define gx_scroll_wheel_selected_get(a, b) _gx_scroll_wheel_selected_get((GX_SCROLL_WHEEL *) a, b) 3371 #define gx_scroll_wheel_selected_set(a, b) _gx_scroll_wheel_selected_set((GX_SCROLL_WHEEL *) a, b) 3372 #define gx_scroll_wheel_speed_set(a, b, c, d, e) _gx_scroll_wheel_speed_set((GX_SCROLL_WHEEL *) a, b, c, d, e) 3373 #define gx_scroll_wheel_total_rows_set(a, b) _gx_scroll_wheel_total_rows_set((GX_SCROLL_WHEEL *) a, b) 3374 3375 #define gx_single_line_text_input_backspace(a) _gx_single_line_text_input_backspace((GX_SINGLE_LINE_TEXT_INPUT *)a) 3376 #define gx_single_line_text_input_buffer_clear(a) _gx_single_line_text_input_buffer_clear((GX_SINGLE_LINE_TEXT_INPUT *)a) 3377 #define gx_single_line_text_input_buffer_get(a, b, c, d) _gx_single_line_text_input_buffer_get((GX_SINGLE_LINE_TEXT_INPUT *)a, b, c, d) 3378 #define gx_single_line_text_input_character_delete(a) _gx_single_line_text_input_character_delete(a) 3379 #define gx_single_line_text_input_character_insert(a, b, c) _gx_single_line_text_input_character_insert(a, b, c) 3380 #define gx_single_line_text_input_create(a, b, c, d, e, f, g, h) _gx_single_line_text_input_create(a, b, (GX_WIDGET *)c, d, e, f, g, h) 3381 #define gx_single_line_text_input_draw(a) _gx_single_line_text_input_draw(a) 3382 #define gx_single_line_text_input_draw_position_get(a, b, c) _gx_single_line_text_input_draw_position_get(a, b, c) 3383 #define gx_single_line_text_input_end(a) _gx_single_line_text_input_end((GX_SINGLE_LINE_TEXT_INPUT *)a) 3384 #define gx_single_line_text_input_event_process(a, b) _gx_single_line_text_input_event_process((GX_SINGLE_LINE_TEXT_INPUT *)a, b) 3385 #define gx_single_line_text_input_fill_color_set(a, b, c, d, e) _gx_single_line_text_input_fill_color_set((GX_SINGLE_LINE_TEXT_INPUT *)a, b, c, d, e) 3386 #define gx_single_line_text_input_home(a) _gx_single_line_text_input_home((GX_SINGLE_LINE_TEXT_INPUT *)a) 3387 #define gx_single_line_text_input_left_arrow(a) _gx_single_line_text_input_left_arrow((GX_SINGLE_LINE_TEXT_INPUT *)a) 3388 #define gx_single_line_text_input_position_get(a, b) _gx_single_line_text_input_position_get(a, b) 3389 #define gx_single_line_text_input_right_arrow(a) _gx_single_line_text_input_right_arrow((GX_SINGLE_LINE_TEXT_INPUT *)a) 3390 #define gx_single_line_text_input_style_add(a, b) _gx_single_line_text_input_style_add((GX_SINGLE_LINE_TEXT_INPUT *)a, b); 3391 #define gx_single_line_text_input_style_remove(a, b) _gx_single_line_text_input_style_remove((GX_SINGLE_LINE_TEXT_INPUT *)a, b) 3392 #define gx_single_line_text_input_style_set(a, b) _gx_single_line_text_input_style_set((GX_SINGLE_LINE_TEXT_INPUT *)a, b) 3393 #define gx_single_line_text_input_text_color_set(a, b, c, d, e) _gx_single_line_text_input_text_color_set((GX_SINGLE_LINE_TEXT_INPUT *)a, b, c, d, e) 3394 #define gx_single_line_text_input_text_select _gx_single_line_text_input_text_select 3395 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3396 #define gx_single_line_text_input_text_set _gx_single_line_text_input_text_set 3397 #endif 3398 #define gx_single_line_text_input_text_set_ext _gx_single_line_text_input_text_set_ext 3399 3400 #define gx_slider_create(a, b, c, d, e, f, g, h) _gx_slider_create(a, b, (GX_WIDGET *)c, d, e, f, g, h) 3401 #define gx_slider_draw _gx_slider_draw 3402 #define gx_slider_event_process _gx_slider_event_process 3403 #define gx_slider_info_set _gx_slider_info_set 3404 #define gx_slider_needle_draw _gx_slider_needle_draw 3405 #define gx_slider_needle_position_get _gx_slider_needle_position_get 3406 #define gx_slider_tickmarks_draw _gx_slider_tickmarks_draw 3407 #define gx_slider_travel_get _gx_slider_travel_get 3408 #define gx_slider_value_calculate _gx_slider_value_calculate 3409 #define gx_slider_value_set _gx_slider_value_set 3410 3411 #define gx_sprite_create(a, b, c, d, e, f, g, h) _gx_sprite_create(a, b, (GX_WIDGET *)c, d, e, f, g, h) 3412 #define gx_sprite_current_frame_set _gx_sprite_current_frame_set 3413 #define gx_sprite_frame_list_set _gx_sprite_frame_list_set 3414 #define gx_sprite_start(a, b) _gx_sprite_start(a, b) 3415 #define gx_sprite_stop(a) _gx_sprite_stop(a) 3416 3417 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3418 #define gx_string_scroll_wheel_create(a, b, c, d, e, f, g, h) _gx_string_scroll_wheel_create(a, b, c, d, e, f, g, h) 3419 #define gx_string_scroll_wheel_string_list_set _gx_string_scroll_wheel_string_list_set 3420 #endif 3421 #define gx_string_scroll_wheel_create_ext(a, b, c, d, e, f, g, h) _gx_string_scroll_wheel_create_ext(a, b, c, d, e, f, g, h) 3422 #define gx_string_scroll_wheel_event_process _gx_string_scroll_wheel_event_process 3423 #define gx_string_scroll_wheel_string_id_list_set _gx_string_scroll_wheel_string_id_list_set 3424 #define gx_string_scroll_wheel_string_list_set_ext _gx_string_scroll_wheel_string_list_set_ext 3425 3426 #define gx_system_active_language_set _gx_system_active_language_set 3427 3428 #if (GX_ANIMATION_POOL_SIZE > 0) 3429 #define gx_system_animation_get _gx_system_animation_get 3430 #define gx_system_animation_free _gx_system_animation_free 3431 #endif 3432 3433 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 3434 #define gx_system_bidi_text_enable _gx_system_bidi_text_enable 3435 #define gx_system_bidi_text_disable _gx_system_bidi_text_disable 3436 #endif 3437 3438 #if defined(GX_THAI_GLYPH_SHAPING_SUPPORT) 3439 #define gx_system_text_render_style_set _gx_system_text_render_style_set 3440 #endif 3441 3442 #define gx_system_canvas_refresh _gx_system_canvas_refresh 3443 #define gx_system_dirty_mark(a) _gx_system_dirty_mark((GX_WIDGET *)a); 3444 #define gx_system_dirty_partial_add(a, b) _gx_system_dirty_partial_add((GX_WIDGET *)a, b) 3445 #define gx_system_draw_context_get _gx_system_draw_context_get 3446 #define gx_system_event_fold _gx_system_event_fold 3447 #define gx_system_event_send _gx_system_event_send 3448 #define gx_system_focus_claim(a) _gx_system_focus_claim((GX_WIDGET *)a) 3449 #define gx_system_initialize _gx_system_initialize 3450 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3451 #define gx_system_language_table_get _gx_system_language_table_get 3452 #define gx_system_language_table_set _gx_system_language_table_set 3453 #endif 3454 #define gx_system_memory_allocator_set _gx_system_memory_allocator_set 3455 #define gx_system_pen_configure _gx_system_pen_configure 3456 #define gx_system_screen_stack_create _gx_system_screen_stack_create 3457 #define gx_system_screen_stack_get _gx_system_screen_stack_get 3458 #define gx_system_screen_stack_pop _gx_system_screen_stack_pop 3459 #define gx_system_screen_stack_push _gx_system_screen_stack_push 3460 #define gx_system_screen_stack_reset _gx_system_screen_stack_reset 3461 #define gx_system_scroll_appearance_get _gx_system_scroll_appearance_get 3462 #define gx_system_scroll_appearance_set _gx_system_scroll_appearance_set 3463 #define gx_system_start _gx_system_start 3464 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3465 #define gx_system_string_get _gx_system_string_get 3466 #define gx_system_string_table_get _gx_system_string_table_get 3467 #define gx_system_string_width_get _gx_system_string_width_get 3468 #endif 3469 #define gx_system_string_width_get_ext _gx_system_string_width_get_ext 3470 3471 #define gx_system_timer_start(a, b, c, d) _gx_system_timer_start((GX_WIDGET *)a, b, c, d) 3472 #define gx_system_timer_stop(a, b) _gx_system_timer_stop((GX_WIDGET *)a, b) 3473 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3474 #define gx_system_version_string_get _gx_system_version_string_get 3475 #endif 3476 #define gx_system_version_string_get_ext _gx_system_version_string_get_ext 3477 #define gx_system_widget_find _gx_system_widget_find 3478 3479 #define gx_text_button_create(a, b, c, d, e, f, g) _gx_text_button_create(a, b, (GX_WIDGET *)c, d, e, f, g) 3480 #define gx_text_button_draw _gx_text_button_draw 3481 #define gx_text_button_event_process _gx_text_button_event_process 3482 #define gx_text_button_font_set _gx_text_button_font_set 3483 #if defined(GUIX_5_4_0_COMPATIBILITY) 3484 #define gx_text_button_text_color_set(a, b, c) _gx_text_button_text_color_set((GX_TEXT_BUTTON *)a, b, c) 3485 #else 3486 #define gx_text_button_text_color_set _gx_text_button_text_color_set 3487 #endif 3488 #define gx_text_button_text_draw _gx_text_button_text_draw 3489 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3490 #define gx_text_button_text_get _gx_text_button_text_get 3491 #endif 3492 #define gx_text_button_text_get_ext _gx_text_button_text_get_ext 3493 #define gx_text_button_text_id_set _gx_text_button_text_id_set 3494 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3495 #define gx_text_button_text_set _gx_text_button_text_set 3496 #endif 3497 #define gx_text_button_text_set_ext _gx_text_button_text_set_ext 3498 3499 #define gx_text_input_cursor_blink_interval_set _gx_text_input_cursor_blink_interval_set 3500 #define gx_text_input_cursor_height_set _gx_text_input_cursor_height_set 3501 #define gx_text_input_cursor_width_set _gx_text_input_cursor_width_set 3502 3503 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3504 #define gx_text_scroll_wheel_callback_set(a, b) _gx_text_scroll_wheel_callback_set((GX_TEXT_SCROLL_WHEEL *)a, (GX_CONST GX_CHAR *(*)(GX_TEXT_SCROLL_WHEEL *, INT)) b) 3505 #endif 3506 #define gx_text_scroll_wheel_callback_set_ext(a, b) _gx_text_scroll_wheel_callback_set_ext((GX_TEXT_SCROLL_WHEEL *)a, (UINT(*)(GX_TEXT_SCROLL_WHEEL *, INT, GX_STRING *)) b) 3507 #define gx_text_scroll_wheel_font_set(a, b, c) _gx_text_scroll_wheel_font_set((GX_TEXT_SCROLL_WHEEL *) a, b, c) 3508 #if defined(GUIX_5_4_0_COMPATIBILITY) 3509 #define gx_text_scroll_wheel_text_color_set(a, b, c) _gx_text_scroll_wheel_text_color_set((GX_TEXT_SCROLL_WHEEL *) a, b, c, b) 3510 #else 3511 #define gx_text_scroll_wheel_text_color_set(a, b, c, d) _gx_text_scroll_wheel_text_color_set((GX_TEXT_SCROLL_WHEEL *) a, b, c, d) 3512 #endif 3513 #define gx_text_scroll_wheel_create _gx_text_scroll_wheel_create 3514 #define gx_text_scroll_wheel_draw _gx_text_scroll_wheel_draw 3515 #define gx_text_scroll_wheel_event_process _gx_text_scroll_wheel_event_process 3516 3517 #define gx_tree_view_create(a, b, c, d, e, f) _gx_tree_view_create((GX_TREE_VIEW *)a, b, (GX_WIDGET *)c, d, e, f) 3518 #define gx_tree_view_draw _gx_tree_view_draw 3519 #define gx_tree_view_event_process _gx_tree_view_event_process 3520 #define gx_tree_view_indentation_set _gx_tree_view_indentation_set 3521 #define gx_tree_view_position _gx_tree_view_position 3522 #define gx_tree_view_root_line_color_set _gx_tree_view_root_line_color_set 3523 #define gx_tree_view_root_pixelmap_set _gx_tree_view_root_pixelmap_set 3524 #define gx_tree_view_selected_get _gx_tree_view_selected_get 3525 #define gx_tree_view_selected_set _gx_tree_view_selected_set 3526 3527 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 3528 #define gx_utility_bidi_paragraph_reorder _gx_utility_bidi_paragraph_reorder 3529 #define gx_utility_bidi_paragraph_reorder_ext _gx_utility_bidi_paragraph_reorder_ext 3530 #define gx_utility_bidi_resolved_text_info_delete _gx_utility_bidi_resolved_text_info_delete 3531 #endif 3532 #define gx_utility_canvas_to_bmp _gx_utility_canvas_to_bmp 3533 #define gx_utility_gradient_create _gx_utility_gradient_create 3534 #define gx_utility_gradient_delete _gx_utility_gradient_delete 3535 #define gx_utility_circle_point_get _gx_utility_circle_point_get 3536 #define gx_utility_ltoa _gx_utility_ltoa 3537 #if defined(GUIX_5_4_0_COMPATIBILITY) 3538 #define gx_utility_math_acos _gx_utility_math_acos_5_4_0 3539 #define gx_utility_math_asin _gx_utility_math_asin_5_4_0 3540 #define gx_utility_math_cos _gx_utility_math_cos_5_4_0 3541 #define gx_utility_math_sin _gx_utility_math_sin_5_4_0 3542 #else 3543 #define gx_utility_math_acos _gx_utility_math_acos 3544 #define gx_utility_math_asin _gx_utility_math_asin 3545 #define gx_utility_math_cos _gx_utility_math_cos 3546 #define gx_utility_math_sin _gx_utility_math_sin 3547 #endif 3548 #define gx_utility_math_sqrt _gx_utility_math_sqrt 3549 #define gx_utility_pixelmap_resize _gx_utility_pixelmap_resize 3550 #define gx_utility_pixelmap_rotate _gx_utility_pixelmap_rotate 3551 #define gx_utility_pixelmap_simple_rotate _gx_utility_pixelmap_simple_rotate 3552 #define gx_utility_rectangle_center _gx_utility_rectangle_center 3553 #define gx_utility_rectangle_center_find _gx_utility_rectangle_center_find 3554 #define gx_utility_rectangle_combine _gx_utility_rectangle_combine 3555 #define gx_utility_rectangle_compare _gx_utility_rectangle_compare 3556 #define gx_utility_rectangle_define _gx_utility_rectangle_define 3557 #define gx_utility_rectangle_resize _gx_utility_rectangle_resize 3558 #define gx_utility_rectangle_overlap_detect _gx_utility_rectangle_overlap_detect 3559 #define gx_utility_rectangle_point_detect _gx_utility_rectangle_point_detect 3560 #define gx_utility_rectangle_shift _gx_utility_rectangle_shift 3561 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3562 #define gx_utility_string_to_alphamap _gx_utility_string_to_alphamap 3563 #endif 3564 #define gx_utility_string_to_alphamap_ext _gx_utility_string_to_alphamap_ext 3565 3566 #define gx_vertical_list_children_position _gx_vertical_list_children_position 3567 #define gx_vertical_list_create(a, b, c, d, e, f, g, h) _gx_vertical_list_create(a, b, (GX_WIDGET *)c, d, e, f, g, h) 3568 #define gx_vertical_list_event_process _gx_vertical_list_event_process 3569 #define gx_vertical_list_page_index_set(a, b) _gx_vertical_list_page_index_set((GX_VERTICAL_LIST *)a, b) 3570 #define gx_vertical_list_selected_index_get(a, b) _gx_vertical_list_selected_index_get(a, b) 3571 #define gx_vertical_list_selected_set(a, b) _gx_vertical_list_selected_set(a, b) 3572 #define gx_vertical_list_selected_widget_get(a, b) _gx_vertical_list_selected_widget_get(a, (GX_WIDGET **)b) 3573 #define gx_vertical_list_total_rows_set(a, b) _gx_vertical_list_total_rows_set((GX_VERTICAL_LIST *)a, b) 3574 3575 #define gx_vertical_scrollbar_create(a, b, c, d, e) _gx_vertical_scrollbar_create(a, b, (GX_WINDOW *)c, d, e) 3576 3577 #define gx_widget_allocate(a, b) _gx_widget_allocate((GX_WIDGET **)a, b) 3578 #define gx_widget_attach(a, b) _gx_widget_attach((GX_WIDGET *)a, (GX_WIDGET *)b) 3579 #define gx_widget_back_attach(a, b) _gx_widget_back_attach((GX_WIDGET *)a, (GX_WIDGET *)b) 3580 #define gx_widget_back_move(a, b) _gx_widget_back_move((GX_WIDGET *)a, b) 3581 #define gx_widget_background_draw(a) _gx_widget_background_draw((GX_WIDGET *)a) 3582 #define gx_widget_block_move(a, b, c, d) _gx_widget_block_move((GX_WIDGET *)a, b, c, d) 3583 #define gx_widget_border_draw(a, b, c, d, e) _gx_widget_border_draw((GX_WIDGET *)a, b, c, d, e) 3584 #define gx_widget_border_style_set(a, b) _gx_widget_border_style_set((GX_WIDGET *)a, b) 3585 #define gx_widget_border_width_get(a, b) _gx_widget_border_width_get((GX_WIDGET *)a, b) 3586 #define gx_widget_canvas_get(a, b) _gx_widget_canvas_get((GX_WIDGET *)a, b) 3587 #define gx_widget_child_detect(a, b, c) _gx_widget_child_detect((GX_WIDGET *)a, b, c) 3588 #define gx_widget_children_draw(a) _gx_widget_children_draw((GX_WIDGET *)a) 3589 #define gx_widget_client_get(a, b, c) _gx_widget_client_get((GX_WIDGET *)a, b, c) 3590 #define gx_widget_color_get(a, b, c) _gx_widget_color_get((GX_WIDGET *)a, b, c) 3591 #define gx_widget_create(a, b, c, d, e, f) _gx_widget_create((GX_WIDGET *)a, b, (GX_WIDGET *)c, d, e, f) 3592 #define gx_widget_created_test(a, b) _gx_widget_created_test((GX_WIDGET *)a, b) 3593 #define gx_widget_delete(a) _gx_widget_delete((GX_WIDGET *)a) 3594 #define gx_widget_detach(a) _gx_widget_detach((GX_WIDGET *)a) 3595 #define gx_widget_draw(a) _gx_widget_draw((GX_WIDGET *)a) 3596 #define gx_widget_draw_set(a, b) _gx_widget_draw_set((GX_WIDGET *)a, (void (*)(GX_WIDGET *))b) 3597 #define gx_widget_event_generate(a, b, c) _gx_widget_event_generate((GX_WIDGET *)a, b, c) 3598 #define gx_widget_event_process(a, b) _gx_widget_event_process((GX_WIDGET *)a, b) 3599 #define gx_widget_event_process_set(a, b) _gx_widget_event_process_set((GX_WIDGET *)a, (UINT (*)(GX_WIDGET *, GX_EVENT *)) b) 3600 #define gx_widget_event_to_parent(a, b) _gx_widget_event_to_parent((GX_WIDGET *)a, b) 3601 #if defined(GUIX_5_4_0_COMPATIBILITY) 3602 #define gx_widget_fill_color_set(a, b, c) _gx_widget_fill_color_set((GX_WIDGET *)a, b, c, b) 3603 #else 3604 #define gx_widget_fill_color_set(a, b, c, d) _gx_widget_fill_color_set((GX_WIDGET *)a, b, c, d) 3605 #endif 3606 #define gx_widget_find(a, b, c, d) _gx_widget_find((GX_WIDGET *)a, b, c, (GX_WIDGET **)d) 3607 #define gx_widget_first_child_get(a, b) _gx_widget_first_child_get((GX_WIDGET *) a, (GX_WIDGET **) b) 3608 #define gx_widget_focus_next(a) _gx_widget_focus_next((GX_WIDGET *)a) 3609 #define gx_widget_focus_previous(a) _gx_widget_focus_previous((GX_WIDGET *)a) 3610 #define gx_widget_font_get(a, b, c) _gx_widget_font_get((GX_WIDGET *)a, b, c) 3611 #define gx_widget_free(a) _gx_widget_free((GX_WIDGET *)a) 3612 #define gx_widget_front_move(a, b) _gx_widget_front_move((GX_WIDGET *)a, b) 3613 #define gx_widget_height_get(a, b) _gx_widget_height_get((GX_WIDGET *)a, b) 3614 #define gx_widget_hide(a) _gx_widget_hide((GX_WIDGET *)a) 3615 #define gx_widget_last_child_get(a, b) _gx_widget_last_child_get((GX_WIDGET *) a, (GX_WIDGET **) b) 3616 #define gx_widget_next_sibling_get(a, b) _gx_widget_next_sibling_get((GX_WIDGET *) a, (GX_WIDGET **) b) 3617 #define gx_widget_parent_get(a, b) _gx_widget_parent_get((GX_WIDGET *) a, (GX_WIDGET **) b) 3618 #define gx_widget_pixelmap_get(a, b, c) _gx_widget_pixelmap_get((GX_WIDGET *)a, b, c) 3619 #define gx_widget_previous_sibling_get(a, b) _gx_widget_previous_sibling_get((GX_WIDGET *) a, (GX_WIDGET **) b) 3620 #define gx_widget_resize(a, b) _gx_widget_resize((GX_WIDGET *)a, b) 3621 #define gx_widget_shift(a, b, c, d) _gx_widget_shift((GX_WIDGET *)a, b, c, d) 3622 #define gx_widget_show(a) _gx_widget_show((GX_WIDGET *)a) 3623 #define gx_widget_status_add(a, b) _gx_widget_status_add((GX_WIDGET *)a, b) 3624 #define gx_widget_status_get(a, b) _gx_widget_status_get((GX_WIDGET *)a, b) 3625 #define gx_widget_status_remove(a, b) _gx_widget_status_remove((GX_WIDGET *)a, b) 3626 #define gx_widget_status_test(a, b, c) _gx_widget_status_test((GX_WIDGET *)a, b, c) 3627 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3628 #define gx_widget_string_get(a, b, c) _gx_widget_string_get((GX_WIDGET *)a, b, c) 3629 #endif 3630 #define gx_widget_string_get_ext(a, b, c) _gx_widget_string_get_ext((GX_WIDGET *)a, b, c) 3631 #define gx_widget_style_add(a, b) _gx_widget_style_add((GX_WIDGET *)a, b) 3632 #define gx_widget_style_get(a, b) _gx_widget_style_get((GX_WIDGET *)a, b) 3633 #define gx_widget_style_remove(a, b) _gx_widget_style_remove((GX_WIDGET *)a, b) 3634 #define gx_widget_style_set(a, b) _gx_widget_style_set((GX_WIDGET *)a, b) 3635 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3636 #define gx_widget_text_blend(a, b, c, d, e, f, g) _gx_widget_text_blend((GX_WIDGET *)a, b, c, d, e, f, g) 3637 #define gx_widget_text_draw(a, b, c, d, e, f) _gx_widget_text_draw((GX_WIDGET *)a, b, c, d, e, f) 3638 #endif 3639 #define gx_widget_text_blend_ext(a, b, c, d, e, f, g) _gx_widget_text_blend_ext((GX_WIDGET *)a, b, c, d, e, f, g) 3640 #define gx_widget_text_draw_ext(a, b, c, d, e, f) _gx_widget_text_draw_ext((GX_WIDGET *)a, b, c, d, e, f) 3641 #define gx_widget_text_id_draw(a, b, c, d, e, f) _gx_widget_text_id_draw((GX_WIDGET *)a, b, c, d, e, f) 3642 #define gx_widget_top_visible_child_find(a, b) _gx_widget_top_visible_child_find((GX_WIDGET *) a, (GX_WIDGET **) b) 3643 #define gx_widget_type_find(a, b, c) _gx_widget_type_find((GX_WIDGET *)a, b, (GX_WIDGET **)c) 3644 #define gx_widget_width_get(a, b) _gx_widget_width_get((GX_WIDGET *)a, b) 3645 3646 #define gx_window_background_draw _gx_window_background_draw 3647 #define gx_window_client_height_get _gx_window_client_height_get 3648 #define gx_window_client_scroll _gx_window_client_scroll 3649 #define gx_window_client_width_get _gx_window_client_width_get 3650 #define gx_window_close(a) _gx_window_close((GX_WINDOW *) a) 3651 #define gx_window_create(a, b, c, d, e, f) _gx_window_create(a, b, (GX_WIDGET *)c, d, e, f) 3652 #define gx_window_draw _gx_window_draw 3653 #define gx_window_event_process _gx_window_event_process 3654 #define gx_window_execute _gx_window_execute 3655 #define gx_window_root_create _gx_window_root_create 3656 #define gx_window_root_delete _gx_window_root_delete 3657 #define gx_window_root_event_process _gx_window_root_event_process 3658 #define gx_window_root_find(a, b) _gx_window_root_find((GX_WIDGET *)a, b) 3659 #define gx_window_scroll_info_get _gx_window_scroll_info_get 3660 #define gx_window_scrollbar_find _gx_window_scrollbar_find 3661 #define gx_window_wallpaper_get _gx_window_wallpaper_get 3662 #define gx_window_wallpaper_set(a, b, c) _gx_window_wallpaper_set((GX_WINDOW *)a, b, c) 3663 3664 /* Define the non-error checking function prototypes of the GUIX API. These are the routines called when the application code is built with 3665 GX_DISABLE_ERROR_CHECKING defined. */ 3666 3667 UINT _gx_accordion_menu_create(GX_ACCORDION_MENU *accordion, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 3668 ULONG style, USHORT accordion_menu_id, GX_CONST GX_RECTANGLE *size); 3669 VOID _gx_accordion_menu_draw(GX_ACCORDION_MENU *menu); 3670 UINT _gx_accordion_menu_event_process(GX_ACCORDION_MENU *accordion, GX_EVENT *event_ptr); 3671 UINT _gx_accordion_menu_position(GX_ACCORDION_MENU *accordion); 3672 3673 UINT _gx_animation_canvas_define(GX_ANIMATION *animation, GX_CANVAS *canvas); 3674 UINT _gx_animation_create(GX_ANIMATION *animation); 3675 UINT _gx_animation_delete(GX_ANIMATION *target, GX_WIDGET *parent); 3676 UINT _gx_animation_drag_disable(GX_ANIMATION *animation, GX_WIDGET *widget); 3677 UINT _gx_animation_drag_enable(GX_ANIMATION *animation, GX_WIDGET *widget, GX_ANIMATION_INFO *info); 3678 UINT _gx_animation_landing_speed_set(GX_ANIMATION *animation, USHORT shift_per_step); 3679 UINT _gx_animation_start(GX_ANIMATION *animation, GX_ANIMATION_INFO *info); 3680 UINT _gx_animation_stop(GX_ANIMATION *animation); 3681 3682 UINT _gx_binres_language_count_get(GX_UBYTE *root_address, GX_VALUE *put_count); 3683 UINT _gx_binres_language_info_load(GX_UBYTE *root_address, GX_LANGUAGE_HEADER *put_info); 3684 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3685 UINT _gx_binres_language_table_load(GX_UBYTE *root_address, GX_UBYTE ****returned_language_table); 3686 #endif 3687 UINT _gx_binres_language_table_load_ext(GX_UBYTE *root_address, GX_STRING ***returned_language_table); 3688 UINT _gx_binres_theme_load(GX_UBYTE *root_address, INT theme_id, GX_THEME **returned_theme); 3689 UINT _gx_binres_pixelmap_load(GX_UBYTE *root_address, UINT map_index, GX_PIXELMAP *pixelmap); 3690 UINT _gx_binres_font_load(GX_UBYTE *root_address, UINT font_index, GX_UBYTE *buffer, ULONG *buffer_size); 3691 3692 UINT _gx_brush_default(GX_BRUSH *brush); 3693 UINT _gx_brush_define(GX_BRUSH *brush, GX_COLOR line_color, GX_COLOR fill_color, UINT style); 3694 3695 VOID _gx_button_background_draw(GX_BUTTON *button); 3696 UINT _gx_button_create(GX_BUTTON *button, 3697 GX_CONST GX_CHAR *name, 3698 GX_WIDGET *parent, 3699 ULONG style, USHORT Id, 3700 GX_CONST GX_RECTANGLE *size); 3701 UINT _gx_button_deselect(GX_BUTTON *button, GX_BOOL gen_event); 3702 VOID _gx_button_draw(GX_BUTTON *button); 3703 UINT _gx_button_event_process(GX_BUTTON *button, GX_EVENT *event_ptr); 3704 UINT _gx_button_select(GX_BUTTON *button); 3705 3706 UINT _gx_canvas_alpha_set(GX_CANVAS *canvas, GX_UBYTE alpha); 3707 UINT _gx_canvas_arc_draw(INT xcenter, INT ycenter, UINT r, INT start_angle, INT end_angle); 3708 UINT _gx_canvas_block_move(GX_RECTANGLE *block, GX_VALUE x_shift, GX_VALUE y_shift, GX_RECTANGLE *dirty); 3709 UINT _gx_canvas_circle_draw(INT xcenter, INT ycenter, UINT r); 3710 UINT _gx_canvas_create(GX_CANVAS *canvas, GX_CONST GX_CHAR *name, GX_DISPLAY *display, 3711 UINT type, UINT width, UINT height, GX_COLOR *memory_area, ULONG memory_size); 3712 UINT _gx_canvas_delete(GX_CANVAS *canvas); 3713 UINT _gx_canvas_drawing_complete(GX_CANVAS *canvas, GX_BOOL Flush); 3714 UINT _gx_canvas_drawing_initiate(GX_CANVAS *canvas, GX_WIDGET *who, GX_RECTANGLE *dirty_area); 3715 UINT _gx_canvas_ellipse_draw(INT xcenter, INT ycenter, INT a, INT b); 3716 UINT _gx_canvas_hardware_layer_bind(GX_CANVAS *canvas, INT layer); 3717 UINT _gx_canvas_hide(GX_CANVAS *canvas); 3718 UINT _gx_canvas_line_draw(GX_VALUE x_start, GX_VALUE y_start, GX_VALUE x_end, GX_VALUE y_end); 3719 UINT _gx_canvas_memory_define(GX_CANVAS *canvas, GX_COLOR *memory, ULONG memsize); 3720 3721 #if defined(GX_MOUSE_SUPPORT) 3722 UINT _gx_canvas_mouse_define(GX_CANVAS *canvas, GX_MOUSE_CURSOR_INFO *info); 3723 UINT _gx_canvas_mouse_hide(GX_CANVAS *canvas); 3724 UINT _gx_canvas_mouse_show(GX_CANVAS *canvas); 3725 #endif 3726 UINT _gx_canvas_offset_set(GX_CANVAS *canvas, GX_VALUE x, GX_VALUE y); 3727 UINT _gx_canvas_pie_draw(INT xcenter, INT ycenter, UINT r, INT start_angle, INT end_angle); 3728 UINT _gx_canvas_pixel_draw(GX_POINT position); 3729 UINT _gx_canvas_pixelmap_blend(GX_VALUE x_position, GX_VALUE y_position, GX_PIXELMAP *pixelmap, GX_UBYTE alpha); 3730 UINT _gx_canvas_pixelmap_draw(GX_VALUE x_position, GX_VALUE y_position, GX_PIXELMAP *pixelmap); 3731 UINT _gx_canvas_pixelmap_get(GX_PIXELMAP *pixelmap); 3732 UINT _gx_canvas_pixelmap_rotate(GX_VALUE x_position, GX_VALUE y_position, GX_PIXELMAP *pixelmap, 3733 INT angle, INT rot_cx, INT rot_cy); 3734 UINT _gx_canvas_pixelmap_tile(GX_RECTANGLE *fill, GX_PIXELMAP *pixelmap); 3735 UINT _gx_canvas_polygon_draw(GX_POINT *point_array, INT number_of_points); 3736 UINT _gx_canvas_rectangle_draw(GX_RECTANGLE *rectangle); 3737 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3738 UINT _gx_canvas_rotated_text_draw(GX_CONST GX_CHAR *text, GX_VALUE xcenter, GX_VALUE ycenter, INT angle); 3739 #endif 3740 UINT _gx_canvas_rotated_text_draw_ext(GX_CONST GX_STRING *text, GX_VALUE xcenter, GX_VALUE ycenter, INT angle); 3741 UINT _gx_canvas_shift(GX_CANVAS *canvas, GX_VALUE x, GX_VALUE y); 3742 UINT _gx_canvas_show(GX_CANVAS *canvas); 3743 3744 UINT _gx_canvas_aligned_text_draw(GX_CONST GX_STRING *string, GX_RECTANGLE *rectangle, ULONG alignment); 3745 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3746 UINT _gx_canvas_text_draw(GX_VALUE x_start, GX_VALUE y_start, GX_CONST GX_CHAR *string, INT length); 3747 #endif 3748 UINT _gx_canvas_text_draw_ext(GX_VALUE x_start, GX_VALUE y_start, GX_CONST GX_STRING *string); 3749 3750 UINT _gx_checkbox_create(GX_CHECKBOX *checkbox, 3751 GX_CONST GX_CHAR *name, 3752 GX_WIDGET *parent, 3753 GX_RESOURCE_ID text_id, ULONG style, USHORT checkbox_id, 3754 GX_CONST GX_RECTANGLE *size); 3755 VOID _gx_checkbox_draw(GX_CHECKBOX *checkbox); 3756 UINT _gx_checkbox_event_process(GX_CHECKBOX *checkbox, GX_EVENT *event_ptr); 3757 UINT _gx_checkbox_pixelmap_set(GX_CHECKBOX *button, GX_RESOURCE_ID unchecked_id, GX_RESOURCE_ID checked_id, 3758 GX_RESOURCE_ID unchecked_disabled_id, GX_RESOURCE_ID checked_disabled_id); 3759 UINT _gx_checkbox_select(GX_CHECKBOX *checkbox); 3760 3761 UINT _gx_circular_gauge_angle_get(GX_CIRCULAR_GAUGE *circular_gauge, INT *angle); 3762 UINT _gx_circular_gauge_angle_set(GX_CIRCULAR_GAUGE *circular_gauge, INT angle); 3763 UINT _gx_circular_gauge_animation_set(GX_CIRCULAR_GAUGE *circular_gauge, INT steps, INT delay); 3764 VOID _gx_circular_gauge_background_draw(GX_CIRCULAR_GAUGE *gauge); 3765 UINT _gx_circular_gauge_create(GX_CIRCULAR_GAUGE *circular_gauge, 3766 GX_CONST GX_CHAR *name, 3767 GX_WIDGET *parent, 3768 GX_CIRCULAR_GAUGE_INFO *circular_gauge_info, 3769 GX_RESOURCE_ID background, 3770 ULONG style, 3771 USHORT circular_gauge_id, 3772 GX_VALUE xpos, GX_VALUE ypos); 3773 VOID _gx_circular_gauge_draw(GX_CIRCULAR_GAUGE *circular_gauge); 3774 UINT _gx_circular_gauge_event_process(GX_CIRCULAR_GAUGE *circular_gauge, GX_EVENT *event_ptr); 3775 3776 UINT _gx_context_brush_default(GX_DRAW_CONTEXT *context); 3777 UINT _gx_context_brush_define(GX_RESOURCE_ID line_color_id, GX_RESOURCE_ID fill_color_id, UINT style); 3778 UINT _gx_context_brush_get(GX_BRUSH **return_brush); 3779 UINT _gx_context_brush_pattern_set(ULONG pattern); 3780 UINT _gx_context_brush_set(GX_BRUSH *brush); 3781 UINT _gx_context_brush_style_set(UINT style); 3782 UINT _gx_context_brush_width_set(UINT width); 3783 UINT _gx_context_color_get(GX_RESOURCE_ID color_id, GX_COLOR *return_color); 3784 UINT _gx_context_fill_color_set(GX_RESOURCE_ID fill_color_id); 3785 UINT _gx_context_font_get(GX_RESOURCE_ID color_id, GX_FONT **return_font); 3786 UINT _gx_context_font_set(GX_RESOURCE_ID font_id); 3787 UINT _gx_context_line_color_set(GX_RESOURCE_ID line_color_id); 3788 UINT _gx_context_pixelmap_get(GX_RESOURCE_ID pixelmap_id, GX_PIXELMAP **return_pixelmap); 3789 UINT _gx_context_pixelmap_set(GX_RESOURCE_ID pixelmap_id); 3790 UINT _gx_context_raw_brush_define(GX_COLOR line_color, GX_COLOR fill_color, UINT style); 3791 UINT _gx_context_raw_fill_color_set(GX_COLOR line_color); 3792 UINT _gx_context_raw_line_color_set(GX_COLOR line_color); 3793 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3794 UINT _gx_context_string_get(GX_RESOURCE_ID string_id, GX_CONST GX_CHAR **return_string); 3795 #endif 3796 UINT _gx_context_string_get_ext(GX_RESOURCE_ID string_id, GX_STRING *return_string); 3797 3798 UINT _gx_display_active_language_set(GX_DISPLAY *display, GX_UBYTE language); 3799 UINT _gx_display_color_set(GX_DISPLAY *display, GX_RESOURCE_ID resource_id, GX_COLOR new_color); 3800 UINT _gx_display_color_table_set(GX_DISPLAY *display, GX_COLOR *color_table, INT number_of_colors); 3801 UINT _gx_display_create(GX_DISPLAY *display, GX_CONST GX_CHAR *name, UINT (*display_driver_setup)(GX_DISPLAY *), GX_VALUE xres, GX_VALUE yres); 3802 UINT _gx_display_delete(GX_DISPLAY *display, VOID (*display_driver_cleanup)(GX_DISPLAY *)); 3803 UINT _gx_display_font_table_set(GX_DISPLAY *display, GX_FONT **font_table, UINT number_of_fonts); 3804 3805 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3806 UINT _gx_display_language_table_get(GX_DISPLAY *display, GX_CHAR ****table, GX_UBYTE *language_count, UINT *string_count); 3807 UINT _gx_display_language_table_set(GX_DISPLAY *display, GX_CHAR ***table, GX_UBYTE num_languages, UINT number_of_strings); 3808 #endif 3809 UINT _gx_display_language_table_get_ext(GX_DISPLAY *display, GX_STRING ***table, GX_UBYTE *language_count, UINT *string_count); 3810 UINT _gx_display_language_table_set_ext(GX_DISPLAY *display, GX_CONST GX_STRING **table, GX_UBYTE num_languages, UINT number_of_strings); 3811 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 3812 UINT _gx_display_language_direction_table_set(GX_DISPLAY *display, GX_CONST GX_UBYTE *language_direction_table, GX_UBYTE num_languages); 3813 #endif 3814 UINT _gx_display_pixelmap_table_set(GX_DISPLAY *display, GX_PIXELMAP **pixelmap_table, UINT number_of_pixelmaps); 3815 3816 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3817 UINT _gx_display_string_get(GX_DISPLAY *display, GX_RESOURCE_ID string_id, GX_CONST GX_CHAR **return_string); 3818 UINT _gx_display_string_table_get(GX_DISPLAY *display, GX_UBYTE language, GX_CHAR ***table, UINT *size); 3819 #endif 3820 UINT _gx_display_string_get_ext(GX_DISPLAY *display, GX_RESOURCE_ID string_id, GX_STRING *return_string); 3821 UINT _gx_display_string_table_get_ext(GX_DISPLAY *display, GX_UBYTE language, GX_STRING **table, UINT *size); 3822 3823 UINT _gx_display_theme_install(GX_DISPLAY *display, GX_CONST GX_THEME *theme_ptr); 3824 3825 UINT _gx_drop_list_close(GX_DROP_LIST *drop_list); 3826 UINT _gx_drop_list_create(GX_DROP_LIST *drop_list, 3827 GX_CONST GX_CHAR *name, 3828 GX_WIDGET *parent, 3829 INT total_rows, INT open_height, 3830 VOID (*callback)(GX_VERTICAL_LIST *, GX_WIDGET *, INT), 3831 ULONG style, USHORT drop_list_id, 3832 GX_CONST GX_RECTANGLE *size); 3833 UINT _gx_drop_list_event_process(GX_DROP_LIST *list, GX_EVENT *event_ptr); 3834 UINT _gx_drop_list_open(GX_DROP_LIST *list); 3835 UINT _gx_drop_list_pixelmap_set(GX_DROP_LIST *drop_list, GX_RESOURCE_ID pixelmap_id); 3836 UINT _gx_drop_list_popup_get(GX_DROP_LIST *box, GX_VERTICAL_LIST **return_list); 3837 3838 UINT _gx_generic_scroll_wheel_create(GX_GENERIC_SCROLL_WHEEL *wheel, 3839 GX_CONST GX_CHAR *name, 3840 GX_WIDGET *parent, 3841 INT total_rows, 3842 VOID (*callback)(GX_GENERIC_SCROLL_WHEEL *, GX_WIDGET *, INT), 3843 ULONG style, 3844 USHORT id, 3845 GX_CONST GX_RECTANGLE *size); 3846 UINT _gx_generic_scroll_wheel_children_position(GX_GENERIC_SCROLL_WHEEL *wheel); 3847 UINT _gx_generic_scroll_wheel_event_process(GX_GENERIC_SCROLL_WHEEL *wheel, GX_EVENT *event_ptr); 3848 UINT _gx_generic_scroll_wheel_row_height_set(GX_GENERIC_SCROLL_WHEEL *wheel, GX_VALUE row_height); 3849 UINT _gx_generic_scroll_wheel_total_rows_set(GX_GENERIC_SCROLL_WHEEL *wheel, INT count); 3850 3851 UINT _gx_horizontal_list_children_position(GX_HORIZONTAL_LIST *horizontal_list); 3852 UINT _gx_horizontal_list_create(GX_HORIZONTAL_LIST *horizontal_list, 3853 GX_CONST GX_CHAR *name, 3854 GX_WIDGET *parent, 3855 INT total_columns, 3856 VOID (*callback)(GX_HORIZONTAL_LIST *, GX_WIDGET *, INT), 3857 ULONG style, USHORT horizontal_list_id, 3858 GX_CONST GX_RECTANGLE *size); 3859 UINT _gx_horizontal_list_event_process(GX_HORIZONTAL_LIST *list, GX_EVENT *event_ptr); 3860 UINT _gx_horizontal_list_page_index_set(GX_HORIZONTAL_LIST *list, INT index); 3861 UINT _gx_horizontal_list_selected_index_get(GX_HORIZONTAL_LIST *horizontal_list, INT *return_index); 3862 UINT _gx_horizontal_list_selected_set(GX_HORIZONTAL_LIST *horizontal_list, INT index); 3863 UINT _gx_horizontal_list_selected_widget_get(GX_HORIZONTAL_LIST *horizontal_list, GX_WIDGET **return_list_entry); 3864 UINT _gx_horizontal_list_total_columns_set(GX_HORIZONTAL_LIST *horizontal_list, INT count); 3865 3866 UINT _gx_horizontal_scrollbar_create(GX_SCROLLBAR *scrollbar, GX_CONST GX_CHAR *name, 3867 GX_WINDOW *parent, GX_SCROLLBAR_APPEARANCE *appearance, ULONG style); 3868 3869 VOID _gx_icon_background_draw(GX_ICON *icon); 3870 UINT _gx_icon_button_create(GX_ICON_BUTTON *button, 3871 GX_CONST GX_CHAR *name, 3872 GX_WIDGET *parent, 3873 GX_RESOURCE_ID icon_id, 3874 ULONG style, USHORT icon_button_id, 3875 GX_CONST GX_RECTANGLE *size); 3876 VOID _gx_icon_button_draw(GX_ICON_BUTTON *button); 3877 UINT _gx_icon_button_pixelmap_set(GX_ICON_BUTTON *button, GX_RESOURCE_ID icon_id); 3878 UINT _gx_icon_create(GX_ICON *icon, 3879 GX_CONST GX_CHAR *name, 3880 GX_WIDGET *parent, 3881 GX_RESOURCE_ID pixelmap_id, ULONG style, 3882 USHORT icon_id, GX_VALUE x, GX_VALUE y); 3883 VOID _gx_icon_draw(GX_ICON *icon); 3884 UINT _gx_icon_event_process(GX_ICON *icon, GX_EVENT *event_ptr); 3885 UINT _gx_icon_pixelmap_set(GX_ICON *icon, GX_RESOURCE_ID normal_id, GX_RESOURCE_ID selected_id); 3886 3887 UINT _gx_image_reader_create(GX_IMAGE_READER *image_reader, 3888 GX_CONST GX_UBYTE *read_data, 3889 INT read_data_size, 3890 GX_UBYTE color_format, 3891 GX_UBYTE mode); 3892 UINT _gx_image_reader_palette_set(GX_IMAGE_READER *image_reader, GX_COLOR *pal, UINT palsize); 3893 UINT _gx_image_reader_start(GX_IMAGE_READER *image_reader, GX_PIXELMAP *outmap); 3894 3895 VOID _gx_line_chart_axis_draw(GX_LINE_CHART *chart); 3896 UINT _gx_line_chart_create(GX_LINE_CHART *chart, 3897 GX_CONST GX_CHAR *name, 3898 GX_WIDGET *parent, 3899 GX_CONST GX_LINE_CHART_INFO *info, 3900 ULONG style, 3901 USHORT chart_id, 3902 GX_CONST GX_RECTANGLE *size); 3903 VOID _gx_line_chart_data_draw(GX_LINE_CHART *chart); 3904 VOID _gx_line_chart_draw(GX_LINE_CHART *chart); 3905 UINT _gx_line_chart_update(GX_LINE_CHART *chart, INT *data, INT data_count); 3906 UINT _gx_line_chart_y_scale_calculate(GX_LINE_CHART *chart, INT *return_val); 3907 3908 UINT _gx_menu_create(GX_MENU *menu, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 3909 GX_RESOURCE_ID text_id, GX_RESOURCE_ID fill_id, 3910 ULONG style, USHORT menu_id, GX_CONST GX_RECTANGLE *size); 3911 VOID _gx_menu_draw(GX_MENU *menu); 3912 UINT _gx_menu_event_process(GX_MENU *menu, GX_EVENT *event_ptr); 3913 UINT _gx_menu_insert(GX_MENU *menu, GX_WIDGET *widget); 3914 UINT _gx_menu_remove(GX_MENU *menu, GX_WIDGET *widget); 3915 UINT _gx_menu_remove(GX_MENU *menu, GX_WIDGET *widget); 3916 VOID _gx_menu_text_draw(GX_MENU *menu); 3917 UINT _gx_menu_text_offset_set(GX_MENU *menu, GX_VALUE x_offset, GX_VALUE y_offset); 3918 3919 UINT _gx_multi_line_text_button_create(GX_MULTI_LINE_TEXT_BUTTON *button, GX_CONST GX_CHAR *name, 3920 GX_WIDGET *parent, GX_RESOURCE_ID text_id, ULONG style, USHORT Id, 3921 GX_CONST GX_RECTANGLE *size); 3922 VOID _gx_multi_line_text_button_draw(GX_MULTI_LINE_TEXT_BUTTON *button); 3923 UINT _gx_multi_line_text_button_event_process(GX_MULTI_LINE_TEXT_BUTTON *button, GX_EVENT *event_ptr); 3924 VOID _gx_multi_line_text_button_text_draw(GX_MULTI_LINE_TEXT_BUTTON *button); 3925 UINT _gx_multi_line_text_button_text_id_set(GX_MULTI_LINE_TEXT_BUTTON *button, GX_RESOURCE_ID string_id); 3926 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3927 UINT _gx_multi_line_text_button_text_set(GX_MULTI_LINE_TEXT_BUTTON *button, GX_CONST GX_CHAR *text); 3928 #endif 3929 UINT _gx_multi_line_text_button_text_set_ext(GX_MULTI_LINE_TEXT_BUTTON *button, GX_CONST GX_STRING text); 3930 3931 UINT _gx_multi_line_text_input_backspace(GX_MULTI_LINE_TEXT_INPUT *text_input); 3932 UINT _gx_multi_line_text_input_buffer_clear(GX_MULTI_LINE_TEXT_INPUT *text_input_ptr); 3933 UINT _gx_multi_line_text_input_buffer_get(GX_MULTI_LINE_TEXT_INPUT *text_input_ptr, GX_CHAR **buffer_address, 3934 UINT *content_size, UINT *buffer_size); 3935 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3936 UINT _gx_multi_line_text_input_char_insert(GX_MULTI_LINE_TEXT_INPUT *text_input, GX_UBYTE *str, UINT str_size); 3937 #endif 3938 UINT _gx_multi_line_text_input_char_insert_ext(GX_MULTI_LINE_TEXT_INPUT *text_input, GX_CONST GX_STRING *str); 3939 UINT _gx_multi_line_text_input_create(GX_MULTI_LINE_TEXT_INPUT *text_input_ptr, 3940 GX_CONST GX_CHAR *name_ptr, GX_WIDGET *parent, 3941 GX_CHAR *input_buffer, UINT buffer_size, 3942 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size); 3943 UINT _gx_multi_line_text_input_cursor_pos_get(GX_MULTI_LINE_TEXT_INPUT *input, GX_POINT *cursor_pos); 3944 UINT _gx_multi_line_text_input_delete(GX_MULTI_LINE_TEXT_INPUT *text_input); 3945 UINT _gx_multi_line_text_input_down_arrow(GX_MULTI_LINE_TEXT_INPUT *text_input); 3946 UINT _gx_multi_line_text_input_end(GX_MULTI_LINE_TEXT_INPUT *text_input); 3947 UINT _gx_multi_line_text_input_event_process(GX_MULTI_LINE_TEXT_INPUT *input, GX_EVENT *event_ptr); 3948 UINT _gx_multi_line_text_input_style_add(GX_MULTI_LINE_TEXT_INPUT *text_input_ptr, ULONG cursor_type); 3949 UINT _gx_multi_line_text_input_style_remove(GX_MULTI_LINE_TEXT_INPUT *text_input_ptr, ULONG cursor_type); 3950 UINT _gx_multi_line_text_input_style_set(GX_MULTI_LINE_TEXT_INPUT *text_input_ptr, ULONG cursor_type); 3951 UINT _gx_multi_line_text_input_fill_color_set(GX_MULTI_LINE_TEXT_INPUT *view, 3952 GX_RESOURCE_ID normal_id, 3953 GX_RESOURCE_ID selected_id, 3954 GX_RESOURCE_ID disabled_id, 3955 GX_RESOURCE_ID readonly_id); 3956 UINT _gx_multi_line_text_input_home(GX_MULTI_LINE_TEXT_INPUT *text_input); 3957 UINT _gx_multi_line_text_input_left_arrow(GX_MULTI_LINE_TEXT_INPUT *text_input); 3958 UINT _gx_multi_line_text_input_right_arrow(GX_MULTI_LINE_TEXT_INPUT *text_input); 3959 UINT _gx_multi_line_text_input_text_color_set(GX_MULTI_LINE_TEXT_INPUT *view, 3960 GX_RESOURCE_ID normal_id, 3961 GX_RESOURCE_ID selected_id, 3962 GX_RESOURCE_ID disabled_id, 3963 GX_RESOURCE_ID readonly_id); 3964 UINT _gx_multi_line_text_input_text_select(GX_MULTI_LINE_TEXT_INPUT *input, UINT start_index, UINT end_index); 3965 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3966 UINT _gx_multi_line_text_input_text_set(GX_MULTI_LINE_TEXT_INPUT *text_input, GX_CONST GX_CHAR *text); 3967 #endif 3968 UINT _gx_multi_line_text_input_text_set_ext(GX_MULTI_LINE_TEXT_INPUT *text_input, GX_CONST GX_STRING *text); 3969 UINT _gx_multi_line_text_input_up_arrow(GX_MULTI_LINE_TEXT_INPUT *text_input); 3970 3971 UINT _gx_multi_line_text_view_create(GX_MULTI_LINE_TEXT_VIEW *text_view_ptr, 3972 GX_CONST GX_CHAR *name_ptr, GX_WIDGET *parent, 3973 GX_RESOURCE_ID text_id, ULONG style, USHORT Id, 3974 GX_CONST GX_RECTANGLE *size); 3975 VOID _gx_multi_line_text_view_draw(GX_MULTI_LINE_TEXT_VIEW *view); 3976 UINT _gx_multi_line_text_view_event_process(GX_MULTI_LINE_TEXT_VIEW *view, GX_EVENT *event_ptr); 3977 UINT _gx_multi_line_text_view_font_set(GX_MULTI_LINE_TEXT_VIEW *view, GX_RESOURCE_ID font_id); 3978 UINT _gx_multi_line_text_view_line_space_set(GX_MULTI_LINE_TEXT_VIEW *view, GX_BYTE line_space); 3979 UINT _gx_multi_line_text_view_scroll_info_get(GX_MULTI_LINE_TEXT_VIEW *view, ULONG style, GX_SCROLL_INFO *return_scroll_info); 3980 UINT _gx_multi_line_text_view_text_color_set(GX_MULTI_LINE_TEXT_VIEW *view, GX_RESOURCE_ID normal_id, GX_RESOURCE_ID selected_id, GX_RESOURCE_ID disabled_id); 3981 UINT _gx_multi_line_text_view_text_id_set(GX_MULTI_LINE_TEXT_VIEW *text_view_ptr, GX_RESOURCE_ID text_id); 3982 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 3983 UINT _gx_multi_line_text_view_text_set(GX_MULTI_LINE_TEXT_VIEW *view, GX_CONST GX_CHAR *text); 3984 #endif 3985 UINT _gx_multi_line_text_view_text_set_ext(GX_MULTI_LINE_TEXT_VIEW *view, GX_CONST GX_STRING *text); 3986 UINT _gx_multi_line_text_view_whitespace_set(GX_MULTI_LINE_TEXT_VIEW *view, GX_UBYTE whitespace); 3987 3988 UINT _gx_rich_text_view_create(GX_RICH_TEXT_VIEW *rich_view, 3989 GX_CONST GX_CHAR *name, 3990 GX_WIDGET *parent, 3991 GX_RESOURCE_ID text_id, 3992 GX_RICH_TEXT_FONTS *fonts, 3993 ULONG style, 3994 USHORT id, 3995 GX_CONST GX_RECTANGLE *size); 3996 VOID _gx_rich_text_view_draw(GX_RICH_TEXT_VIEW *text_view); 3997 VOID _gx_rich_text_view_text_draw(GX_RICH_TEXT_VIEW *text_view); 3998 UINT _gx_rich_text_view_fonts_set(GX_RICH_TEXT_VIEW *rich_view, GX_RICH_TEXT_FONTS *fonts); 3999 4000 UINT _gx_numeric_pixelmap_prompt_create(GX_NUMERIC_PIXELMAP_PROMPT *prompt, 4001 GX_CONST GX_CHAR *name, GX_WIDGET *parent, 4002 GX_RESOURCE_ID text_id, GX_RESOURCE_ID fill_id, 4003 ULONG style, USHORT pixelmap_prompt_id, 4004 GX_CONST GX_RECTANGLE *size); 4005 UINT _gx_numeric_pixelmap_prompt_format_function_set(GX_NUMERIC_PIXELMAP_PROMPT *prompt, VOID (*format_func)(GX_NUMERIC_PIXELMAP_PROMPT *, INT)); 4006 UINT _gx_numeric_pixelmap_prompt_value_set(GX_NUMERIC_PIXELMAP_PROMPT *prompt, INT value); 4007 4008 UINT _gx_numeric_prompt_create(GX_NUMERIC_PROMPT *prompt, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 4009 GX_RESOURCE_ID text_id, ULONG style, USHORT prompt_id, GX_CONST GX_RECTANGLE *size); 4010 UINT _gx_numeric_prompt_format_function_set(GX_NUMERIC_PROMPT *prompt, VOID (*format_func)(GX_NUMERIC_PROMPT *, INT)); 4011 UINT _gx_numeric_prompt_value_set(GX_NUMERIC_PROMPT *prompt, INT value); 4012 4013 UINT _gx_numeric_scroll_wheel_create(GX_NUMERIC_SCROLL_WHEEL *wheel, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 4014 INT start_val, INT end_val, 4015 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size); 4016 UINT _gx_numeric_scroll_wheel_range_set(GX_NUMERIC_SCROLL_WHEEL *wheel, INT start_val, INT end_val); 4017 4018 UINT _gx_pixelmap_button_create(GX_PIXELMAP_BUTTON *button, 4019 GX_CONST GX_CHAR *name, 4020 GX_WIDGET *parent, GX_RESOURCE_ID normal_id, 4021 GX_RESOURCE_ID selected_id, GX_RESOURCE_ID disabled_id, 4022 ULONG style, USHORT pixelmap_button_id, 4023 GX_CONST GX_RECTANGLE *size); 4024 VOID _gx_pixelmap_button_draw(GX_PIXELMAP_BUTTON *button); 4025 UINT _gx_pixelmap_button_event_process(GX_PIXELMAP_BUTTON *button, GX_EVENT *event_ptr); 4026 UINT _gx_pixelmap_button_pixelmap_set(GX_PIXELMAP_BUTTON *button, GX_RESOURCE_ID normal_id, GX_RESOURCE_ID selected_id, GX_RESOURCE_ID disabled_id); 4027 4028 UINT _gx_pixelmap_prompt_create(GX_PIXELMAP_PROMPT *prompt, 4029 GX_CONST GX_CHAR *name, GX_WIDGET *parent, GX_RESOURCE_ID text_id, 4030 GX_RESOURCE_ID normal_fill_id, ULONG style, USHORT prompt_id, 4031 GX_CONST GX_RECTANGLE *size); 4032 VOID _gx_pixelmap_prompt_draw(GX_PIXELMAP_PROMPT *prompt); 4033 UINT _gx_pixelmap_prompt_pixelmap_set(GX_PIXELMAP_PROMPT *prompt, 4034 GX_RESOURCE_ID normal_left_id, 4035 GX_RESOURCE_ID normal_fill_id, 4036 GX_RESOURCE_ID normal_right_id, 4037 GX_RESOURCE_ID selected_left_id, 4038 GX_RESOURCE_ID selected_fill_id, 4039 GX_RESOURCE_ID selected_right_id); 4040 4041 UINT _gx_pixelmap_slider_create(GX_PIXELMAP_SLIDER *slider, 4042 GX_CONST GX_CHAR *name, GX_WIDGET *parent, GX_SLIDER_INFO *info, 4043 GX_PIXELMAP_SLIDER_INFO *pixelmap_info, 4044 ULONG style, USHORT pixelmap_slider_id, 4045 GX_CONST GX_RECTANGLE *size); 4046 VOID _gx_pixelmap_slider_draw(GX_PIXELMAP_SLIDER *slider); 4047 UINT _gx_pixelmap_slider_event_process(GX_PIXELMAP_SLIDER *slider, GX_EVENT *event_ptr); 4048 UINT _gx_pixelmap_slider_pixelmap_set(GX_PIXELMAP_SLIDER *slider, GX_PIXELMAP_SLIDER_INFO *info); 4049 4050 VOID _gx_progress_bar_background_draw(GX_PROGRESS_BAR *progress_bar); 4051 UINT _gx_progress_bar_create(GX_PROGRESS_BAR *progress_bar, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 4052 GX_PROGRESS_BAR_INFO *progress_bar_info, ULONG style, 4053 USHORT progress_bar_id, GX_CONST GX_RECTANGLE *size); 4054 VOID _gx_progress_bar_draw(GX_PROGRESS_BAR *progress_bar); 4055 UINT _gx_progress_bar_event_process(GX_PROGRESS_BAR *progress_bar, GX_EVENT *event_ptr); 4056 UINT _gx_progress_bar_font_set(GX_PROGRESS_BAR *progress_bar, GX_RESOURCE_ID font_id); 4057 UINT _gx_progress_bar_info_set(GX_PROGRESS_BAR *progress_bar, GX_PROGRESS_BAR_INFO *info); 4058 UINT _gx_progress_bar_pixelmap_set(GX_PROGRESS_BAR *progress_bar, GX_RESOURCE_ID pixelmap); 4059 UINT _gx_progress_bar_range_set(GX_PROGRESS_BAR *progress_bar, INT min_value, INT max_value); 4060 UINT _gx_progress_bar_text_color_set(GX_PROGRESS_BAR *progress_bar, GX_RESOURCE_ID normal_text_color_id, 4061 GX_RESOURCE_ID selected_text_color_id, GX_RESOURCE_ID disabled_text_color_id); 4062 UINT _gx_progress_bar_value_set(GX_PROGRESS_BAR *progress_bar, INT new_value); 4063 4064 UINT _gx_prompt_create(GX_PROMPT *prompt, GX_CONST GX_CHAR *name, 4065 GX_WIDGET *parent, GX_RESOURCE_ID text_id, ULONG style, 4066 USHORT prompt_id, GX_CONST GX_RECTANGLE *size); 4067 UINT _gx_prompt_event_process(GX_PROMPT *prompt, GX_EVENT *event_ptr); 4068 VOID _gx_prompt_draw(GX_PROMPT *prompt); 4069 UINT _gx_prompt_font_set(GX_PROMPT *prompt, GX_RESOURCE_ID fontid); 4070 UINT _gx_prompt_text_color_set(GX_PROMPT *prompt, 4071 GX_RESOURCE_ID normal_text_color_id, 4072 GX_RESOURCE_ID selected_text_color_id, 4073 GX_RESOURCE_ID disabled_text_color_id); 4074 VOID _gx_prompt_text_draw(GX_PROMPT *prompt); 4075 4076 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4077 UINT _gx_prompt_text_get(GX_PROMPT *prompt, GX_CONST GX_CHAR **return_text); 4078 #endif 4079 UINT _gx_prompt_text_get_ext(GX_PROMPT *prompt, GX_STRING *return_text); 4080 UINT _gx_prompt_text_id_set(GX_PROMPT *prompt, GX_RESOURCE_ID string_id); 4081 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4082 UINT _gx_prompt_text_set(GX_PROMPT *prompt, GX_CONST GX_CHAR *text); 4083 #endif 4084 UINT _gx_prompt_text_set_ext(GX_PROMPT *prompt, GX_CONST GX_STRING *text); 4085 4086 UINT _gx_radial_progress_bar_anchor_set(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_VALUE angle); 4087 VOID _gx_radial_progress_bar_background_draw(GX_RADIAL_PROGRESS_BAR *progress_bar); 4088 UINT _gx_radial_progress_bar_create(GX_RADIAL_PROGRESS_BAR *progress_bar, 4089 GX_CONST GX_CHAR *name, 4090 GX_WIDGET *parent, 4091 GX_RADIAL_PROGRESS_BAR_INFO *progress_bar_info, 4092 ULONG style, 4093 USHORT progress_bar_id); 4094 VOID _gx_radial_progress_bar_draw(GX_RADIAL_PROGRESS_BAR *progress_bar); 4095 UINT _gx_radial_progress_bar_event_process(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_EVENT *event_ptr); 4096 UINT _gx_radial_progress_bar_font_set(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_RESOURCE_ID font_id); 4097 UINT _gx_radial_progress_bar_info_set(GX_RADIAL_PROGRESS_BAR *bar, GX_RADIAL_PROGRESS_BAR_INFO *info); 4098 UINT _gx_radial_progress_bar_text_color_set(GX_RADIAL_PROGRESS_BAR *progress_bar, 4099 GX_RESOURCE_ID normal_text_color_id, 4100 GX_RESOURCE_ID selected_text_color_id, 4101 GX_RESOURCE_ID disabled_text_color_id); 4102 VOID _gx_radial_progress_bar_text_draw(GX_RADIAL_PROGRESS_BAR *bar); 4103 UINT _gx_radial_progress_bar_value_set(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_VALUE new_value); 4104 4105 UINT _gx_radial_slider_anchor_angles_set(GX_RADIAL_SLIDER *slider, GX_VALUE *anchor_angles, USHORT anchor_count); 4106 UINT _gx_radial_slider_animation_set(GX_RADIAL_SLIDER *slider, USHORT steps, USHORT delay, USHORT animation_style, 4107 VOID (*animation_update_callback)(GX_RADIAL_SLIDER *slider)); 4108 UINT _gx_radial_slider_animation_start(GX_RADIAL_SLIDER *slider, GX_VALUE new_value); 4109 UINT _gx_radial_slider_create(GX_RADIAL_SLIDER *slider, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 4110 GX_RADIAL_SLIDER_INFO *info, ULONG style, USHORT slider_id, GX_CONST GX_RECTANGLE *size); 4111 VOID _gx_radial_slider_draw(GX_RADIAL_SLIDER *slider); 4112 UINT _gx_radial_slider_event_process(GX_RADIAL_SLIDER *slider, GX_EVENT *event_ptr); 4113 UINT _gx_radial_slider_info_get(GX_RADIAL_SLIDER *slider, GX_RADIAL_SLIDER_INFO **info); 4114 UINT _gx_radial_slider_info_set(GX_RADIAL_SLIDER *slider, GX_RADIAL_SLIDER_INFO *info); 4115 UINT _gx_radial_slider_pixelmap_set(GX_RADIAL_SLIDER *slider, GX_RESOURCE_ID background_pixelmap, GX_RESOURCE_ID needle_pixelmap); 4116 UINT _gx_radial_slider_angle_set(GX_RADIAL_SLIDER *slider, GX_VALUE new_angle); 4117 4118 UINT _gx_radio_button_create(GX_RADIO_BUTTON *button, 4119 GX_CONST GX_CHAR *name, GX_WIDGET *parent, GX_RESOURCE_ID text_id, 4120 ULONG style, USHORT radio_button_id, GX_CONST GX_RECTANGLE *size); 4121 VOID _gx_radio_button_draw(GX_RADIO_BUTTON *button); 4122 UINT _gx_radio_button_pixelmap_set(GX_RADIO_BUTTON *button, GX_RESOURCE_ID off_id, GX_RESOURCE_ID on_id, 4123 GX_RESOURCE_ID off_disabled_id, GX_RESOURCE_ID on_disabled_id); 4124 4125 UINT _gx_screen_stack_create(GX_SCREEN_STACK_CONTROL *control, GX_WIDGET **memory, INT size); 4126 UINT _gx_screen_stack_pop(GX_SCREEN_STACK_CONTROL *control); 4127 UINT _gx_screen_stack_push(GX_SCREEN_STACK_CONTROL *control, GX_WIDGET *screen, GX_WIDGET *new_screen); 4128 UINT _gx_screen_stack_reset(GX_SCREEN_STACK_CONTROL *control); 4129 4130 UINT _gx_scroll_thumb_create(GX_SCROLL_THUMB *scroll_thumb, GX_SCROLLBAR *parent, ULONG style); 4131 VOID _gx_scroll_thumb_draw(GX_SCROLL_THUMB *scroll_thumb); 4132 UINT _gx_scroll_thumb_event_process(GX_SCROLL_THUMB *scroll_thumb, GX_EVENT *event_ptr); 4133 4134 VOID _gx_scrollbar_draw(GX_SCROLLBAR *scrollbar); 4135 UINT _gx_scrollbar_event_process(GX_SCROLLBAR *scrollbar, GX_EVENT *event_ptr); 4136 UINT _gx_scrollbar_limit_check(GX_SCROLLBAR *scrollbar); 4137 UINT _gx_scrollbar_reset(GX_SCROLLBAR *scrollbar, GX_SCROLL_INFO *info); 4138 UINT _gx_scrollbar_value_set(GX_SCROLLBAR *scrollbar, INT value); 4139 4140 UINT _gx_scroll_wheel_create(GX_SCROLL_WHEEL *wheel, GX_CONST GX_CHAR *name, GX_WIDGET *parent, INT total_rows, 4141 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size); 4142 UINT _gx_scroll_wheel_event_process(GX_SCROLL_WHEEL *wheel, GX_EVENT *event_ptr); 4143 UINT _gx_scroll_wheel_gradient_alpha_set(GX_SCROLL_WHEEL *wheel, GX_UBYTE start_alpha, GX_UBYTE end_alpha); 4144 UINT _gx_scroll_wheel_row_height_set(GX_SCROLL_WHEEL *wheel, GX_VALUE row_height); 4145 UINT _gx_scroll_wheel_selected_background_set(GX_SCROLL_WHEEL *wheel, GX_RESOURCE_ID selected_bg); 4146 UINT _gx_scroll_wheel_selected_get(GX_SCROLL_WHEEL *wheel, INT *row); 4147 UINT _gx_scroll_wheel_selected_set(GX_SCROLL_WHEEL *wheel, INT row); 4148 UINT _gx_scroll_wheel_speed_set(GX_SCROLL_WHEEL *wheel, GX_FIXED_VAL start_speed_rate, GX_FIXED_VAL end_speed_rate, GX_VALUE max_steps, GX_VALUE delay); 4149 UINT _gx_scroll_wheel_total_rows_set(GX_SCROLL_WHEEL *wheel, INT total_rows); 4150 4151 UINT _gx_single_line_text_input_backspace(GX_SINGLE_LINE_TEXT_INPUT *text_input); 4152 UINT _gx_single_line_text_input_buffer_clear(GX_SINGLE_LINE_TEXT_INPUT *text_input); 4153 UINT _gx_single_line_text_input_buffer_get(GX_SINGLE_LINE_TEXT_INPUT *text_input_ptr, GX_CHAR **buffer_address, 4154 UINT *content_size, UINT *buffer_size); 4155 UINT _gx_single_line_text_input_character_delete(GX_SINGLE_LINE_TEXT_INPUT *text_input); 4156 UINT _gx_single_line_text_input_character_insert(GX_SINGLE_LINE_TEXT_INPUT *text_input, GX_UBYTE *str, UINT str_size); 4157 UINT _gx_single_line_text_input_create(GX_SINGLE_LINE_TEXT_INPUT *text_input_ptr, 4158 GX_CONST GX_CHAR *name, GX_WIDGET *parent, GX_CHAR *input_buffer, 4159 UINT buffer_size, UINT style, USHORT text_input_id, 4160 GX_CONST GX_RECTANGLE *size); 4161 VOID _gx_single_line_text_input_draw(GX_SINGLE_LINE_TEXT_INPUT *text_input); 4162 UINT _gx_single_line_text_input_draw_position_get(GX_SINGLE_LINE_TEXT_INPUT *input, GX_VALUE *xpos, GX_VALUE *ypos); 4163 UINT _gx_single_line_text_input_end(GX_SINGLE_LINE_TEXT_INPUT *text_input); 4164 UINT _gx_single_line_text_input_event_process(GX_SINGLE_LINE_TEXT_INPUT *text_input, GX_EVENT *event_ptr); 4165 UINT _gx_single_line_text_input_fill_color_set(GX_SINGLE_LINE_TEXT_INPUT *input, 4166 GX_RESOURCE_ID normal_fill_color_id, 4167 GX_RESOURCE_ID selected_fill_color_id, 4168 GX_RESOURCE_ID disabled_fill_color_id, 4169 GX_RESOURCE_ID readonly_fill_color_id); 4170 UINT _gx_single_line_text_input_home(GX_SINGLE_LINE_TEXT_INPUT *text_input); 4171 UINT _gx_single_line_text_input_left_arrow(GX_SINGLE_LINE_TEXT_INPUT *text_input); 4172 UINT _gx_single_line_text_input_position_get(GX_SINGLE_LINE_TEXT_INPUT *text_input, INT pixel_position); 4173 UINT _gx_single_line_text_input_right_arrow(GX_SINGLE_LINE_TEXT_INPUT *text_input); 4174 UINT _gx_single_line_text_input_style_add(GX_SINGLE_LINE_TEXT_INPUT *text_input_ptr, ULONG style); 4175 UINT _gx_single_line_text_input_style_remove(GX_SINGLE_LINE_TEXT_INPUT *text_input_ptr, ULONG style); 4176 UINT _gx_single_line_text_input_style_set(GX_SINGLE_LINE_TEXT_INPUT *text_input_ptr, ULONG style); 4177 UINT _gx_single_line_text_input_text_color_set(GX_SINGLE_LINE_TEXT_INPUT *input, 4178 GX_RESOURCE_ID normal_text_color_id, 4179 GX_RESOURCE_ID selected_text_color_id, 4180 GX_RESOURCE_ID disabled_text_color_id, 4181 GX_RESOURCE_ID readonly_text_color_id); 4182 UINT _gx_single_line_text_input_text_select(GX_SINGLE_LINE_TEXT_INPUT *input, UINT start_index, UINT end_index); 4183 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4184 UINT _gx_single_line_text_input_text_set(GX_SINGLE_LINE_TEXT_INPUT *input, GX_CONST GX_CHAR *text); 4185 #endif 4186 UINT _gx_single_line_text_input_text_set_ext(GX_SINGLE_LINE_TEXT_INPUT *input, GX_CONST GX_STRING *text); 4187 4188 UINT _gx_slider_create(GX_SLIDER *slider, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 4189 INT tick_count, GX_SLIDER_INFO *slider_info, ULONG style, USHORT slider_id, 4190 GX_CONST GX_RECTANGLE *size); 4191 VOID _gx_slider_draw(GX_SLIDER *slider); 4192 UINT _gx_slider_event_process(GX_SLIDER *slider, GX_EVENT *event_ptr); 4193 UINT _gx_slider_info_set(GX_SLIDER *slider, GX_SLIDER_INFO *info); 4194 VOID _gx_slider_needle_draw(GX_SLIDER *slider); 4195 UINT _gx_slider_needle_position_get(GX_SLIDER *slider, GX_SLIDER_INFO *slider_info, GX_RECTANGLE *return_position); 4196 VOID _gx_slider_tickmarks_draw(GX_SLIDER *slider); 4197 UINT _gx_slider_travel_get(GX_SLIDER *widget, GX_SLIDER_INFO *info, INT *mintravel, INT *maxtravel); 4198 UINT _gx_slider_value_calculate(GX_SLIDER *slider, GX_SLIDER_INFO *info, INT newpos); 4199 UINT _gx_slider_value_set(GX_SLIDER *slider, GX_SLIDER_INFO *info, INT new_value); 4200 4201 UINT _gx_sprite_create(GX_SPRITE *sprite, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 4202 GX_SPRITE_FRAME *frame_list, USHORT framecount, 4203 ULONG style, USHORT sprite_id, GX_CONST GX_RECTANGLE *size); 4204 UINT _gx_sprite_current_frame_set(GX_SPRITE *sprite, USHORT frame); 4205 UINT _gx_sprite_frame_list_set(GX_SPRITE *sprite, GX_SPRITE_FRAME *frame_list, USHORT frame_count); 4206 UINT _gx_sprite_start(GX_SPRITE *sprite, USHORT start_frame); 4207 UINT _gx_sprite_stop(GX_SPRITE *sprite); 4208 4209 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4210 UINT _gx_string_scroll_wheel_create(GX_STRING_SCROLL_WHEEL *wheel, GX_CONST GX_CHAR *name, GX_WIDGET *parent, INT total_rows, 4211 GX_CONST GX_CHAR **string_list, 4212 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size); 4213 #endif 4214 UINT _gx_string_scroll_wheel_create_ext(GX_STRING_SCROLL_WHEEL *wheel, GX_CONST GX_CHAR *name, GX_WIDGET *parent, INT total_rows, 4215 GX_CONST GX_STRING *string_list, 4216 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size); 4217 UINT _gx_string_scroll_wheel_event_process(GX_STRING_SCROLL_WHEEL *wheel, GX_EVENT *event_ptr); 4218 UINT _gx_string_scroll_wheel_string_id_list_set(GX_STRING_SCROLL_WHEEL *wheel, 4219 GX_CONST GX_RESOURCE_ID *string_id_list, 4220 INT id_count); 4221 4222 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4223 UINT _gx_string_scroll_wheel_string_list_set(GX_STRING_SCROLL_WHEEL *wheel, 4224 GX_CONST GX_CHAR **string_list, 4225 INT string_count); 4226 #endif 4227 UINT _gx_string_scroll_wheel_string_list_set_ext(GX_STRING_SCROLL_WHEEL *wheel, 4228 GX_CONST GX_STRING *string_list, 4229 INT string_count); 4230 4231 UINT _gx_system_active_language_set(GX_UBYTE language); 4232 4233 #if (GX_ANIMATION_POOL_SIZE > 0) 4234 UINT _gx_system_animation_get(GX_ANIMATION **free_return); 4235 UINT _gx_system_animation_free(GX_ANIMATION *free_return); 4236 #endif 4237 4238 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 4239 UINT _gx_system_bidi_text_enable(VOID); 4240 UINT _gx_system_bidi_text_disable(VOID); 4241 #endif 4242 4243 #if defined(GX_THAI_GLYPH_SHAPING_SUPPORT) 4244 UINT _gx_system_text_render_style_set(GX_UBYTE style); 4245 #endif 4246 4247 UINT _gx_system_canvas_refresh(VOID); 4248 UINT _gx_system_dirty_mark(GX_WIDGET *widget); 4249 UINT _gx_system_dirty_partial_add(GX_WIDGET *widget, GX_RECTANGLE *dirty_area); 4250 UINT _gx_system_draw_context_get(GX_DRAW_CONTEXT **current_context); 4251 UINT _gx_system_event_fold(GX_EVENT *in_event); 4252 UINT _gx_system_event_send(GX_EVENT *in_event); 4253 UINT _gx_system_focus_claim(GX_WIDGET *me); 4254 UINT _gx_system_initialize(VOID); 4255 4256 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4257 UINT _gx_system_language_table_get(GX_CHAR ****language_table, GX_UBYTE *languages_count, UINT *string_count); 4258 UINT _gx_system_language_table_set(GX_CHAR ***language_table, GX_UBYTE number_of_languages, UINT number_of_strings); 4259 #endif 4260 4261 UINT _gx_system_memory_allocator_set(VOID *(*allocate)(ULONG size), VOID (*release)(VOID *)); 4262 UINT _gx_system_pen_configure(GX_PEN_CONFIGURATION *pen_configuration); 4263 UINT _gx_system_screen_stack_create(GX_WIDGET **memory, INT size); 4264 UINT _gx_system_screen_stack_pop(VOID); 4265 UINT _gx_system_screen_stack_push(GX_WIDGET *screen); 4266 UINT _gx_system_screen_stack_get(GX_WIDGET **popped_parent, GX_WIDGET **popped_screen); 4267 UINT _gx_system_screen_stack_reset(VOID); 4268 UINT _gx_system_scroll_appearance_get(ULONG style, GX_SCROLLBAR_APPEARANCE *appearance); 4269 UINT _gx_system_scroll_appearance_set(ULONG style, GX_SCROLLBAR_APPEARANCE *appearance); 4270 UINT _gx_system_start(VOID); 4271 4272 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4273 UINT _gx_system_string_get(GX_RESOURCE_ID string_id, GX_CONST GX_CHAR **return_string); 4274 UINT _gx_system_string_table_get(GX_UBYTE language, GX_CHAR ***get_table, UINT *get_size); 4275 UINT _gx_system_string_width_get(GX_CONST GX_FONT *font, GX_CONST GX_CHAR *string, INT string_length, GX_VALUE *return_width); 4276 #endif 4277 UINT _gx_system_string_width_get_ext(GX_CONST GX_FONT *font, GX_CONST GX_STRING *string, GX_VALUE *return_width); 4278 UINT _gx_system_timer_start(GX_WIDGET *owner, UINT timer_id, UINT initial_ticks, UINT reschedule_ticks); 4279 UINT _gx_system_timer_stop(GX_WIDGET *owner, UINT timer_id); 4280 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4281 UINT _gx_system_version_string_get(GX_CHAR **return_string); 4282 #endif 4283 UINT _gx_system_version_string_get_ext(GX_STRING *return_string); 4284 UINT _gx_system_widget_find(USHORT widget_id, INT search_level, GX_WIDGET **return_search_result); 4285 4286 UINT _gx_text_button_create(GX_TEXT_BUTTON *button, GX_CONST GX_CHAR *name, 4287 GX_WIDGET *parent, GX_RESOURCE_ID text_id, ULONG style, USHORT Id, 4288 GX_CONST GX_RECTANGLE *size); 4289 VOID _gx_text_button_draw(GX_TEXT_BUTTON *button); 4290 UINT _gx_text_button_event_process(GX_TEXT_BUTTON *button, GX_EVENT *event_ptr); 4291 UINT _gx_text_button_font_set(GX_TEXT_BUTTON *button, GX_RESOURCE_ID font_id); 4292 UINT _gx_text_button_text_color_set(GX_TEXT_BUTTON *text_button, 4293 GX_RESOURCE_ID normal_text_color_id, 4294 GX_RESOURCE_ID selected_text_color_id, 4295 GX_RESOURCE_ID disabled_text_color_id); 4296 VOID _gx_text_button_text_draw(GX_TEXT_BUTTON *button); 4297 UINT _gx_text_button_text_get(GX_TEXT_BUTTON *button, GX_CONST GX_CHAR **return_text); 4298 UINT _gx_text_button_text_id_set(GX_TEXT_BUTTON *button, GX_RESOURCE_ID string_id); 4299 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4300 UINT _gx_text_button_text_set(GX_TEXT_BUTTON *button, GX_CONST GX_CHAR *text); 4301 #endif 4302 UINT _gx_text_button_text_set_ext(GX_TEXT_BUTTON *button, GX_CONST GX_STRING *text); 4303 4304 UINT _gx_text_input_cursor_blink_interval_set(GX_TEXT_INPUT_CURSOR *cursor_input, GX_UBYTE blink_interval); 4305 UINT _gx_text_input_cursor_height_set(GX_TEXT_INPUT_CURSOR *cursor_input, GX_UBYTE height); 4306 UINT _gx_text_input_cursor_width_set(GX_TEXT_INPUT_CURSOR *cursor_input, GX_UBYTE width); 4307 4308 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4309 UINT _gx_text_scroll_wheel_callback_set(GX_TEXT_SCROLL_WHEEL * wheel, GX_CONST GX_CHAR * (*callback)(GX_TEXT_SCROLL_WHEEL *, INT)); 4310 #endif 4311 UINT _gx_text_scroll_wheel_callback_set_ext(GX_TEXT_SCROLL_WHEEL *wheel, UINT (*callback)(GX_TEXT_SCROLL_WHEEL *, INT, GX_STRING *)); 4312 UINT _gx_text_scroll_wheel_create(GX_TEXT_SCROLL_WHEEL *wheel, GX_CONST GX_CHAR *name, GX_WIDGET *parent, INT total_rows, 4313 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size); 4314 VOID _gx_text_scroll_wheel_draw(GX_TEXT_SCROLL_WHEEL *wheel); 4315 UINT _gx_text_scroll_wheel_event_process(GX_TEXT_SCROLL_WHEEL *wheel, GX_EVENT *event_ptr); 4316 UINT _gx_text_scroll_wheel_font_set(GX_TEXT_SCROLL_WHEEL *wheel, GX_RESOURCE_ID normal_font, GX_RESOURCE_ID selected_font); 4317 UINT _gx_text_scroll_wheel_text_color_set(GX_TEXT_SCROLL_WHEEL *wheel, GX_RESOURCE_ID normal_text_color, 4318 GX_RESOURCE_ID selected_text_color, GX_RESOURCE_ID disabled_text_color); 4319 4320 UINT _gx_tree_view_create(GX_TREE_VIEW *tree, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 4321 ULONG style, USHORT tree_view_id, GX_CONST GX_RECTANGLE *size); 4322 VOID _gx_tree_view_draw(GX_TREE_VIEW *tree); 4323 UINT _gx_tree_view_event_process(GX_TREE_VIEW *tree, GX_EVENT *event_ptr); 4324 UINT _gx_tree_view_indentation_set(GX_TREE_VIEW *tree, GX_VALUE indentation); 4325 UINT _gx_tree_view_position(GX_TREE_VIEW *tree); 4326 UINT _gx_tree_view_root_line_color_set(GX_TREE_VIEW *tree, GX_RESOURCE_ID color); 4327 UINT _gx_tree_view_root_pixelmap_set(GX_TREE_VIEW *tree, GX_RESOURCE_ID expand_map_id, GX_RESOURCE_ID collapse_map_id); 4328 UINT _gx_tree_view_selected_get(GX_TREE_VIEW *tree, GX_WIDGET **selected); 4329 UINT _gx_tree_view_selected_set(GX_TREE_VIEW *tree, GX_WIDGET *selected); 4330 4331 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 4332 UINT _gx_utility_bidi_paragraph_reorder(GX_BIDI_TEXT_INFO *input_info, GX_BIDI_RESOLVED_TEXT_INFO **resolved_info_head); 4333 UINT _gx_utility_bidi_paragraph_reorder_ext(GX_BIDI_TEXT_INFO *input_info, GX_BIDI_RESOLVED_TEXT_INFO **resolved_info_head); 4334 UINT _gx_utility_bidi_resolved_text_info_delete(GX_BIDI_RESOLVED_TEXT_INFO **resolved_info_head); 4335 #endif 4336 UINT _gx_utility_canvas_to_bmp(GX_CANVAS *canvas, GX_RECTANGLE *rect, UINT(*write_data)(GX_UBYTE *byte_data, UINT data_count)); 4337 UINT _gx_utility_gradient_create(GX_GRADIENT *gradient, GX_VALUE width, GX_VALUE height, UCHAR type, GX_UBYTE start_alpha, GX_UBYTE end_alpha); 4338 UINT _gx_utility_gradient_delete(GX_GRADIENT *gradient); 4339 4340 UINT _gx_utility_circle_point_get(INT xcenter, INT ycenter, UINT r, INT angle, GX_POINT *point); 4341 UINT _gx_utility_ltoa(LONG value, GX_CHAR *return_buffer, UINT return_buffer_size); 4342 #if defined(GUIX_5_4_0_COMPATIBILITY) 4343 INT _gx_utility_math_acos_5_4_0(INT x); 4344 INT _gx_utility_math_asin_5_4_0(INT x); 4345 INT _gx_utility_math_cos_5_4_0(INT angle); 4346 INT _gx_utility_math_sin_5_4_0(INT angle); 4347 #else 4348 INT _gx_utility_math_acos(GX_FIXED_VAL x); 4349 INT _gx_utility_math_asin(GX_FIXED_VAL x); 4350 GX_FIXED_VAL _gx_utility_math_cos(GX_FIXED_VAL angle); 4351 GX_FIXED_VAL _gx_utility_math_sin(GX_FIXED_VAL angle); 4352 #endif 4353 UINT _gx_utility_math_sqrt(UINT n); 4354 UINT _gx_utility_pixelmap_resize(GX_PIXELMAP *src, GX_PIXELMAP *destination, INT width, INT height); 4355 UINT _gx_utility_pixelmap_rotate(GX_PIXELMAP *src, INT angle, GX_PIXELMAP *destination, INT *rot_cx, INT *rot_cy); 4356 UINT _gx_utility_pixelmap_simple_rotate(GX_PIXELMAP *src, INT angle, GX_PIXELMAP *destination, INT *rot_cx, INT *rot_cy); 4357 UINT _gx_utility_rectangle_center(GX_RECTANGLE *rectangle, GX_RECTANGLE *within); 4358 UINT _gx_utility_rectangle_center_find(GX_RECTANGLE *rectangle, GX_POINT *return_center); 4359 UINT _gx_utility_rectangle_combine(GX_RECTANGLE *first_rectangle, GX_RECTANGLE *second_rectangle); 4360 GX_BOOL _gx_utility_rectangle_compare(GX_RECTANGLE *first_rectangle, GX_RECTANGLE *second_rectangle); 4361 UINT _gx_utility_rectangle_define(GX_RECTANGLE *rectangle, GX_VALUE left, GX_VALUE top, GX_VALUE right, GX_VALUE bottom); 4362 GX_BOOL _gx_utility_rectangle_overlap_detect(GX_RECTANGLE *first_rectangle, GX_RECTANGLE *second_rectangle, GX_RECTANGLE *return_overlap_area); 4363 GX_BOOL _gx_utility_rectangle_point_detect(GX_RECTANGLE *rectangle, GX_POINT point); 4364 UINT _gx_utility_rectangle_resize(GX_RECTANGLE *rectangle, GX_VALUE adjust); 4365 UINT _gx_utility_rectangle_shift(GX_RECTANGLE *rectangle, GX_VALUE x_shift, GX_VALUE y_shift); 4366 4367 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4368 UINT _gx_utility_string_to_alphamap(GX_CONST GX_CHAR *text, GX_CONST GX_FONT *font, GX_PIXELMAP *textmap); 4369 #endif 4370 UINT _gx_utility_string_to_alphamap_ext(GX_CONST GX_STRING *text, GX_CONST GX_FONT *font, GX_PIXELMAP *textmap); 4371 4372 UINT _gx_vertical_list_children_position(GX_VERTICAL_LIST *vertical_list); 4373 UINT _gx_vertical_list_create(GX_VERTICAL_LIST *vertical_list, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 4374 INT total_rows, 4375 VOID (*callback)(GX_VERTICAL_LIST *, GX_WIDGET *, INT), 4376 ULONG style, USHORT vertical_list_id, 4377 GX_CONST GX_RECTANGLE *size); 4378 UINT _gx_vertical_list_event_process(GX_VERTICAL_LIST *list, GX_EVENT *event_ptr); 4379 UINT _gx_vertical_list_page_index_set(GX_VERTICAL_LIST *list, INT index); 4380 UINT _gx_vertical_list_selected_index_get(GX_VERTICAL_LIST *vertical_list, INT *return_index); 4381 UINT _gx_vertical_list_selected_set(GX_VERTICAL_LIST *vertical_list, INT index); 4382 UINT _gx_vertical_list_selected_widget_get(GX_VERTICAL_LIST *vertical_list, GX_WIDGET **return_list_entry); 4383 UINT _gx_vertical_list_total_rows_set(GX_VERTICAL_LIST *list, INT count); 4384 4385 UINT _gx_vertical_scrollbar_create(GX_SCROLLBAR *scrollbar, GX_CONST GX_CHAR *name, GX_WINDOW *parent, 4386 GX_SCROLLBAR_APPEARANCE *settings, ULONG style); 4387 4388 UINT _gx_widget_allocate(GX_WIDGET **widget, ULONG memsize); 4389 UINT _gx_widget_attach(GX_WIDGET *parent, GX_WIDGET *widget); 4390 UINT _gx_widget_back_attach(GX_WIDGET *parent, GX_WIDGET *widget); 4391 UINT _gx_widget_back_move(GX_WIDGET *widget, GX_BOOL *widget_moved); 4392 VOID _gx_widget_background_draw(GX_WIDGET *widget); 4393 UINT _gx_widget_block_move(GX_WIDGET *widget, GX_RECTANGLE *block, INT x_shift, INT y_shift); 4394 VOID _gx_widget_border_draw(GX_WIDGET *widget, GX_RESOURCE_ID border_color, GX_RESOURCE_ID upper_color, GX_COLOR lower_color, GX_BOOL fill); 4395 UINT _gx_widget_border_style_set(GX_WIDGET *widget, ULONG Style); 4396 UINT _gx_widget_border_width_get(GX_WIDGET *widget, GX_VALUE *return_width); 4397 UINT _gx_widget_canvas_get(GX_WIDGET *widget, GX_CANVAS **return_canvas); 4398 UINT _gx_widget_child_detect(GX_WIDGET *parent, GX_WIDGET *child, GX_BOOL *return_detect); 4399 VOID _gx_widget_children_draw(GX_WIDGET *widget); 4400 UINT _gx_widget_client_get(GX_WIDGET *widget, GX_VALUE border_width, GX_RECTANGLE *return_size); 4401 UINT _gx_widget_color_get(GX_WIDGET *widget, GX_RESOURCE_ID color_id, GX_COLOR *return_color); 4402 UINT _gx_widget_create(GX_WIDGET *widget, 4403 GX_CONST GX_CHAR *name, 4404 GX_WIDGET *parent, 4405 ULONG style, USHORT Id, 4406 GX_CONST GX_RECTANGLE *size); 4407 UINT _gx_widget_created_test(GX_WIDGET *widget, GX_BOOL *return_test); 4408 UINT _gx_widget_delete(GX_WIDGET *widget); 4409 UINT _gx_widget_detach(GX_WIDGET *widget); 4410 VOID _gx_widget_draw(GX_WIDGET *widget); 4411 UINT _gx_widget_draw_set(GX_WIDGET *widget, VOID (*draw_func)(GX_WIDGET *)); 4412 UINT _gx_widget_event_generate(GX_WIDGET *widget, USHORT event_type, LONG value); 4413 UINT _gx_widget_event_process(GX_WIDGET *widget, GX_EVENT *event_ptr); 4414 UINT _gx_widget_event_process_set(GX_WIDGET *widget, UINT (*event_processing_function)(GX_WIDGET *, GX_EVENT *)); 4415 UINT _gx_widget_event_to_parent(GX_WIDGET *widget, GX_EVENT *event_ptr); 4416 UINT _gx_widget_fill_color_set(GX_WIDGET *widget, GX_RESOURCE_ID normal_color, GX_RESOURCE_ID selected_color, GX_RESOURCE_ID disabled_color); 4417 UINT _gx_widget_find(GX_WIDGET *parent, USHORT widget_id, INT search_depth, GX_WIDGET **return_widget); 4418 UINT _gx_widget_first_child_get(GX_WIDGET *parent, GX_WIDGET **child_return); 4419 UINT _gx_widget_font_get(GX_WIDGET *widget, GX_RESOURCE_ID font_id, GX_FONT **return_font); 4420 UINT _gx_widget_free(GX_WIDGET *widget); 4421 UINT _gx_widget_focus_next(GX_WIDGET *widget); 4422 UINT _gx_widget_focus_previous(GX_WIDGET *widget); 4423 UINT _gx_widget_front_move(GX_WIDGET *widget, GX_BOOL *widget_moved); 4424 UINT _gx_widget_height_get(GX_WIDGET *widget, GX_VALUE *return_height); 4425 UINT _gx_widget_hide(GX_WIDGET *widget); 4426 UINT _gx_widget_last_child_get(GX_WIDGET *parent, GX_WIDGET **child_return); 4427 UINT _gx_widget_next_sibling_get(GX_WIDGET *current, GX_WIDGET **sibling_return); 4428 UINT _gx_widget_parent_get(GX_WIDGET *current, GX_WIDGET **parent_return); 4429 UINT _gx_widget_pixelmap_get(GX_WIDGET *widget, GX_RESOURCE_ID font_id, GX_PIXELMAP **return_pixelmap); 4430 UINT _gx_widget_previous_sibling_get(GX_WIDGET *current, GX_WIDGET **sibling_return); 4431 UINT _gx_widget_resize(GX_WIDGET *widget, GX_RECTANGLE *newsize); 4432 UINT _gx_widget_shift(GX_WIDGET *widget, GX_VALUE x_shift, GX_VALUE y_shift, GX_BOOL mark_dirty); 4433 UINT _gx_widget_show(GX_WIDGET *widget); 4434 UINT _gx_widget_status_add(GX_WIDGET *widget, ULONG status); 4435 UINT _gx_widget_status_get(GX_WIDGET *widget, ULONG *return_status); 4436 UINT _gx_widget_status_remove(GX_WIDGET *widget, ULONG status); 4437 UINT _gx_widget_status_test(GX_WIDGET *widget, ULONG status, GX_BOOL *return_test); 4438 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4439 UINT _gx_widget_string_get(GX_WIDGET *widget, GX_RESOURCE_ID string_id, GX_CONST GX_CHAR **return_string); 4440 #endif 4441 UINT _gx_widget_string_get_ext(GX_WIDGET *widget, GX_RESOURCE_ID string_id, GX_STRING *return_string); 4442 UINT _gx_widget_style_add(GX_WIDGET *widget, ULONG style); 4443 UINT _gx_widget_style_get(GX_WIDGET *widget, ULONG *return_style); 4444 UINT _gx_widget_style_remove(GX_WIDGET *widget, ULONG style); 4445 UINT _gx_widget_style_set(GX_WIDGET *widget, ULONG style); 4446 4447 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4448 UINT _gx_widget_text_blend(GX_WIDGET *widget, UINT tColor, UINT font_id, GX_CONST GX_CHAR *string, 4449 INT x_offset, INT y_offset, UCHAR alpha); 4450 4451 VOID _gx_widget_text_draw(GX_WIDGET *widget, UINT tColor, UINT font_id, GX_CONST GX_CHAR *string, 4452 INT x_offset, INT y_offset); 4453 #endif 4454 UINT _gx_widget_text_blend_ext(GX_WIDGET *widget, UINT tColor, UINT font_id, GX_CONST GX_STRING *string, 4455 INT x_offset, INT y_offset, UCHAR alpha); 4456 VOID _gx_widget_text_draw_ext(GX_WIDGET *widget, UINT tColor, UINT font_id, GX_CONST GX_STRING *string, 4457 INT x_offset, INT y_offset); 4458 VOID _gx_widget_text_id_draw(GX_WIDGET *widget, UINT tColor, 4459 UINT font_id, UINT text_id, 4460 INT x_offset, INT y_offset); 4461 UINT _gx_widget_top_visible_child_find(GX_WIDGET *parent, GX_WIDGET **child_return); 4462 UINT _gx_widget_type_find(GX_WIDGET *parent, USHORT widget_type, GX_WIDGET **return_widget); 4463 UINT _gx_widget_width_get(GX_WIDGET *widget, GX_VALUE *return_width); 4464 4465 VOID _gx_window_background_draw(GX_WINDOW *window); 4466 UINT _gx_window_client_height_get(GX_WINDOW *window, GX_VALUE *return_height); 4467 UINT _gx_window_client_scroll(GX_WINDOW *window, GX_VALUE x_scroll, GX_VALUE y_scroll); 4468 UINT _gx_window_client_width_get(GX_WINDOW *window, GX_VALUE *return_width); 4469 UINT _gx_window_close(GX_WINDOW *window); 4470 UINT _gx_window_create(GX_WINDOW *window, 4471 GX_CONST GX_CHAR *name, 4472 GX_WIDGET *parent, 4473 ULONG style, USHORT window_id, 4474 GX_CONST GX_RECTANGLE *size); 4475 VOID _gx_window_draw(GX_WINDOW *window); 4476 UINT _gx_window_event_process(GX_WINDOW *window, GX_EVENT *event_ptr); 4477 UINT _gx_window_execute(GX_WINDOW *window, ULONG *return_code); 4478 UINT _gx_window_root_create(GX_WINDOW_ROOT *root_window, 4479 GX_CONST GX_CHAR *name, 4480 GX_CANVAS *canvas, ULONG style, USHORT Id, 4481 GX_CONST GX_RECTANGLE *size); 4482 UINT _gx_window_root_delete(GX_WINDOW_ROOT *root_window); 4483 UINT _gx_window_root_event_process(GX_WINDOW_ROOT *widget, GX_EVENT *event_ptr); 4484 UINT _gx_window_root_find(GX_WIDGET *widget, GX_WINDOW_ROOT **return_root_window); 4485 UINT _gx_window_scroll_info_get(GX_WINDOW *window, ULONG type, GX_SCROLL_INFO *return_scroll_info); 4486 UINT _gx_window_scrollbar_find(GX_WINDOW *window, USHORT type, GX_SCROLLBAR **return_scrollbar); 4487 UINT _gx_window_wallpaper_get(GX_WINDOW *window, GX_RESOURCE_ID *return_wallpaper_id); 4488 UINT _gx_window_wallpaper_set(GX_WINDOW *window, GX_RESOURCE_ID wallpaper_id, GX_BOOL tile); 4489 4490 #else 4491 4492 #define gx_accordion_menu_create(a, b, c, d, e, f) _gxe_accordion_menu_create(a, b, c, d, e, f, sizeof(GX_ACCORDION_MENU)) 4493 #define gx_accordion_menu_draw _gx_accordion_menu_draw 4494 #define gx_accordion_menu_event_process _gxe_accordion_menu_event_process 4495 #define gx_accordion_menu_position _gxe_accordion_menu_position 4496 4497 #define gx_animation_canvas_define _gxe_animation_canvas_define 4498 #define gx_animation_create _gxe_animation_create 4499 #define gx_animation_delete _gxe_animation_delete 4500 #define gx_animation_drag_disable _gxe_animation_drag_disable 4501 #define gx_animation_drag_enable _gxe_animation_drag_enable 4502 #define gx_animation_landing_speed_set _gxe_animation_landing_speed_set 4503 #define gx_animation_start _gxe_animation_start 4504 #define gx_animation_stop _gxe_animation_stop 4505 4506 #define gx_binres_language_count_get _gxe_binres_language_count_get 4507 #define gx_binres_language_info_load _gxe_binres_language_info_load 4508 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4509 #define gx_binres_language_table_load _gxe_binres_language_table_load 4510 #endif 4511 #define gx_binres_language_table_load_ext _gxe_binres_language_table_load_ext 4512 #define gx_binres_theme_load _gxe_binres_theme_load 4513 #define gx_binres_pixelmap_load _gxe_binres_pixelmap_load 4514 #define gx_binres_font_load _gxe_binres_font_load 4515 4516 #define gx_brush_default _gxe_brush_default 4517 #define gx_brush_define _gxe_brush_define 4518 4519 #define gx_button_background_draw _gx_button_background_draw 4520 #define gx_button_create(a, b, c, d, e, f) _gxe_button_create(a, b, (GX_WIDGET *)c, d, e, f, sizeof(GX_BUTTON)) 4521 #define gx_button_deselect _gxe_button_deselect 4522 #define gx_button_draw _gx_button_draw 4523 #define gx_button_event_process _gxe_button_event_process 4524 #define gx_button_select _gxe_button_select 4525 4526 #define gx_canvas_alpha_set _gxe_canvas_alpha_set 4527 #define gx_canvas_arc_draw _gxe_canvas_arc_draw 4528 #define gx_canvas_block_move(a, b, c, d) _gxe_canvas_block_move(a, b, c, d) 4529 #define gx_canvas_circle_draw _gxe_canvas_circle_draw 4530 #define gx_canvas_create(a, b, c, d, e, f, g, h) _gxe_canvas_create(a, b, c, d, e, f, g, h, sizeof(GX_CANVAS)) 4531 #define gx_canvas_delete _gxe_canvas_delete 4532 #define gx_canvas_drawing_complete _gxe_canvas_drawing_complete 4533 #define gx_canvas_drawing_initiate(a, b, c) _gxe_canvas_drawing_initiate(a, (GX_WIDGET *)b, c) 4534 #define gx_canvas_ellipse_draw _gxe_canvas_ellipse_draw 4535 #define gx_canvas_hardware_layer_bind _gxe_canvas_hardware_layer_bind 4536 #define gx_canvas_hide _gxe_canvas_hide 4537 #define gx_canvas_line_draw _gxe_canvas_line_draw 4538 #define gx_canvas_memory_define _gxe_canvas_memory_define 4539 4540 #if defined (GX_MOUSE_SUPPORT) 4541 #define gx_canvas_mouse_define _gxe_canvas_mouse_define 4542 #define gx_canvas_mouse_hide _gxe_canvas_mouse_hide 4543 #define gx_canvas_mouse_show _gxe_canvas_mouse_show 4544 #endif 4545 #define gx_canvas_offset_set _gxe_canvas_offset_set 4546 #define gx_canvas_pie_draw _gxe_canvas_pie_draw 4547 #define gx_canvas_pixel_draw _gxe_canvas_pixel_draw 4548 #define gx_canvas_pixelmap_blend _gxe_canvas_pixelmap_blend 4549 #define gx_canvas_pixelmap_draw _gxe_canvas_pixelmap_draw 4550 #define gx_canvas_pixelmap_get _gxe_canvas_pixelmap_get 4551 #define gx_canvas_pixelmap_rotate _gxe_canvas_pixelmap_rotate 4552 #define gx_canvas_pixelmap_tile _gxe_canvas_pixelmap_tile 4553 #define gx_canvas_polygon_draw _gxe_canvas_polygon_draw 4554 #define gx_canvas_rectangle_draw _gxe_canvas_rectangle_draw 4555 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4556 #define gx_canvas_rotated_text_draw _gxe_canvas_rotated_text_draw 4557 #endif 4558 #define gx_canvas_rotated_text_draw_ext _gxe_canvas_rotated_text_draw_ext 4559 #define gx_canvas_shift _gxe_canvas_shift 4560 #define gx_canvas_show _gxe_canvas_show 4561 #define gx_canvas_aligned_text_draw _gxe_canvas_aligned_text_draw 4562 #if defined (GX_ENABLE_DEPRECATED_STRING_API) 4563 #define gx_canvas_text_draw _gxe_canvas_text_draw 4564 #endif 4565 #define gx_canvas_text_draw_ext _gxe_canvas_text_draw_ext 4566 4567 #define gx_checkbox_create(a, b, c, d, e, f, g) _gxe_checkbox_create(a, b, (GX_WIDGET *)c, d, e, f, g, sizeof(GX_CHECKBOX)) 4568 #define gx_checkbox_draw _gx_checkbox_draw 4569 #define gx_checkbox_event_process _gxe_checkbox_event_process 4570 #define gx_checkbox_pixelmap_set _gxe_checkbox_pixelmap_set 4571 #define gx_checkbox_select _gxe_checkbox_select 4572 4573 #define gx_circular_gauge_angle_get _gxe_circular_gauge_angle_get 4574 #define gx_circular_gauge_angle_set _gxe_circular_gauge_angle_set 4575 #define gx_circular_gauge_animation_set _gxe_circular_gauge_animation_set 4576 #define gx_circular_gauge_background_draw _gx_circular_gauge_background_draw 4577 #define gx_circular_gauge_create(a, b, c, d, e, f, g, h, i) _gxe_circular_gauge_create((GX_CIRCULAR_GAUGE *) a, b, c, d, e, f, g, h, i, sizeof(GX_CIRCULAR_GAUGE)) 4578 #define gx_circular_gauge_draw _gx_circular_gauge_draw 4579 #define gx_circular_gauge_event_process _gxe_circular_gauge_event_process 4580 4581 #define gx_context_brush_default _gxe_context_brush_default 4582 #define gx_context_brush_define _gxe_context_brush_define 4583 #define gx_context_brush_get _gxe_context_brush_get 4584 #define gx_context_brush_pattern_set _gxe_context_brush_pattern_set 4585 #define gx_context_brush_set _gxe_context_brush_set 4586 #define gx_context_brush_style_set _gxe_context_brush_style_set 4587 #define gx_context_brush_width_set _gxe_context_brush_width_set 4588 #define gx_context_color_get _gxe_context_color_get 4589 #define gx_context_fill_color_set _gxe_context_fill_color_set 4590 #define gx_context_font_get _gxe_context_font_get 4591 #define gx_context_font_set _gxe_context_font_set 4592 #define gx_context_line_color_set _gxe_context_line_color_set 4593 #define gx_context_pixelmap_get _gxe_context_pixelmap_get 4594 #define gx_context_pixelmap_set _gxe_context_pixelmap_set 4595 #define gx_context_raw_brush_define _gxe_context_raw_brush_define 4596 #define gx_context_raw_fill_color_set _gxe_context_raw_fill_color_set 4597 #define gx_context_raw_line_color_set _gxe_context_raw_line_color_set 4598 4599 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4600 #define gx_context_string_get _gxe_context_string_get 4601 #endif 4602 #define gx_context_string_get_ext _gxe_context_string_get_ext 4603 4604 #define gx_display_active_language_set _gxe_display_active_language_set 4605 #define gx_display_color_set _gxe_display_color_set 4606 #define gx_display_color_table_set _gxe_display_color_table_set 4607 #define gx_display_create(a, b, c, d, e) _gxe_display_create(a, b, c, d, e, sizeof(GX_DISPLAY)) 4608 #define gx_display_delete _gxe_display_delete 4609 #define gx_display_font_table_set _gxe_display_font_table_set 4610 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4611 #define gx_display_language_table_get _gxe_display_language_table_get 4612 #define gx_display_language_table_set _gxe_display_language_table_set 4613 #endif 4614 #define gx_display_language_table_get_ext _gxe_display_language_table_get_ext 4615 #define gx_display_language_table_set_ext _gxe_display_language_table_set_ext 4616 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 4617 #define gx_display_language_direction_table_set _gxe_display_language_direction_table_set 4618 #endif 4619 #define gx_display_pixelmap_table_set _gxe_display_pixelmap_table_set 4620 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4621 #define gx_display_string_get _gxe_display_string_get 4622 #define gx_display_string_table_get _gxe_display_string_table_get 4623 #endif 4624 #define gx_display_string_get_ext _gxe_display_string_get_ext 4625 #define gx_display_string_table_get_ext _gxe_display_string_table_get_ext 4626 #define gx_display_theme_install _gxe_display_theme_install 4627 4628 #define gx_drop_list_close _gxe_drop_list_close 4629 #define gx_drop_list_create(a, b, c, d, e, f, g, h, i) _gxe_drop_list_create((GX_DROP_LIST *)a, b, (GX_WIDGET *)c, d, e, f, g, h, i, sizeof(GX_DROP_LIST)) 4630 #define gx_drop_list_event_process _gxe_drop_list_event_process 4631 #define gx_drop_list_open _gxe_drop_list_open 4632 #define gx_drop_list_pixelmap_set _gxe_drop_list_pixelmap_set 4633 #define gx_drop_list_popup_get _gxe_drop_list_popup_get 4634 4635 #define gx_generic_scroll_wheel_children_position _gxe_generic_scroll_wheel_children_position 4636 #define gx_generic_scroll_wheel_create(a, b, c, d, e, f, g, h) _gxe_generic_scroll_wheel_create(a, b, c, d, e, f, g, h, sizeof(GX_GENERIC_SCROLL_WHEEL)) 4637 #define gx_generic_scroll_wheel_draw _gxe_generic_scroll_wheel_draw 4638 #define gx_generic_scroll_wheel_event_process _gxe_generic_scroll_wheel_event_process 4639 #define gx_generic_scroll_wheel_row_height_set _gxe_generic_scroll_wheel_row_height_set 4640 #define gx_generic_scroll_wheel_total_rows_set _gxe_generic_scroll_wheel_total_rows_set 4641 4642 #define gx_horizontal_list_children_position _gxe_horizontal_list_children_position 4643 #define gx_horizontal_list_create(a, b, c, d, e, f, g, h) _gxe_horizontal_list_create(a, b, (GX_WIDGET *)c, d, e, f, g, h, sizeof(GX_HORIZONTAL_LIST)) 4644 #define gx_horizontal_list_event_process _gxe_horizontal_list_event_process 4645 #define gx_horizontal_list_page_index_set(a, b) _gxe_horizontal_list_page_index_set((GX_HORIZONTAL_LIST *)a, b) 4646 #define gx_horizontal_list_selected_index_get(a, b) _gxe_horizontal_list_selected_index_get(a, b) 4647 #define gx_horizontal_list_selected_set(a, b) _gxe_horizontal_list_selected_set(a, b) 4648 #define gx_horizontal_list_selected_widget_get(a, b) _gxe_horizontal_list_selected_widget_get(a, (GX_WIDGET **)b) 4649 #define gx_horizontal_list_total_columns_set(a, b) _gxe_horizontal_list_total_columns_set((GX_HORIZONTAL_LIST *)a, b) 4650 4651 #define gx_horizontal_scrollbar_create(a, b, c, d, e) _gxe_horizontal_scrollbar_create(a, b, (GX_WINDOW *)c, d, e, sizeof(GX_SCROLLBAR)) 4652 4653 #define gx_icon_background_draw _gx_icon_background_draw 4654 #define gx_icon_button_create(a, b, c, d, e, f, g) _gxe_icon_button_create(a, b, (GX_WIDGET *)c, d, e, f, g, sizeof(GX_ICON_BUTTON)) 4655 #define gx_icon_button_draw _gx_icon_button_draw 4656 #define gx_icon_button_pixelmap_set _gxe_icon_button_pixelmap_set 4657 #define gx_icon_create(a, b, c, d, e, f, g, h) _gxe_icon_create(a, b, (GX_WIDGET *)c, d, e, f, g, h, sizeof(GX_ICON)) 4658 #define gx_icon_draw _gx_icon_draw 4659 #define gx_icon_event_process _gxe_icon_event_process 4660 #define gx_icon_pixelmap_set _gxe_icon_pixelmap_set 4661 4662 #define gx_image_reader_create _gxe_image_reader_create 4663 #define gx_image_reader_palette_set _gxe_image_reader_palette_set 4664 #define gx_image_reader_start _gxe_image_reader_start 4665 4666 #define gx_line_chart_axis_draw _gx_line_chart_axis_draw 4667 #define gx_line_chart_create(a, b, c, d, e, f, g) _gxe_line_chart_create(a, b, (GX_WIDGET *) c, d, e, f, g, sizeof(GX_LINE_CHART)) 4668 #define gx_line_chart_data_draw _gx_line_chart_data_draw 4669 #define gx_line_chart_draw _gx_line_chart_draw 4670 #define gx_line_chart_update _gxe_line_chart_update 4671 #define gx_line_chart_y_scale_calculate _gxe_line_chart_y_scale_calculate 4672 4673 #define gx_menu_create(a, b, c, d, e, f, g, h) _gxe_menu_create((GX_MENU *)a, b, (GX_WIDGET *)c, d, e, f, g, h, sizeof(GX_MENU)) 4674 #define gx_menu_draw _gx_menu_draw 4675 #define gx_menu_event_process _gxe_menu_event_process 4676 #define gx_menu_insert _gxe_menu_insert 4677 #define gx_menu_remove _gxe_menu_remove 4678 #define gx_menu_text_draw _gx_menu_text_draw 4679 #define gx_menu_text_offset_set _gxe_menu_text_offset_set 4680 4681 #define gx_multi_line_text_button_create(a, b, c, d, e, f, g) _gxe_multi_line_text_button_create(a, b, (GX_WIDGET *)c, d, e, f, g, sizeof(GX_MULTI_LINE_TEXT_BUTTON)) 4682 #define gx_multi_line_text_button_draw _gx_multi_line_text_button_draw 4683 #define gx_multi_line_text_button_event_process _gxe_multi_line_text_button_event_process 4684 #define gx_multi_line_text_button_text_draw _gx_multi_line_text_button_text_draw 4685 #define gx_multi_line_text_button_text_id_set _gxe_multi_line_text_button_text_id_set 4686 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4687 #define gx_multi_line_text_button_text_set _gxe_multi_line_text_button_text_set 4688 #endif 4689 #define gx_multi_line_text_button_text_set_ext _gxe_multi_line_text_button_text_set_ext 4690 4691 #define gx_multi_line_text_input_backspace _gxe_multi_line_text_input_backspace 4692 #define gx_multi_line_text_input_buffer_clear _gxe_multi_line_text_input_buffer_clear 4693 #define gx_multi_line_text_input_buffer_get _gxe_multi_line_text_input_buffer_get 4694 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4695 #define gx_multi_line_text_input_char_insert _gxe_multi_line_text_input_char_insert 4696 #endif 4697 #define gx_multi_line_text_input_char_insert_ext _gxe_multi_line_text_input_char_insert_ext 4698 #define gx_multi_line_text_input_create(a, b, c, d, e, f, g, h) _gxe_multi_line_text_input_create(a, b, (GX_WIDGET *)c, d, e, f, g, h, sizeof(GX_MULTI_LINE_TEXT_INPUT)) 4699 #define gx_multi_line_text_input_cursor_pos_get _gxe_multi_line_text_input_cursor_pos_get 4700 #define gx_multi_line_text_input_delete _gxe_multi_line_text_input_delete 4701 #define gx_multi_line_text_input_down_arrow _gxe_multi_line_text_input_down_arrow 4702 #define gx_multi_line_text_input_end _gxe_multi_line_text_input_end 4703 #define gx_multi_line_text_input_event_process _gxe_multi_line_text_input_event_process 4704 #define gx_multi_line_text_input_fill_color_set _gxe_multi_line_text_input_fill_color_set 4705 #define gx_multi_line_text_input_home _gxe_multi_line_text_input_home 4706 #define gx_multi_line_text_input_left_arrow _gxe_multi_line_text_input_left_arrow 4707 #define gx_multi_line_text_input_right_arrow _gxe_multi_line_text_input_right_arrow 4708 #define gx_multi_line_text_input_style_add _gxe_multi_line_text_input_style_add 4709 #define gx_multi_line_text_input_style_remove _gxe_multi_line_text_input_style_remove 4710 #define gx_multi_line_text_input_style_set _gxe_multi_line_text_input_style_set 4711 #define gx_multi_line_text_input_text_color_set _gxe_multi_line_text_input_text_color_set 4712 #define gx_multi_line_text_input_text_select _gxe_multi_line_text_input_text_select 4713 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4714 #define gx_multi_line_text_input_text_set _gxe_multi_line_text_input_text_set 4715 #endif 4716 #define gx_multi_line_text_input_text_set_ext _gxe_multi_line_text_input_text_set_ext 4717 #define gx_multi_line_text_input_up_arrow _gxe_multi_line_text_input_up_arrow 4718 4719 #define gx_multi_line_text_view_create(a, b, c, d, e, f, g) _gxe_multi_line_text_view_create(a, b, (GX_WIDGET *)c, d, e, f, g, sizeof(GX_MULTI_LINE_TEXT_VIEW)) 4720 #define gx_multi_line_text_view_draw _gx_multi_line_text_view_draw 4721 #define gx_multi_line_text_view_event_process _gxe_multi_line_text_view_event_process 4722 #define gx_multi_line_text_view_font_set _gxe_multi_line_text_view_font_set 4723 #define gx_multi_line_text_view_line_space_set _gxe_multi_line_text_view_line_space_set 4724 #define gx_multi_line_text_view_scroll_info_get _gxe_multi_line_text_view_scroll_info_get 4725 #if defined(GUIX_5_4_0_COMPATIBILITY) 4726 #define gx_multi_line_text_view_text_color_set(a, b, c) _gxe_multi_line_text_view_text_color_set((GX_MULTI_LINE_TEXT_VIEW *)a, b, c, b) 4727 #else 4728 #define gx_multi_line_text_view_text_color_set _gxe_multi_line_text_view_text_color_set 4729 #endif 4730 #define gx_multi_line_text_view_text_id_set _gxe_multi_line_text_view_text_id_set 4731 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4732 #define gx_multi_line_text_view_text_set _gxe_multi_line_text_view_text_set 4733 #endif 4734 #define gx_multi_line_text_view_text_set_ext _gxe_multi_line_text_view_text_set_ext 4735 #define gx_multi_line_text_view_whitespace_set _gxe_multi_line_text_view_whitespace_set 4736 4737 #define gx_rich_text_view_create(a, b, c, d, e, f, g, h) _gxe_rich_text_view_create(a, b, (GX_WIDGET *)c, d, e, f, g, h, sizeof(GX_RICH_TEXT_VIEW)) 4738 #define gx_rich_text_view_draw _gx_rich_text_view_draw 4739 #define gx_rich_text_view_text_draw _gx_rich_text_view_text_draw 4740 #define gx_rich_text_view_fonts_set _gxe_rich_text_view_fonts_set 4741 4742 #define gx_numeric_pixelmap_prompt_create(a, b, c, d, e, f, g, h) _gxe_numeric_pixelmap_prompt_create(a, b, (GX_WIDGET *)c, d, e, f, g, h, sizeof(GX_NUMERIC_PIXELMAP_PROMPT)) 4743 #define gx_numeric_pixelmap_prompt_format_function_set _gxe_numeric_pixelmap_prompt_format_function_set 4744 #define gx_numeric_pixelmap_prompt_value_set _gxe_numeric_pixelmap_prompt_value_set 4745 4746 #define gx_numeric_prompt_create(a, b, c, d, e, f, g) _gxe_numeric_prompt_create(a, b, (GX_WIDGET *)c, d, e, f, g, sizeof(GX_NUMERIC_PROMPT)) 4747 #define gx_numeric_prompt_format_function_set _gxe_numeric_prompt_format_function_set 4748 #define gx_numeric_prompt_value_set _gxe_numeric_prompt_value_set 4749 4750 #define gx_numeric_scroll_wheel_create(a, b, c, d, e, f, g, h) _gxe_numeric_scroll_wheel_create(a, b, (GX_WIDGET *) c, d, e, f, g, h, sizeof(GX_NUMERIC_SCROLL_WHEEL)) 4751 #define gx_numeric_scroll_wheel_range_set _gxe_numeric_scroll_wheel_range_set 4752 4753 #define gx_pixelmap_button_create(a, b, c, d, e, f, g, h, i) _gxe_pixelmap_button_create(a, b, (GX_WIDGET *)c, d, e, f, g, h, i, sizeof(GX_PIXELMAP_BUTTON)) 4754 #define gx_pixelmap_button_draw _gx_pixelmap_button_draw 4755 #define gx_pixelmap_button_event_process _gxe_pixelmap_button_event_process 4756 #define gx_pixelmap_button_pixelmap_set _gxe_pixelmap_button_pixelmap_set 4757 4758 #define gx_pixelmap_prompt_create(a, b, c, d, e, f, g, h) _gxe_pixelmap_prompt_create(a, b, (GX_WIDGET *)c, d, e, f, g, h, sizeof(GX_PIXELMAP_PROMPT)) 4759 #define gx_pixelmap_prompt_draw _gx_pixelmap_prompt_draw 4760 #define gx_pixelmap_prompt_pixelmap_set _gxe_pixelmap_prompt_pixelmap_set 4761 4762 #define gx_pixelmap_slider_create(a, b, c, d, e, f, g, h) _gxe_pixelmap_slider_create(a, b, (GX_WIDGET *)c, d, e, f, g, h, sizeof(GX_PIXELMAP_SLIDER)) 4763 #define gx_pixelmap_slider_draw _gx_pixelmap_slider_draw 4764 #define gx_pixelmap_slider_event_process _gxe_pixelmap_slider_event_process 4765 #define gx_pixelmap_slider_pixelmap_set _gxe_pixelmap_slider_pixelmap_set 4766 4767 #define gx_progress_bar_background_draw _gx_progress_bar_background_draw 4768 #define gx_progress_bar_create(a, b, c, d, e, f, g) _gxe_progress_bar_create(a, b, (GX_WIDGET *)c, d, e, f, g, sizeof(GX_PROGRESS_BAR)) 4769 #define gx_progress_bar_draw _gx_progress_bar_draw 4770 #define gx_progress_bar_event_process _gxe_progress_bar_event_process 4771 #define gx_progress_bar_font_set _gxe_progress_bar_font_set 4772 #define gx_progress_bar_info_set(a, b) _gxe_progress_bar_info_set((GX_PROGRESS_BAR *)a, b); 4773 #define gx_progress_bar_pixelmap_set _gxe_progress_bar_pixelmap_set 4774 #define gx_progress_bar_range_set _gxe_progress_bar_range_set 4775 #if defined(GUIX_5_4_0_COMPATIBILITY) 4776 #define gx_progress_bar_text_color_set(a, b, c) _gxe_progress_bar_text_color_set((GX_PROGRESS_BAR *)a, b, c, b) 4777 #else 4778 #define gx_progress_bar_text_color_set _gxe_progress_bar_text_color_set 4779 #endif 4780 #define gx_progress_bar_text_draw _gx_progress_bar_text_draw 4781 #define gx_progress_bar_value_set _gxe_progress_bar_value_set 4782 4783 #define gx_prompt_create(a, b, c, d, e, f, g) _gxe_prompt_create(a, b, (GX_WIDGET *)c, d, e, f, g, sizeof(GX_PROMPT)) 4784 #define gx_prompt_event_process _gxe_prompt_event_process 4785 #define gx_prompt_draw _gx_prompt_draw 4786 #define gx_prompt_font_set _gxe_prompt_font_set 4787 #if defined(GUIX_5_4_0_COMPATIBILITY) 4788 #define gx_prompt_text_color_set(a, b, c) _gxe_prompt_text_color_set((GX_PROMPT *)a, b, c, b) 4789 #else 4790 #define gx_prompt_text_color_set _gxe_prompt_text_color_set 4791 #endif 4792 #define gx_prompt_text_draw _gx_prompt_text_draw 4793 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4794 #define gx_prompt_text_get _gxe_prompt_text_get 4795 #endif 4796 #define gx_prompt_text_get_ext _gxe_prompt_text_get_ext 4797 #define gx_prompt_text_id_set _gxe_prompt_text_id_set 4798 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4799 #define gx_prompt_text_set _gxe_prompt_text_set 4800 #endif 4801 #define gx_prompt_text_set_ext _gxe_prompt_text_set_ext 4802 4803 #define gx_radial_progress_bar_anchor_set _gxe_radial_progress_bar_anchor_set 4804 #define gx_radial_progress_bar_background_draw _gx_radial_progress_bar_background_draw 4805 #define gx_radial_progress_bar_create(a, b, c, d, e, f) _gxe_radial_progress_bar_create(a, b, c, d, e, f, sizeof(GX_RADIAL_PROGRESS_BAR)) 4806 #define gx_radial_progress_bar_draw _gx_radial_progress_bar_draw 4807 #define gx_radial_progress_bar_event_process _gxe_radial_progress_bar_event_process 4808 #define gx_radial_progress_bar_font_set _gxe_radial_progress_bar_font_set 4809 #define gx_radial_progress_bar_info_set _gxe_radial_progress_bar_info_set 4810 #if defined(GUIX_5_4_0_COMPATIBILITY) 4811 #define gx_radial_progress_bar_text_color_set(a, b, c) _gxe_radial_progress_bar_text_color_set((GX_RADIAL_PROGRESS_BAR *)a, b, c, b) 4812 #else 4813 #define gx_radial_progress_bar_text_color_set _gxe_radial_progress_bar_text_color_set 4814 #endif 4815 #define gx_radial_progress_bar_text_draw _gx_radial_progress_bar_text_draw 4816 #define gx_radial_progress_bar_value_set _gxe_radial_progress_bar_value_set 4817 4818 #define gx_radial_slider_anchor_angles_set _gxe_radial_slider_anchor_angles_set 4819 #define gx_radial_slider_animation_set _gxe_radial_slider_animation_set 4820 #define gx_radial_slider_animation_start _gxe_radial_slider_animation_start 4821 #define gx_radial_slider_create(a, b, c, d, e, f, g) _gxe_radial_slider_create((GX_RADIAL_SLIDER *)a, b, c, d, e, f, g, sizeof(GX_RADIAL_SLIDER)) 4822 #define gx_radial_slider_draw _gx_radial_slider_draw 4823 #define gx_radial_slider_event_process _gxe_radial_slider_event_process 4824 #define gx_radial_slider_info_get _gxe_radial_slider_info_get 4825 #define gx_radial_slider_info_set _gxe_radial_slider_info_set 4826 #define gx_radial_slider_pixelmap_set _gxe_radial_slider_pixelmap_set 4827 #define gx_radial_slider_angle_set _gxe_radial_slider_angle_set 4828 4829 #define gx_radio_button_create(a, b, c, d, e, f, g) _gxe_radio_button_create(a, b, (GX_WIDGET *)c, d, e, f, g, sizeof(GX_RADIO_BUTTON)) 4830 #define gx_radio_button_draw _gx_radio_button_draw 4831 #define gx_radio_button_pixelmap_set _gxe_radio_button_pixelmap_set 4832 4833 #define gx_screen_stack_create _gxe_screen_stack_create 4834 #define gx_screen_stack_pop _gxe_screen_stack_pop 4835 #define gx_screen_stack_push _gxe_screen_stack_push 4836 #define gx_screen_stack_reset _gxe_screen_stack_reset 4837 4838 #define gx_scroll_thumb_create(a, b, c) _gxe_scroll_thumb_create(a, b, c, sizeof(GX_SCROLL_THUMB)) 4839 #define gx_scroll_thumb_draw _gx_scroll_thumb_draw 4840 #define gx_scroll_thumb_event_process _gxe_scroll_thumb_event_process 4841 4842 #define gx_scrollbar_draw _gx_scrollbar_draw 4843 #define gx_scrollbar_event_process _gxe_scrollbar_event_process 4844 #define gx_scrollbar_limit_check _gxe_scrollbar_limit_check 4845 #define gx_scrollbar_reset _gxe_scrollbar_reset 4846 #define gx_scrollbar_value_set _gxe_scrollbar_value_set 4847 4848 #define gx_scroll_wheel_create(a, b, c, d, e, f, g) _gxe_scroll_wheel_create(a, b, c, d, e, f, g, sizeof(GX_SCROLL_WHEEL)) 4849 #define gx_scroll_wheel_event_process _gxe_scroll_wheel_event_process 4850 #define gx_scroll_wheel_gradient_alpha_set(a, b, c) _gxe_scroll_wheel_gradient_alpha_set((GX_SCROLL_WHEEL *) a, b, c) 4851 #define gx_scroll_wheel_row_height_set(a, b) _gxe_scroll_wheel_row_height_set((GX_SCROLL_WHEEL *) a, b) 4852 #define gx_scroll_wheel_selected_background_set(a, b) _gxe_scroll_wheel_selected_background_set((GX_SCROLL_WHEEL *) a, b) 4853 #define gx_scroll_wheel_selected_get(a, b) _gxe_scroll_wheel_selected_get((GX_SCROLL_WHEEL *) a, b) 4854 #define gx_scroll_wheel_selected_set(a, b) _gxe_scroll_wheel_selected_set((GX_SCROLL_WHEEL *) a, b) 4855 #define gx_scroll_wheel_speed_set(a, b, c, d, e) _gxe_scroll_wheel_speed_set((GX_SCROLL_WHEEL *) a, b, c, d, e) 4856 #define gx_scroll_wheel_total_rows_set(a, b) _gxe_scroll_wheel_total_rows_set((GX_SCROLL_WHEEL *) a, b) 4857 4858 #define gx_single_line_text_input_backspace(a) _gxe_single_line_text_input_backspace((GX_SINGLE_LINE_TEXT_INPUT *)a) 4859 #define gx_single_line_text_input_buffer_clear(a) _gxe_single_line_text_input_buffer_clear((GX_SINGLE_LINE_TEXT_INPUT *)a) 4860 #define gx_single_line_text_input_buffer_get(a, b, c, d) _gxe_single_line_text_input_buffer_get((GX_SINGLE_LINE_TEXT_INPUT *)a, b, c, d) 4861 #define gx_single_line_text_input_character_delete(a) _gxe_single_line_text_input_character_delete(a) 4862 #define gx_single_line_text_input_character_insert(a, b, c) _gxe_single_line_text_input_character_insert(a, b, c) 4863 #define gx_single_line_text_input_create(a, b, c, d, e, f, g, h) _gxe_single_line_text_input_create(a, b, (GX_WIDGET *)c, d, e, f, g, h, sizeof(GX_SINGLE_LINE_TEXT_INPUT)) 4864 #define gx_single_line_text_input_draw(a) _gx_single_line_text_input_draw(a) 4865 #define gx_single_line_text_input_draw_position_get(a, b, c) _gxe_single_line_text_input_draw_position_get(a, b, c) 4866 #define gx_single_line_text_input_end(a) _gxe_single_line_text_input_end((GX_SINGLE_LINE_TEXT_INPUT *)a) 4867 #define gx_single_line_text_input_event_process(a, b) _gxe_single_line_text_input_event_process((GX_SINGLE_LINE_TEXT_INPUT *)a, b) 4868 #define gx_single_line_text_input_fill_color_set(a, b, c, d, e) _gxe_single_line_text_input_fill_color_set((GX_SINGLE_LINE_TEXT_INPUT *)a, b, c, d, e) 4869 #define gx_single_line_text_input_home(a) _gxe_single_line_text_input_home((GX_SINGLE_LINE_TEXT_INPUT *)a) 4870 #define gx_single_line_text_input_left_arrow(a) _gxe_single_line_text_input_left_arrow((GX_SINGLE_LINE_TEXT_INPUT *)a) 4871 #define gx_single_line_text_input_position_get(a, b) _gxe_single_line_text_input_position_get(a, b) 4872 #define gx_single_line_text_input_right_arrow(a) _gxe_single_line_text_input_right_arrow((GX_SINGLE_LINE_TEXT_INPUT *)a) 4873 #define gx_single_line_text_input_style_add(a, b) _gxe_single_line_text_input_style_add((GX_SINGLE_LINE_TEXT_INPUT *)a, b) 4874 #define gx_single_line_text_input_style_remove(a, b) _gxe_single_line_text_input_style_remove((GX_SINGLE_LINE_TEXT_INPUT *)a, b) 4875 #define gx_single_line_text_input_style_set(a, b) _gxe_single_line_text_input_style_set((GX_SINGLE_LINE_TEXT_INPUT *)a, b) 4876 #define gx_single_line_text_input_text_color_set(a, b, c, d, e) _gxe_single_line_text_input_text_color_set((GX_SINGLE_LINE_TEXT_INPUT *)a, b, c, d, e) 4877 #define gx_single_line_text_input_text_select _gxe_single_line_text_input_text_select 4878 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4879 #define gx_single_line_text_input_text_set _gxe_single_line_text_input_text_set 4880 #endif 4881 #define gx_single_line_text_input_text_set_ext _gxe_single_line_text_input_text_set_ext 4882 4883 #define gx_slider_create(a, b, c, d, e, f, g, h) _gxe_slider_create(a, b, (GX_WIDGET *)c, d, e, f, g, h, sizeof(GX_SLIDER)) 4884 #define gx_slider_draw _gx_slider_draw 4885 #define gx_slider_event_process _gxe_slider_event_process 4886 #define gx_slider_info_set _gxe_slider_info_set 4887 #define gx_slider_needle_draw _gx_slider_needle_draw 4888 #define gx_slider_needle_position_get _gxe_slider_needle_position_get 4889 #define gx_slider_tickmarks_draw _gx_slider_tickmarks_draw 4890 #define gx_slider_travel_get _gxe_slider_travel_get 4891 #define gx_slider_value_calculate _gxe_slider_value_calculate 4892 #define gx_slider_value_set _gxe_slider_value_set 4893 4894 #define gx_sprite_create(a, b, c, d, e, f, g, h) _gxe_sprite_create(a, b, (GX_WIDGET *)c, d, e, f, g, h, sizeof(GX_SPRITE)) 4895 #define gx_sprite_current_frame_set _gxe_sprite_current_frame_set 4896 #define gx_sprite_frame_list_set _gxe_sprite_frame_list_set 4897 #define gx_sprite_start(a, b) _gxe_sprite_start(a, b) 4898 #define gx_sprite_stop(a) _gxe_sprite_stop(a) 4899 4900 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4901 #define gx_string_scroll_wheel_create(a, b, c, d, e, f, g, h) _gxe_string_scroll_wheel_create(a, b, c, d, e, f, g, h, sizeof(GX_STRING_SCROLL_WHEEL)) 4902 #define gx_string_scroll_wheel_string_list_set _gxe_string_scroll_wheel_string_list_set 4903 #endif 4904 #define gx_string_scroll_wheel_create_ext(a, b, c, d, e, f, g, h) _gxe_string_scroll_wheel_create_ext(a, b, c, d, e, f, g, h, sizeof(GX_STRING_SCROLL_WHEEL)) 4905 #define gx_string_scroll_wheel_event_process _gxe_string_scroll_wheel_event_process 4906 #define gx_string_scroll_wheel_string_id_list_set _gxe_string_scroll_wheel_string_id_list_set 4907 #define gx_string_scroll_wheel_string_list_set_ext _gxe_string_scroll_wheel_string_list_set_ext 4908 4909 #define gx_system_active_language_set _gxe_system_active_language_set 4910 4911 #if (GX_ANIMATION_POOL_SIZE > 0) 4912 #define gx_system_animation_get _gxe_system_animation_get 4913 #define gx_system_animation_free _gxe_system_animation_free 4914 #endif 4915 4916 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 4917 #define gx_system_bidi_text_enable _gx_system_bidi_text_enable 4918 #define gx_system_bidi_text_disable _gx_system_bidi_text_disable 4919 #endif 4920 4921 #if defined(GX_THAI_GLYPH_SHAPING_SUPPORT) 4922 #define gx_system_text_render_style_set _gx_system_text_render_style_set 4923 #endif 4924 4925 #define gx_system_canvas_refresh _gxe_system_canvas_refresh 4926 #define gx_system_dirty_mark(a) _gxe_system_dirty_mark((GX_WIDGET *)a); 4927 #define gx_system_dirty_partial_add(a, b) _gxe_system_dirty_partial_add((GX_WIDGET *)a, b) 4928 #define gx_system_draw_context_get _gxe_system_draw_context_get 4929 #define gx_system_event_fold _gxe_system_event_fold 4930 #define gx_system_event_send _gxe_system_event_send 4931 #define gx_system_focus_claim(a) _gxe_system_focus_claim((GX_WIDGET *)a) 4932 #define gx_system_initialize _gxe_system_initialize 4933 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4934 #define gx_system_language_table_get _gxe_system_language_table_get 4935 #define gx_system_language_table_set _gxe_system_language_table_set 4936 #endif 4937 #define gx_system_memory_allocator_set _gxe_system_memory_allocator_set 4938 #define gx_system_pen_configure _gxe_system_pen_configure 4939 #define gx_system_screen_stack_create(a, b) _gxe_system_screen_stack_create(a, b, sizeof(GX_SCREEN_STACK_CONTROL)) 4940 #define gx_system_screen_stack_get _gxe_system_screen_stack_get 4941 #define gx_system_screen_stack_pop _gxe_system_screen_stack_pop 4942 #define gx_system_screen_stack_push _gxe_system_screen_stack_push 4943 #define gx_system_screen_stack_reset _gx_system_screen_stack_reset 4944 #define gx_system_scroll_appearance_get _gxe_system_scroll_appearance_get 4945 #define gx_system_scroll_appearance_set _gxe_system_scroll_appearance_set 4946 #define gx_system_start _gxe_system_start 4947 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4948 #define gx_system_string_get _gxe_system_string_get 4949 #define gx_system_string_table_get _gxe_system_string_table_get 4950 #define gx_system_string_width_get _gxe_system_string_width_get 4951 #endif 4952 #define gx_system_string_width_get_ext _gxe_system_string_width_get_ext 4953 #define gx_system_timer_start(a, b, c, d) _gxe_system_timer_start((GX_WIDGET *)a, b, c, d) 4954 #define gx_system_timer_stop(a, b) _gxe_system_timer_stop((GX_WIDGET *)a, b) 4955 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4956 #define gx_system_version_string_get _gxe_system_version_string_get 4957 #endif 4958 #define gx_system_version_string_get_ext _gxe_system_version_string_get_ext 4959 #define gx_system_widget_find _gxe_system_widget_find 4960 4961 #define gx_text_button_create(a, b, c, d, e, f, g) _gxe_text_button_create(a, b, (GX_WIDGET *)c, d, e, f, g, sizeof(GX_TEXT_BUTTON)) 4962 #define gx_text_button_draw _gx_text_button_draw 4963 #define gx_text_button_event_process _gxe_text_button_event_process 4964 #define gx_text_button_font_set _gxe_text_button_font_set 4965 #if defined(GUIX_5_4_0_COMPATIBILITY) 4966 #define gx_text_button_text_color_set(a, b, c) _gxe_text_button_text_color_set((GX_TEXT_BUTTON *)a, b, c, b) 4967 #else 4968 #define gx_text_button_text_color_set _gxe_text_button_text_color_set 4969 #endif 4970 #define gx_text_button_text_draw _gx_text_button_text_draw 4971 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4972 #define gx_text_button_text_get _gxe_text_button_text_get 4973 #endif 4974 #define gx_text_button_text_get_ext _gxe_text_button_text_get_ext 4975 #define gx_text_button_text_id_set _gxe_text_button_text_id_set 4976 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4977 #define gx_text_button_text_set _gxe_text_button_text_set 4978 #endif 4979 #define gx_text_button_text_set_ext _gxe_text_button_text_set_ext 4980 4981 #define gx_text_input_cursor_blink_interval_set(a, b) _gxe_text_input_cursor_blink_interval_set((GX_TEXT_INPUT_CURSOR *)a, b) 4982 #define gx_text_input_cursor_height_set(a, b) _gxe_text_input_cursor_height_set((GX_TEXT_INPUT_CURSOR *)a, b) 4983 #define gx_text_input_cursor_width_set(a, b) _gxe_text_input_cursor_width_set((GX_TEXT_INPUT_CURSOR *)a, b) 4984 4985 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 4986 #define gx_text_scroll_wheel_callback_set(a, b) _gxe_text_scroll_wheel_callback_set((GX_TEXT_SCROLL_WHEEL *)a, (GX_CONST GX_CHAR *(*)(GX_TEXT_SCROLL_WHEEL *, INT)) b) 4987 #endif 4988 #define gx_text_scroll_wheel_callback_set_ext(a, b) _gxe_text_scroll_wheel_callback_set_ext((GX_TEXT_SCROLL_WHEEL *)a, (UINT(*)(GX_TEXT_SCROLL_WHEEL *, INT, GX_STRING *)) b) 4989 #define gx_text_scroll_wheel_font_set(a, b, c) _gxe_text_scroll_wheel_font_set((GX_TEXT_SCROLL_WHEEL *) a, b, c) 4990 #if defined(GUIX_5_4_0_COMPATIBILITY) 4991 #define gx_text_scroll_wheel_text_color_set(a, b, c) _gxe_text_scroll_wheel_text_color_set((GX_TEXT_SCROLL_WHEEL *) a, b, c, b) 4992 #else 4993 #define gx_text_scroll_wheel_text_color_set(a, b, c, d) _gxe_text_scroll_wheel_text_color_set((GX_TEXT_SCROLL_WHEEL *) a, b, c, d) 4994 #endif 4995 #define gx_text_scroll_wheel_create(a, b, c, d, e, f, g) _gxe_text_scroll_wheel_create(a, b, c, d, e, f, g, sizeof(GX_TEXT_SCROLL_WHEEL)) 4996 #define gx_text_scroll_wheel_draw _gx_text_scroll_wheel_draw 4997 #define gx_text_scroll_wheel_event_process _gxe_text_scroll_wheel_event_process 4998 4999 #define gx_utility_gradient_create _gxe_utility_gradient_create 5000 #define gx_utility_gradient_delete _gxe_utility_gradient_delete 5001 #define gx_tree_view_create(a, b, c, d, e, f) _gxe_tree_view_create((GX_TREE_VIEW *)a, b, (GX_WIDGET *)c, d, e, f, sizeof(GX_TREE_VIEW)) 5002 #define gx_tree_view_draw _gx_tree_view_draw 5003 #define gx_tree_view_event_process _gxe_tree_view_event_process 5004 #define gx_tree_view_indentation_set _gxe_tree_view_indentation_set 5005 #define gx_tree_view_position _gxe_tree_view_position 5006 #define gx_tree_view_root_line_color_set _gxe_tree_view_root_line_color_set 5007 #define gx_tree_view_root_pixelmap_set _gxe_tree_view_root_pixelmap_set 5008 #define gx_tree_view_selected_get _gxe_tree_view_selected_get 5009 #define gx_tree_view_selected_set _gxe_tree_view_selected_set 5010 5011 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 5012 #define gx_utility_bidi_paragraph_reorder _gxe_utility_bidi_paragraph_reorder 5013 #define gx_utility_bidi_paragraph_reorder_ext _gxe_utility_bidi_paragraph_reorder_ext 5014 #define gx_utility_bidi_resolved_text_info_delete _gxe_utility_bidi_resolved_text_info_delete 5015 #endif 5016 #define gx_utility_canvas_to_bmp _gxe_utility_canvas_to_bmp 5017 #define gx_utility_circle_point_get _gxe_utility_circle_point_get 5018 #define gx_utility_ltoa _gxe_utility_ltoa 5019 #if defined(GUIX_5_4_0_COMPATIBILITY) 5020 #define gx_utility_math_acos _gx_utility_math_acos_5_4_0 5021 #define gx_utility_math_asin _gx_utility_math_asin_5_4_0 5022 #define gx_utility_math_cos _gx_utility_math_cos_5_4_0 5023 #define gx_utility_math_sin _gx_utility_math_sin_5_4_0 5024 #else 5025 #define gx_utility_math_acos _gx_utility_math_acos 5026 #define gx_utility_math_asin _gx_utility_math_asin 5027 #define gx_utility_math_cos _gx_utility_math_cos 5028 #define gx_utility_math_sin _gx_utility_math_sin 5029 #endif 5030 #define gx_utility_math_sqrt _gx_utility_math_sqrt 5031 #define gx_utility_pixelmap_resize _gxe_utility_pixelmap_resize 5032 #define gx_utility_pixelmap_rotate _gxe_utility_pixelmap_rotate 5033 #define gx_utility_pixelmap_simple_rotate _gxe_utility_pixelmap_simple_rotate 5034 #define gx_utility_rectangle_center _gxe_utility_rectangle_center 5035 #define gx_utility_rectangle_center_find _gxe_utility_rectangle_center_find 5036 #define gx_utility_rectangle_combine _gxe_utility_rectangle_combine 5037 #define gx_utility_rectangle_compare _gxe_utility_rectangle_compare 5038 #define gx_utility_rectangle_define _gxe_utility_rectangle_define 5039 #define gx_utility_rectangle_overlap_detect _gxe_utility_rectangle_overlap_detect 5040 #define gx_utility_rectangle_point_detect _gxe_utility_rectangle_point_detect 5041 #define gx_utility_rectangle_resize _gxe_utility_rectangle_resize 5042 #define gx_utility_rectangle_shift _gxe_utility_rectangle_shift 5043 5044 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5045 #define gx_utility_string_to_alphamap _gxe_utility_string_to_alphamap 5046 #endif 5047 #define gx_utility_string_to_alphamap_ext _gxe_utility_string_to_alphamap_ext 5048 5049 #define gx_vertical_list_children_position _gxe_vertical_list_children_position 5050 #define gx_vertical_list_create(a, b, c, d, e, f, g, h) _gxe_vertical_list_create(a, b, (GX_WIDGET *)c, d, e, f, g, h, sizeof(GX_VERTICAL_LIST)) 5051 #define gx_vertical_list_event_process _gxe_vertical_list_event_process 5052 #define gx_vertical_list_page_index_set(a, b) _gxe_vertical_list_page_index_set((GX_VERTICAL_LIST *)a, b) 5053 #define gx_vertical_list_selected_index_get(a, b) _gxe_vertical_list_selected_index_get(a, b) 5054 #define gx_vertical_list_selected_set(a, b) _gxe_vertical_list_selected_set(a, b) 5055 #define gx_vertical_list_selected_widget_get(a, b) _gxe_vertical_list_selected_widget_get(a, (GX_WIDGET **)b) 5056 #define gx_vertical_list_total_rows_set(a, b) _gxe_vertical_list_total_rows_set((GX_VERTICAL_LIST *)a, b) 5057 5058 #define gx_vertical_scrollbar_create(a, b, c, d, e) _gxe_vertical_scrollbar_create(a, b, (GX_WINDOW *)c, d, e, sizeof(GX_SCROLLBAR)) 5059 5060 #define gx_widget_allocate(a, b) _gxe_widget_allocate((GX_WIDGET **)a, b) 5061 #define gx_widget_attach(a, b) _gxe_widget_attach((GX_WIDGET *)a, (GX_WIDGET *)b) 5062 #define gx_widget_back_attach(a, b) _gxe_widget_back_attach((GX_WIDGET *)a, (GX_WIDGET *)b) 5063 #define gx_widget_back_move(a, b) _gxe_widget_back_move((GX_WIDGET *)a, b) 5064 #define gx_widget_background_draw(a) _gx_widget_background_draw((GX_WIDGET *)a) 5065 #define gx_widget_block_move(a, b, c, d) _gxe_widget_block_move((GX_WIDGET *)a, b, c, d) 5066 #define gx_widget_border_draw(a, b, c, d, e) _gx_widget_border_draw((GX_WIDGET *)a, b, c, d, e) 5067 #define gx_widget_border_style_set(a, b) _gxe_widget_border_style_set((GX_WIDGET *)a, b) 5068 #define gx_widget_border_width_get(a, b) _gxe_widget_border_width_get((GX_WIDGET *)a, b) 5069 #define gx_widget_canvas_get(a, b) _gxe_widget_canvas_get((GX_WIDGET *)a, b) 5070 #define gx_widget_child_detect(a, b, c) _gxe_widget_child_detect((GX_WIDGET *)a, b, c) 5071 #define gx_widget_children_draw(a) _gx_widget_children_draw((GX_WIDGET *)a) 5072 #define gx_widget_color_get(a, b, c) _gxe_widget_color_get((GX_WIDGET *)a, b, c) 5073 #define gx_widget_client_get(a, b, c) _gxe_widget_client_get((GX_WIDGET *)a, b, c) 5074 #define gx_widget_create(a, b, c, d, e, f) _gxe_widget_create((GX_WIDGET *)a, b, (GX_WIDGET *)c, d, e, f, sizeof(GX_WIDGET)) 5075 #define gx_widget_created_test(a, b) _gxe_widget_created_test((GX_WIDGET *)a, b) 5076 #define gx_widget_delete(a) _gxe_widget_delete((GX_WIDGET *)a) 5077 #define gx_widget_detach(a) _gxe_widget_detach((GX_WIDGET *)a) 5078 #define gx_widget_draw(a) _gx_widget_draw((GX_WIDGET *)a) 5079 #define gx_widget_draw_set(a, b) _gxe_widget_draw_set((GX_WIDGET *)a, (void (*)(GX_WIDGET *))b) 5080 #define gx_widget_event_generate(a, b, c) _gxe_widget_event_generate((GX_WIDGET *)a, b, c) 5081 #define gx_widget_event_process(a, b) _gxe_widget_event_process((GX_WIDGET *)a, b) 5082 #define gx_widget_event_process_set(a, b) _gxe_widget_event_process_set((GX_WIDGET *)a, (UINT (*)(GX_WIDGET *, GX_EVENT *)) b) 5083 #define gx_widget_event_to_parent(a, b) _gxe_widget_event_to_parent((GX_WIDGET *)a, b) 5084 #if defined(GUIX_5_4_0_COMPATIBILITY) 5085 #define gx_widget_fill_color_set(a, b, c) _gxe_widget_fill_color_set((GX_WIDGET *)a, b, c, b) 5086 #else 5087 #define gx_widget_fill_color_set(a, b, c, d) _gxe_widget_fill_color_set((GX_WIDGET *)a, b, c, d) 5088 #endif 5089 #define gx_widget_find(a, b, c, d) _gxe_widget_find((GX_WIDGET *)a, b, c, (GX_WIDGET **)d) 5090 #define gx_widget_first_child_get(a, b) _gxe_widget_first_child_get((GX_WIDGET *) a, (GX_WIDGET **) b) 5091 #define gx_widget_focus_next(a) _gxe_widget_focus_next((GX_WIDGET *)a) 5092 #define gx_widget_focus_previous(a) _gxe_widget_focus_previous((GX_WIDGET *)a) 5093 #define gx_widget_font_get(a, b, c) _gxe_widget_font_get((GX_WIDGET *)a, b, c) 5094 #define gx_widget_free(a) _gxe_widget_free((GX_WIDGET *)a) 5095 #define gx_widget_front_move(a, b) _gxe_widget_front_move((GX_WIDGET *)a, b) 5096 #define gx_widget_height_get(a, b) _gxe_widget_height_get((GX_WIDGET *)a, b) 5097 #define gx_widget_hide(a) _gxe_widget_hide((GX_WIDGET *)a) 5098 #define gx_widget_last_child_get(a, b) _gxe_widget_last_child_get((GX_WIDGET *) a, (GX_WIDGET **) b) 5099 #define gx_widget_next_sibling_get(a, b) _gxe_widget_next_sibling_get((GX_WIDGET *) a, (GX_WIDGET **) b) 5100 #define gx_widget_parent_get(a, b) _gxe_widget_parent_get((GX_WIDGET *) a, (GX_WIDGET **) b) 5101 #define gx_widget_pixelmap_get(a, b, c) _gxe_widget_pixelmap_get((GX_WIDGET *)a, b, c) 5102 #define gx_widget_previous_sibling_get(a, b) _gxe_widget_previous_sibling_get((GX_WIDGET *) a, (GX_WIDGET **) b) 5103 #define gx_widget_resize(a, b) _gxe_widget_resize((GX_WIDGET *)a, b) 5104 #define gx_widget_shift(a, b, c, d) _gxe_widget_shift((GX_WIDGET *)a, b, c, d) 5105 #define gx_widget_show(a) _gxe_widget_show((GX_WIDGET *)a) 5106 #define gx_widget_status_add(a, b) _gxe_widget_status_add((GX_WIDGET *)a, b) 5107 #define gx_widget_status_get(a, b) _gxe_widget_status_get((GX_WIDGET *)a, b) 5108 #define gx_widget_status_remove(a, b) _gxe_widget_status_remove((GX_WIDGET *)a, b) 5109 #define gx_widget_status_test(a, b, c) _gxe_widget_status_test((GX_WIDGET *)a, b, c) 5110 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5111 #define gx_widget_string_get(a, b, c) _gxe_widget_string_get((GX_WIDGET *)a, b, c) 5112 #endif 5113 #define gx_widget_string_get_ext(a, b, c) _gxe_widget_string_get_ext((GX_WIDGET *)a, b, c) 5114 #define gx_widget_style_add(a, b) _gxe_widget_style_add((GX_WIDGET *)a, b) 5115 #define gx_widget_style_get(a, b) _gxe_widget_style_get((GX_WIDGET *)a, b) 5116 #define gx_widget_style_remove(a, b) _gxe_widget_style_remove((GX_WIDGET *)a, b) 5117 #define gx_widget_style_set(a, b) _gxe_widget_style_set((GX_WIDGET *)a, b) 5118 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5119 #define gx_widget_text_blend(a, b, c, d, e, f, g) _gxe_widget_text_blend((GX_WIDGET *)a, b, c, d, e, f, g) 5120 #define gx_widget_text_draw(a, b, c, d, e, f) _gx_widget_text_draw((GX_WIDGET *)a, b, c, d, e, f) 5121 #endif 5122 #define gx_widget_text_blend_ext(a, b, c, d, e, f, g) _gxe_widget_text_blend_ext((GX_WIDGET *)a, b, c, d, e, f, g) 5123 #define gx_widget_text_draw_ext(a, b, c, d, e, f) _gx_widget_text_draw_ext((GX_WIDGET *)a, b, c, d, e, f) 5124 #define gx_widget_text_id_draw(a, b, c, d, e, f) _gx_widget_text_id_draw((GX_WIDGET *)a, b, c, d, e, f) 5125 #define gx_widget_top_visible_child_find(a, b) _gxe_widget_top_visible_child_find((GX_WIDGET *) a, (GX_WIDGET **) b) 5126 #define gx_widget_type_find(a, b, c) _gxe_widget_type_find((GX_WIDGET *)a, b, (GX_WIDGET **)c) 5127 #define gx_widget_width_get(a, b) _gxe_widget_width_get((GX_WIDGET *)a, b) 5128 5129 #define gx_window_background_draw _gx_window_background_draw 5130 #define gx_window_client_height_get _gxe_window_client_height_get 5131 #define gx_window_client_scroll _gxe_window_client_scroll 5132 #define gx_window_client_width_get _gxe_window_client_width_get 5133 #define gx_window_close _gxe_window_close 5134 #define gx_window_create(a, b, c, d, e, f) _gxe_window_create(a, b, (GX_WIDGET *)c, d, e, f, sizeof(GX_WINDOW)) 5135 #define gx_window_draw _gx_window_draw 5136 #define gx_window_event_process _gxe_window_event_process 5137 #define gx_window_execute _gxe_window_execute 5138 #define gx_window_root_create(a, b, c, d, e, f) _gxe_window_root_create(a, b, c, d, e, f, sizeof(GX_WINDOW_ROOT)) 5139 #define gx_window_root_delete _gxe_window_root_delete 5140 #define gx_window_root_event_process _gxe_window_root_event_process 5141 #define gx_window_root_find _gxe_window_root_find 5142 #define gx_window_scroll_info_get _gxe_window_scroll_info_get 5143 #define gx_window_scrollbar_find _gxe_window_scrollbar_find 5144 #define gx_window_wallpaper_get _gxe_window_wallpaper_get 5145 #define gx_window_wallpaper_set(a, b, c) _gxe_window_wallpaper_set((GX_WINDOW *)a, b, c) 5146 5147 /* Define the error checking function prototypes of the GUIX API. */ 5148 UINT _gxe_accordion_menu_create(GX_ACCORDION_MENU *accordion, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5149 ULONG style, USHORT accordion_menu_id, GX_CONST GX_RECTANGLE *size, UINT control_block_size); 5150 VOID _gx_accordion_menu_draw(GX_ACCORDION_MENU *menu); 5151 UINT _gxe_accordion_menu_event_process(GX_ACCORDION_MENU *accordion, GX_EVENT *event_ptr); 5152 UINT _gxe_accordion_menu_position(GX_ACCORDION_MENU *accordion); 5153 5154 UINT _gxe_animation_canvas_define(GX_ANIMATION *animation, GX_CANVAS *canvas); 5155 UINT _gxe_animation_create(GX_ANIMATION *animation); 5156 UINT _gxe_animation_delete(GX_ANIMATION *target, GX_WIDGET *parent); 5157 UINT _gxe_animation_drag_disable(GX_ANIMATION *animation, GX_WIDGET *widget); 5158 UINT _gxe_animation_drag_enable(GX_ANIMATION *animation, GX_WIDGET *widget, GX_ANIMATION_INFO *info); 5159 UINT _gxe_animation_landing_speed_set(GX_ANIMATION *animation, USHORT shift_per_step); 5160 UINT _gxe_animation_start(GX_ANIMATION *animation, GX_ANIMATION_INFO *info); 5161 UINT _gxe_animation_stop(GX_ANIMATION *animation); 5162 5163 UINT _gxe_binres_language_count_get(GX_UBYTE *root_address, GX_VALUE *put_count); 5164 UINT _gxe_binres_language_info_load(GX_UBYTE *root_address, GX_LANGUAGE_HEADER *put_info); 5165 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5166 UINT _gxe_binres_language_table_load(GX_UBYTE *root_address, GX_UBYTE ****returned_language_table); 5167 #endif 5168 UINT _gxe_binres_language_table_load_ext(GX_UBYTE *root_address, GX_STRING ***returned_language_table); 5169 UINT _gxe_binres_theme_load(GX_UBYTE *root_address, INT theme_id, GX_THEME **returned_theme); 5170 UINT _gxe_binres_pixelmap_load(GX_UBYTE *root_address, UINT map_index, GX_PIXELMAP *pixelmap); 5171 UINT _gxe_binres_font_load(GX_UBYTE *root_address, UINT font_index, GX_UBYTE *buffer, ULONG *buffer_size); 5172 5173 UINT _gxe_brush_default(GX_BRUSH *brush); 5174 UINT _gxe_brush_define(GX_BRUSH *brush, GX_COLOR line_color, GX_COLOR fill_color, UINT style); 5175 5176 VOID _gx_button_background_draw(GX_BUTTON *button); 5177 UINT _gxe_button_create(GX_BUTTON *button, 5178 GX_CONST GX_CHAR *name, 5179 GX_WIDGET *parent, 5180 ULONG style, USHORT Id, 5181 GX_CONST GX_RECTANGLE *size, 5182 UINT button_control_block_size); 5183 UINT _gxe_button_deselect(GX_BUTTON *button, GX_BOOL gen_event); 5184 VOID _gx_button_draw(GX_BUTTON *button); 5185 UINT _gxe_button_event_process(GX_BUTTON *button, GX_EVENT *event_ptr); 5186 UINT _gxe_button_select(GX_BUTTON *button); 5187 5188 UINT _gxe_canvas_alpha_set(GX_CANVAS *canvas, GX_UBYTE alpha); 5189 UINT _gxe_canvas_arc_draw(INT xcenter, INT ycenter, UINT r, INT start_angle, INT end_angle); 5190 UINT _gxe_canvas_block_move(GX_RECTANGLE *block, GX_VALUE x_shift, GX_VALUE y_shift, GX_RECTANGLE *dirty); 5191 UINT _gxe_canvas_circle_draw(INT xcenter, INT ycenter, UINT r); 5192 UINT _gxe_canvas_create(GX_CANVAS *canvas, GX_CONST GX_CHAR *name, 5193 GX_DISPLAY *display, UINT type, UINT width, UINT height, GX_COLOR *memory_area, 5194 ULONG memory_size, UINT canvas_control_block_size); 5195 UINT _gxe_canvas_delete(GX_CANVAS *canvas); 5196 UINT _gxe_canvas_drawing_complete(GX_CANVAS *canvas, GX_BOOL Flush); 5197 UINT _gxe_canvas_drawing_initiate(GX_CANVAS *canvas, GX_WIDGET *who, GX_RECTANGLE *dirty_area); 5198 UINT _gxe_canvas_ellipse_draw(INT xcenter, INT ycenter, INT a, INT b); 5199 UINT _gxe_canvas_hardware_layer_bind(GX_CANVAS *canvas, INT layer); 5200 UINT _gxe_canvas_hide(GX_CANVAS *canvas); 5201 UINT _gxe_canvas_line_draw(GX_VALUE x_start, GX_VALUE y_start, GX_VALUE x_end, GX_VALUE y_end); 5202 UINT _gxe_canvas_memory_define(GX_CANVAS *canvas, GX_COLOR *memory, ULONG memsize); 5203 5204 #if defined(GX_MOUSE_SUPPORT) 5205 UINT _gxe_canvas_mouse_define(GX_CANVAS *canvas, GX_MOUSE_CURSOR_INFO *info); 5206 UINT _gxe_canvas_mouse_hide(GX_CANVAS *canvas); 5207 UINT _gxe_canvas_mouse_show(GX_CANVAS *canvas); 5208 #endif 5209 UINT _gxe_canvas_offset_set(GX_CANVAS *canvas, GX_VALUE x, GX_VALUE y); 5210 UINT _gxe_canvas_pie_draw(INT xcenter, INT ycenter, UINT r, INT start_angle, INT end_angle); 5211 UINT _gxe_canvas_pixel_draw(GX_POINT position); 5212 UINT _gxe_canvas_pixelmap_blend(GX_VALUE x_position, GX_VALUE y_position, GX_PIXELMAP *pixelmap, GX_UBYTE alpha); 5213 UINT _gxe_canvas_pixelmap_draw(GX_VALUE x_position, GX_VALUE y_position, GX_PIXELMAP *pixelmap); 5214 UINT _gxe_canvas_pixelmap_get(GX_PIXELMAP *pixelmap); 5215 UINT _gxe_canvas_pixelmap_rotate(GX_VALUE x_position, GX_VALUE y_position, GX_PIXELMAP *pixelmap, 5216 INT angle, INT rot_cx, INT rot_cy); 5217 UINT _gxe_canvas_pixelmap_tile(GX_RECTANGLE *fill, GX_PIXELMAP *pixelmap); 5218 UINT _gxe_canvas_polygon_draw(GX_POINT *point_array, INT number_of_points); 5219 UINT _gxe_canvas_rectangle_draw(GX_RECTANGLE *rectangle); 5220 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5221 UINT _gxe_canvas_rotated_text_draw(GX_CONST GX_CHAR *text, GX_VALUE xcenter, GX_VALUE ycenter, INT angle); 5222 #endif 5223 UINT _gxe_canvas_rotated_text_draw_ext(GX_CONST GX_STRING *text, GX_VALUE xcenter, GX_VALUE ycenter, INT angle); 5224 UINT _gxe_canvas_shift(GX_CANVAS *canvas, GX_VALUE x, GX_VALUE y); 5225 UINT _gxe_canvas_show(GX_CANVAS *canvas); 5226 5227 UINT _gxe_canvas_aligned_text_draw(GX_CONST GX_STRING *string, GX_RECTANGLE *rectangle, ULONG alignment); 5228 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5229 UINT _gxe_canvas_text_draw(GX_VALUE x_start, GX_VALUE y_start, GX_CONST GX_CHAR *string, INT length); 5230 #endif 5231 UINT _gxe_canvas_text_draw_ext(GX_VALUE x_start, GX_VALUE y_start, GX_CONST GX_STRING *string); 5232 5233 UINT _gxe_checkbox_create(GX_CHECKBOX *checkbox, GX_CONST GX_CHAR *name, 5234 GX_WIDGET *parent, GX_RESOURCE_ID text_id, 5235 ULONG style, USHORT checkbox_id, GX_CONST GX_RECTANGLE *size, 5236 UINT checkbox_control_block_size); 5237 VOID _gx_checkbox_draw(GX_CHECKBOX *checkbox); 5238 UINT _gxe_checkbox_event_process(GX_CHECKBOX *checkbox, GX_EVENT *event_ptr); 5239 UINT _gxe_checkbox_pixelmap_set(GX_CHECKBOX *button, GX_RESOURCE_ID unchecked_id, GX_RESOURCE_ID checked_id, 5240 GX_RESOURCE_ID unchecked_disabled_id, GX_RESOURCE_ID checked_disabled_id); 5241 UINT _gxe_checkbox_select(GX_CHECKBOX *checkbox); 5242 5243 UINT _gxe_circular_gauge_angle_get(GX_CIRCULAR_GAUGE *circular_gauge, INT *angle); 5244 UINT _gxe_circular_gauge_angle_set(GX_CIRCULAR_GAUGE *circular_gauge, INT angle); 5245 UINT _gxe_circular_gauge_animation_set(GX_CIRCULAR_GAUGE *circular_gauge, INT animation_steps, INT delay); 5246 VOID _gx_circular_gauge_background_draw(GX_CIRCULAR_GAUGE *gauge); 5247 UINT _gxe_circular_gauge_create(GX_CIRCULAR_GAUGE *circular_gauge, 5248 GX_CONST GX_CHAR *name, 5249 GX_WIDGET *parent, 5250 GX_CIRCULAR_GAUGE_INFO *circular_gauge_info, 5251 GX_RESOURCE_ID background, 5252 ULONG style, 5253 USHORT circular_gauge_id, 5254 GX_VALUE xpos, GX_VALUE ypos, UINT checkbox_control_block_size); 5255 VOID _gx_circular_gauge_draw(GX_CIRCULAR_GAUGE *circular_gauge); 5256 UINT _gxe_circular_gauge_event_process(GX_CIRCULAR_GAUGE *circular_gauge, GX_EVENT *event_ptr); 5257 5258 UINT _gxe_context_brush_default(GX_DRAW_CONTEXT *context); 5259 UINT _gxe_context_brush_define(GX_RESOURCE_ID line_color_id, GX_RESOURCE_ID fill_color_id, UINT style); 5260 UINT _gxe_context_brush_get(GX_BRUSH **return_brush); 5261 UINT _gxe_context_brush_pattern_set(ULONG pattern); 5262 UINT _gxe_context_brush_set(GX_BRUSH *brush); 5263 UINT _gxe_context_brush_style_set(UINT style); 5264 UINT _gxe_context_brush_width_set(UINT width); 5265 UINT _gxe_context_color_get(GX_RESOURCE_ID color_id, GX_COLOR *return_color); 5266 UINT _gxe_context_fill_color_set(GX_RESOURCE_ID fill_color_id); 5267 UINT _gxe_context_font_get(GX_RESOURCE_ID font_id, GX_FONT **return_font); 5268 UINT _gxe_context_font_set(GX_RESOURCE_ID font_id); 5269 UINT _gxe_context_line_color_set(GX_RESOURCE_ID line_color_id); 5270 UINT _gxe_context_pixelmap_get(GX_RESOURCE_ID resource_id, GX_PIXELMAP **return_pixelmap); 5271 UINT _gxe_context_pixelmap_set(GX_RESOURCE_ID pixelmap_id); 5272 UINT _gxe_context_raw_brush_define(GX_COLOR line_color, GX_COLOR fill_color, UINT style); 5273 UINT _gxe_context_raw_fill_color_set(GX_COLOR line_color); 5274 UINT _gxe_context_raw_line_color_set(GX_COLOR line_color); 5275 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5276 UINT _gxe_context_string_get(GX_RESOURCE_ID string_id, GX_CONST GX_CHAR **return_string); 5277 #endif 5278 UINT _gxe_context_string_get_ext(GX_RESOURCE_ID string_id, GX_STRING *return_string); 5279 5280 UINT _gxe_display_active_language_set(GX_DISPLAY *display, GX_UBYTE language); 5281 UINT _gxe_display_color_set(GX_DISPLAY *display, GX_RESOURCE_ID resource_id, GX_COLOR new_color); 5282 UINT _gxe_display_color_table_set(GX_DISPLAY *display, GX_COLOR *color_table, INT number_of_colors); 5283 UINT _gxe_display_create(GX_DISPLAY *display, GX_CONST GX_CHAR *name, UINT (*display_driver_setup)(GX_DISPLAY *), 5284 GX_VALUE width, GX_VALUE height, UINT display_control_block_size); 5285 UINT _gxe_display_delete(GX_DISPLAY *display, VOID (*display_driver_cleanup)(GX_DISPLAY *)); 5286 UINT _gxe_display_font_table_set(GX_DISPLAY *display, GX_FONT **font_table, UINT number_of_fonts); 5287 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5288 UINT _gxe_display_language_table_get(GX_DISPLAY *display, GX_CHAR ****table, GX_UBYTE *language_count, UINT *string_count); 5289 UINT _gxe_display_language_table_set(GX_DISPLAY *display, GX_CHAR ***table, GX_UBYTE num_languages, UINT number_of_strings); 5290 #endif 5291 UINT _gxe_display_language_table_get_ext(GX_DISPLAY *display, GX_STRING ***table, GX_UBYTE *language_count, UINT *string_count); 5292 UINT _gxe_display_language_table_set_ext(GX_DISPLAY *display, GX_CONST GX_STRING **table, GX_UBYTE num_languages, UINT number_of_strings); 5293 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 5294 UINT _gxe_display_language_direction_table_set(GX_DISPLAY *display, GX_CONST GX_UBYTE *language_direction_table, GX_UBYTE num_languages); 5295 #endif 5296 UINT _gxe_display_pixelmap_table_set(GX_DISPLAY *display, GX_PIXELMAP **pixelmap_table, UINT number_of_pixelmaps); 5297 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5298 UINT _gxe_display_string_get(GX_DISPLAY *display, GX_RESOURCE_ID string_id, GX_CONST GX_CHAR **return_string); 5299 UINT _gxe_display_string_table_get(GX_DISPLAY *display, GX_UBYTE language, GX_CHAR ***table, UINT *size); 5300 #endif 5301 UINT _gxe_display_string_get_ext(GX_DISPLAY *display, GX_RESOURCE_ID string_id, GX_STRING *return_string); 5302 UINT _gxe_display_string_table_get_ext(GX_DISPLAY *display, GX_UBYTE language, GX_STRING **table, UINT *size); 5303 UINT _gxe_display_theme_install(GX_DISPLAY *display, GX_CONST GX_THEME *theme_ptr); 5304 5305 UINT _gxe_drop_list_close(GX_DROP_LIST *drop_list); 5306 UINT _gxe_drop_list_create(GX_DROP_LIST *drop_list, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5307 INT total_rows, INT open_height, 5308 VOID (*callback)(GX_VERTICAL_LIST *, GX_WIDGET *, INT), 5309 ULONG style, USHORT drop_list_id, GX_CONST GX_RECTANGLE *size, UINT drop_list_control_block_size); 5310 UINT _gxe_drop_list_event_process(GX_DROP_LIST *list, GX_EVENT *event_ptr); 5311 UINT _gxe_drop_list_open(GX_DROP_LIST *list); 5312 UINT _gxe_drop_list_pixelmap_set(GX_DROP_LIST *drop_list, GX_RESOURCE_ID pixelmap_id); 5313 UINT _gxe_drop_list_popup_get(GX_DROP_LIST *box, GX_VERTICAL_LIST **return_list); 5314 5315 UINT _gxe_generic_scroll_wheel_create(GX_GENERIC_SCROLL_WHEEL *wheel, 5316 GX_CONST GX_CHAR *name, 5317 GX_WIDGET *parent, 5318 INT total_rows, 5319 VOID (*callback)(GX_GENERIC_SCROLL_WHEEL *, GX_WIDGET *, INT), 5320 ULONG style, 5321 USHORT id, 5322 GX_CONST GX_RECTANGLE *size, 5323 UINT control_block_size); 5324 UINT _gxe_generic_scroll_wheel_children_position(GX_GENERIC_SCROLL_WHEEL *wheel); 5325 UINT _gxe_generic_scroll_wheel_event_process(GX_GENERIC_SCROLL_WHEEL *wheel, GX_EVENT *event_ptr); 5326 UINT _gxe_generic_scroll_wheel_row_height_set(GX_GENERIC_SCROLL_WHEEL *wheel, GX_VALUE row_height); 5327 UINT _gxe_generic_scroll_wheel_total_rows_set(GX_GENERIC_SCROLL_WHEEL *wheel, INT count); 5328 5329 UINT _gxe_horizontal_list_children_position(GX_HORIZONTAL_LIST *horizontal_list); 5330 UINT _gxe_horizontal_list_create(GX_HORIZONTAL_LIST *horizontal_list, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5331 INT total_columns, VOID (*callback)(GX_HORIZONTAL_LIST *, GX_WIDGET *, INT), 5332 ULONG style, USHORT horizontal_list_id, 5333 GX_CONST GX_RECTANGLE *size, UINT horizontal_list_control_block_size); 5334 UINT _gxe_horizontal_list_event_process(GX_HORIZONTAL_LIST *list, GX_EVENT *event_ptr); 5335 UINT _gxe_horizontal_list_page_index_set(GX_HORIZONTAL_LIST *horizontal_list, INT list_entry); 5336 UINT _gxe_horizontal_list_selected_index_get(GX_HORIZONTAL_LIST *horizontal_list, INT *return_index); 5337 UINT _gxe_horizontal_list_selected_set(GX_HORIZONTAL_LIST *horizontal_list, INT index); 5338 UINT _gxe_horizontal_list_selected_widget_get(GX_HORIZONTAL_LIST *horizontal_list, GX_WIDGET **return_list_entry); 5339 UINT _gxe_horizontal_list_total_columns_set(GX_HORIZONTAL_LIST *horizontal_list, INT count); 5340 5341 UINT _gxe_horizontal_scrollbar_create(GX_SCROLLBAR *scrollbar, GX_CONST GX_CHAR *name, GX_WINDOW *parent, 5342 GX_SCROLLBAR_APPEARANCE *appearance, ULONG style, UINT scrollbar_control_block_size); 5343 5344 VOID _gx_icon_background_draw(GX_ICON *icon); 5345 UINT _gxe_icon_button_create(GX_ICON_BUTTON *button, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5346 GX_RESOURCE_ID icon_id, ULONG style, USHORT icon_button_id, 5347 GX_CONST GX_RECTANGLE *size, UINT button_control_block_size); 5348 VOID _gx_icon_button_draw(GX_ICON_BUTTON *button); 5349 UINT _gxe_icon_button_pixelmap_set(GX_ICON_BUTTON *button, GX_RESOURCE_ID icon_id); 5350 UINT _gxe_icon_create(GX_ICON *icon, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5351 GX_RESOURCE_ID pixelmap_id, ULONG style, USHORT icon_id, 5352 GX_VALUE x, GX_VALUE y, UINT icon_control_block_size); 5353 VOID _gx_icon_draw(GX_ICON *icon); 5354 UINT _gxe_icon_event_process(GX_ICON *icon, GX_EVENT *event_ptr); 5355 UINT _gxe_icon_pixelmap_set(GX_ICON *icon, GX_RESOURCE_ID normal_id, GX_RESOURCE_ID selected_id); 5356 5357 UINT _gxe_image_reader_create(GX_IMAGE_READER *image_reader, 5358 GX_CONST GX_UBYTE *read_data, 5359 INT read_data_size, 5360 GX_UBYTE color_format, 5361 GX_UBYTE mode); 5362 UINT _gxe_image_reader_palette_set(GX_IMAGE_READER *image_reader, GX_COLOR *pal, UINT palsize); 5363 UINT _gxe_image_reader_start(GX_IMAGE_READER *image_reader, GX_PIXELMAP *outmap); 5364 5365 VOID _gx_line_chart_axis_draw(GX_LINE_CHART *chart); 5366 UINT _gxe_line_chart_create(GX_LINE_CHART *chart, 5367 GX_CONST GX_CHAR *name, 5368 GX_WIDGET *parent, 5369 GX_CONST GX_LINE_CHART_INFO *info, 5370 ULONG style, 5371 USHORT chart_id, 5372 GX_CONST GX_RECTANGLE *size, 5373 UINT chart_control_block_size); 5374 VOID _gx_line_chart_data_draw(GX_LINE_CHART *chart); 5375 VOID _gx_line_chart_draw(GX_LINE_CHART *chart); 5376 UINT _gxe_line_chart_update(GX_LINE_CHART *chart, INT *data, INT data_count); 5377 UINT _gxe_line_chart_y_scale_calculate(GX_LINE_CHART *chart, INT *return_val); 5378 5379 UINT _gxe_menu_create(GX_MENU *menu, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5380 GX_RESOURCE_ID text_id, GX_RESOURCE_ID fill_id, 5381 ULONG style, USHORT menu_id, GX_CONST GX_RECTANGLE *size, UINT control_block_size); 5382 VOID _gx_menu_draw(GX_MENU *menu); 5383 UINT _gxe_menu_event_process(GX_MENU *menu, GX_EVENT *event_ptr); 5384 UINT _gxe_menu_insert(GX_MENU *menu, GX_WIDGET *widget); 5385 UINT _gxe_menu_remove(GX_MENU *menu, GX_WIDGET *widget); 5386 VOID _gx_menu_text_draw(GX_MENU *menu); 5387 UINT _gxe_menu_text_offset_set(GX_MENU *menu, GX_VALUE x_offset, GX_VALUE y_offset); 5388 5389 UINT _gxe_multi_line_text_button_create(GX_MULTI_LINE_TEXT_BUTTON *button, GX_CONST GX_CHAR *name, 5390 GX_WIDGET *parent, GX_RESOURCE_ID text_id, ULONG style, USHORT Id, 5391 GX_CONST GX_RECTANGLE *size, UINT control_block_size); 5392 VOID _gx_multi_line_text_button_draw(GX_MULTI_LINE_TEXT_BUTTON *button); 5393 UINT _gxe_multi_line_text_button_event_process(GX_MULTI_LINE_TEXT_BUTTON *button, GX_EVENT *event_ptr); 5394 VOID _gx_multi_line_text_button_text_draw(GX_MULTI_LINE_TEXT_BUTTON *button); 5395 UINT _gxe_multi_line_text_button_text_id_set(GX_MULTI_LINE_TEXT_BUTTON *button, GX_RESOURCE_ID string_id); 5396 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5397 UINT _gxe_multi_line_text_button_text_set(GX_MULTI_LINE_TEXT_BUTTON *button, GX_CONST GX_CHAR *text); 5398 #endif 5399 UINT _gxe_multi_line_text_button_text_set_ext(GX_MULTI_LINE_TEXT_BUTTON *button, GX_CONST GX_STRING *text); 5400 5401 UINT _gxe_multi_line_text_input_backspace(GX_MULTI_LINE_TEXT_INPUT *text_input); 5402 UINT _gxe_multi_line_text_input_buffer_clear(GX_MULTI_LINE_TEXT_INPUT *text_input_ptr); 5403 UINT _gxe_multi_line_text_input_buffer_get(GX_MULTI_LINE_TEXT_INPUT *text_input_ptr, GX_CHAR **buffer_address, 5404 UINT *content_size, UINT *buffer_size); 5405 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5406 UINT _gxe_multi_line_text_input_char_insert(GX_MULTI_LINE_TEXT_INPUT *text_input, GX_UBYTE *str, UINT str_size); 5407 #endif 5408 UINT _gxe_multi_line_text_input_char_insert_ext(GX_MULTI_LINE_TEXT_INPUT *text_input, GX_CONST GX_STRING *str); 5409 UINT _gxe_multi_line_text_input_create(GX_MULTI_LINE_TEXT_INPUT *text_input_ptr, GX_CONST GX_CHAR *name_ptr, 5410 GX_WIDGET *parent, GX_CHAR *input_buffer, UINT buffer_size, 5411 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size, 5412 UINT text_input_control_block_size); 5413 UINT _gxe_multi_line_text_input_cursor_pos_get(GX_MULTI_LINE_TEXT_INPUT *input, GX_POINT *cursor_pos); 5414 UINT _gxe_multi_line_text_input_delete(GX_MULTI_LINE_TEXT_INPUT *text_input); 5415 UINT _gxe_multi_line_text_input_down_arrow(GX_MULTI_LINE_TEXT_INPUT *text_input); 5416 UINT _gxe_multi_line_text_input_end(GX_MULTI_LINE_TEXT_INPUT *text_input); 5417 UINT _gxe_multi_line_text_input_event_process(GX_MULTI_LINE_TEXT_INPUT *input, GX_EVENT *event_ptr); 5418 UINT _gxe_multi_line_text_input_style_add(GX_MULTI_LINE_TEXT_INPUT *text_input_ptr, ULONG cursor_type); 5419 UINT _gxe_multi_line_text_input_style_remove(GX_MULTI_LINE_TEXT_INPUT *text_input_ptr, ULONG cursor_type); 5420 UINT _gxe_multi_line_text_input_style_set(GX_MULTI_LINE_TEXT_INPUT *text_input_ptr, ULONG cursor_type); 5421 UINT _gxe_multi_line_text_input_fill_color_set(GX_MULTI_LINE_TEXT_INPUT *view, 5422 GX_RESOURCE_ID normal_color_id, 5423 GX_RESOURCE_ID selected_color_id, 5424 GX_RESOURCE_ID disabled_color_id, 5425 GX_RESOURCE_ID readonly_color_id); 5426 UINT _gxe_multi_line_text_input_home(GX_MULTI_LINE_TEXT_INPUT *text_input); 5427 UINT _gxe_multi_line_text_input_left_arrow(GX_MULTI_LINE_TEXT_INPUT *text_input); 5428 UINT _gxe_multi_line_text_input_right_arrow(GX_MULTI_LINE_TEXT_INPUT *text_input); 5429 UINT _gxe_multi_line_text_input_text_color_set(GX_MULTI_LINE_TEXT_INPUT *view, 5430 GX_RESOURCE_ID normal_color_id, 5431 GX_RESOURCE_ID selected_color_id, 5432 GX_RESOURCE_ID disabled_color_id, 5433 GX_RESOURCE_ID readonly_color_id); 5434 UINT _gxe_multi_line_text_input_text_select(GX_MULTI_LINE_TEXT_INPUT *input, UINT start_index, UINT end_index); 5435 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5436 UINT _gxe_multi_line_text_input_text_set(GX_MULTI_LINE_TEXT_INPUT *text_input, GX_CONST GX_CHAR *text); 5437 #endif 5438 UINT _gxe_multi_line_text_input_text_set_ext(GX_MULTI_LINE_TEXT_INPUT *text_input, GX_CONST GX_STRING *text); 5439 UINT _gxe_multi_line_text_input_up_arrow(GX_MULTI_LINE_TEXT_INPUT *text_input); 5440 5441 UINT _gxe_multi_line_text_view_create(GX_MULTI_LINE_TEXT_VIEW *text_view_ptr, GX_CONST GX_CHAR *name_ptr, 5442 GX_WIDGET *parent, GX_RESOURCE_ID text_id, 5443 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size, 5444 UINT text_view_control_block_size); 5445 VOID _gx_multi_line_text_view_draw(GX_MULTI_LINE_TEXT_VIEW *view); 5446 UINT _gxe_multi_line_text_view_event_process(GX_MULTI_LINE_TEXT_VIEW *view, GX_EVENT *event_ptr); 5447 UINT _gxe_multi_line_text_view_font_set(GX_MULTI_LINE_TEXT_VIEW *view, GX_RESOURCE_ID font_id); 5448 UINT _gxe_multi_line_text_view_line_space_set(GX_MULTI_LINE_TEXT_VIEW *view, GX_BYTE line_space); 5449 UINT _gxe_multi_line_text_view_scroll_info_get(GX_MULTI_LINE_TEXT_VIEW *view, ULONG style, GX_SCROLL_INFO *return_scroll_info); 5450 UINT _gxe_multi_line_text_view_text_color_set(GX_MULTI_LINE_TEXT_VIEW *view, 5451 GX_RESOURCE_ID normal_color_id, 5452 GX_RESOURCE_ID selected_color_id, 5453 GX_RESOURCE_ID disabled_color_id); 5454 UINT _gxe_multi_line_text_view_text_id_set(GX_MULTI_LINE_TEXT_VIEW *text_view_ptr, GX_RESOURCE_ID text_id); 5455 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5456 UINT _gxe_multi_line_text_view_text_set(GX_MULTI_LINE_TEXT_VIEW *view, GX_CONST GX_CHAR *text); 5457 #endif 5458 UINT _gxe_multi_line_text_view_text_set_ext(GX_MULTI_LINE_TEXT_VIEW *view, GX_CONST GX_STRING *text); 5459 UINT _gxe_multi_line_text_view_whitespace_set(GX_MULTI_LINE_TEXT_VIEW *view, GX_UBYTE whitespace); 5460 5461 UINT _gxe_rich_text_view_create(GX_RICH_TEXT_VIEW *rich_view, 5462 GX_CONST GX_CHAR *name, 5463 GX_WIDGET *parent, 5464 GX_RESOURCE_ID text_id, 5465 GX_RICH_TEXT_FONTS *fonts, 5466 ULONG style, 5467 USHORT id, 5468 GX_CONST GX_RECTANGLE *size, 5469 UINT control_block_size); 5470 VOID _gx_rich_text_view_draw(GX_RICH_TEXT_VIEW *text_view); 5471 VOID _gx_rich_text_view_text_draw(GX_RICH_TEXT_VIEW *text_view); 5472 UINT _gxe_rich_text_view_fonts_set(GX_RICH_TEXT_VIEW *rich_view, GX_RICH_TEXT_FONTS *fonts); 5473 5474 UINT _gxe_numeric_pixelmap_prompt_create(GX_NUMERIC_PIXELMAP_PROMPT *prompt, 5475 GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5476 GX_RESOURCE_ID text_id, GX_RESOURCE_ID fill_id, 5477 ULONG style, USHORT pixelmap_prompt_id, 5478 GX_CONST GX_RECTANGLE *size, 5479 UINT control_block_size); 5480 UINT _gxe_numeric_pixelmap_prompt_format_function_set(GX_NUMERIC_PIXELMAP_PROMPT *prompt, VOID (*format_func)(GX_NUMERIC_PIXELMAP_PROMPT *, INT)); 5481 UINT _gxe_numeric_pixelmap_prompt_value_set(GX_NUMERIC_PIXELMAP_PROMPT *prompt, INT value); 5482 5483 UINT _gxe_numeric_prompt_create(GX_NUMERIC_PROMPT *prompt, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5484 GX_RESOURCE_ID text_id, ULONG style, USHORT prompt_id, GX_CONST GX_RECTANGLE *size, 5485 UINT control_block_size); 5486 UINT _gxe_numeric_prompt_format_function_set(GX_NUMERIC_PROMPT *prompt, VOID (*format_func)(GX_NUMERIC_PROMPT *, INT)); 5487 UINT _gxe_numeric_prompt_value_set(GX_NUMERIC_PROMPT *prompt, INT value); 5488 5489 UINT _gxe_numeric_scroll_wheel_create(GX_NUMERIC_SCROLL_WHEEL *wheel, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5490 INT start_val, INT end_val, 5491 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size, 5492 UINT numeric_scroll_control_block_size); 5493 UINT _gxe_numeric_scroll_wheel_range_set(GX_NUMERIC_SCROLL_WHEEL *wheel, INT start_val, INT end_val); 5494 5495 UINT _gxe_pixelmap_button_create(GX_PIXELMAP_BUTTON *button, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5496 GX_RESOURCE_ID normal_id, GX_RESOURCE_ID selected_id, 5497 GX_RESOURCE_ID disabled_id, ULONG style, USHORT pixelmap_button_id, 5498 GX_CONST GX_RECTANGLE *size, UINT button_control_block_size); 5499 VOID _gx_pixelmap_button_draw(GX_PIXELMAP_BUTTON *button); 5500 UINT _gxe_pixelmap_button_event_process(GX_PIXELMAP_BUTTON *button, GX_EVENT *event_ptr); 5501 UINT _gxe_pixelmap_button_pixelmap_set(GX_PIXELMAP_BUTTON *button, GX_RESOURCE_ID normal_id, GX_RESOURCE_ID selected_id, 5502 GX_RESOURCE_ID disabled_id); 5503 5504 UINT _gxe_pixelmap_prompt_create(GX_PIXELMAP_PROMPT *prompt, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5505 GX_RESOURCE_ID text_id, GX_RESOURCE_ID normal_pixelmap_id, 5506 ULONG style, USHORT prompt_id, GX_CONST GX_RECTANGLE *size, 5507 UINT pixelmap_prompt_control_block_size); 5508 VOID _gx_pixelmap_prompt_draw(GX_PIXELMAP_PROMPT *prompt); 5509 UINT _gxe_pixelmap_prompt_pixelmap_set(GX_PIXELMAP_PROMPT *prompt, 5510 GX_RESOURCE_ID normal_left_id, 5511 GX_RESOURCE_ID normal_fill_id, 5512 GX_RESOURCE_ID normal_right_id, 5513 GX_RESOURCE_ID selected_left_id, 5514 GX_RESOURCE_ID selected_fill_id, 5515 GX_RESOURCE_ID selected_right_id); 5516 5517 UINT _gxe_pixelmap_slider_create(GX_PIXELMAP_SLIDER *slider, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5518 GX_SLIDER_INFO *info, 5519 GX_PIXELMAP_SLIDER_INFO *pixelmap_info, 5520 ULONG style, USHORT pixelmap_slider_id, GX_CONST GX_RECTANGLE *size, 5521 UINT pixelmap_slider_control_block_size); 5522 VOID _gx_pixelmap_slider_draw(GX_PIXELMAP_SLIDER *slider); 5523 UINT _gxe_pixelmap_slider_event_process(GX_PIXELMAP_SLIDER *slider, GX_EVENT *event_prt); 5524 UINT _gxe_pixelmap_slider_pixelmap_set(GX_PIXELMAP_SLIDER *slider, GX_PIXELMAP_SLIDER_INFO *info); 5525 5526 VOID _gx_progress_bar_background_draw(GX_PROGRESS_BAR *progress_bar); 5527 UINT _gxe_progress_bar_create(GX_PROGRESS_BAR *progress_bar, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5528 GX_PROGRESS_BAR_INFO *progress_bar_info, ULONG style, 5529 USHORT progress_bar_id, GX_CONST GX_RECTANGLE *size, 5530 UINT progress_bar_control_block_size); 5531 VOID _gx_progress_bar_draw(GX_PROGRESS_BAR *progress_bar); 5532 UINT _gxe_progress_bar_event_process(GX_PROGRESS_BAR *progress_bar, GX_EVENT *event_ptr); 5533 UINT _gxe_progress_bar_font_set(GX_PROGRESS_BAR *progress_bar, GX_RESOURCE_ID font_id); 5534 UINT _gxe_progress_bar_info_set(GX_PROGRESS_BAR *progress_bar, GX_PROGRESS_BAR_INFO *info); 5535 UINT _gxe_progress_bar_pixelmap_set(GX_PROGRESS_BAR *progress_bar, GX_RESOURCE_ID pixelmap); 5536 UINT _gxe_progress_bar_range_set(GX_PROGRESS_BAR *progress_bar, INT min_value, INT max_value); 5537 UINT _gxe_progress_bar_text_color_set(GX_PROGRESS_BAR *progress_bar, GX_RESOURCE_ID normal_text_color_id, 5538 GX_RESOURCE_ID selected_text_color_id, GX_RESOURCE_ID disabled_text_color_id); 5539 VOID _gx_progress_bar_text_draw(GX_PROGRESS_BAR *progress_bar); 5540 UINT _gxe_progress_bar_value_set(GX_PROGRESS_BAR *progress_bar, INT new_value); 5541 5542 UINT _gxe_prompt_create(GX_PROMPT *prompt, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5543 GX_RESOURCE_ID text_id, ULONG style, USHORT prompt_id, 5544 GX_CONST GX_RECTANGLE *size, UINT prompt_control_block_size); 5545 UINT _gxe_prompt_event_process(GX_PROMPT *prompt, GX_EVENT *event_ptr); 5546 VOID _gx_prompt_draw(GX_PROMPT *prompt); 5547 UINT _gxe_prompt_font_set(GX_PROMPT *prompt, GX_RESOURCE_ID fontid); 5548 UINT _gxe_prompt_text_color_set(GX_PROMPT *prompt, 5549 GX_RESOURCE_ID normal_text_color_id, 5550 GX_RESOURCE_ID selected_text_color_id, 5551 GX_RESOURCE_ID disabled_text_color_id); 5552 VOID _gx_prompt_text_draw(GX_PROMPT *prompt); 5553 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5554 UINT _gxe_prompt_text_get(GX_PROMPT *prompt, GX_CONST GX_CHAR **return_text); 5555 #endif 5556 UINT _gxe_prompt_text_get_ext(GX_PROMPT *prompt, GX_STRING *return_text); 5557 UINT _gxe_prompt_text_id_set(GX_PROMPT *prompt, GX_RESOURCE_ID string_id); 5558 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5559 UINT _gxe_prompt_text_set(GX_PROMPT *prompt, GX_CONST GX_CHAR *text); 5560 #endif 5561 UINT _gxe_prompt_text_set_ext(GX_PROMPT *prompt, GX_CONST GX_STRING *text); 5562 5563 UINT _gxe_radial_progress_bar_anchor_set(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_VALUE angle); 5564 VOID _gx_radial_progress_bar_background_draw(GX_RADIAL_PROGRESS_BAR *progress_bar); 5565 UINT _gxe_radial_progress_bar_create(GX_RADIAL_PROGRESS_BAR *progress_bar, 5566 GX_CONST GX_CHAR *name, 5567 GX_WIDGET *parent, 5568 GX_RADIAL_PROGRESS_BAR_INFO *progress_bar_info, 5569 ULONG style, 5570 USHORT progress_bar_id, 5571 UINT progress_bar_control_block_size); 5572 VOID _gx_radial_progress_bar_draw(GX_RADIAL_PROGRESS_BAR *progress_bar); 5573 UINT _gxe_radial_progress_bar_event_process(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_EVENT *event_ptr); 5574 UINT _gxe_radial_progress_bar_font_set(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_RESOURCE_ID font_id); 5575 UINT _gxe_radial_progress_bar_info_set(GX_RADIAL_PROGRESS_BAR *bar, GX_RADIAL_PROGRESS_BAR_INFO *info); 5576 UINT _gxe_radial_progress_bar_text_color_set(GX_RADIAL_PROGRESS_BAR *progress_bar, 5577 GX_RESOURCE_ID normal_text_color_id, 5578 GX_RESOURCE_ID selected_text_color_id, 5579 GX_RESOURCE_ID disabled_text_color_id); 5580 VOID _gx_radial_progress_bar_text_draw(GX_RADIAL_PROGRESS_BAR *bar); 5581 UINT _gxe_radial_progress_bar_value_set(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_VALUE new_value); 5582 5583 UINT _gxe_radial_slider_anchor_angles_set(GX_RADIAL_SLIDER *slider, GX_VALUE *anchor_angles, USHORT anchor_count); 5584 UINT _gxe_radial_slider_animation_set(GX_RADIAL_SLIDER *slider, USHORT steps, USHORT delay, USHORT animation_style, 5585 VOID (*animation_update_callback)(GX_RADIAL_SLIDER *slider)); 5586 UINT _gxe_radial_slider_animation_start(GX_RADIAL_SLIDER *slider, GX_VALUE new_value); 5587 UINT _gxe_radial_slider_create(GX_RADIAL_SLIDER *slider, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5588 GX_RADIAL_SLIDER_INFO *info, ULONG style, USHORT slider_id, GX_CONST GX_RECTANGLE *size, UINT control_block_size); 5589 VOID _gx_radial_slider_draw(GX_RADIAL_SLIDER *slider); 5590 UINT _gxe_radial_slider_event_process(GX_RADIAL_SLIDER *slider, GX_EVENT *event_ptr); 5591 UINT _gxe_radial_slider_info_get(GX_RADIAL_SLIDER *slider, GX_RADIAL_SLIDER_INFO **info); 5592 UINT _gxe_radial_slider_info_set(GX_RADIAL_SLIDER *slider, GX_RADIAL_SLIDER_INFO *info); 5593 UINT _gxe_radial_slider_pixelmap_set(GX_RADIAL_SLIDER *slider, GX_RESOURCE_ID background_pixelmap, GX_RESOURCE_ID needle_pixelmap); 5594 UINT _gxe_radial_slider_angle_set(GX_RADIAL_SLIDER *slider, GX_VALUE new_angle); 5595 5596 UINT _gxe_radio_button_create(GX_RADIO_BUTTON *button, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5597 GX_RESOURCE_ID text_id, ULONG style, USHORT radio_button_id, 5598 GX_CONST GX_RECTANGLE *size, UINT radio_button_control_block_size); 5599 VOID _gx_radio_button_draw(GX_RADIO_BUTTON *button); 5600 UINT _gxe_radio_button_pixelmap_set(GX_RADIO_BUTTON *button, GX_RESOURCE_ID unchecked_id, GX_RESOURCE_ID checked_id, 5601 GX_RESOURCE_ID unchecked_disabled_id, GX_RESOURCE_ID checked_disabled_id); 5602 5603 UINT _gxe_screen_stack_create(GX_SCREEN_STACK_CONTROL *control, GX_WIDGET **memory, INT size); 5604 UINT _gxe_screen_stack_pop(GX_SCREEN_STACK_CONTROL *control); 5605 UINT _gxe_screen_stack_push(GX_SCREEN_STACK_CONTROL *control, GX_WIDGET *screen, GX_WIDGET *new_screen); 5606 UINT _gxe_screen_stack_reset(GX_SCREEN_STACK_CONTROL *control); 5607 5608 UINT _gxe_scroll_thumb_create(GX_SCROLL_THUMB *scroll_thumb, GX_SCROLLBAR *parent, ULONG style, UINT scroll_thumb_control_block_size); 5609 VOID _gx_scroll_thumb_draw(GX_SCROLL_THUMB *scroll_thumb); 5610 UINT _gxe_scroll_thumb_event_process(GX_SCROLL_THUMB *scroll_thumb, GX_EVENT *event_ptr); 5611 5612 VOID _gx_scrollbar_draw(GX_SCROLLBAR *scrollbar); 5613 UINT _gxe_scrollbar_event_process(GX_SCROLLBAR *scrollbar, GX_EVENT *event_ptr); 5614 UINT _gxe_scrollbar_limit_check(GX_SCROLLBAR *scrollbar); 5615 UINT _gxe_scrollbar_reset(GX_SCROLLBAR *scrollbar, GX_SCROLL_INFO *info); 5616 UINT _gxe_scrollbar_value_set(GX_SCROLLBAR *scrollbar, INT value); 5617 5618 UINT _gxe_scroll_wheel_create(GX_SCROLL_WHEEL *wheel, GX_CONST GX_CHAR *name, GX_WIDGET *parent, INT total_rows, 5619 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size, UINT control_block_size); 5620 UINT _gxe_scroll_wheel_event_process(GX_SCROLL_WHEEL *wheel, GX_EVENT *event_ptr); 5621 UINT _gxe_scroll_wheel_gradient_alpha_set(GX_SCROLL_WHEEL *wheel, GX_UBYTE start_alpha, GX_UBYTE end_alpha); 5622 UINT _gxe_scroll_wheel_row_height_set(GX_SCROLL_WHEEL *wheel, GX_VALUE row_height); 5623 UINT _gxe_scroll_wheel_selected_background_set(GX_SCROLL_WHEEL *wheel, GX_RESOURCE_ID selected_bg); 5624 UINT _gxe_scroll_wheel_selected_get(GX_SCROLL_WHEEL *wheel, INT *row); 5625 UINT _gxe_scroll_wheel_selected_set(GX_SCROLL_WHEEL *wheel, INT row); 5626 UINT _gxe_scroll_wheel_speed_set(GX_SCROLL_WHEEL *wheel, GX_FIXED_VAL start_speed_rate, GX_FIXED_VAL end_speed_rate, GX_VALUE max_steps, GX_VALUE delay); 5627 UINT _gxe_scroll_wheel_total_rows_set(GX_SCROLL_WHEEL *wheel, INT total_rows); 5628 5629 UINT _gxe_single_line_text_input_backspace(GX_SINGLE_LINE_TEXT_INPUT *text_input); 5630 UINT _gxe_single_line_text_input_buffer_clear(GX_SINGLE_LINE_TEXT_INPUT *text_input); 5631 UINT _gxe_single_line_text_input_buffer_get(GX_SINGLE_LINE_TEXT_INPUT *text_input_ptr, GX_CHAR **buffer_address, 5632 UINT *content_size, UINT *buffer_size); 5633 UINT _gxe_single_line_text_input_character_delete(GX_SINGLE_LINE_TEXT_INPUT *text_input); 5634 UINT _gxe_single_line_text_input_character_insert(GX_SINGLE_LINE_TEXT_INPUT *text_input, GX_UBYTE *str, UINT str_size); 5635 UINT _gxe_single_line_text_input_create(GX_SINGLE_LINE_TEXT_INPUT *text_input_ptr, 5636 GX_CONST GX_CHAR *name, GX_WIDGET *parent, GX_CHAR *input_buffer, 5637 UINT buffer_size, UINT style, USHORT text_input_id, 5638 GX_CONST GX_RECTANGLE *size, 5639 UINT text_input_control_block_size); 5640 VOID _gx_single_line_text_input_draw(GX_SINGLE_LINE_TEXT_INPUT *text_input); 5641 UINT _gxe_single_line_text_input_draw_position_get(GX_SINGLE_LINE_TEXT_INPUT *input, GX_VALUE *xpos, GX_VALUE *ypos); 5642 UINT _gxe_single_line_text_input_end(GX_SINGLE_LINE_TEXT_INPUT *text_input); 5643 UINT _gxe_single_line_text_input_event_process(GX_SINGLE_LINE_TEXT_INPUT *text_input, GX_EVENT *event_ptr); 5644 UINT _gxe_single_line_text_input_home(GX_SINGLE_LINE_TEXT_INPUT *text_input); 5645 UINT _gxe_single_line_text_input_left_arrow(GX_SINGLE_LINE_TEXT_INPUT *text_input); 5646 UINT _gxe_single_line_text_input_position_get(GX_SINGLE_LINE_TEXT_INPUT *text_input, INT pixel_position); 5647 UINT _gxe_single_line_text_input_right_arrow(GX_SINGLE_LINE_TEXT_INPUT *text_input); 5648 UINT _gxe_single_line_text_input_style_add(GX_SINGLE_LINE_TEXT_INPUT *text_input_ptr, ULONG style); 5649 UINT _gxe_single_line_text_input_style_remove(GX_SINGLE_LINE_TEXT_INPUT *text_input_ptr, ULONG style); 5650 UINT _gxe_single_line_text_input_style_set(GX_SINGLE_LINE_TEXT_INPUT *text_input_ptr, ULONG style); 5651 UINT _gxe_single_line_text_input_fill_color_set(GX_SINGLE_LINE_TEXT_INPUT *input, 5652 GX_RESOURCE_ID normal_color_id, 5653 GX_RESOURCE_ID selected_color_id, 5654 GX_RESOURCE_ID disabled_color_id, 5655 GX_RESOURCE_ID readonly_color_id); 5656 UINT _gxe_single_line_text_input_text_color_set(GX_SINGLE_LINE_TEXT_INPUT *input, 5657 GX_RESOURCE_ID normal_color_id, 5658 GX_RESOURCE_ID selected_color_id, 5659 GX_RESOURCE_ID disabled_color_id, 5660 GX_RESOURCE_ID readonly_color_id); 5661 UINT _gxe_single_line_text_input_text_select(GX_SINGLE_LINE_TEXT_INPUT *input, UINT start_index, UINT end_index); 5662 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5663 UINT _gxe_single_line_text_input_text_set(GX_SINGLE_LINE_TEXT_INPUT *input, GX_CONST GX_CHAR *text); 5664 #endif 5665 UINT _gxe_single_line_text_input_text_set_ext(GX_SINGLE_LINE_TEXT_INPUT *input, GX_CONST GX_STRING *text); 5666 5667 UINT _gxe_slider_create(GX_SLIDER *slider, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5668 INT tick_count, GX_SLIDER_INFO *slider_info, ULONG style, USHORT slider_id, 5669 GX_CONST GX_RECTANGLE *size, UINT slider_control_block_size); 5670 VOID _gx_slider_draw(GX_SLIDER *widget); 5671 UINT _gxe_slider_event_process(GX_SLIDER *widget, GX_EVENT *event_ptr); 5672 UINT _gxe_slider_info_set(GX_SLIDER *slider, GX_SLIDER_INFO *info); 5673 VOID _gx_slider_needle_draw(GX_SLIDER *slider); 5674 UINT _gxe_slider_needle_position_get(GX_SLIDER *slider, GX_SLIDER_INFO *slider_info, GX_RECTANGLE *return_position); 5675 VOID _gx_slider_tickmarks_draw(GX_SLIDER *slider); 5676 UINT _gxe_slider_travel_get(GX_SLIDER *widget, GX_SLIDER_INFO *info, INT *mintravel, INT *maxtravel); 5677 UINT _gxe_slider_value_calculate(GX_SLIDER *slider, GX_SLIDER_INFO *info, INT new_position); 5678 UINT _gxe_slider_value_set(GX_SLIDER *slider, GX_SLIDER_INFO *info, INT new_value); 5679 5680 UINT _gxe_sprite_create(GX_SPRITE *sprite, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5681 GX_SPRITE_FRAME *frame_list, USHORT framecount, 5682 ULONG style, USHORT sprite_id, GX_CONST GX_RECTANGLE *size, UINT sprite_control_block_size); 5683 UINT _gxe_sprite_current_frame_set(GX_SPRITE *sprite, USHORT frame); 5684 UINT _gxe_sprite_frame_list_set(GX_SPRITE *sprite, GX_SPRITE_FRAME *frame_list, USHORT frame_count); 5685 UINT _gxe_sprite_start(GX_SPRITE *sprite, USHORT start_frame); 5686 UINT _gxe_sprite_stop(GX_SPRITE *sprite); 5687 5688 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5689 UINT _gxe_string_scroll_wheel_create(GX_STRING_SCROLL_WHEEL *wheel, GX_CONST GX_CHAR *name, GX_WIDGET *parent, INT value_count, 5690 GX_CONST GX_CHAR **string_list, 5691 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size, 5692 UINT control_block_size); 5693 #endif 5694 UINT _gxe_string_scroll_wheel_create_ext(GX_STRING_SCROLL_WHEEL *wheel, GX_CONST GX_CHAR *name, GX_WIDGET *parent, INT total_rows, 5695 GX_CONST GX_STRING *string_list, 5696 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size, 5697 UINT control_block_size); 5698 UINT _gxe_string_scroll_wheel_event_process(GX_STRING_SCROLL_WHEEL *wheel, GX_EVENT *event_ptr); 5699 UINT _gxe_string_scroll_wheel_string_id_list_set(GX_STRING_SCROLL_WHEEL *wheel, 5700 GX_CONST GX_RESOURCE_ID *string_id_list, 5701 INT id_count); 5702 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5703 UINT _gxe_string_scroll_wheel_string_list_set(GX_STRING_SCROLL_WHEEL *wheel, 5704 GX_CONST GX_CHAR **string_list, 5705 INT string_count); 5706 #endif 5707 UINT _gxe_string_scroll_wheel_string_list_set_ext(GX_STRING_SCROLL_WHEEL *wheel, 5708 GX_CONST GX_STRING *string_list, 5709 INT string_count); 5710 5711 UINT _gxe_system_active_language_set(GX_UBYTE language); 5712 UINT _gxe_system_animation_get(GX_ANIMATION **animation); 5713 UINT _gxe_system_animation_free(GX_ANIMATION *animation); 5714 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 5715 UINT _gx_system_bidi_text_enable(VOID); 5716 UINT _gx_system_bidi_text_disable(VOID); 5717 #endif 5718 5719 #if defined(GX_THAI_GLYPH_SHAPING_SUPPORT) 5720 UINT _gx_system_text_render_style_set(GX_UBYTE style); 5721 #endif 5722 UINT _gxe_system_canvas_refresh(VOID); 5723 UINT _gxe_system_dirty_mark(GX_WIDGET *widget); 5724 UINT _gxe_system_dirty_partial_add(GX_WIDGET *widget, GX_RECTANGLE *dirty_area); 5725 UINT _gxe_system_draw_context_get(GX_DRAW_CONTEXT **current_context); 5726 UINT _gxe_system_event_fold(GX_EVENT *event_ptr); 5727 UINT _gxe_system_event_send(GX_EVENT *event_ptr); 5728 UINT _gxe_system_focus_claim(GX_WIDGET *widget); 5729 UINT _gxe_system_initialize(VOID); 5730 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5731 UINT _gxe_system_language_table_get(GX_CHAR ****language_table, GX_UBYTE *language_count, UINT *string_count); 5732 UINT _gxe_system_language_table_set(GX_CHAR ***language_table, GX_UBYTE number_of_languages, UINT number_of_strings); 5733 #endif 5734 UINT _gxe_system_memory_allocator_set(VOID *(*allocate)(ULONG size), VOID (*release)(VOID *)); 5735 UINT _gxe_system_pen_configure(GX_PEN_CONFIGURATION *pen_configuration); 5736 UINT _gxe_system_screen_stack_create(GX_WIDGET **memory, INT size, UINT control_block_size); 5737 UINT _gxe_system_screen_stack_get(GX_WIDGET **popped_parent, GX_WIDGET **popped_screen); 5738 UINT _gxe_system_screen_stack_pop(VOID); 5739 UINT _gxe_system_screen_stack_push(GX_WIDGET *screen); 5740 UINT _gx_system_screen_stack_get(GX_WIDGET **popped_parent, GX_WIDGET **popped_screen); 5741 UINT _gx_system_screen_stack_reset(VOID); 5742 UINT _gxe_system_scroll_appearance_get(ULONG style, GX_SCROLLBAR_APPEARANCE *return_appearance); 5743 UINT _gxe_system_scroll_appearance_set(ULONG style, GX_SCROLLBAR_APPEARANCE *appearance); 5744 UINT _gxe_system_start(VOID); 5745 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5746 UINT _gxe_system_string_get(GX_RESOURCE_ID string_id, GX_CONST GX_CHAR **return_string); 5747 UINT _gxe_system_string_table_get(GX_UBYTE language, GX_CHAR ***get_table, UINT *get_size); 5748 UINT _gxe_system_string_width_get(GX_CONST GX_FONT *font, GX_CONST GX_CHAR *string, INT string_length, GX_VALUE *return_width); 5749 #endif 5750 UINT _gxe_system_string_width_get_ext(GX_CONST GX_FONT *font, GX_CONST GX_STRING *string, GX_VALUE *return_width); 5751 UINT _gxe_system_timer_start(GX_WIDGET *owner, UINT timer_id, UINT initial_ticks, UINT reschedule_ticks); 5752 UINT _gxe_system_timer_stop(GX_WIDGET *owner, UINT timer_id); 5753 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5754 UINT _gxe_system_version_string_get(GX_CHAR **return_string); 5755 #endif 5756 UINT _gxe_system_version_string_get_ext(GX_STRING *return_string); 5757 UINT _gxe_system_widget_find(USHORT widget_id, INT search_level, GX_WIDGET **return_search_result); 5758 5759 UINT _gxe_text_button_create(GX_TEXT_BUTTON *button, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5760 GX_RESOURCE_ID text_id, ULONG style, USHORT Id, 5761 GX_CONST GX_RECTANGLE *size, UINT text_button_control_block_size); 5762 VOID _gx_text_button_draw(GX_TEXT_BUTTON *button); 5763 UINT _gxe_text_button_event_process(GX_TEXT_BUTTON *button, GX_EVENT *event_ptr); 5764 UINT _gxe_text_button_font_set(GX_TEXT_BUTTON *button, GX_RESOURCE_ID font_id); 5765 UINT _gxe_text_button_text_color_set(GX_TEXT_BUTTON *_text_button, 5766 GX_RESOURCE_ID normal_text_color_id, 5767 GX_RESOURCE_ID selected_text_color_id, 5768 GX_RESOURCE_ID disabled_text_color_id); 5769 VOID _gx_text_button_text_draw(GX_TEXT_BUTTON *button); 5770 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5771 UINT _gxe_text_button_text_get(GX_TEXT_BUTTON *button, GX_CONST GX_CHAR **return_text); 5772 #endif 5773 UINT _gxe_text_button_text_get_ext(GX_TEXT_BUTTON *button, GX_STRING *return_text); 5774 UINT _gxe_text_button_text_id_set(GX_TEXT_BUTTON *button, GX_RESOURCE_ID string_id); 5775 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5776 UINT _gxe_text_button_text_set(GX_TEXT_BUTTON *button, GX_CONST GX_CHAR *text); 5777 #endif 5778 UINT _gxe_text_button_text_set_ext(GX_TEXT_BUTTON *button, GX_CONST GX_STRING *text); 5779 5780 UINT _gxe_text_input_cursor_blink_interval_set(GX_TEXT_INPUT_CURSOR *cursor_input, GX_UBYTE blink_interval); 5781 UINT _gxe_text_input_cursor_height_set(GX_TEXT_INPUT_CURSOR *cursor_input, GX_UBYTE height); 5782 UINT _gxe_text_input_cursor_width_set(GX_TEXT_INPUT_CURSOR *cursor_input, GX_UBYTE width); 5783 5784 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5785 UINT _gxe_text_scroll_wheel_callback_set(GX_TEXT_SCROLL_WHEEL * wheel, GX_CONST GX_CHAR * (*callback)(GX_TEXT_SCROLL_WHEEL *, INT)); 5786 #endif 5787 UINT _gxe_text_scroll_wheel_callback_set_ext(GX_TEXT_SCROLL_WHEEL *wheel, UINT (*callback)(GX_TEXT_SCROLL_WHEEL *, INT, GX_STRING *)); 5788 UINT _gxe_text_scroll_wheel_font_set(GX_TEXT_SCROLL_WHEEL *wheel, GX_RESOURCE_ID normal_font, GX_RESOURCE_ID selected_font); 5789 UINT _gxe_text_scroll_wheel_text_color_set(GX_TEXT_SCROLL_WHEEL *wheel, GX_RESOURCE_ID normal_text_color, 5790 GX_RESOURCE_ID selected_text_color, GX_RESOURCE_ID disabled_text_color); 5791 UINT _gxe_text_scroll_wheel_create(GX_TEXT_SCROLL_WHEEL *wheel, GX_CONST GX_CHAR *name, GX_WIDGET *parent, INT value_count, 5792 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size, 5793 UINT control_block_size); 5794 UINT _gxe_text_scroll_wheel_event_process(GX_TEXT_SCROLL_WHEEL *wheel, GX_EVENT *event_ptr); 5795 VOID _gx_text_scroll_wheel_draw(GX_TEXT_SCROLL_WHEEL *wheel); 5796 5797 UINT _gxe_tree_view_create(GX_TREE_VIEW *tree, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5798 ULONG style, USHORT tree_id, GX_CONST GX_RECTANGLE *size, UINT control_block_size); 5799 VOID _gx_tree_view_draw(GX_TREE_VIEW *tree); 5800 UINT _gxe_tree_view_event_process(GX_TREE_VIEW *tree, GX_EVENT *event_ptr); 5801 UINT _gxe_tree_view_indentation_set(GX_TREE_VIEW *tree, GX_VALUE indentation); 5802 UINT _gxe_tree_view_position(GX_TREE_VIEW *tree); 5803 UINT _gxe_tree_view_root_line_color_set(GX_TREE_VIEW *tree, GX_RESOURCE_ID color); 5804 UINT _gxe_tree_view_root_pixelmap_set(GX_TREE_VIEW *tree, GX_RESOURCE_ID expand_map_id, GX_RESOURCE_ID collapse_map_id); 5805 UINT _gxe_tree_view_selected_get(GX_TREE_VIEW *tree, GX_WIDGET **selected); 5806 UINT _gxe_tree_view_selected_set(GX_TREE_VIEW *tree, GX_WIDGET *selected); 5807 5808 UINT _gxe_utility_gradient_create(GX_GRADIENT *gradient, GX_VALUE width, GX_VALUE height, UCHAR type, UCHAR alpha_start, UCHAR alpha_end); 5809 UINT _gxe_utility_gradient_delete(GX_GRADIENT *gradient); 5810 #if defined(GX_DYNAMIC_BIDI_TEXT_SUPPORT) 5811 UINT _gxe_utility_bidi_paragraph_reorder(GX_BIDI_TEXT_INFO *input_info, GX_BIDI_RESOLVED_TEXT_INFO **resolved_info_head); 5812 UINT _gxe_utility_bidi_paragraph_reorder_ext(GX_BIDI_TEXT_INFO *input_info, GX_BIDI_RESOLVED_TEXT_INFO **resolved_info_head); 5813 UINT _gxe_utility_bidi_resolved_text_info_delete(GX_BIDI_RESOLVED_TEXT_INFO **resolved_info_head); 5814 #endif 5815 UINT _gxe_utility_canvas_to_bmp(GX_CANVAS *canvas, GX_RECTANGLE *rect, UINT(*write_data)(GX_UBYTE *byte_data, UINT data_count)); 5816 UINT _gxe_utility_circle_point_get(INT xcenter, INT ycenter, UINT r, INT angle, GX_POINT *point); 5817 UINT _gxe_utility_ltoa(LONG value, GX_CHAR *return_buffer, UINT return_buffer_size); 5818 #if defined(GUIX_5_4_0_COMPATIBILITY) 5819 INT _gx_utility_math_acos_5_4_0(INT x); 5820 INT _gx_utility_math_asin_5_4_0(INT x); 5821 INT _gx_utility_math_cos_5_4_0(INT angle); 5822 INT _gx_utility_math_sin_5_4_0(INT angle); 5823 #else 5824 INT _gx_utility_math_acos(GX_FIXED_VAL x); 5825 INT _gx_utility_math_asin(GX_FIXED_VAL x); 5826 GX_FIXED_VAL _gx_utility_math_cos(GX_FIXED_VAL angle); 5827 GX_FIXED_VAL _gx_utility_math_sin(GX_FIXED_VAL angle); 5828 #endif 5829 UINT _gx_utility_math_sqrt(UINT n); 5830 5831 UINT _gxe_utility_pixelmap_resize(GX_PIXELMAP *src, GX_PIXELMAP *destination, INT width, INT height); 5832 UINT _gxe_utility_pixelmap_rotate(GX_PIXELMAP *src, INT angle, GX_PIXELMAP *destination, INT *rot_cx, INT *rot_cy); 5833 UINT _gxe_utility_pixelmap_simple_rotate(GX_PIXELMAP *src, INT angle, GX_PIXELMAP *destination, INT *rot_cx, INT *rot_cy); 5834 5835 UINT _gxe_utility_rectangle_center(GX_RECTANGLE *rectangle, GX_RECTANGLE *within); 5836 UINT _gxe_utility_rectangle_center_find(GX_RECTANGLE *rectangle, GX_POINT *return_center); 5837 UINT _gxe_utility_rectangle_combine(GX_RECTANGLE *first_rectangle, GX_RECTANGLE *second_rectangle); 5838 GX_BOOL _gxe_utility_rectangle_compare(GX_RECTANGLE *first_rectangle, GX_RECTANGLE *second_rectangle); 5839 UINT _gxe_utility_rectangle_define(GX_RECTANGLE *rectangle, GX_VALUE left, GX_VALUE top, GX_VALUE right, GX_VALUE bottom); 5840 GX_BOOL _gxe_utility_rectangle_overlap_detect(GX_RECTANGLE *first_rectangle, GX_RECTANGLE *second_rectangle, GX_RECTANGLE *return_overlap_area); 5841 GX_BOOL _gxe_utility_rectangle_point_detect(GX_RECTANGLE *rectangle, GX_POINT point); 5842 UINT _gxe_utility_rectangle_resize(GX_RECTANGLE *rectangle, GX_VALUE adjust); 5843 UINT _gxe_utility_rectangle_shift(GX_RECTANGLE *rectangle, GX_VALUE x_shift, GX_VALUE y_shift); 5844 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5845 UINT _gxe_utility_string_to_alphamap(GX_CONST GX_CHAR *text, GX_CONST GX_FONT *font, GX_PIXELMAP *textmap); 5846 #endif 5847 UINT _gxe_utility_string_to_alphamap_ext(GX_CONST GX_STRING *text, GX_CONST GX_FONT *font, GX_PIXELMAP *textmap); 5848 5849 UINT _gxe_vertical_list_children_position(GX_VERTICAL_LIST *vertical_list); 5850 UINT _gxe_vertical_list_create(GX_VERTICAL_LIST *vertical_list, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5851 INT total_rows, 5852 VOID (*callback)(GX_VERTICAL_LIST *, GX_WIDGET *, INT), 5853 ULONG style, USHORT vertical_list_id, GX_CONST GX_RECTANGLE *size, 5854 UINT vertical_list_control_block_size); 5855 UINT _gxe_vertical_list_event_process(GX_VERTICAL_LIST *list, GX_EVENT *event_ptr); 5856 UINT _gxe_vertical_list_page_index_set(GX_VERTICAL_LIST *list, INT index); 5857 UINT _gxe_vertical_list_selected_index_get(GX_VERTICAL_LIST *vertical_list, INT *return_index); 5858 UINT _gxe_vertical_list_selected_set(GX_VERTICAL_LIST *vertical_list, INT index); 5859 UINT _gxe_vertical_list_selected_widget_get(GX_VERTICAL_LIST *vertical_list, GX_WIDGET **return_list_entry); 5860 UINT _gxe_vertical_list_total_rows_set(GX_VERTICAL_LIST *list, INT count); 5861 5862 UINT _gxe_vertical_scrollbar_create(GX_SCROLLBAR *scrollbar, GX_CONST GX_CHAR *name, GX_WINDOW *parent, 5863 GX_SCROLLBAR_APPEARANCE *settings, 5864 ULONG style, UINT scrollbar_control_blcok_size); 5865 5866 UINT _gxe_widget_allocate(GX_WIDGET **widget, ULONG memsize); 5867 UINT _gxe_widget_attach(GX_WIDGET *parent, GX_WIDGET *widget); 5868 UINT _gxe_widget_back_attach(GX_WIDGET *parent, GX_WIDGET *widget); 5869 UINT _gxe_widget_back_move(GX_WIDGET *widget, GX_BOOL *widget_moved); 5870 VOID _gx_widget_background_draw(GX_WIDGET *a); 5871 UINT _gxe_widget_block_move(GX_WIDGET *widget, GX_RECTANGLE *block, INT x_shift, INT y_shift); 5872 VOID _gx_widget_border_draw(GX_WIDGET *widget, GX_RESOURCE_ID border_color, GX_RESOURCE_ID upper_color, GX_RESOURCE_ID lower_color, GX_BOOL fill); 5873 UINT _gxe_widget_border_style_set(GX_WIDGET *widget, ULONG Style); 5874 UINT _gxe_widget_border_width_get(GX_WIDGET *widget, GX_VALUE *return_width); 5875 UINT _gxe_widget_canvas_get(GX_WIDGET *widget, GX_CANVAS **return_canvas); 5876 UINT _gxe_widget_color_get(GX_WIDGET *widget, GX_RESOURCE_ID color_id, GX_COLOR *return_color); 5877 UINT _gxe_widget_child_detect(GX_WIDGET *parent, GX_WIDGET *child, GX_BOOL *return_detect); 5878 VOID _gx_widget_children_draw(GX_WIDGET *widget); 5879 UINT _gxe_widget_client_get(GX_WIDGET *widget, GX_VALUE border_width, GX_RECTANGLE *return_size); 5880 UINT _gxe_widget_create(GX_WIDGET *widget, 5881 GX_CONST GX_CHAR *name, 5882 GX_WIDGET *parent, 5883 ULONG style, USHORT Id, 5884 GX_CONST GX_RECTANGLE *size, 5885 UINT widget_block_size); 5886 UINT _gxe_widget_created_test(GX_WIDGET *widget, GX_BOOL *return_test); 5887 UINT _gxe_widget_delete(GX_WIDGET *widget); 5888 UINT _gxe_widget_detach(GX_WIDGET *widget); 5889 VOID _gx_widget_draw(GX_WIDGET *widget); 5890 UINT _gxe_widget_draw_set(GX_WIDGET *widget, VOID (*draw_func)(GX_WIDGET *)); 5891 UINT _gxe_widget_event_generate(GX_WIDGET *widget, USHORT event_type, LONG value); 5892 UINT _gxe_widget_event_process(GX_WIDGET *widget, GX_EVENT *event_ptr); 5893 UINT _gxe_widget_event_process_set(GX_WIDGET *widget, UINT (*event_processing_function)(GX_WIDGET *, GX_EVENT *)); 5894 UINT _gxe_widget_event_to_parent(GX_WIDGET *widget, GX_EVENT *event_ptr); 5895 UINT _gxe_widget_fill_color_set(GX_WIDGET *widget, GX_RESOURCE_ID normal_color, GX_RESOURCE_ID selected_color, GX_RESOURCE_ID disabled_color); 5896 UINT _gxe_widget_find(GX_WIDGET *parent, USHORT widget_id, INT search_depth, GX_WIDGET **return_widget); 5897 UINT _gxe_widget_first_child_get(GX_WIDGET *parent, GX_WIDGET **child_return); 5898 UINT _gxe_widget_focus_next(GX_WIDGET *widget); 5899 UINT _gxe_widget_focus_previous(GX_WIDGET *widget); 5900 UINT _gxe_widget_font_get(GX_WIDGET *widget, GX_RESOURCE_ID font_id, GX_FONT **return_font); 5901 UINT _gxe_widget_free(GX_WIDGET *widget); 5902 UINT _gxe_widget_front_move(GX_WIDGET *widget, GX_BOOL *widget_moved); 5903 UINT _gxe_widget_height_get(GX_WIDGET *widget, GX_VALUE *return_height); 5904 UINT _gxe_widget_hide(GX_WIDGET *widget); 5905 UINT _gxe_widget_last_child_get(GX_WIDGET *parent, GX_WIDGET **child_return); 5906 UINT _gxe_widget_next_sibling_get(GX_WIDGET *current, GX_WIDGET **sibling_return); 5907 UINT _gxe_widget_parent_get(GX_WIDGET *current, GX_WIDGET **parent_return); 5908 UINT _gxe_widget_pixelmap_get(GX_WIDGET *widget, GX_RESOURCE_ID pixelmap_id, GX_PIXELMAP **return_pixelmap); 5909 UINT _gxe_widget_previous_sibling_get(GX_WIDGET *current, GX_WIDGET **sibling_return); 5910 UINT _gxe_widget_resize(GX_WIDGET *widget, GX_RECTANGLE *newsize); 5911 UINT _gxe_widget_shift(GX_WIDGET *widget, GX_VALUE x_shift, GX_VALUE y_shift, GX_BOOL mark_dirty); 5912 UINT _gxe_widget_show(GX_WIDGET *widget); 5913 UINT _gxe_widget_status_add(GX_WIDGET *widget, ULONG status); 5914 UINT _gxe_widget_status_get(GX_WIDGET *widget, ULONG *return_status); 5915 UINT _gxe_widget_status_remove(GX_WIDGET *widget, ULONG status); 5916 UINT _gxe_widget_status_test(GX_WIDGET *widget, ULONG status, GX_BOOL *return_test); 5917 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5918 UINT _gxe_widget_string_get(GX_WIDGET *widget, GX_RESOURCE_ID string_id, GX_CONST GX_CHAR **return_string); 5919 #endif 5920 UINT _gxe_widget_string_get_ext(GX_WIDGET *widget, GX_RESOURCE_ID string_id, GX_STRING *return_string); 5921 UINT _gxe_widget_style_add(GX_WIDGET *widget, ULONG style); 5922 UINT _gxe_widget_style_get(GX_WIDGET *widget, ULONG *return_style); 5923 UINT _gxe_widget_style_remove(GX_WIDGET *widget, ULONG style); 5924 UINT _gxe_widget_style_set(GX_WIDGET *widget, ULONG style); 5925 5926 #if defined(GX_ENABLE_DEPRECATED_STRING_API) 5927 UINT _gxe_widget_text_blend(GX_WIDGET *widget, UINT tColor, UINT font_id, GX_CONST GX_CHAR *string, 5928 INT x_offset, INT y_offset, UCHAR alpha); 5929 VOID _gx_widget_text_draw(GX_WIDGET *widget, UINT tColor, UINT font_id, GX_CONST GX_CHAR *string, 5930 INT x_offset, INT y_offset); 5931 #endif 5932 UINT _gxe_widget_text_blend_ext(GX_WIDGET *widget, UINT tColor, UINT font_id, GX_CONST GX_STRING *string, 5933 INT x_offset, INT y_offset, UCHAR alpha); 5934 5935 VOID _gx_widget_text_draw_ext(GX_WIDGET *widget, UINT tColor, UINT font_id, GX_CONST GX_STRING *string, 5936 INT x_offset, INT y_offset); 5937 5938 VOID _gx_widget_text_id_draw(GX_WIDGET *widget, UINT tColor, 5939 UINT font_id, UINT text_id, 5940 INT x_offset, INT y_offset); 5941 5942 UINT _gxe_widget_top_visible_child_find(GX_WIDGET *parent, GX_WIDGET **child_return); 5943 UINT _gxe_widget_type_find(GX_WIDGET *parent, USHORT widget_type, GX_WIDGET **return_widget); 5944 UINT _gxe_widget_width_get(GX_WIDGET *widget, GX_VALUE *return_width); 5945 5946 VOID _gx_window_background_draw(GX_WINDOW *window); 5947 UINT _gxe_window_client_height_get(GX_WINDOW *window, GX_VALUE *return_height); 5948 UINT _gxe_window_client_scroll(GX_WINDOW *window, GX_VALUE xscroll, GX_VALUE yscroll); 5949 UINT _gxe_window_client_width_get(GX_WINDOW *window, GX_VALUE *return_width); 5950 UINT _gxe_window_close(GX_WINDOW *window); 5951 UINT _gxe_window_create(GX_WINDOW *window, GX_CONST GX_CHAR *name, GX_WIDGET *parent, 5952 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size, UINT window_control_block_size); 5953 VOID _gx_window_draw(GX_WINDOW *window); 5954 UINT _gxe_window_event_process(GX_WINDOW *window, GX_EVENT *event_ptr); 5955 UINT _gxe_window_execute(GX_WINDOW *window, ULONG *return_ptr); 5956 UINT _gxe_window_root_create(GX_WINDOW_ROOT *root_window, GX_CONST GX_CHAR *name, GX_CANVAS *canvas, 5957 ULONG style, USHORT Id, GX_CONST GX_RECTANGLE *size, UINT root_window_control_block_size); 5958 UINT _gxe_window_root_delete(GX_WINDOW_ROOT *root_window); 5959 UINT _gxe_window_root_event_process(GX_WINDOW_ROOT *root, GX_EVENT *event_ptr); 5960 UINT _gxe_window_root_find(GX_WIDGET *widget, GX_WINDOW_ROOT **return_root_window); 5961 UINT _gxe_window_scroll_info_get(GX_WINDOW *window, ULONG type, GX_SCROLL_INFO *return_scroll_info); 5962 UINT _gxe_window_scrollbar_find(GX_WINDOW *window, USHORT type, GX_SCROLLBAR **return_scrollbar); 5963 UINT _gxe_window_wallpaper_get(GX_WINDOW *window, GX_RESOURCE_ID *return_wallpaper_id); 5964 UINT _gxe_window_wallpaper_set(GX_WINDOW *window, GX_RESOURCE_ID wallpaper_id, GX_BOOL tile); 5965 5966 #endif 5967 5968 #endif 5969 5970 /* Determine if a C++ compiler is being used. If so, complete the standard 5971 C conditional started above. */ 5972 #ifdef __cplusplus 5973 } 5974 #endif 5975 5976 #ifdef GX_MULTITHREAD_SUPPORT 5977 5978 #define GX_ENTER_CRITICAL _gx_system_lock(); 5979 #define GX_EXIT_CRITICAL _gx_system_unlock(); 5980 5981 #else 5982 5983 #define GX_ENTER_CRITICAL 5984 #define GX_EXIT_CRITICAL 5985 5986 #endif 5987 5988 #ifndef GX_THREADX_BINDING 5989 #ifdef GX_STANDALONE_BINDING 5990 #include <string.h> 5991 #include <stdlib.h> 5992 #include "gx_system_standalone_bind.h" 5993 #else 5994 /* pull in custom rtos porting header */ 5995 #include <string.h> 5996 #include <stdlib.h> 5997 #include "gx_system_rtos_bind.h" 5998 #endif 5999 #endif 6000 6001 #endif 6002 6003