1 /*******************************************************************************/ 2 /* This file is auto-generated by Azure RTOS GUIX Studio. Do not edit this */ 3 /* file by hand. Modifications to this file should only be made by running */ 4 /* the Azure RTOS GUIX Studio application and re-generating the application */ 5 /* specification file(s). For more information please refer to the Azure RTOS */ 6 /* GUIX Studio User Guide, or visit our web site at azure.com/rtos */ 7 /* */ 8 /* GUIX Studio Revision 6.2.0.1 */ 9 /* Date (dd.mm.yyyy): 31.10.2022 Time (hh:mm): 14:11 */ 10 /*******************************************************************************/ 11 12 13 #ifndef _SPRITE_SPECIFICATIONS_H_ 14 #define _SPRITE_SPECIFICATIONS_H_ 15 16 #include "gx_api.h" 17 18 /* Determine if C++ compiler is being used, if so use standard C. */ 19 #ifdef __cplusplus 20 extern "C" { 21 #endif 22 23 /* Define widget ids */ 24 25 #define ID_SPRITE_SCREEN 1 26 #define ID_BUTTON 2 27 #define ID_BIRD_SPRITE 3 28 29 30 /* Define animation ids */ 31 32 #define GX_NEXT_ANIMATION_ID 1 33 34 35 /* Define user event ids */ 36 37 #define GX_NEXT_USER_EVENT_ID GX_FIRST_USER_EVENT 38 39 40 /* Declare properties structures for each utilized widget type */ 41 42 typedef struct GX_STUDIO_WIDGET_STRUCT 43 { 44 GX_CHAR *widget_name; 45 USHORT widget_type; 46 USHORT widget_id; 47 #if defined(GX_WIDGET_USER_DATA) 48 INT user_data; 49 #endif 50 ULONG style; 51 ULONG status; 52 ULONG control_block_size; 53 GX_RESOURCE_ID normal_fill_color_id; 54 GX_RESOURCE_ID selected_fill_color_id; 55 GX_RESOURCE_ID disabled_fill_color_id; 56 UINT (*create_function) (GX_CONST struct GX_STUDIO_WIDGET_STRUCT *, GX_WIDGET *, GX_WIDGET *); 57 void (*draw_function) (GX_WIDGET *); 58 UINT (*event_function) (GX_WIDGET *, GX_EVENT *); 59 GX_RECTANGLE size; 60 GX_CONST struct GX_STUDIO_WIDGET_STRUCT *next_widget; 61 GX_CONST struct GX_STUDIO_WIDGET_STRUCT *child_widget; 62 ULONG control_block_offset; 63 GX_CONST void *properties; 64 } GX_STUDIO_WIDGET; 65 66 typedef struct 67 { 68 GX_CONST GX_STUDIO_WIDGET *widget_information; 69 GX_WIDGET *widget; 70 } GX_STUDIO_WIDGET_ENTRY; 71 72 typedef struct 73 { 74 GX_RESOURCE_ID normal_pixelmap_id; 75 GX_RESOURCE_ID selected_pixelmap_id; 76 GX_RESOURCE_ID disabled_pixelmap_id; 77 } GX_PIXELMAP_BUTTON_PROPERTIES; 78 79 typedef struct 80 { 81 GX_SPRITE_FRAME *frame_list; 82 USHORT frame_count; 83 } GX_SPRITE_PROPERTIES; 84 85 typedef struct 86 { 87 GX_RESOURCE_ID wallpaper_id; 88 } GX_WINDOW_PROPERTIES; 89 90 91 /* Declare top-level control blocks */ 92 93 typedef struct MAIN_SCREEN_CONTROL_BLOCK_STRUCT 94 { 95 GX_WINDOW_MEMBERS_DECLARE 96 GX_PIXELMAP_BUTTON main_screen_pixelmap_button_1; 97 GX_SPRITE main_screen_sprite_1; 98 GX_SPRITE main_screen_sprite_2; 99 } MAIN_SCREEN_CONTROL_BLOCK; 100 101 102 /* extern statically defined control blocks */ 103 104 #ifndef GUIX_STUDIO_GENERATED_FILE 105 extern MAIN_SCREEN_CONTROL_BLOCK main_screen; 106 #endif 107 108 /* Declare event process functions, draw functions, and callback functions */ 109 110 UINT main_screen_event_handler(GX_WINDOW *widget, GX_EVENT *event_ptr); 111 112 /* Declare the GX_STUDIO_DISPLAY_INFO structure */ 113 114 115 typedef struct GX_STUDIO_DISPLAY_INFO_STRUCT 116 { 117 GX_CONST GX_CHAR *name; 118 GX_CONST GX_CHAR *canvas_name; 119 GX_CONST GX_THEME **theme_table; 120 GX_CONST GX_STRING **language_table; 121 USHORT theme_table_size; 122 USHORT language_table_size; 123 UINT string_table_size; 124 UINT x_resolution; 125 UINT y_resolution; 126 GX_DISPLAY *display; 127 GX_CANVAS *canvas; 128 GX_WINDOW_ROOT *root_window; 129 GX_COLOR *canvas_memory; 130 ULONG canvas_memory_size; 131 USHORT rotation_angle; 132 } GX_STUDIO_DISPLAY_INFO; 133 134 135 /* Declare Studio-generated functions for creating top-level widgets */ 136 137 UINT gx_studio_pixelmap_button_create(GX_CONST GX_STUDIO_WIDGET *info, GX_WIDGET *control_block, GX_WIDGET *parent); 138 UINT gx_studio_sprite_create(GX_CONST GX_STUDIO_WIDGET *info, GX_WIDGET *control_block, GX_WIDGET *parent); 139 UINT gx_studio_window_create(GX_CONST GX_STUDIO_WIDGET *info, GX_WIDGET *control_block, GX_WIDGET *parent); 140 GX_WIDGET *gx_studio_widget_create(GX_BYTE *storage, GX_CONST GX_STUDIO_WIDGET *definition, GX_WIDGET *parent); 141 UINT gx_studio_named_widget_create(char *name, GX_WIDGET *parent, GX_WIDGET **new_widget); 142 UINT gx_studio_display_configure(USHORT display, UINT (*driver)(GX_DISPLAY *), GX_UBYTE language, USHORT theme, GX_WINDOW_ROOT **return_root); 143 144 /* Determine if a C++ compiler is being used. If so, complete the standard 145 C conditional started above. */ 146 #ifdef __cplusplus 147 } 148 #endif 149 150 #endif /* sentry */ 151