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.1.12.0 */
9 /* Date (dd.mm.yyyy): 25. 8.2022 Time (hh:mm): 18:23 */
10 /*******************************************************************************/
11
12
13 #define GUIX_STUDIO_GENERATED_FILE
14 #include <stddef.h>
15 #include "demo_guix_washing_machine_resources.h"
16 #include "demo_guix_washing_machine_specifications.h"
17
18 static GX_WIDGET *gx_studio_nested_widget_create(GX_BYTE *control, GX_CONST GX_STUDIO_WIDGET *definition, GX_WIDGET *parent);
19 MODE_SELECT_WINDOW_CONTROL_BLOCK mode_select_window;
20 WATER_LEVEL_WINDOW_CONTROL_BLOCK water_level_window;
21 TEMPERATURE_WINDOW_CONTROL_BLOCK temperature_window;
22 WASH_CYCLE_WINDOW_CONTROL_BLOCK wash_cycle_window;
23 MAIN_SCREEN_CONTROL_BLOCK main_screen;
24 GX_DISPLAY main_display_control_block;
25 GX_WINDOW_ROOT main_display_root_window;
26 GX_CANVAS main_display_canvas_control_block;
27 ULONG main_display_canvas_memory[307200];
28
29 extern GX_CONST GX_THEME *main_display_theme_table[];
30 extern GX_CONST GX_STRING *main_display_language_table[];
31
32 GX_STUDIO_DISPLAY_INFO demo_guix_washing_machine_display_table[1] =
33 {
34 {
35 "main_display",
36 "main_display_canvas",
37 main_display_theme_table,
38 main_display_language_table,
39 MAIN_DISPLAY_THEME_TABLE_SIZE,
40 MAIN_DISPLAY_LANGUAGE_TABLE_SIZE,
41 MAIN_DISPLAY_STRING_TABLE_SIZE,
42 640, /* x resolution */
43 480, /* y resolution */
44 &main_display_control_block,
45 &main_display_canvas_control_block,
46 &main_display_root_window,
47 main_display_canvas_memory, /* canvas memory area */
48 1228800, /* canvas memory size in bytes */
49 GX_SCREEN_ROTATION_NONE /* rotation angle */
50 }
51 };
52
53
gx_studio_button_create(GX_CONST GX_STUDIO_WIDGET * info,GX_WIDGET * control_block,GX_WIDGET * parent)54 UINT gx_studio_button_create(GX_CONST GX_STUDIO_WIDGET *info, GX_WIDGET *control_block, GX_WIDGET *parent)
55 {
56 UINT status;
57 GX_BUTTON *button = (GX_BUTTON *) control_block;
58 status = gx_button_create(button, info->widget_name, parent, info->style, info->widget_id, &info->size);
59 return status;
60 }
61
gx_studio_text_button_create(GX_CONST GX_STUDIO_WIDGET * info,GX_WIDGET * control_block,GX_WIDGET * parent)62 UINT gx_studio_text_button_create(GX_CONST GX_STUDIO_WIDGET *info, GX_WIDGET *control_block, GX_WIDGET *parent)
63 {
64 UINT status;
65 GX_TEXT_BUTTON *button = (GX_TEXT_BUTTON *) control_block;
66 GX_TEXT_BUTTON_PROPERTIES *props = (GX_TEXT_BUTTON_PROPERTIES *) info->properties;
67 status = gx_text_button_create(button, info->widget_name, parent, props->string_id, info->style, info->widget_id, &info->size);
68 if (status == GX_SUCCESS)
69 {
70 gx_text_button_font_set(button, props->font_id);
71 #if defined(GUIX_5_4_0_COMPATIBILITY)
72 gx_text_button_text_color_set(button, props->normal_text_color_id, props->selected_text_color_id);
73 #else
74 gx_text_button_text_color_set(button, props->normal_text_color_id, props->selected_text_color_id, props->disabled_text_color_id);
75 #endif
76 }
77 return status;
78 }
79
gx_studio_pixelmap_button_create(GX_CONST GX_STUDIO_WIDGET * info,GX_WIDGET * control_block,GX_WIDGET * parent)80 UINT gx_studio_pixelmap_button_create(GX_CONST GX_STUDIO_WIDGET *info, GX_WIDGET *control_block, GX_WIDGET *parent)
81 {
82 UINT status;
83 GX_PIXELMAP_BUTTON *button = (GX_PIXELMAP_BUTTON *) control_block;
84 GX_PIXELMAP_BUTTON_PROPERTIES *props = (GX_PIXELMAP_BUTTON_PROPERTIES *) info->properties;
85 status = gx_pixelmap_button_create(button, info->widget_name, parent,
86 props->normal_pixelmap_id,
87 props->selected_pixelmap_id,
88 props->disabled_pixelmap_id,
89 info->style, info->widget_id, &info->size);
90 return status;
91 }
92
gx_studio_icon_create(GX_CONST GX_STUDIO_WIDGET * info,GX_WIDGET * control_block,GX_WIDGET * parent)93 UINT gx_studio_icon_create(GX_CONST GX_STUDIO_WIDGET *info, GX_WIDGET *control_block, GX_WIDGET *parent)
94 {
95 UINT status;
96 GX_ICON *icon = (GX_ICON *) control_block;
97 GX_ICON_PROPERTIES *props = (GX_ICON_PROPERTIES *) info->properties;
98 status = gx_icon_create(icon, info->widget_name, parent, props->normal_pixelmap_id, info->style, info->widget_id, info->size.gx_rectangle_left, info->size.gx_rectangle_top);
99 if (props->selected_pixelmap_id)
100 {
101 gx_icon_pixelmap_set(icon, props->normal_pixelmap_id, props->selected_pixelmap_id);
102 }
103 else
104 {
105 gx_widget_resize((GX_WIDGET *)icon, (GX_RECTANGLE *)&info->size);
106 }
107 return status;
108 }
109
gx_studio_progress_bar_create(GX_CONST GX_STUDIO_WIDGET * info,GX_WIDGET * control_block,GX_WIDGET * parent)110 UINT gx_studio_progress_bar_create(GX_CONST GX_STUDIO_WIDGET *info, GX_WIDGET *control_block, GX_WIDGET *parent)
111 {
112 UINT status;
113 GX_PROGRESS_BAR *bar = (GX_PROGRESS_BAR *) control_block;
114 GX_PROGRESS_BAR_INFO *bar_info = (GX_PROGRESS_BAR_INFO *) info->properties;
115 status = gx_progress_bar_create(bar,
116 info->widget_name,
117 parent,
118 bar_info,
119 info->style,
120 info->widget_id,
121 &info->size);
122 return status;
123 }
124
gx_studio_radial_progress_bar_create(GX_CONST GX_STUDIO_WIDGET * info,GX_WIDGET * control_block,GX_WIDGET * parent)125 UINT gx_studio_radial_progress_bar_create(GX_CONST GX_STUDIO_WIDGET *info, GX_WIDGET *control_block, GX_WIDGET *parent)
126 {
127 UINT status;
128 GX_RADIAL_PROGRESS_BAR *bar = (GX_RADIAL_PROGRESS_BAR *) control_block;
129 GX_RADIAL_PROGRESS_BAR_INFO *bar_info = (GX_RADIAL_PROGRESS_BAR_INFO *) info->properties;
130 status = gx_radial_progress_bar_create(bar,
131 info->widget_name,
132 parent,
133 bar_info,
134 info->style,
135 info->widget_id);
136 return status;
137 }
138
gx_studio_radial_slider_create(GX_CONST GX_STUDIO_WIDGET * info,GX_WIDGET * control_block,GX_WIDGET * parent)139 UINT gx_studio_radial_slider_create(GX_CONST GX_STUDIO_WIDGET *info, GX_WIDGET *control_block, GX_WIDGET *parent)
140 {
141 UINT status;
142 GX_RADIAL_SLIDER *slider = (GX_RADIAL_SLIDER *) control_block;
143 GX_RADIAL_SLIDER_INFO slider_info;
144 GX_RADIAL_SLIDER_PROPERTIES *props = (GX_RADIAL_SLIDER_PROPERTIES *)info->properties;
145 memset(&slider_info, 0, sizeof(GX_RADIAL_SLIDER_INFO));
146 slider_info.gx_radial_slider_info_xcenter = props->xcenter;
147 slider_info.gx_radial_slider_info_ycenter = props->ycenter;
148 slider_info.gx_radial_slider_info_radius = props->radius;
149 slider_info.gx_radial_slider_info_track_width = props->track_width;
150 slider_info.gx_radial_slider_info_needle_offset = props->needle_offset;
151 slider_info.gx_radial_slider_info_current_angle = props->current_angle;
152 slider_info.gx_radial_slider_info_min_angle = props->min_angle;
153 slider_info.gx_radial_slider_info_max_angle = props->max_angle;
154 slider_info.gx_radial_slider_info_background_pixelmap = props->background_pixelmap;
155 slider_info.gx_radial_slider_info_needle_pixelmap = props->needle_pixelmap;
156 status = gx_radial_slider_create(slider,
157 info->widget_name,
158 parent,
159 &slider_info,
160 info->style,
161 info->widget_id,
162 &info->size);
163 gx_radial_slider_animation_set(slider, props->animation_total_steps, props->animation_delay, props->animation_style, props->animation_update_callback);
164 return status;
165 }
166
gx_studio_prompt_create(GX_CONST GX_STUDIO_WIDGET * info,GX_WIDGET * control_block,GX_WIDGET * parent)167 UINT gx_studio_prompt_create(GX_CONST GX_STUDIO_WIDGET *info, GX_WIDGET *control_block, GX_WIDGET *parent)
168 {
169 UINT status;
170 GX_PROMPT *prompt = (GX_PROMPT *) control_block;
171 GX_PROMPT_PROPERTIES *props = (GX_PROMPT_PROPERTIES *) info->properties;
172 status = gx_prompt_create(prompt, info->widget_name, parent, props->string_id, info->style, info->widget_id, &info->size);
173 if (status == GX_SUCCESS)
174 {
175 gx_prompt_font_set(prompt, props->font_id);
176 #if defined(GUIX_5_4_0_COMPATIBILITY)
177 gx_prompt_text_color_set(prompt, props->normal_text_color_id, props->selected_text_color_id);
178 #else
179 gx_prompt_text_color_set(prompt, props->normal_text_color_id, props->selected_text_color_id, props->disabled_text_color_id);
180 #endif
181 }
182 return status;
183 }
184
gx_studio_numeric_prompt_create(GX_CONST GX_STUDIO_WIDGET * info,GX_WIDGET * control_block,GX_WIDGET * parent)185 UINT gx_studio_numeric_prompt_create(GX_CONST GX_STUDIO_WIDGET *info, GX_WIDGET *control_block, GX_WIDGET *parent)
186 {
187 UINT status;
188 GX_NUMERIC_PROMPT *prompt = (GX_NUMERIC_PROMPT *) control_block;
189 GX_NUMERIC_PROMPT_PROPERTIES *props = (GX_NUMERIC_PROMPT_PROPERTIES *) info->properties;
190 status = gx_numeric_prompt_create(prompt, info->widget_name, parent, props->string_id, info->style, info->widget_id, &info->size);
191 if (status == GX_SUCCESS)
192 {
193 gx_prompt_font_set((GX_PROMPT *)prompt, props->font_id);
194 #if defined(GUIX_5_4_0_COMPATIBILITY)
195 gx_prompt_text_color_set((GX_PROMPT *)prompt, props->normal_text_color_id, props->selected_text_color_id);
196 #else
197 gx_prompt_text_color_set((GX_PROMPT *)prompt, props->normal_text_color_id, props->selected_text_color_id, props->disabled_text_color_id);
198 #endif
199 if(!props->string_id)
200 {
201 gx_numeric_prompt_value_set(prompt, props->numeric_prompt_value);
202 }
203 if(props->format_func)
204 {
205 gx_numeric_prompt_format_function_set(prompt, props->format_func);
206 }
207 }
208 return status;
209 }
210
gx_studio_window_create(GX_CONST GX_STUDIO_WIDGET * info,GX_WIDGET * control_block,GX_WIDGET * parent)211 UINT gx_studio_window_create(GX_CONST GX_STUDIO_WIDGET *info, GX_WIDGET *control_block, GX_WIDGET *parent)
212 {
213 UINT status;
214 GX_WINDOW *window = (GX_WINDOW *) control_block;
215 GX_WINDOW_PROPERTIES *props = (GX_WINDOW_PROPERTIES *) info->properties;
216 status = gx_window_create(window, info->widget_name, parent, info->style, info->widget_id, &info->size);
217 if (status == GX_SUCCESS)
218 {
219 if (props->wallpaper_id)
220 {
221 gx_window_wallpaper_set(window, props->wallpaper_id, info->style & GX_STYLE_TILE_WALLPAPER);
222 }
223 }
224 return status;
225 }
226
gx_studio_template_create(GX_CONST GX_STUDIO_WIDGET * info,GX_WIDGET * control_block,GX_WIDGET * parent)227 UINT gx_studio_template_create(GX_CONST GX_STUDIO_WIDGET *info, GX_WIDGET *control_block, GX_WIDGET *parent)
228 {
229 UINT status = GX_SUCCESS;
230 GX_STUDIO_WIDGET derived;
231 GX_TEMPLATE_PROPERTIES *props = (GX_TEMPLATE_PROPERTIES *) info->properties;
232
233 /* create base widget and children */
234 derived = *props->base_info;
235 derived.widget_id = info->widget_id;
236 derived.widget_name = info->widget_name;
237
238 if (info->style & GX_STYLE_ENABLED)
239 {
240 derived.style |= GX_STYLE_ENABLED;
241 }
242 else
243 {
244 derived.style &= ~GX_STYLE_ENABLED;
245 }
246 if (info->status & GX_STATUS_ACCEPTS_FOCUS)
247 {
248 derived.status |= GX_STATUS_ACCEPTS_FOCUS;
249 }
250 else
251 {
252 derived.status &= ~GX_STATUS_ACCEPTS_FOCUS;
253 }
254
255 #if defined(GX_WIDGET_USER_DATA)
256 derived.user_data = info->user_data;
257 #endif
258
259 control_block = gx_studio_widget_create((GX_BYTE *) control_block, &derived, parent);
260 if (control_block)
261 {
262 if (info->style & GX_STYLE_DYNAMICALLY_ALLOCATED)
263 {
264 control_block->gx_widget_status |= GX_STATUS_DYNAMICALLY_ALLOCATED;
265 }
266 if (derived.size.gx_rectangle_left != info->size.gx_rectangle_left ||
267 derived.size.gx_rectangle_top != info->size.gx_rectangle_top)
268 {
269 gx_widget_shift(control_block,
270 info->size.gx_rectangle_left - derived.size.gx_rectangle_left,
271 info->size.gx_rectangle_top - derived.size.gx_rectangle_top, GX_FALSE);
272 }
273 }
274 else
275 {
276 status = GX_FAILURE;
277 }
278 return status;
279 }
280 GX_PIXELMAP_BUTTON_PROPERTIES template_mode_btn_small_properties =
281 {
282 GX_PIXELMAP_ID_CYCLE_QUICK_SMALL, /* normal pixelmap id */
283 0, /* selected pixelmap id */
284 0 /* disabled pixelmap id */
285 };
286 GX_PROMPT_PROPERTIES template_mode_btn_small_mode_label_properties =
287 {
288 GX_STRING_ID_QUICK, /* string id */
289 GX_FONT_ID_MIDDLE, /* font id */
290 GX_COLOR_ID_WHITE, /* normal text color */
291 GX_COLOR_ID_WHITE, /* selected text color */
292 GX_COLOR_ID_WHITE /* disabled text color */
293 };
294 GX_PROMPT_PROPERTIES template_mode_btn_small_mode_label_4_properties =
295 {
296 GX_STRING_ID_STRING_14, /* string id */
297 GX_FONT_ID_NORMAL, /* font id */
298 GX_COLOR_ID_WHITE, /* normal text color */
299 GX_COLOR_ID_WHITE, /* selected text color */
300 GX_COLOR_ID_WHITE /* disabled text color */
301 };
302 GX_NUMERIC_PROMPT_PROPERTIES template_mode_btn_small_total_time_properties =
303 {
304 0, /* string id */
305 GX_FONT_ID_NORMAL, /* font id */
306 GX_COLOR_ID_WHITE, /* normal text color */
307 GX_COLOR_ID_WHITE, /* selected text color */
308 GX_COLOR_ID_WHITE, /* disabled text color */
309 GX_NULL, /* format function */
310 30 /* numeric prompt value */
311 };
312 GX_PROMPT_PROPERTIES template_mode_btn_small_mode_label_5_properties =
313 {
314 GX_STRING_ID_STRING_12, /* string id */
315 GX_FONT_ID_SYSTEM, /* font id */
316 GX_COLOR_ID_GRAY, /* normal text color */
317 GX_COLOR_ID_GRAY, /* selected text color */
318 GX_COLOR_ID_GRAY /* disabled text color */
319 };
320
321 GX_CONST GX_STUDIO_WIDGET template_mode_btn_small_mode_label_5_define =
322 {
323 "mode_label_5",
324 GX_TYPE_PROMPT, /* widget type */
325 GX_ID_NONE, /* widget id */
326 #if defined(GX_WIDGET_USER_DATA)
327 0, /* user data */
328 #endif
329 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
330 0, /* status flags */
331 sizeof(GX_PROMPT), /* control block size */
332 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
333 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
334 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
335 gx_studio_prompt_create, /* create function */
336 GX_NULL, /* drawing function override */
337 GX_NULL, /* event function override */
338 {118, 161, 146, 178}, /* widget size */
339 GX_NULL, /* no next widget */
340 GX_NULL, /* no child widgets */
341 offsetof(TEMPLATE_MODE_BTN_SMALL_CONTROL_BLOCK, template_mode_btn_small_mode_label_5), /* control block */
342 (void *) &template_mode_btn_small_mode_label_5_properties /* extended properties */
343 };
344
345 GX_CONST GX_STUDIO_WIDGET template_mode_btn_small_total_time_define =
346 {
347 "total_time",
348 GX_TYPE_NUMERIC_PROMPT, /* widget type */
349 GX_ID_NONE, /* widget id */
350 #if defined(GX_WIDGET_USER_DATA)
351 0, /* user data */
352 #endif
353 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_TEXT_CENTER, /* style flags */
354 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
355 sizeof(GX_NUMERIC_PROMPT), /* control block size */
356 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
357 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
358 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
359 gx_studio_numeric_prompt_create, /* create function */
360 GX_NULL, /* drawing function override */
361 GX_NULL, /* event function override */
362 {81, 157, 110, 181}, /* widget size */
363 &template_mode_btn_small_mode_label_5_define, /* next widget definition */
364 GX_NULL, /* no child widgets */
365 offsetof(TEMPLATE_MODE_BTN_SMALL_CONTROL_BLOCK, template_mode_btn_small_total_time), /* control block */
366 (void *) &template_mode_btn_small_total_time_properties /* extended properties */
367 };
368
369 GX_CONST GX_STUDIO_WIDGET template_mode_btn_small_mode_label_4_define =
370 {
371 "mode_label_4",
372 GX_TYPE_PROMPT, /* widget type */
373 GX_ID_NONE, /* widget id */
374 #if defined(GX_WIDGET_USER_DATA)
375 0, /* user data */
376 #endif
377 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
378 0, /* status flags */
379 sizeof(GX_PROMPT), /* control block size */
380 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
381 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
382 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
383 gx_studio_prompt_create, /* create function */
384 GX_NULL, /* drawing function override */
385 GX_NULL, /* event function override */
386 {80, 126, 146, 150}, /* widget size */
387 &template_mode_btn_small_total_time_define, /* next widget definition */
388 GX_NULL, /* no child widgets */
389 offsetof(TEMPLATE_MODE_BTN_SMALL_CONTROL_BLOCK, template_mode_btn_small_mode_label_4), /* control block */
390 (void *) &template_mode_btn_small_mode_label_4_properties /* extended properties */
391 };
392
393 GX_CONST GX_STUDIO_WIDGET template_mode_btn_small_mode_label_define =
394 {
395 "mode_label",
396 GX_TYPE_PROMPT, /* widget type */
397 GX_ID_NONE, /* widget id */
398 #if defined(GX_WIDGET_USER_DATA)
399 0, /* user data */
400 #endif
401 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
402 0, /* status flags */
403 sizeof(GX_PROMPT), /* control block size */
404 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
405 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
406 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
407 gx_studio_prompt_create, /* create function */
408 GX_NULL, /* drawing function override */
409 GX_NULL, /* event function override */
410 {62, 68, 160, 103}, /* widget size */
411 &template_mode_btn_small_mode_label_4_define, /* next widget definition */
412 GX_NULL, /* no child widgets */
413 offsetof(TEMPLATE_MODE_BTN_SMALL_CONTROL_BLOCK, template_mode_btn_small_mode_label), /* control block */
414 (void *) &template_mode_btn_small_mode_label_properties /* extended properties */
415 };
416
417 GX_CONST GX_STUDIO_WIDGET template_mode_btn_small_define =
418 {
419 "template_mode_btn_small",
420 GX_TYPE_PIXELMAP_BUTTON, /* widget type */
421 GX_ID_NONE, /* widget id */
422 #if defined(GX_WIDGET_USER_DATA)
423 0, /* user data */
424 #endif
425 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED, /* style flags */
426 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
427 sizeof(TEMPLATE_MODE_BTN_SMALL_CONTROL_BLOCK), /* control block size */
428 GX_COLOR_ID_BTN_LOWER, /* normal color id */
429 GX_COLOR_ID_BTN_UPPER, /* selected color id */
430 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
431 gx_studio_pixelmap_button_create, /* create function */
432 GX_NULL, /* drawing function override */
433 GX_NULL, /* event function override */
434 {0, 0, 223, 223}, /* widget size */
435 GX_NULL, /* next widget */
436 &template_mode_btn_small_mode_label_define, /* child widget */
437 0, /* control block */
438 (void *) &template_mode_btn_small_properties /* extended properties */
439 };
440 GX_PIXELMAP_BUTTON_PROPERTIES template_mode_btn_properties =
441 {
442 GX_PIXELMAP_ID_CYCLE_QUICK, /* normal pixelmap id */
443 0, /* selected pixelmap id */
444 0 /* disabled pixelmap id */
445 };
446 GX_PROMPT_PROPERTIES template_mode_btn_mode_label_properties =
447 {
448 GX_STRING_ID_QUICK, /* string id */
449 GX_FONT_ID_BIG, /* font id */
450 GX_COLOR_ID_WHITE, /* normal text color */
451 GX_COLOR_ID_WHITE, /* selected text color */
452 GX_COLOR_ID_WHITE /* disabled text color */
453 };
454 GX_PROMPT_PROPERTIES template_mode_btn_wash_label_properties =
455 {
456 GX_STRING_ID_STRING_14, /* string id */
457 GX_FONT_ID_MIDDLE, /* font id */
458 GX_COLOR_ID_WHITE, /* normal text color */
459 GX_COLOR_ID_WHITE, /* selected text color */
460 GX_COLOR_ID_WHITE /* disabled text color */
461 };
462 GX_PROMPT_PROPERTIES template_mode_btn_min_label_properties =
463 {
464 GX_STRING_ID_STRING_12, /* string id */
465 GX_FONT_ID_NORMAL, /* font id */
466 GX_COLOR_ID_GRAY, /* normal text color */
467 GX_COLOR_ID_GRAY, /* selected text color */
468 GX_COLOR_ID_GRAY /* disabled text color */
469 };
470 GX_NUMERIC_PROMPT_PROPERTIES template_mode_btn_total_time_properties =
471 {
472 0, /* string id */
473 GX_FONT_ID_MIDDLE, /* font id */
474 GX_COLOR_ID_WHITE, /* normal text color */
475 GX_COLOR_ID_WHITE, /* selected text color */
476 GX_COLOR_ID_WHITE, /* disabled text color */
477 GX_NULL, /* format function */
478 30 /* numeric prompt value */
479 };
480 GX_RADIAL_PROGRESS_BAR_INFO template_mode_btn_mode_progress_bar_properties =
481 {
482 159, /* xcenter */
483 158, /* ycenter */
484 122, /* radius */
485 -270, /* current val */
486 90, /* anchor val */
487 GX_FONT_ID_SYSTEM, /* font_id */
488 GX_COLOR_ID_WHITE, /* normal text color */
489 GX_COLOR_ID_SELECTED_TEXT, /* selected text color */
490 GX_COLOR_ID_DISABLED_TEXT, /* disabled text color */
491 5, /* normal brush width */
492 5, /* selected brush width */
493 GX_COLOR_ID_SLIDER_NEEDLE_FILL, /* normal brush color */
494 GX_COLOR_ID_SHINE, /* selected brush color */
495 };
496 GX_NUMERIC_PROMPT_PROPERTIES template_mode_btn_minute_properties =
497 {
498 0, /* string id */
499 GX_FONT_ID_SYSTEM, /* font id */
500 GX_COLOR_ID_WHITE, /* normal text color */
501 GX_COLOR_ID_WHITE, /* selected text color */
502 GX_COLOR_ID_WHITE, /* disabled text color */
503 GX_NULL, /* format function */
504 60 /* numeric prompt value */
505 };
506 GX_NUMERIC_PROMPT_PROPERTIES template_mode_btn_second_properties =
507 {
508 0, /* string id */
509 GX_FONT_ID_SYSTEM, /* font id */
510 GX_COLOR_ID_WHITE, /* normal text color */
511 GX_COLOR_ID_WHITE, /* selected text color */
512 GX_COLOR_ID_WHITE, /* disabled text color */
513 time_format, /* format function */
514 60 /* numeric prompt value */
515 };
516 GX_PROMPT_PROPERTIES template_mode_btn_prompt_3_properties =
517 {
518 GX_STRING_ID_STRING_4, /* string id */
519 GX_FONT_ID_SYSTEM, /* font id */
520 GX_COLOR_ID_WHITE, /* normal text color */
521 GX_COLOR_ID_WHITE, /* selected text color */
522 GX_COLOR_ID_WHITE /* disabled text color */
523 };
524 GX_PROMPT_PROPERTIES template_mode_btn_prompt_2_properties =
525 {
526 GX_STRING_ID_STRING_5, /* string id */
527 GX_FONT_ID_SYSTEM, /* font id */
528 GX_COLOR_ID_WHITE, /* normal text color */
529 GX_COLOR_ID_WHITE, /* selected text color */
530 GX_COLOR_ID_WHITE /* disabled text color */
531 };
532
533 GX_CONST GX_STUDIO_WIDGET template_mode_btn_prompt_2_define =
534 {
535 "prompt_2",
536 GX_TYPE_PROMPT, /* widget type */
537 GX_ID_NONE, /* widget id */
538 #if defined(GX_WIDGET_USER_DATA)
539 0, /* user data */
540 #endif
541 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
542 0, /* status flags */
543 sizeof(GX_PROMPT), /* control block size */
544 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
545 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
546 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
547 gx_studio_prompt_create, /* create function */
548 GX_NULL, /* drawing function override */
549 GX_NULL, /* event function override */
550 {174, 57, 198, 74}, /* widget size */
551 GX_NULL, /* no next widget */
552 GX_NULL, /* no child widgets */
553 offsetof(TEMPLATE_MODE_BTN_CONTROL_BLOCK, template_mode_btn_prompt_2), /* control block */
554 (void *) &template_mode_btn_prompt_2_properties /* extended properties */
555 };
556
557 GX_CONST GX_STUDIO_WIDGET template_mode_btn_prompt_3_define =
558 {
559 "prompt_3",
560 GX_TYPE_PROMPT, /* widget type */
561 GX_ID_NONE, /* widget id */
562 #if defined(GX_WIDGET_USER_DATA)
563 0, /* user data */
564 #endif
565 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
566 0, /* status flags */
567 sizeof(GX_PROMPT), /* control block size */
568 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
569 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
570 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
571 gx_studio_prompt_create, /* create function */
572 GX_NULL, /* drawing function override */
573 GX_NULL, /* event function override */
574 {146, 55, 149, 72}, /* widget size */
575 &template_mode_btn_prompt_2_define, /* next widget definition */
576 GX_NULL, /* no child widgets */
577 offsetof(TEMPLATE_MODE_BTN_CONTROL_BLOCK, template_mode_btn_prompt_3), /* control block */
578 (void *) &template_mode_btn_prompt_3_properties /* extended properties */
579 };
580
581 GX_CONST GX_STUDIO_WIDGET template_mode_btn_second_define =
582 {
583 "second",
584 GX_TYPE_NUMERIC_PROMPT, /* widget type */
585 GX_ID_NONE, /* widget id */
586 #if defined(GX_WIDGET_USER_DATA)
587 0, /* user data */
588 #endif
589 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_LEFT, /* style flags */
590 0, /* status flags */
591 sizeof(GX_NUMERIC_PROMPT), /* control block size */
592 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
593 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
594 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
595 gx_studio_numeric_prompt_create, /* create function */
596 GX_NULL, /* drawing function override */
597 GX_NULL, /* event function override */
598 {152, 56, 169, 73}, /* widget size */
599 &template_mode_btn_prompt_3_define, /* next widget definition */
600 GX_NULL, /* no child widgets */
601 offsetof(TEMPLATE_MODE_BTN_CONTROL_BLOCK, template_mode_btn_second), /* control block */
602 (void *) &template_mode_btn_second_properties /* extended properties */
603 };
604
605 GX_CONST GX_STUDIO_WIDGET template_mode_btn_minute_define =
606 {
607 "minute",
608 GX_TYPE_NUMERIC_PROMPT, /* widget type */
609 GX_ID_NONE, /* widget id */
610 #if defined(GX_WIDGET_USER_DATA)
611 0, /* user data */
612 #endif
613 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
614 0, /* status flags */
615 sizeof(GX_NUMERIC_PROMPT), /* control block size */
616 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
617 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
618 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
619 gx_studio_numeric_prompt_create, /* create function */
620 GX_NULL, /* drawing function override */
621 GX_NULL, /* event function override */
622 {127, 56, 144, 73}, /* widget size */
623 &template_mode_btn_second_define, /* next widget definition */
624 GX_NULL, /* no child widgets */
625 offsetof(TEMPLATE_MODE_BTN_CONTROL_BLOCK, template_mode_btn_minute), /* control block */
626 (void *) &template_mode_btn_minute_properties /* extended properties */
627 };
628
629 GX_CONST GX_STUDIO_WIDGET template_mode_btn_mode_progress_bar_define =
630 {
631 "mode_progress_bar",
632 GX_TYPE_RADIAL_PROGRESS_BAR, /* widget type */
633 GX_ID_NONE, /* widget id */
634 #if defined(GX_WIDGET_USER_DATA)
635 0, /* user data */
636 #endif
637 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_RADIAL_PROGRESS_NO_BACKTRACK|GX_STYLE_RADIAL_PROGRESS_ALIAS|GX_STYLE_RADIAL_PROGRESS_ROUND, /* style flags */
638 0, /* status flags */
639 sizeof(GX_RADIAL_PROGRESS_BAR), /* control block size */
640 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
641 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
642 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
643 gx_studio_radial_progress_bar_create, /* create function */
644 GX_NULL, /* drawing function override */
645 GX_NULL, /* event function override */
646 {34, 33, 284, 283}, /* widget size */
647 GX_NULL, /* no next widget */
648 &template_mode_btn_minute_define, /* child widget definition */
649 offsetof(TEMPLATE_MODE_BTN_CONTROL_BLOCK, template_mode_btn_mode_progress_bar), /* control block */
650 (void *) &template_mode_btn_mode_progress_bar_properties /* extended properties */
651 };
652
653 GX_CONST GX_STUDIO_WIDGET template_mode_btn_total_time_define =
654 {
655 "total_time",
656 GX_TYPE_NUMERIC_PROMPT, /* widget type */
657 GX_ID_NONE, /* widget id */
658 #if defined(GX_WIDGET_USER_DATA)
659 0, /* user data */
660 #endif
661 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_TEXT_CENTER, /* style flags */
662 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
663 sizeof(GX_NUMERIC_PROMPT), /* control block size */
664 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
665 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
666 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
667 gx_studio_numeric_prompt_create, /* create function */
668 GX_NULL, /* drawing function override */
669 GX_NULL, /* event function override */
670 {114, 227, 157, 262}, /* widget size */
671 &template_mode_btn_mode_progress_bar_define, /* next widget definition */
672 GX_NULL, /* no child widgets */
673 offsetof(TEMPLATE_MODE_BTN_CONTROL_BLOCK, template_mode_btn_total_time), /* control block */
674 (void *) &template_mode_btn_total_time_properties /* extended properties */
675 };
676
677 GX_CONST GX_STUDIO_WIDGET template_mode_btn_min_label_define =
678 {
679 "min_label",
680 GX_TYPE_PROMPT, /* widget type */
681 GX_ID_NONE, /* widget id */
682 #if defined(GX_WIDGET_USER_DATA)
683 0, /* user data */
684 #endif
685 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
686 0, /* status flags */
687 sizeof(GX_PROMPT), /* control block size */
688 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
689 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
690 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
691 gx_studio_prompt_create, /* create function */
692 GX_NULL, /* drawing function override */
693 GX_NULL, /* event function override */
694 {166, 233, 210, 257}, /* widget size */
695 &template_mode_btn_total_time_define, /* next widget definition */
696 GX_NULL, /* no child widgets */
697 offsetof(TEMPLATE_MODE_BTN_CONTROL_BLOCK, template_mode_btn_min_label), /* control block */
698 (void *) &template_mode_btn_min_label_properties /* extended properties */
699 };
700
701 GX_CONST GX_STUDIO_WIDGET template_mode_btn_wash_label_define =
702 {
703 "wash_label",
704 GX_TYPE_PROMPT, /* widget type */
705 GX_ID_NONE, /* widget id */
706 #if defined(GX_WIDGET_USER_DATA)
707 0, /* user data */
708 #endif
709 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
710 0, /* status flags */
711 sizeof(GX_PROMPT), /* control block size */
712 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
713 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
714 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
715 gx_studio_prompt_create, /* create function */
716 GX_NULL, /* drawing function override */
717 GX_NULL, /* event function override */
718 {112, 178, 207, 213}, /* widget size */
719 &template_mode_btn_min_label_define, /* next widget definition */
720 GX_NULL, /* no child widgets */
721 offsetof(TEMPLATE_MODE_BTN_CONTROL_BLOCK, template_mode_btn_wash_label), /* control block */
722 (void *) &template_mode_btn_wash_label_properties /* extended properties */
723 };
724
725 GX_CONST GX_STUDIO_WIDGET template_mode_btn_mode_label_define =
726 {
727 "mode_label",
728 GX_TYPE_PROMPT, /* widget type */
729 GX_ID_NONE, /* widget id */
730 #if defined(GX_WIDGET_USER_DATA)
731 0, /* user data */
732 #endif
733 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
734 0, /* status flags */
735 sizeof(GX_PROMPT), /* control block size */
736 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
737 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
738 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
739 gx_studio_prompt_create, /* create function */
740 GX_NULL, /* drawing function override */
741 GX_NULL, /* event function override */
742 {72, 87, 241, 148}, /* widget size */
743 &template_mode_btn_wash_label_define, /* next widget definition */
744 GX_NULL, /* no child widgets */
745 offsetof(TEMPLATE_MODE_BTN_CONTROL_BLOCK, template_mode_btn_mode_label), /* control block */
746 (void *) &template_mode_btn_mode_label_properties /* extended properties */
747 };
748
749 GX_CONST GX_STUDIO_WIDGET template_mode_btn_define =
750 {
751 "template_mode_btn",
752 GX_TYPE_PIXELMAP_BUTTON, /* widget type */
753 GX_ID_NONE, /* widget id */
754 #if defined(GX_WIDGET_USER_DATA)
755 0, /* user data */
756 #endif
757 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED, /* style flags */
758 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
759 sizeof(TEMPLATE_MODE_BTN_CONTROL_BLOCK), /* control block size */
760 GX_COLOR_ID_BTN_LOWER, /* normal color id */
761 GX_COLOR_ID_BTN_UPPER, /* selected color id */
762 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
763 gx_studio_pixelmap_button_create, /* create function */
764 GX_NULL, /* drawing function override */
765 GX_NULL, /* event function override */
766 {0, 0, 316, 317}, /* widget size */
767 GX_NULL, /* next widget */
768 &template_mode_btn_mode_label_define, /* child widget */
769 0, /* control block */
770 (void *) &template_mode_btn_properties /* extended properties */
771 };
772 GX_WINDOW_PROPERTIES mode_select_window_properties =
773 {
774 0 /* wallpaper pixelmap id */
775 };
776 GX_TEMPLATE_PROPERTIES mode_select_window_btn_quick_properties =
777 {
778 &template_mode_btn_define, /* base info */
779 gx_studio_pixelmap_button_create, /* base create function */
780 {8, 82, 324, 399} /* widget size */
781 };
782 GX_TEMPLATE_PROPERTIES mode_select_window_btn_deep_properties =
783 {
784 &template_mode_btn_define, /* base info */
785 gx_studio_pixelmap_button_create, /* base create function */
786 {316, 82, 632, 399} /* widget size */
787 };
788 GX_TEMPLATE_PROPERTIES mode_select_window_btn_quick_small_properties =
789 {
790 &template_mode_btn_small_define, /* base info */
791 gx_studio_pixelmap_button_create, /* base create function */
792 {9, 129, 232, 352} /* widget size */
793 };
794 GX_TEMPLATE_PROPERTIES mode_select_window_btn_deep_small_properties =
795 {
796 &template_mode_btn_small_define, /* base info */
797 gx_studio_pixelmap_button_create, /* base create function */
798 {411, 129, 634, 352} /* widget size */
799 };
800 GX_TEMPLATE_PROPERTIES mode_select_window_btn_eco_properties =
801 {
802 &template_mode_btn_define, /* base info */
803 gx_studio_pixelmap_button_create, /* base create function */
804 {163, 82, 479, 399} /* widget size */
805 };
806 GX_TEMPLATE_PROPERTIES mode_select_window_btn_eco_small_properties =
807 {
808 &template_mode_btn_small_define, /* base info */
809 gx_studio_pixelmap_button_create, /* base create function */
810 {210, 129, 433, 352} /* widget size */
811 };
812
813 GX_CONST GX_STUDIO_WIDGET mode_select_window_btn_eco_small_define =
814 {
815 "btn_eco_small",
816 GX_TYPE_TEMPLATE, /* widget type */
817 ID_BTN_ECO_SMALL, /* widget id */
818 #if defined(GX_WIDGET_USER_DATA)
819 0, /* user data */
820 #endif
821 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED, /* style flags */
822 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
823 sizeof(TEMPLATE_MODE_BTN_SMALL_CONTROL_BLOCK), /* control block size */
824 GX_COLOR_ID_BTN_LOWER, /* normal color id */
825 GX_COLOR_ID_BTN_UPPER, /* selected color id */
826 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
827 gx_studio_template_create, /* create function */
828 GX_NULL, /* drawing function override */
829 GX_NULL, /* event function override */
830 {210, 129, 433, 352}, /* widget size */
831 GX_NULL, /* no next widget */
832 GX_NULL, /* no child widgets */
833 offsetof(MODE_SELECT_WINDOW_CONTROL_BLOCK, mode_select_window_btn_eco_small), /* control block */
834 (void *) &mode_select_window_btn_eco_small_properties /* extended properties */
835 };
836
837 GX_CONST GX_STUDIO_WIDGET mode_select_window_btn_eco_define =
838 {
839 "btn_eco",
840 GX_TYPE_TEMPLATE, /* widget type */
841 ID_BTN_ECO, /* widget id */
842 #if defined(GX_WIDGET_USER_DATA)
843 0, /* user data */
844 #endif
845 GX_STYLE_BORDER_NONE|GX_STYLE_ENABLED, /* style flags */
846 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
847 sizeof(TEMPLATE_MODE_BTN_CONTROL_BLOCK), /* control block size */
848 GX_COLOR_ID_BTN_LOWER, /* normal color id */
849 GX_COLOR_ID_BTN_UPPER, /* selected color id */
850 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
851 gx_studio_template_create, /* create function */
852 GX_NULL, /* drawing function override */
853 GX_NULL, /* event function override */
854 {163, 82, 479, 399}, /* widget size */
855 &mode_select_window_btn_eco_small_define, /* next widget definition */
856 GX_NULL, /* no child widgets */
857 offsetof(MODE_SELECT_WINDOW_CONTROL_BLOCK, mode_select_window_btn_eco), /* control block */
858 (void *) &mode_select_window_btn_eco_properties /* extended properties */
859 };
860
861 GX_CONST GX_STUDIO_WIDGET mode_select_window_btn_deep_small_define =
862 {
863 "btn_deep_small",
864 GX_TYPE_TEMPLATE, /* widget type */
865 ID_BTN_DEEP_SMALL, /* widget id */
866 #if defined(GX_WIDGET_USER_DATA)
867 0, /* user data */
868 #endif
869 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED, /* style flags */
870 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
871 sizeof(TEMPLATE_MODE_BTN_SMALL_CONTROL_BLOCK), /* control block size */
872 GX_COLOR_ID_BTN_LOWER, /* normal color id */
873 GX_COLOR_ID_BTN_UPPER, /* selected color id */
874 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
875 gx_studio_template_create, /* create function */
876 GX_NULL, /* drawing function override */
877 GX_NULL, /* event function override */
878 {411, 129, 634, 352}, /* widget size */
879 &mode_select_window_btn_eco_define, /* next widget definition */
880 GX_NULL, /* no child widgets */
881 offsetof(MODE_SELECT_WINDOW_CONTROL_BLOCK, mode_select_window_btn_deep_small), /* control block */
882 (void *) &mode_select_window_btn_deep_small_properties /* extended properties */
883 };
884
885 GX_CONST GX_STUDIO_WIDGET mode_select_window_btn_quick_small_define =
886 {
887 "btn_quick_small",
888 GX_TYPE_TEMPLATE, /* widget type */
889 ID_BTN_QUICK_SMALL, /* widget id */
890 #if defined(GX_WIDGET_USER_DATA)
891 0, /* user data */
892 #endif
893 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED, /* style flags */
894 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
895 sizeof(TEMPLATE_MODE_BTN_SMALL_CONTROL_BLOCK), /* control block size */
896 GX_COLOR_ID_BTN_LOWER, /* normal color id */
897 GX_COLOR_ID_BTN_UPPER, /* selected color id */
898 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
899 gx_studio_template_create, /* create function */
900 GX_NULL, /* drawing function override */
901 GX_NULL, /* event function override */
902 {9, 129, 232, 352}, /* widget size */
903 &mode_select_window_btn_deep_small_define, /* next widget definition */
904 GX_NULL, /* no child widgets */
905 offsetof(MODE_SELECT_WINDOW_CONTROL_BLOCK, mode_select_window_btn_quick_small), /* control block */
906 (void *) &mode_select_window_btn_quick_small_properties /* extended properties */
907 };
908
909 GX_CONST GX_STUDIO_WIDGET mode_select_window_btn_deep_define =
910 {
911 "btn_deep",
912 GX_TYPE_TEMPLATE, /* widget type */
913 ID_BTN_DEEP, /* widget id */
914 #if defined(GX_WIDGET_USER_DATA)
915 0, /* user data */
916 #endif
917 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED, /* style flags */
918 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
919 sizeof(TEMPLATE_MODE_BTN_CONTROL_BLOCK), /* control block size */
920 GX_COLOR_ID_BTN_LOWER, /* normal color id */
921 GX_COLOR_ID_BTN_UPPER, /* selected color id */
922 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
923 gx_studio_template_create, /* create function */
924 GX_NULL, /* drawing function override */
925 GX_NULL, /* event function override */
926 {316, 82, 632, 399}, /* widget size */
927 &mode_select_window_btn_quick_small_define, /* next widget definition */
928 GX_NULL, /* no child widgets */
929 offsetof(MODE_SELECT_WINDOW_CONTROL_BLOCK, mode_select_window_btn_deep), /* control block */
930 (void *) &mode_select_window_btn_deep_properties /* extended properties */
931 };
932
933 GX_CONST GX_STUDIO_WIDGET mode_select_window_btn_quick_define =
934 {
935 "btn_quick",
936 GX_TYPE_TEMPLATE, /* widget type */
937 ID_BTN_QUICK, /* widget id */
938 #if defined(GX_WIDGET_USER_DATA)
939 0, /* user data */
940 #endif
941 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED, /* style flags */
942 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
943 sizeof(TEMPLATE_MODE_BTN_CONTROL_BLOCK), /* control block size */
944 GX_COLOR_ID_BTN_LOWER, /* normal color id */
945 GX_COLOR_ID_BTN_UPPER, /* selected color id */
946 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
947 gx_studio_template_create, /* create function */
948 GX_NULL, /* drawing function override */
949 GX_NULL, /* event function override */
950 {8, 82, 324, 399}, /* widget size */
951 &mode_select_window_btn_deep_define, /* next widget definition */
952 GX_NULL, /* no child widgets */
953 offsetof(MODE_SELECT_WINDOW_CONTROL_BLOCK, mode_select_window_btn_quick), /* control block */
954 (void *) &mode_select_window_btn_quick_properties /* extended properties */
955 };
956
957 GX_CONST GX_STUDIO_WIDGET mode_select_window_define =
958 {
959 "mode_select_window",
960 GX_TYPE_WINDOW, /* widget type */
961 GX_ID_NONE, /* widget id */
962 #if defined(GX_WIDGET_USER_DATA)
963 0, /* user data */
964 #endif
965 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED, /* style flags */
966 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
967 sizeof(MODE_SELECT_WINDOW_CONTROL_BLOCK), /* control block size */
968 GX_COLOR_ID_WINDOW_FILL, /* normal color id */
969 GX_COLOR_ID_WINDOW_FILL, /* selected color id */
970 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
971 gx_studio_window_create, /* create function */
972 GX_NULL, /* drawing function override */
973 (UINT (*)(GX_WIDGET *, GX_EVENT *)) mode_select_window_event_process, /* event function override */
974 {0, 82, 639, 399}, /* widget size */
975 GX_NULL, /* next widget */
976 &mode_select_window_btn_quick_define, /* child widget */
977 0, /* control block */
978 (void *) &mode_select_window_properties /* extended properties */
979 };
980 GX_WINDOW_PROPERTIES water_level_window_properties =
981 {
982 0 /* wallpaper pixelmap id */
983 };
984 GX_RADIAL_SLIDER_PROPERTIES water_level_window_water_level_slider_properties =
985 {
986 159, /* xcenter */
987 159, /* ycenter */
988 140, /* radius */
989 20, /* track width */
990 0, /* needle offset */
991 -20, /* current angle */
992 -40, /* min angle */
993 40, /* max angle */
994 GX_PIXELMAP_ID_DISC_WATER_LEVEL, /* background pixelmap */
995 GX_PIXELMAP_ID_METALIC_DIAL, /* needle pixelmap */
996 10, /* animation total steps */
997 2, /* animation delay */
998 GX_ANIMATION_CIRC_EASE_IN_OUT, /* animation style */
999 GX_NULL, /* animation update callback func */
1000 };
1001 GX_NUMERIC_PROMPT_PROPERTIES water_level_window_water_level_value_properties =
1002 {
1003 0, /* string id */
1004 GX_FONT_ID_LARG_NUMBER, /* font id */
1005 GX_COLOR_ID_WHITE, /* normal text color */
1006 GX_COLOR_ID_WHITE, /* selected text color */
1007 GX_COLOR_ID_WHITE, /* disabled text color */
1008 GX_NULL, /* format function */
1009 35 /* numeric prompt value */
1010 };
1011 GX_PROMPT_PROPERTIES water_level_window_percentage_flag_properties =
1012 {
1013 GX_STRING_ID_STRING_38, /* string id */
1014 GX_FONT_ID_NORMAL, /* font id */
1015 GX_COLOR_ID_WHITE, /* normal text color */
1016 GX_COLOR_ID_WHITE, /* selected text color */
1017 GX_COLOR_ID_WHITE /* disabled text color */
1018 };
1019 GX_TEXT_BUTTON_PROPERTIES water_level_window_btn_max_properties =
1020 {
1021 GX_STRING_ID_STRING_21, /* string id */
1022 GX_FONT_ID_NORMAL, /* font id */
1023 GX_COLOR_ID_GRAY, /* normal text color */
1024 GX_COLOR_ID_WHITE, /* selected text color */
1025 GX_COLOR_ID_WHITE /* disabled text color */
1026 };
1027 GX_TEXT_BUTTON_PROPERTIES water_level_window_btn_high_properties =
1028 {
1029 GX_STRING_ID_STRING_20, /* string id */
1030 GX_FONT_ID_NORMAL, /* font id */
1031 GX_COLOR_ID_GRAY, /* normal text color */
1032 GX_COLOR_ID_WHITE, /* selected text color */
1033 GX_COLOR_ID_WHITE /* disabled text color */
1034 };
1035 GX_TEXT_BUTTON_PROPERTIES water_level_window_btn_medium_properties =
1036 {
1037 GX_STRING_ID_STRING_22, /* string id */
1038 GX_FONT_ID_NORMAL, /* font id */
1039 GX_COLOR_ID_GRAY, /* normal text color */
1040 GX_COLOR_ID_WHITE, /* selected text color */
1041 GX_COLOR_ID_WHITE /* disabled text color */
1042 };
1043 GX_TEXT_BUTTON_PROPERTIES water_level_window_btn_low_properties =
1044 {
1045 GX_STRING_ID_STRING_23, /* string id */
1046 GX_FONT_ID_NORMAL, /* font id */
1047 GX_COLOR_ID_GRAY, /* normal text color */
1048 GX_COLOR_ID_WHITE, /* selected text color */
1049 GX_COLOR_ID_WHITE /* disabled text color */
1050 };
1051 GX_TEXT_BUTTON_PROPERTIES water_level_window_btn_min_properties =
1052 {
1053 GX_STRING_ID_STRING_24, /* string id */
1054 GX_FONT_ID_NORMAL, /* font id */
1055 GX_COLOR_ID_GRAY, /* normal text color */
1056 GX_COLOR_ID_WHITE, /* selected text color */
1057 GX_COLOR_ID_WHITE /* disabled text color */
1058 };
1059
1060 GX_CONST GX_STUDIO_WIDGET water_level_window_percentage_flag_define =
1061 {
1062 "percentage_flag",
1063 GX_TYPE_PROMPT, /* widget type */
1064 GX_ID_NONE, /* widget id */
1065 #if defined(GX_WIDGET_USER_DATA)
1066 0, /* user data */
1067 #endif
1068 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_TEXT_CENTER, /* style flags */
1069 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
1070 sizeof(GX_PROMPT), /* control block size */
1071 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1072 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1073 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1074 gx_studio_prompt_create, /* create function */
1075 GX_NULL, /* drawing function override */
1076 GX_NULL, /* event function override */
1077 {374, 201, 396, 225}, /* widget size */
1078 GX_NULL, /* no next widget */
1079 GX_NULL, /* no child widgets */
1080 offsetof(WATER_LEVEL_WINDOW_CONTROL_BLOCK, water_level_window_percentage_flag), /* control block */
1081 (void *) &water_level_window_percentage_flag_properties /* extended properties */
1082 };
1083
1084 GX_CONST GX_STUDIO_WIDGET water_level_window_water_level_value_define =
1085 {
1086 "water_level_value",
1087 GX_TYPE_NUMERIC_PROMPT, /* widget type */
1088 GX_ID_NONE, /* widget id */
1089 #if defined(GX_WIDGET_USER_DATA)
1090 0, /* user data */
1091 #endif
1092 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
1093 0, /* status flags */
1094 sizeof(GX_NUMERIC_PROMPT), /* control block size */
1095 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1096 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1097 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1098 gx_studio_numeric_prompt_create, /* create function */
1099 GX_NULL, /* drawing function override */
1100 GX_NULL, /* event function override */
1101 {255, 207, 372, 278}, /* widget size */
1102 &water_level_window_percentage_flag_define, /* next widget definition */
1103 GX_NULL, /* no child widgets */
1104 offsetof(WATER_LEVEL_WINDOW_CONTROL_BLOCK, water_level_window_water_level_value), /* control block */
1105 (void *) &water_level_window_water_level_value_properties /* extended properties */
1106 };
1107
1108 GX_CONST GX_STUDIO_WIDGET water_level_window_btn_min_define =
1109 {
1110 "btn_min",
1111 GX_TYPE_TEXT_BUTTON, /* widget type */
1112 ID_BTN_MIN, /* widget id */
1113 #if defined(GX_WIDGET_USER_DATA)
1114 0, /* user data */
1115 #endif
1116 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_BUTTON_RADIO|GX_STYLE_TEXT_CENTER, /* style flags */
1117 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
1118 sizeof(GX_TEXT_BUTTON), /* control block size */
1119 GX_COLOR_ID_BTN_LOWER, /* normal color id */
1120 GX_COLOR_ID_BTN_UPPER, /* selected color id */
1121 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1122 gx_studio_text_button_create, /* create function */
1123 GX_NULL, /* drawing function override */
1124 GX_NULL, /* event function override */
1125 {443, 343, 485, 367}, /* widget size */
1126 GX_NULL, /* no next widget */
1127 GX_NULL, /* no child widgets */
1128 offsetof(WATER_LEVEL_WINDOW_CONTROL_BLOCK, water_level_window_btn_min), /* control block */
1129 (void *) &water_level_window_btn_min_properties /* extended properties */
1130 };
1131
1132 GX_CONST GX_STUDIO_WIDGET water_level_window_btn_low_define =
1133 {
1134 "btn_low",
1135 GX_TYPE_TEXT_BUTTON, /* widget type */
1136 ID_BTN_LOW, /* widget id */
1137 #if defined(GX_WIDGET_USER_DATA)
1138 0, /* user data */
1139 #endif
1140 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_BUTTON_PUSHED|GX_STYLE_BUTTON_RADIO|GX_STYLE_TEXT_CENTER, /* style flags */
1141 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
1142 sizeof(GX_TEXT_BUTTON), /* control block size */
1143 GX_COLOR_ID_BTN_LOWER, /* normal color id */
1144 GX_COLOR_ID_BTN_UPPER, /* selected color id */
1145 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1146 gx_studio_text_button_create, /* create function */
1147 GX_NULL, /* drawing function override */
1148 GX_NULL, /* event function override */
1149 {477, 287, 524, 311}, /* widget size */
1150 &water_level_window_btn_min_define, /* next widget definition */
1151 GX_NULL, /* no child widgets */
1152 offsetof(WATER_LEVEL_WINDOW_CONTROL_BLOCK, water_level_window_btn_low), /* control block */
1153 (void *) &water_level_window_btn_low_properties /* extended properties */
1154 };
1155
1156 GX_CONST GX_STUDIO_WIDGET water_level_window_btn_medium_define =
1157 {
1158 "btn_medium",
1159 GX_TYPE_TEXT_BUTTON, /* widget type */
1160 ID_BTN_MEDIUM, /* widget id */
1161 #if defined(GX_WIDGET_USER_DATA)
1162 0, /* user data */
1163 #endif
1164 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_BUTTON_RADIO|GX_STYLE_TEXT_CENTER, /* style flags */
1165 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
1166 sizeof(GX_TEXT_BUTTON), /* control block size */
1167 GX_COLOR_ID_BTN_LOWER, /* normal color id */
1168 GX_COLOR_ID_BTN_UPPER, /* selected color id */
1169 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1170 gx_studio_text_button_create, /* create function */
1171 GX_NULL, /* drawing function override */
1172 GX_NULL, /* event function override */
1173 {485, 232, 580, 256}, /* widget size */
1174 &water_level_window_btn_low_define, /* next widget definition */
1175 GX_NULL, /* no child widgets */
1176 offsetof(WATER_LEVEL_WINDOW_CONTROL_BLOCK, water_level_window_btn_medium), /* control block */
1177 (void *) &water_level_window_btn_medium_properties /* extended properties */
1178 };
1179
1180 GX_CONST GX_STUDIO_WIDGET water_level_window_btn_high_define =
1181 {
1182 "btn_high",
1183 GX_TYPE_TEXT_BUTTON, /* widget type */
1184 ID_BTN_HIGH, /* widget id */
1185 #if defined(GX_WIDGET_USER_DATA)
1186 0, /* user data */
1187 #endif
1188 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_BUTTON_RADIO|GX_STYLE_TEXT_CENTER, /* style flags */
1189 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
1190 sizeof(GX_TEXT_BUTTON), /* control block size */
1191 GX_COLOR_ID_BTN_LOWER, /* normal color id */
1192 GX_COLOR_ID_BTN_UPPER, /* selected color id */
1193 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1194 gx_studio_text_button_create, /* create function */
1195 GX_NULL, /* drawing function override */
1196 GX_NULL, /* event function override */
1197 {478, 177, 532, 201}, /* widget size */
1198 &water_level_window_btn_medium_define, /* next widget definition */
1199 GX_NULL, /* no child widgets */
1200 offsetof(WATER_LEVEL_WINDOW_CONTROL_BLOCK, water_level_window_btn_high), /* control block */
1201 (void *) &water_level_window_btn_high_properties /* extended properties */
1202 };
1203
1204 GX_CONST GX_STUDIO_WIDGET water_level_window_btn_max_define =
1205 {
1206 "btn_max",
1207 GX_TYPE_TEXT_BUTTON, /* widget type */
1208 ID_BTN_MAX, /* widget id */
1209 #if defined(GX_WIDGET_USER_DATA)
1210 0, /* user data */
1211 #endif
1212 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_BUTTON_RADIO|GX_STYLE_TEXT_CENTER, /* style flags */
1213 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
1214 sizeof(GX_TEXT_BUTTON), /* control block size */
1215 GX_COLOR_ID_BTN_LOWER, /* normal color id */
1216 GX_COLOR_ID_BTN_UPPER, /* selected color id */
1217 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1218 gx_studio_text_button_create, /* create function */
1219 GX_NULL, /* drawing function override */
1220 GX_NULL, /* event function override */
1221 {443, 121, 495, 145}, /* widget size */
1222 &water_level_window_btn_high_define, /* next widget definition */
1223 GX_NULL, /* no child widgets */
1224 offsetof(WATER_LEVEL_WINDOW_CONTROL_BLOCK, water_level_window_btn_max), /* control block */
1225 (void *) &water_level_window_btn_max_properties /* extended properties */
1226 };
1227
1228 GX_CONST GX_STUDIO_WIDGET water_level_window_water_level_slider_define =
1229 {
1230 "water_level_slider",
1231 GX_TYPE_RADIAL_SLIDER, /* widget type */
1232 ID_WATER_LEVEL_SLIDER, /* widget id */
1233 #if defined(GX_WIDGET_USER_DATA)
1234 0, /* user data */
1235 #endif
1236 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED, /* style flags */
1237 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
1238 sizeof(GX_RADIAL_SLIDER), /* control block size */
1239 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1240 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1241 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1242 gx_studio_radial_slider_create, /* create function */
1243 GX_NULL, /* drawing function override */
1244 GX_NULL, /* event function override */
1245 {160, 80, 477, 397}, /* widget size */
1246 &water_level_window_btn_max_define, /* next widget definition */
1247 &water_level_window_water_level_value_define, /* child widget definition */
1248 offsetof(WATER_LEVEL_WINDOW_CONTROL_BLOCK, water_level_window_water_level_slider), /* control block */
1249 (void *) &water_level_window_water_level_slider_properties /* extended properties */
1250 };
1251
1252 GX_CONST GX_STUDIO_WIDGET water_level_window_define =
1253 {
1254 "water_level_window",
1255 GX_TYPE_WINDOW, /* widget type */
1256 GX_ID_NONE, /* widget id */
1257 #if defined(GX_WIDGET_USER_DATA)
1258 0, /* user data */
1259 #endif
1260 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED, /* style flags */
1261 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
1262 sizeof(WATER_LEVEL_WINDOW_CONTROL_BLOCK), /* control block size */
1263 GX_COLOR_ID_WINDOW_FILL, /* normal color id */
1264 GX_COLOR_ID_WINDOW_FILL, /* selected color id */
1265 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1266 gx_studio_window_create, /* create function */
1267 GX_NULL, /* drawing function override */
1268 (UINT (*)(GX_WIDGET *, GX_EVENT *)) water_level_window_event_process, /* event function override */
1269 {160, 80, 628, 397}, /* widget size */
1270 GX_NULL, /* next widget */
1271 &water_level_window_water_level_slider_define, /* child widget */
1272 0, /* control block */
1273 (void *) &water_level_window_properties /* extended properties */
1274 };
1275 GX_WINDOW_PROPERTIES temperature_window_properties =
1276 {
1277 0 /* wallpaper pixelmap id */
1278 };
1279 GX_RADIAL_SLIDER_PROPERTIES temperature_window_temperature_slider_properties =
1280 {
1281 159, /* xcenter */
1282 159, /* ycenter */
1283 120, /* radius */
1284 40, /* track width */
1285 20, /* needle offset */
1286 30, /* current angle */
1287 -30, /* min angle */
1288 210, /* max angle */
1289 GX_PIXELMAP_ID_DISC_TEMPERATURE_TEXT, /* background pixelmap */
1290 GX_PIXELMAP_ID_METALIC_DIAL, /* needle pixelmap */
1291 10, /* animation total steps */
1292 2, /* animation delay */
1293 GX_ANIMATION_CIRC_EASE_IN_OUT, /* animation style */
1294 temperature_slider_animation_callback, /* animation update callback func */
1295 };
1296 GX_NUMERIC_PROMPT_PROPERTIES temperature_window_temperature_value_properties =
1297 {
1298 0, /* string id */
1299 GX_FONT_ID_LARG_NUMBER, /* font id */
1300 GX_COLOR_ID_WHITE, /* normal text color */
1301 GX_COLOR_ID_WHITE, /* selected text color */
1302 GX_COLOR_ID_WHITE, /* disabled text color */
1303 GX_NULL, /* format function */
1304 75 /* numeric prompt value */
1305 };
1306 GX_PROMPT_PROPERTIES temperature_window_temperature_flag_properties =
1307 {
1308 GX_STRING_ID_STRING_7, /* string id */
1309 GX_FONT_ID_NORMAL, /* font id */
1310 GX_COLOR_ID_WHITE, /* normal text color */
1311 GX_COLOR_ID_WHITE, /* selected text color */
1312 GX_COLOR_ID_WHITE /* disabled text color */
1313 };
1314
1315 GX_CONST GX_STUDIO_WIDGET temperature_window_temperature_flag_define =
1316 {
1317 "temperature_flag",
1318 GX_TYPE_PROMPT, /* widget type */
1319 GX_ID_NONE, /* widget id */
1320 #if defined(GX_WIDGET_USER_DATA)
1321 0, /* user data */
1322 #endif
1323 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_TEXT_CENTER, /* style flags */
1324 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
1325 sizeof(GX_PROMPT), /* control block size */
1326 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1327 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1328 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1329 gx_studio_prompt_create, /* create function */
1330 GX_NULL, /* drawing function override */
1331 GX_NULL, /* event function override */
1332 {373, 204, 387, 228}, /* widget size */
1333 GX_NULL, /* no next widget */
1334 GX_NULL, /* no child widgets */
1335 offsetof(TEMPERATURE_WINDOW_CONTROL_BLOCK, temperature_window_temperature_flag), /* control block */
1336 (void *) &temperature_window_temperature_flag_properties /* extended properties */
1337 };
1338
1339 GX_CONST GX_STUDIO_WIDGET temperature_window_temperature_value_define =
1340 {
1341 "temperature_value",
1342 GX_TYPE_NUMERIC_PROMPT, /* widget type */
1343 GX_ID_NONE, /* widget id */
1344 #if defined(GX_WIDGET_USER_DATA)
1345 0, /* user data */
1346 #endif
1347 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_TEXT_CENTER, /* style flags */
1348 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
1349 sizeof(GX_NUMERIC_PROMPT), /* control block size */
1350 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1351 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1352 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1353 gx_studio_numeric_prompt_create, /* create function */
1354 GX_NULL, /* drawing function override */
1355 GX_NULL, /* event function override */
1356 {259, 219, 372, 286}, /* widget size */
1357 &temperature_window_temperature_flag_define, /* next widget definition */
1358 GX_NULL, /* no child widgets */
1359 offsetof(TEMPERATURE_WINDOW_CONTROL_BLOCK, temperature_window_temperature_value), /* control block */
1360 (void *) &temperature_window_temperature_value_properties /* extended properties */
1361 };
1362
1363 GX_CONST GX_STUDIO_WIDGET temperature_window_temperature_slider_define =
1364 {
1365 "temperature_slider",
1366 GX_TYPE_RADIAL_SLIDER, /* widget type */
1367 ID_TEMPERATURE_SLIDER, /* widget id */
1368 #if defined(GX_WIDGET_USER_DATA)
1369 0, /* user data */
1370 #endif
1371 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED, /* style flags */
1372 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
1373 sizeof(GX_RADIAL_SLIDER), /* control block size */
1374 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1375 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1376 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1377 gx_studio_radial_slider_create, /* create function */
1378 GX_NULL, /* drawing function override */
1379 GX_NULL, /* event function override */
1380 {160, 80, 477, 397}, /* widget size */
1381 GX_NULL, /* no next widget */
1382 &temperature_window_temperature_value_define, /* child widget definition */
1383 offsetof(TEMPERATURE_WINDOW_CONTROL_BLOCK, temperature_window_temperature_slider), /* control block */
1384 (void *) &temperature_window_temperature_slider_properties /* extended properties */
1385 };
1386
1387 GX_CONST GX_STUDIO_WIDGET temperature_window_define =
1388 {
1389 "temperature_window",
1390 GX_TYPE_WINDOW, /* widget type */
1391 GX_ID_NONE, /* widget id */
1392 #if defined(GX_WIDGET_USER_DATA)
1393 0, /* user data */
1394 #endif
1395 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED, /* style flags */
1396 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
1397 sizeof(TEMPERATURE_WINDOW_CONTROL_BLOCK), /* control block size */
1398 GX_COLOR_ID_WHITE, /* normal color id */
1399 GX_COLOR_ID_WHITE, /* selected color id */
1400 GX_COLOR_ID_WHITE, /* disabled color id */
1401 gx_studio_window_create, /* create function */
1402 (VOID (*)(GX_WIDGET *)) temperature_window_draw, /* drawing function override */
1403 (UINT (*)(GX_WIDGET *, GX_EVENT *)) temperature_window_event_process, /* event function override */
1404 {160, 80, 477, 397}, /* widget size */
1405 GX_NULL, /* next widget */
1406 &temperature_window_temperature_slider_define, /* child widget */
1407 0, /* control block */
1408 (void *) &temperature_window_properties /* extended properties */
1409 };
1410 GX_WINDOW_PROPERTIES wash_cycle_window_properties =
1411 {
1412 0 /* wallpaper pixelmap id */
1413 };
1414 GX_RADIAL_SLIDER_PROPERTIES wash_cycle_window_wash_cycle_slider_properties =
1415 {
1416 159, /* xcenter */
1417 159, /* ycenter */
1418 139, /* radius */
1419 20, /* track width */
1420 0, /* needle offset */
1421 100, /* current angle */
1422 -17, /* min angle */
1423 196, /* max angle */
1424 GX_PIXELMAP_ID_DISC_CYCLE_WITH_PROGRESS_BG_TEXT, /* background pixelmap */
1425 0, /* needle pixelmap */
1426 1, /* animation total steps */
1427 0, /* animation delay */
1428 GX_ANIMATION_CIRC_EASE_IN_OUT, /* animation style */
1429 GX_NULL, /* animation update callback func */
1430 };
1431 GX_NUMERIC_PROMPT_PROPERTIES wash_cycle_window_minute_properties =
1432 {
1433 0, /* string id */
1434 GX_FONT_ID_BIG, /* font id */
1435 GX_COLOR_ID_WHITE, /* normal text color */
1436 GX_COLOR_ID_WHITE, /* selected text color */
1437 GX_COLOR_ID_WHITE, /* disabled text color */
1438 time_format, /* format function */
1439 35 /* numeric prompt value */
1440 };
1441 GX_NUMERIC_PROMPT_PROPERTIES wash_cycle_window_second_properties =
1442 {
1443 0, /* string id */
1444 GX_FONT_ID_BIG, /* font id */
1445 GX_COLOR_ID_WHITE, /* normal text color */
1446 GX_COLOR_ID_WHITE, /* selected text color */
1447 GX_COLOR_ID_WHITE, /* disabled text color */
1448 time_format, /* format function */
1449 35 /* numeric prompt value */
1450 };
1451 GX_ICON_PROPERTIES wash_cycle_window_icon_1_properties =
1452 {
1453 GX_PIXELMAP_ID_CYCLE_PROGRESS_DOT, /* normal pixelmap id */
1454 0 /* selected pixelmap id */
1455 };
1456 GX_ICON_PROPERTIES wash_cycle_window_icon_2_properties =
1457 {
1458 GX_PIXELMAP_ID_CYCLE_PROGRESS_DOT, /* normal pixelmap id */
1459 0 /* selected pixelmap id */
1460 };
1461
1462 GX_CONST GX_STUDIO_WIDGET wash_cycle_window_icon_2_define =
1463 {
1464 "icon_2",
1465 GX_TYPE_ICON, /* widget type */
1466 GX_ID_NONE, /* widget id */
1467 #if defined(GX_WIDGET_USER_DATA)
1468 0, /* user data */
1469 #endif
1470 GX_STYLE_BORDER_NONE|GX_STYLE_HALIGN_LEFT|GX_STYLE_VALIGN_TOP, /* style flags */
1471 0, /* status flags */
1472 sizeof(GX_ICON), /* control block size */
1473 GX_COLOR_ID_WHITE, /* normal color id */
1474 GX_COLOR_ID_WHITE, /* selected color id */
1475 GX_COLOR_ID_WHITE, /* disabled color id */
1476 gx_studio_icon_create, /* create function */
1477 GX_NULL, /* drawing function override */
1478 GX_NULL, /* event function override */
1479 {314, 248, 318, 252}, /* widget size */
1480 GX_NULL, /* no next widget */
1481 GX_NULL, /* no child widgets */
1482 offsetof(WASH_CYCLE_WINDOW_CONTROL_BLOCK, wash_cycle_window_icon_2), /* control block */
1483 (void *) &wash_cycle_window_icon_2_properties /* extended properties */
1484 };
1485
1486 GX_CONST GX_STUDIO_WIDGET wash_cycle_window_icon_1_define =
1487 {
1488 "icon_1",
1489 GX_TYPE_ICON, /* widget type */
1490 GX_ID_NONE, /* widget id */
1491 #if defined(GX_WIDGET_USER_DATA)
1492 0, /* user data */
1493 #endif
1494 GX_STYLE_BORDER_NONE|GX_STYLE_HALIGN_LEFT|GX_STYLE_VALIGN_TOP, /* style flags */
1495 0, /* status flags */
1496 sizeof(GX_ICON), /* control block size */
1497 GX_COLOR_ID_WHITE, /* normal color id */
1498 GX_COLOR_ID_WHITE, /* selected color id */
1499 GX_COLOR_ID_WHITE, /* disabled color id */
1500 gx_studio_icon_create, /* create function */
1501 GX_NULL, /* drawing function override */
1502 GX_NULL, /* event function override */
1503 {314, 227, 318, 231}, /* widget size */
1504 &wash_cycle_window_icon_2_define, /* next widget definition */
1505 GX_NULL, /* no child widgets */
1506 offsetof(WASH_CYCLE_WINDOW_CONTROL_BLOCK, wash_cycle_window_icon_1), /* control block */
1507 (void *) &wash_cycle_window_icon_1_properties /* extended properties */
1508 };
1509
1510 GX_CONST GX_STUDIO_WIDGET wash_cycle_window_second_define =
1511 {
1512 "second",
1513 GX_TYPE_NUMERIC_PROMPT, /* widget type */
1514 GX_ID_NONE, /* widget id */
1515 #if defined(GX_WIDGET_USER_DATA)
1516 0, /* user data */
1517 #endif
1518 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
1519 0, /* status flags */
1520 sizeof(GX_NUMERIC_PROMPT), /* control block size */
1521 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1522 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1523 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1524 gx_studio_numeric_prompt_create, /* create function */
1525 GX_NULL, /* drawing function override */
1526 GX_NULL, /* event function override */
1527 {324, 213, 399, 274}, /* widget size */
1528 &wash_cycle_window_icon_1_define, /* next widget definition */
1529 GX_NULL, /* no child widgets */
1530 offsetof(WASH_CYCLE_WINDOW_CONTROL_BLOCK, wash_cycle_window_second), /* control block */
1531 (void *) &wash_cycle_window_second_properties /* extended properties */
1532 };
1533
1534 GX_CONST GX_STUDIO_WIDGET wash_cycle_window_minute_define =
1535 {
1536 "minute",
1537 GX_TYPE_NUMERIC_PROMPT, /* widget type */
1538 GX_ID_NONE, /* widget id */
1539 #if defined(GX_WIDGET_USER_DATA)
1540 0, /* user data */
1541 #endif
1542 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
1543 0, /* status flags */
1544 sizeof(GX_NUMERIC_PROMPT), /* control block size */
1545 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1546 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1547 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1548 gx_studio_numeric_prompt_create, /* create function */
1549 GX_NULL, /* drawing function override */
1550 GX_NULL, /* event function override */
1551 {236, 212, 311, 273}, /* widget size */
1552 &wash_cycle_window_second_define, /* next widget definition */
1553 GX_NULL, /* no child widgets */
1554 offsetof(WASH_CYCLE_WINDOW_CONTROL_BLOCK, wash_cycle_window_minute), /* control block */
1555 (void *) &wash_cycle_window_minute_properties /* extended properties */
1556 };
1557
1558 GX_CONST GX_STUDIO_WIDGET wash_cycle_window_wash_cycle_slider_define =
1559 {
1560 "wash_cycle_slider",
1561 GX_TYPE_RADIAL_SLIDER, /* widget type */
1562 ID_WASH_CYCLE_SLIDER, /* widget id */
1563 #if defined(GX_WIDGET_USER_DATA)
1564 0, /* user data */
1565 #endif
1566 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED, /* style flags */
1567 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
1568 sizeof(GX_RADIAL_SLIDER), /* control block size */
1569 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1570 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1571 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1572 gx_studio_radial_slider_create, /* create function */
1573 (VOID (*)(GX_WIDGET *)) wash_cycle_slider_draw, /* drawing function override */
1574 GX_NULL, /* event function override */
1575 {160, 80, 477, 397}, /* widget size */
1576 GX_NULL, /* no next widget */
1577 &wash_cycle_window_minute_define, /* child widget definition */
1578 offsetof(WASH_CYCLE_WINDOW_CONTROL_BLOCK, wash_cycle_window_wash_cycle_slider), /* control block */
1579 (void *) &wash_cycle_window_wash_cycle_slider_properties /* extended properties */
1580 };
1581
1582 GX_CONST GX_STUDIO_WIDGET wash_cycle_window_define =
1583 {
1584 "wash_cycle_window",
1585 GX_TYPE_WINDOW, /* widget type */
1586 GX_ID_NONE, /* widget id */
1587 #if defined(GX_WIDGET_USER_DATA)
1588 0, /* user data */
1589 #endif
1590 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED, /* style flags */
1591 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
1592 sizeof(WASH_CYCLE_WINDOW_CONTROL_BLOCK), /* control block size */
1593 GX_COLOR_ID_TEXT, /* normal color id */
1594 GX_COLOR_ID_TEXT, /* selected color id */
1595 GX_COLOR_ID_TEXT, /* disabled color id */
1596 gx_studio_window_create, /* create function */
1597 (VOID (*)(GX_WIDGET *)) wash_cycle_window_draw, /* drawing function override */
1598 (UINT (*)(GX_WIDGET *, GX_EVENT *)) wash_cycle_window_event_process, /* event function override */
1599 {160, 80, 477, 397}, /* widget size */
1600 GX_NULL, /* next widget */
1601 &wash_cycle_window_wash_cycle_slider_define, /* child widget */
1602 0, /* control block */
1603 (void *) &wash_cycle_window_properties /* extended properties */
1604 };
1605 GX_WINDOW_PROPERTIES main_screen_properties =
1606 {
1607 GX_PIXELMAP_ID_BG /* wallpaper pixelmap id */
1608 };
1609 GX_ICON_PROPERTIES main_screen_logo_properties =
1610 {
1611 GX_PIXELMAP_ID_MICROSOFT_AZURE_LOGO, /* normal pixelmap id */
1612 0 /* selected pixelmap id */
1613 };
1614 GX_PROMPT_PROPERTIES main_screen_wash_cycle_mode_properties =
1615 {
1616 GX_STRING_ID_STRING_2, /* string id */
1617 GX_FONT_ID_PROMPT, /* font id */
1618 GX_COLOR_ID_WHITE, /* normal text color */
1619 GX_COLOR_ID_YELLOW, /* selected text color */
1620 GX_COLOR_ID_WHITE /* disabled text color */
1621 };
1622 GX_PROMPT_PROPERTIES main_screen_wash_cycle_lable_properties =
1623 {
1624 GX_STRING_ID_STRING_3, /* string id */
1625 GX_FONT_ID_SMALL, /* font id */
1626 GX_COLOR_ID_WHITE, /* normal text color */
1627 GX_COLOR_ID_YELLOW, /* selected text color */
1628 GX_COLOR_ID_WHITE /* disabled text color */
1629 };
1630 GX_PROMPT_PROPERTIES main_screen_prompt_2_properties =
1631 {
1632 GX_STRING_ID_STRING_7, /* string id */
1633 GX_FONT_ID_SMALL, /* font id */
1634 GX_COLOR_ID_WHITE, /* normal text color */
1635 GX_COLOR_ID_YELLOW, /* selected text color */
1636 GX_COLOR_ID_WHITE /* disabled text color */
1637 };
1638 GX_PROMPT_PROPERTIES main_screen_temperature_lable_properties =
1639 {
1640 GX_STRING_ID_STRING_8, /* string id */
1641 GX_FONT_ID_SMALL, /* font id */
1642 GX_COLOR_ID_WHITE, /* normal text color */
1643 GX_COLOR_ID_YELLOW, /* selected text color */
1644 GX_COLOR_ID_WHITE /* disabled text color */
1645 };
1646 GX_NUMERIC_PROMPT_PROPERTIES main_screen_temperature_value_properties =
1647 {
1648 0, /* string id */
1649 GX_FONT_ID_PROMPT, /* font id */
1650 GX_COLOR_ID_WHITE, /* normal text color */
1651 GX_COLOR_ID_YELLOW, /* selected text color */
1652 GX_COLOR_ID_WHITE, /* disabled text color */
1653 GX_NULL, /* format function */
1654 75 /* numeric prompt value */
1655 };
1656 GX_PROMPT_PROPERTIES main_screen_prompt_4_properties =
1657 {
1658 GX_STRING_ID_STRING_6, /* string id */
1659 GX_FONT_ID_PROMPT, /* font id */
1660 GX_COLOR_ID_WHITE, /* normal text color */
1661 GX_COLOR_ID_YELLOW, /* selected text color */
1662 GX_COLOR_ID_WHITE /* disabled text color */
1663 };
1664 GX_PROMPT_PROPERTIES main_screen_water_level_label_properties =
1665 {
1666 GX_STRING_ID_STRING_9, /* string id */
1667 GX_FONT_ID_SMALL, /* font id */
1668 GX_COLOR_ID_WHITE, /* normal text color */
1669 GX_COLOR_ID_YELLOW, /* selected text color */
1670 GX_COLOR_ID_WHITE /* disabled text color */
1671 };
1672 GX_NUMERIC_PROMPT_PROPERTIES main_screen_water_level_value_properties =
1673 {
1674 0, /* string id */
1675 GX_FONT_ID_PROMPT, /* font id */
1676 GX_COLOR_ID_WHITE, /* normal text color */
1677 GX_COLOR_ID_YELLOW, /* selected text color */
1678 GX_COLOR_ID_WHITE, /* disabled text color */
1679 GX_NULL, /* format function */
1680 35 /* numeric prompt value */
1681 };
1682 GX_PIXELMAP_BUTTON_PROPERTIES main_screen_btn_play_properties =
1683 {
1684 GX_PIXELMAP_ID_PLAY, /* normal pixelmap id */
1685 GX_PIXELMAP_ID_PAUSE, /* selected pixelmap id */
1686 0 /* disabled pixelmap id */
1687 };
1688 GX_PROGRESS_BAR_INFO main_screen_wash_cycle_progress_bar_properties =
1689 {
1690 0, /* mimimun value */
1691 100, /* maximum value */
1692 17, /* current value */
1693 GX_FONT_ID_SYSTEM, /* font_id */
1694 GX_COLOR_ID_TEXT, /* normal text color */
1695 GX_COLOR_ID_SELECTED_TEXT, /* selected text color */
1696 GX_COLOR_ID_DISABLED_TEXT, /* disabled text color */
1697 0 /* fill pixelmap */
1698 };
1699 GX_PROMPT_PROPERTIES main_screen_label_1_soak_properties =
1700 {
1701 GX_STRING_ID_STRING_11, /* string id */
1702 GX_FONT_ID_SMALL, /* font id */
1703 GX_COLOR_ID_WHITE, /* normal text color */
1704 GX_COLOR_ID_WHITE, /* selected text color */
1705 GX_COLOR_ID_WHITE /* disabled text color */
1706 };
1707 GX_PROMPT_PROPERTIES main_screen_label_2_spin_properties =
1708 {
1709 GX_STRING_ID_STRING_13, /* string id */
1710 GX_FONT_ID_SMALL, /* font id */
1711 GX_COLOR_ID_WHITE, /* normal text color */
1712 GX_COLOR_ID_WHITE, /* selected text color */
1713 GX_COLOR_ID_WHITE /* disabled text color */
1714 };
1715 GX_PROMPT_PROPERTIES main_screen_label_3_wash_properties =
1716 {
1717 GX_STRING_ID_STRING_14, /* string id */
1718 GX_FONT_ID_SMALL, /* font id */
1719 GX_COLOR_ID_WHITE, /* normal text color */
1720 GX_COLOR_ID_WHITE, /* selected text color */
1721 GX_COLOR_ID_WHITE /* disabled text color */
1722 };
1723 GX_PROMPT_PROPERTIES main_screen_label_4_spin_properties =
1724 {
1725 GX_STRING_ID_STRING_13, /* string id */
1726 GX_FONT_ID_SMALL, /* font id */
1727 GX_COLOR_ID_WHITE, /* normal text color */
1728 GX_COLOR_ID_WHITE, /* selected text color */
1729 GX_COLOR_ID_WHITE /* disabled text color */
1730 };
1731 GX_PROMPT_PROPERTIES main_screen_label_5_rinse_properties =
1732 {
1733 GX_STRING_ID_STRING_15, /* string id */
1734 GX_FONT_ID_SMALL, /* font id */
1735 GX_COLOR_ID_WHITE, /* normal text color */
1736 GX_COLOR_ID_WHITE, /* selected text color */
1737 GX_COLOR_ID_WHITE /* disabled text color */
1738 };
1739 GX_PROMPT_PROPERTIES main_screen_label_6_spin_properties =
1740 {
1741 GX_STRING_ID_STRING_13, /* string id */
1742 GX_FONT_ID_SMALL, /* font id */
1743 GX_COLOR_ID_WHITE, /* normal text color */
1744 GX_COLOR_ID_WHITE, /* selected text color */
1745 GX_COLOR_ID_WHITE /* disabled text color */
1746 };
1747
1748 GX_CONST GX_STUDIO_WIDGET main_screen_wash_cycle_lable_define =
1749 {
1750 "wash_cycle_lable",
1751 GX_TYPE_PROMPT, /* widget type */
1752 GX_ID_NONE, /* widget id */
1753 #if defined(GX_WIDGET_USER_DATA)
1754 0, /* user data */
1755 #endif
1756 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_TEXT_CENTER, /* style flags */
1757 0, /* status flags */
1758 sizeof(GX_PROMPT), /* control block size */
1759 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1760 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1761 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1762 gx_studio_prompt_create, /* create function */
1763 (VOID (*)(GX_WIDGET *)) btn_text_draw, /* drawing function override */
1764 GX_NULL, /* event function override */
1765 {376, 65, 444, 77}, /* widget size */
1766 GX_NULL, /* no next widget */
1767 GX_NULL, /* no child widgets */
1768 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_wash_cycle_lable), /* control block */
1769 (void *) &main_screen_wash_cycle_lable_properties /* extended properties */
1770 };
1771
1772 GX_CONST GX_STUDIO_WIDGET main_screen_wash_cycle_mode_define =
1773 {
1774 "wash_cycle_mode",
1775 GX_TYPE_PROMPT, /* widget type */
1776 GX_ID_NONE, /* widget id */
1777 #if defined(GX_WIDGET_USER_DATA)
1778 0, /* user data */
1779 #endif
1780 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_TEXT_CENTER, /* style flags */
1781 0, /* status flags */
1782 sizeof(GX_PROMPT), /* control block size */
1783 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1784 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1785 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1786 gx_studio_prompt_create, /* create function */
1787 (VOID (*)(GX_WIDGET *)) btn_text_draw, /* drawing function override */
1788 GX_NULL, /* event function override */
1789 {397, 41, 439, 58}, /* widget size */
1790 &main_screen_wash_cycle_lable_define, /* next widget definition */
1791 GX_NULL, /* no child widgets */
1792 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_wash_cycle_mode), /* control block */
1793 (void *) &main_screen_wash_cycle_mode_properties /* extended properties */
1794 };
1795
1796 GX_CONST GX_STUDIO_WIDGET main_screen_temperature_value_define =
1797 {
1798 "temperature_value",
1799 GX_TYPE_NUMERIC_PROMPT, /* widget type */
1800 GX_ID_NONE, /* widget id */
1801 #if defined(GX_WIDGET_USER_DATA)
1802 0, /* user data */
1803 #endif
1804 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_TEXT_CENTER, /* style flags */
1805 0, /* status flags */
1806 sizeof(GX_NUMERIC_PROMPT), /* control block size */
1807 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1808 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1809 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1810 gx_studio_numeric_prompt_create, /* create function */
1811 (VOID (*)(GX_WIDGET *)) btn_numeric_text_draw, /* drawing function override */
1812 GX_NULL, /* event function override */
1813 {489, 41, 510, 62}, /* widget size */
1814 GX_NULL, /* no next widget */
1815 GX_NULL, /* no child widgets */
1816 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_temperature_value), /* control block */
1817 (void *) &main_screen_temperature_value_properties /* extended properties */
1818 };
1819
1820 GX_CONST GX_STUDIO_WIDGET main_screen_temperature_lable_define =
1821 {
1822 "temperature_lable",
1823 GX_TYPE_PROMPT, /* widget type */
1824 GX_ID_NONE, /* widget id */
1825 #if defined(GX_WIDGET_USER_DATA)
1826 0, /* user data */
1827 #endif
1828 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_TEXT_CENTER, /* style flags */
1829 0, /* status flags */
1830 sizeof(GX_PROMPT), /* control block size */
1831 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1832 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1833 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1834 gx_studio_prompt_create, /* create function */
1835 (VOID (*)(GX_WIDGET *)) btn_text_draw, /* drawing function override */
1836 GX_NULL, /* event function override */
1837 {453, 65, 530, 77}, /* widget size */
1838 &main_screen_temperature_value_define, /* next widget definition */
1839 GX_NULL, /* no child widgets */
1840 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_temperature_lable), /* control block */
1841 (void *) &main_screen_temperature_lable_properties /* extended properties */
1842 };
1843
1844 GX_CONST GX_STUDIO_WIDGET main_screen_prompt_2_define =
1845 {
1846 "prompt_2",
1847 GX_TYPE_PROMPT, /* widget type */
1848 GX_ID_NONE, /* widget id */
1849 #if defined(GX_WIDGET_USER_DATA)
1850 0, /* user data */
1851 #endif
1852 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_TEXT_CENTER, /* style flags */
1853 0, /* status flags */
1854 sizeof(GX_PROMPT), /* control block size */
1855 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1856 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1857 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1858 gx_studio_prompt_create, /* create function */
1859 (VOID (*)(GX_WIDGET *)) btn_text_draw, /* drawing function override */
1860 GX_NULL, /* event function override */
1861 {509, 40, 515, 52}, /* widget size */
1862 &main_screen_temperature_lable_define, /* next widget definition */
1863 GX_NULL, /* no child widgets */
1864 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_prompt_2), /* control block */
1865 (void *) &main_screen_prompt_2_properties /* extended properties */
1866 };
1867
1868 GX_CONST GX_STUDIO_WIDGET main_screen_water_level_value_define =
1869 {
1870 "water_level_value",
1871 GX_TYPE_NUMERIC_PROMPT, /* widget type */
1872 GX_ID_NONE, /* widget id */
1873 #if defined(GX_WIDGET_USER_DATA)
1874 0, /* user data */
1875 #endif
1876 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_TEXT_CENTER, /* style flags */
1877 0, /* status flags */
1878 sizeof(GX_NUMERIC_PROMPT), /* control block size */
1879 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1880 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1881 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1882 gx_studio_numeric_prompt_create, /* create function */
1883 (VOID (*)(GX_WIDGET *)) btn_numeric_text_draw, /* drawing function override */
1884 GX_NULL, /* event function override */
1885 {566, 41, 587, 62}, /* widget size */
1886 GX_NULL, /* no next widget */
1887 GX_NULL, /* no child widgets */
1888 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_water_level_value), /* control block */
1889 (void *) &main_screen_water_level_value_properties /* extended properties */
1890 };
1891
1892 GX_CONST GX_STUDIO_WIDGET main_screen_water_level_label_define =
1893 {
1894 "water_level_label",
1895 GX_TYPE_PROMPT, /* widget type */
1896 GX_ID_NONE, /* widget id */
1897 #if defined(GX_WIDGET_USER_DATA)
1898 0, /* user data */
1899 #endif
1900 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_TEXT_CENTER, /* style flags */
1901 0, /* status flags */
1902 sizeof(GX_PROMPT), /* control block size */
1903 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1904 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1905 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1906 gx_studio_prompt_create, /* create function */
1907 (VOID (*)(GX_WIDGET *)) btn_text_draw, /* drawing function override */
1908 GX_NULL, /* event function override */
1909 {537, 64, 607, 76}, /* widget size */
1910 &main_screen_water_level_value_define, /* next widget definition */
1911 GX_NULL, /* no child widgets */
1912 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_water_level_label), /* control block */
1913 (void *) &main_screen_water_level_label_properties /* extended properties */
1914 };
1915
1916 GX_CONST GX_STUDIO_WIDGET main_screen_prompt_4_define =
1917 {
1918 "prompt_4",
1919 GX_TYPE_PROMPT, /* widget type */
1920 GX_ID_NONE, /* widget id */
1921 #if defined(GX_WIDGET_USER_DATA)
1922 0, /* user data */
1923 #endif
1924 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_TEXT_CENTER, /* style flags */
1925 0, /* status flags */
1926 sizeof(GX_PROMPT), /* control block size */
1927 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1928 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1929 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1930 gx_studio_prompt_create, /* create function */
1931 (VOID (*)(GX_WIDGET *)) btn_text_draw, /* drawing function override */
1932 GX_NULL, /* event function override */
1933 {587, 42, 601, 59}, /* widget size */
1934 &main_screen_water_level_label_define, /* next widget definition */
1935 GX_NULL, /* no child widgets */
1936 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_prompt_4), /* control block */
1937 (void *) &main_screen_prompt_4_properties /* extended properties */
1938 };
1939
1940 GX_CONST GX_STUDIO_WIDGET main_screen_label_6_spin_define =
1941 {
1942 "label_6_spin",
1943 GX_TYPE_PROMPT, /* widget type */
1944 GX_ID_NONE, /* widget id */
1945 #if defined(GX_WIDGET_USER_DATA)
1946 0, /* user data */
1947 #endif
1948 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
1949 0, /* status flags */
1950 sizeof(GX_PROMPT), /* control block size */
1951 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1952 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1953 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1954 gx_studio_prompt_create, /* create function */
1955 GX_NULL, /* drawing function override */
1956 GX_NULL, /* event function override */
1957 {574, 428, 600, 440}, /* widget size */
1958 GX_NULL, /* no next widget */
1959 GX_NULL, /* no child widgets */
1960 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_label_6_spin), /* control block */
1961 (void *) &main_screen_label_6_spin_properties /* extended properties */
1962 };
1963
1964 GX_CONST GX_STUDIO_WIDGET main_screen_label_5_rinse_define =
1965 {
1966 "label_5_rinse",
1967 GX_TYPE_PROMPT, /* widget type */
1968 GX_ID_NONE, /* widget id */
1969 #if defined(GX_WIDGET_USER_DATA)
1970 0, /* user data */
1971 #endif
1972 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
1973 0, /* status flags */
1974 sizeof(GX_PROMPT), /* control block size */
1975 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
1976 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
1977 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
1978 gx_studio_prompt_create, /* create function */
1979 GX_NULL, /* drawing function override */
1980 GX_NULL, /* event function override */
1981 {532, 428, 563, 440}, /* widget size */
1982 &main_screen_label_6_spin_define, /* next widget definition */
1983 GX_NULL, /* no child widgets */
1984 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_label_5_rinse), /* control block */
1985 (void *) &main_screen_label_5_rinse_properties /* extended properties */
1986 };
1987
1988 GX_CONST GX_STUDIO_WIDGET main_screen_label_4_spin_define =
1989 {
1990 "label_4_spin",
1991 GX_TYPE_PROMPT, /* widget type */
1992 GX_ID_NONE, /* widget id */
1993 #if defined(GX_WIDGET_USER_DATA)
1994 0, /* user data */
1995 #endif
1996 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
1997 0, /* status flags */
1998 sizeof(GX_PROMPT), /* control block size */
1999 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
2000 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
2001 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
2002 gx_studio_prompt_create, /* create function */
2003 GX_NULL, /* drawing function override */
2004 GX_NULL, /* event function override */
2005 {494, 428, 520, 440}, /* widget size */
2006 &main_screen_label_5_rinse_define, /* next widget definition */
2007 GX_NULL, /* no child widgets */
2008 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_label_4_spin), /* control block */
2009 (void *) &main_screen_label_4_spin_properties /* extended properties */
2010 };
2011
2012 GX_CONST GX_STUDIO_WIDGET main_screen_label_3_wash_define =
2013 {
2014 "label_3_wash",
2015 GX_TYPE_PROMPT, /* widget type */
2016 GX_ID_NONE, /* widget id */
2017 #if defined(GX_WIDGET_USER_DATA)
2018 0, /* user data */
2019 #endif
2020 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
2021 0, /* status flags */
2022 sizeof(GX_PROMPT), /* control block size */
2023 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
2024 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
2025 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
2026 gx_studio_prompt_create, /* create function */
2027 GX_NULL, /* drawing function override */
2028 GX_NULL, /* event function override */
2029 {451, 428, 483, 440}, /* widget size */
2030 &main_screen_label_4_spin_define, /* next widget definition */
2031 GX_NULL, /* no child widgets */
2032 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_label_3_wash), /* control block */
2033 (void *) &main_screen_label_3_wash_properties /* extended properties */
2034 };
2035
2036 GX_CONST GX_STUDIO_WIDGET main_screen_label_2_spin_define =
2037 {
2038 "label_2_spin",
2039 GX_TYPE_PROMPT, /* widget type */
2040 GX_ID_NONE, /* widget id */
2041 #if defined(GX_WIDGET_USER_DATA)
2042 0, /* user data */
2043 #endif
2044 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
2045 0, /* status flags */
2046 sizeof(GX_PROMPT), /* control block size */
2047 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
2048 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
2049 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
2050 gx_studio_prompt_create, /* create function */
2051 GX_NULL, /* drawing function override */
2052 GX_NULL, /* event function override */
2053 {414, 428, 440, 440}, /* widget size */
2054 &main_screen_label_3_wash_define, /* next widget definition */
2055 GX_NULL, /* no child widgets */
2056 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_label_2_spin), /* control block */
2057 (void *) &main_screen_label_2_spin_properties /* extended properties */
2058 };
2059
2060 GX_CONST GX_STUDIO_WIDGET main_screen_label_1_soak_define =
2061 {
2062 "label_1_soak",
2063 GX_TYPE_PROMPT, /* widget type */
2064 GX_ID_NONE, /* widget id */
2065 #if defined(GX_WIDGET_USER_DATA)
2066 0, /* user data */
2067 #endif
2068 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_TEXT_CENTER, /* style flags */
2069 0, /* status flags */
2070 sizeof(GX_PROMPT), /* control block size */
2071 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
2072 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
2073 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
2074 gx_studio_prompt_create, /* create function */
2075 GX_NULL, /* drawing function override */
2076 GX_NULL, /* event function override */
2077 {374, 428, 402, 440}, /* widget size */
2078 &main_screen_label_2_spin_define, /* next widget definition */
2079 GX_NULL, /* no child widgets */
2080 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_label_1_soak), /* control block */
2081 (void *) &main_screen_label_1_soak_properties /* extended properties */
2082 };
2083
2084 GX_CONST GX_STUDIO_WIDGET main_screen_wash_cycle_progress_bar_define =
2085 {
2086 "wash_cycle_progress_bar",
2087 GX_TYPE_PROGRESS_BAR, /* widget type */
2088 GX_ID_NONE, /* widget id */
2089 #if defined(GX_WIDGET_USER_DATA)
2090 0, /* user data */
2091 #endif
2092 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_PROGRESS_PERCENT, /* style flags */
2093 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
2094 sizeof(GX_PROGRESS_BAR), /* control block size */
2095 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
2096 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
2097 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
2098 gx_studio_progress_bar_create, /* create function */
2099 (VOID (*)(GX_WIDGET *)) wash_cycle_progress_bar_draw, /* drawing function override */
2100 GX_NULL, /* event function override */
2101 {372, 416, 597, 420}, /* widget size */
2102 &main_screen_label_1_soak_define, /* next widget definition */
2103 GX_NULL, /* no child widgets */
2104 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_wash_cycle_progress_bar), /* control block */
2105 (void *) &main_screen_wash_cycle_progress_bar_properties /* extended properties */
2106 };
2107
2108 GX_CONST GX_STUDIO_WIDGET main_screen_btn_play_define =
2109 {
2110 "btn_play",
2111 GX_TYPE_PIXELMAP_BUTTON, /* widget type */
2112 ID_BTN_PLAY, /* widget id */
2113 #if defined(GX_WIDGET_USER_DATA)
2114 0, /* user data */
2115 #endif
2116 GX_STYLE_BORDER_NONE|GX_STYLE_ENABLED|GX_STYLE_BUTTON_TOGGLE, /* style flags */
2117 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
2118 sizeof(GX_PIXELMAP_BUTTON), /* control block size */
2119 GX_COLOR_ID_BTN_LOWER, /* normal color id */
2120 GX_COLOR_ID_BTN_UPPER, /* selected color id */
2121 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
2122 gx_studio_pixelmap_button_create, /* create function */
2123 GX_NULL, /* drawing function override */
2124 GX_NULL, /* event function override */
2125 {55, 324, 125, 396}, /* widget size */
2126 &main_screen_wash_cycle_progress_bar_define, /* next widget definition */
2127 GX_NULL, /* no child widgets */
2128 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_btn_play), /* control block */
2129 (void *) &main_screen_btn_play_properties /* extended properties */
2130 };
2131
2132 GX_CONST GX_STUDIO_WIDGET main_screen_btn_water_level_define =
2133 {
2134 "btn_water_level",
2135 GX_TYPE_BUTTON, /* widget type */
2136 ID_BTN_WATER_LEVEL, /* widget id */
2137 #if defined(GX_WIDGET_USER_DATA)
2138 0, /* user data */
2139 #endif
2140 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_BUTTON_RADIO, /* style flags */
2141 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
2142 sizeof(GX_BUTTON), /* control block size */
2143 GX_COLOR_ID_BTN_LOWER, /* normal color id */
2144 GX_COLOR_ID_BTN_UPPER, /* selected color id */
2145 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
2146 gx_studio_button_create, /* create function */
2147 GX_NULL, /* drawing function override */
2148 GX_NULL, /* event function override */
2149 {533, 33, 612, 81}, /* widget size */
2150 &main_screen_btn_play_define, /* next widget definition */
2151 &main_screen_prompt_4_define, /* child widget definition */
2152 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_btn_water_level), /* control block */
2153 (void *) GX_NULL /* no extended properties */
2154 };
2155
2156 GX_CONST GX_STUDIO_WIDGET main_screen_btn_temperature_define =
2157 {
2158 "btn_temperature",
2159 GX_TYPE_BUTTON, /* widget type */
2160 ID_BTN_TEMPERATURE, /* widget id */
2161 #if defined(GX_WIDGET_USER_DATA)
2162 0, /* user data */
2163 #endif
2164 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_BUTTON_RADIO, /* style flags */
2165 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
2166 sizeof(GX_BUTTON), /* control block size */
2167 GX_COLOR_ID_BTN_LOWER, /* normal color id */
2168 GX_COLOR_ID_BTN_UPPER, /* selected color id */
2169 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
2170 gx_studio_button_create, /* create function */
2171 GX_NULL, /* drawing function override */
2172 GX_NULL, /* event function override */
2173 {452, 33, 531, 81}, /* widget size */
2174 &main_screen_btn_water_level_define, /* next widget definition */
2175 &main_screen_prompt_2_define, /* child widget definition */
2176 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_btn_temperature), /* control block */
2177 (void *) GX_NULL /* no extended properties */
2178 };
2179
2180 GX_CONST GX_STUDIO_WIDGET main_screen_btn_wash_cycle_define =
2181 {
2182 "btn_wash_cycle",
2183 GX_TYPE_BUTTON, /* widget type */
2184 ID_BTN_WASH_CYCLE, /* widget id */
2185 #if defined(GX_WIDGET_USER_DATA)
2186 0, /* user data */
2187 #endif
2188 GX_STYLE_BORDER_NONE|GX_STYLE_TRANSPARENT|GX_STYLE_ENABLED|GX_STYLE_BUTTON_PUSHED|GX_STYLE_BUTTON_RADIO, /* style flags */
2189 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
2190 sizeof(GX_BUTTON), /* control block size */
2191 GX_COLOR_ID_BTN_LOWER, /* normal color id */
2192 GX_COLOR_ID_BTN_UPPER, /* selected color id */
2193 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
2194 gx_studio_button_create, /* create function */
2195 GX_NULL, /* drawing function override */
2196 GX_NULL, /* event function override */
2197 {371, 33, 450, 81}, /* widget size */
2198 &main_screen_btn_temperature_define, /* next widget definition */
2199 &main_screen_wash_cycle_mode_define, /* child widget definition */
2200 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_btn_wash_cycle), /* control block */
2201 (void *) GX_NULL /* no extended properties */
2202 };
2203
2204 GX_CONST GX_STUDIO_WIDGET main_screen_logo_define =
2205 {
2206 "logo",
2207 GX_TYPE_ICON, /* widget type */
2208 GX_ID_NONE, /* widget id */
2209 #if defined(GX_WIDGET_USER_DATA)
2210 0, /* user data */
2211 #endif
2212 GX_STYLE_BORDER_NONE|GX_STYLE_HALIGN_LEFT|GX_STYLE_VALIGN_TOP, /* style flags */
2213 0, /* status flags */
2214 sizeof(GX_ICON), /* control block size */
2215 GX_COLOR_ID_WIDGET_FILL, /* normal color id */
2216 GX_COLOR_ID_SELECTED_FILL, /* selected color id */
2217 GX_COLOR_ID_DISABLED_FILL, /* disabled color id */
2218 gx_studio_icon_create, /* create function */
2219 GX_NULL, /* drawing function override */
2220 GX_NULL, /* event function override */
2221 {43, 35, 145, 74}, /* widget size */
2222 &main_screen_btn_wash_cycle_define, /* next widget definition */
2223 GX_NULL, /* no child widgets */
2224 offsetof(MAIN_SCREEN_CONTROL_BLOCK, main_screen_logo), /* control block */
2225 (void *) &main_screen_logo_properties /* extended properties */
2226 };
2227
2228 GX_CONST GX_STUDIO_WIDGET main_screen_define =
2229 {
2230 "main_screen",
2231 GX_TYPE_WINDOW, /* widget type */
2232 GX_ID_NONE, /* widget id */
2233 #if defined(GX_WIDGET_USER_DATA)
2234 0, /* user data */
2235 #endif
2236 GX_STYLE_BORDER_NONE|GX_STYLE_ENABLED, /* style flags */
2237 GX_STATUS_ACCEPTS_FOCUS, /* status flags */
2238 sizeof(MAIN_SCREEN_CONTROL_BLOCK), /* control block size */
2239 GX_COLOR_ID_CANVAS, /* normal color id */
2240 GX_COLOR_ID_CANVAS, /* selected color id */
2241 GX_COLOR_ID_CANVAS, /* disabled color id */
2242 gx_studio_window_create, /* create function */
2243 GX_NULL, /* drawing function override */
2244 (UINT (*)(GX_WIDGET *, GX_EVENT *)) main_screen_event_process, /* event function override */
2245 {0, 0, 639, 479}, /* widget size */
2246 GX_NULL, /* next widget */
2247 &main_screen_logo_define, /* child widget */
2248 0, /* control block */
2249 (void *) &main_screen_properties /* extended properties */
2250 };
2251 GX_CONST GX_STUDIO_WIDGET_ENTRY demo_guix_washing_machine_widget_table[] =
2252 {
2253 { &mode_select_window_define, (GX_WIDGET *) &mode_select_window },
2254 { &water_level_window_define, (GX_WIDGET *) &water_level_window },
2255 { &temperature_window_define, (GX_WIDGET *) &temperature_window },
2256 { &wash_cycle_window_define, (GX_WIDGET *) &wash_cycle_window },
2257 { &main_screen_define, (GX_WIDGET *) &main_screen },
2258 {GX_NULL, GX_NULL}
2259 };
2260
gx_studio_nested_widget_create(GX_BYTE * control,GX_CONST GX_STUDIO_WIDGET * definition,GX_WIDGET * parent)2261 static GX_WIDGET *gx_studio_nested_widget_create(GX_BYTE *control, GX_CONST GX_STUDIO_WIDGET *definition, GX_WIDGET *parent)
2262 {
2263 UINT status = GX_SUCCESS;
2264 GX_WIDGET *widget = GX_NULL;
2265 GX_VALUE list_count = 0;
2266 GX_VALUE list_total_count = 0;
2267
2268 if(parent && (parent->gx_widget_type == GX_TYPE_MENU))
2269 {
2270 list_total_count = ((GX_MENU *)parent)->gx_menu_list_total_count;
2271 }
2272
2273 while(definition && status == GX_SUCCESS)
2274 {
2275 if (definition->create_function)
2276 {
2277 if (definition->style & GX_STYLE_DYNAMICALLY_ALLOCATED)
2278 {
2279 status = gx_widget_allocate(&widget, definition->control_block_size);
2280 if (status != GX_SUCCESS)
2281 {
2282 return GX_NULL;
2283 }
2284 }
2285 else
2286 {
2287 if (control == GX_NULL)
2288 {
2289 return GX_NULL;
2290 }
2291 widget = (GX_WIDGET *) (control + definition->control_block_offset);
2292 }
2293
2294 status = definition->create_function(definition, widget, parent);
2295
2296 if(list_count < list_total_count)
2297 {
2298 gx_menu_insert((GX_MENU *)parent, widget);
2299 ((GX_MENU *)parent)->gx_menu_list_total_count--;
2300 list_count++;
2301 }
2302
2303 if (status == GX_SUCCESS)
2304 {
2305 if (definition->widget_type != GX_TYPE_TEMPLATE)
2306 {
2307 #if defined(GUIX_5_4_0_COMPATIBILITY)
2308 gx_widget_fill_color_set(widget, definition->normal_fill_color_id, definition->selected_fill_color_id);
2309 #else
2310 gx_widget_fill_color_set(widget, definition->normal_fill_color_id, definition->selected_fill_color_id, definition->disabled_fill_color_id);
2311 #endif
2312 }
2313
2314 if (!(definition->status & GX_STATUS_ACCEPTS_FOCUS))
2315 {
2316 gx_widget_status_remove(widget, GX_STATUS_ACCEPTS_FOCUS);
2317 }
2318
2319 if (definition->draw_function)
2320 {
2321 gx_widget_draw_set(widget, definition->draw_function);
2322 }
2323 if (definition->event_function)
2324 {
2325 gx_widget_event_process_set(widget, definition->event_function);
2326 }
2327
2328 #if defined(GX_WIDGET_USER_DATA)
2329 widget->gx_widget_user_data = definition->user_data;
2330 #endif
2331
2332 if (definition->child_widget)
2333 {
2334 gx_studio_nested_widget_create(control, definition->child_widget, widget);
2335 }
2336 }
2337 definition = definition->next_widget;
2338 }
2339 }
2340 return widget;
2341 }
2342
gx_studio_widget_create(GX_BYTE * control,GX_CONST GX_STUDIO_WIDGET * definition,GX_WIDGET * parent)2343 GX_WIDGET *gx_studio_widget_create(GX_BYTE *control, GX_CONST GX_STUDIO_WIDGET *definition, GX_WIDGET *parent)
2344 {
2345 GX_WIDGET *widget;
2346 widget = gx_studio_nested_widget_create(control, definition, GX_NULL);
2347
2348 if (parent && widget)
2349 {
2350 gx_widget_attach(parent, widget);
2351 }
2352 return widget;
2353 }
2354
gx_studio_named_widget_create(char * name,GX_WIDGET * parent,GX_WIDGET ** new_widget)2355 UINT gx_studio_named_widget_create(char *name, GX_WIDGET *parent, GX_WIDGET **new_widget)
2356 {
2357 UINT status = GX_FAILURE;
2358 GX_CONST GX_STUDIO_WIDGET_ENTRY *entry = demo_guix_washing_machine_widget_table;
2359 GX_WIDGET *widget = GX_NULL;
2360
2361 while(entry->widget_information)
2362 {
2363 if (!strcmp(name, entry->widget_information->widget_name))
2364 {
2365 widget = gx_studio_widget_create((GX_BYTE *) entry->widget, entry->widget_information, parent);
2366 if (widget)
2367 {
2368 status = GX_SUCCESS;
2369 }
2370 break;
2371 }
2372 entry++;
2373 }
2374
2375 if (new_widget)
2376 {
2377 *new_widget = widget;
2378 }
2379 return status;
2380 }
2381
2382
gx_studio_display_configure(USHORT display,UINT (* driver)(GX_DISPLAY *),GX_UBYTE language,USHORT theme,GX_WINDOW_ROOT ** return_root)2383 UINT gx_studio_display_configure(USHORT display, UINT (*driver)(GX_DISPLAY *),
2384 GX_UBYTE language, USHORT theme, GX_WINDOW_ROOT **return_root)
2385 {
2386 GX_CONST GX_THEME *theme_ptr;
2387 GX_RECTANGLE size;
2388
2389 GX_STUDIO_DISPLAY_INFO *display_info = &demo_guix_washing_machine_display_table[display];
2390
2391
2392 /* create the requested display */
2393
2394 gx_display_create(display_info->display,
2395 display_info->name,
2396 driver,
2397 (GX_VALUE) display_info->x_resolution,
2398 (GX_VALUE) display_info->y_resolution);
2399
2400
2401 /* install the request theme */
2402
2403 if(display_info->theme_table)
2404 {
2405 theme_ptr = display_info->theme_table[theme];
2406 if(theme_ptr)
2407 {
2408 gx_display_color_table_set(display_info->display, theme_ptr->theme_color_table, theme_ptr->theme_color_table_size);
2409
2410 /* install the color palette if required */
2411 if (display_info->display->gx_display_driver_palette_set &&
2412 theme_ptr->theme_palette != NULL)
2413 {
2414 display_info->display->gx_display_driver_palette_set(display_info->display, theme_ptr->theme_palette, theme_ptr->theme_palette_size);
2415 }
2416
2417 gx_display_font_table_set(display_info->display, theme_ptr->theme_font_table, theme_ptr->theme_font_table_size);
2418 gx_display_pixelmap_table_set(display_info->display, theme_ptr->theme_pixelmap_table, theme_ptr->theme_pixelmap_table_size);
2419 gx_system_scroll_appearance_set(theme_ptr->theme_vertical_scroll_style, (GX_SCROLLBAR_APPEARANCE *) &theme_ptr->theme_vertical_scrollbar_appearance);
2420 gx_system_scroll_appearance_set(theme_ptr->theme_horizontal_scroll_style, (GX_SCROLLBAR_APPEARANCE *) &theme_ptr->theme_horizontal_scrollbar_appearance);
2421 }
2422 }
2423
2424 /* Install the language table. */
2425
2426 if(display_info->language_table)
2427 {
2428 gx_display_language_table_set_ext(display_info->display, display_info->language_table, (GX_UBYTE) display_info->language_table_size, display_info->string_table_size);
2429 gx_display_active_language_set(display_info->display, language);
2430 }
2431
2432 /* Set screen rotation angle. */
2433
2434 display_info->display->gx_display_rotation_angle = display_info->rotation_angle;
2435
2436 /* create the canvas for this display */
2437
2438 gx_canvas_create(display_info->canvas,
2439 display_info->canvas_name,
2440 display_info->display,
2441 GX_CANVAS_MANAGED | GX_CANVAS_VISIBLE,
2442 display_info->x_resolution,
2443 display_info->y_resolution,
2444 display_info->canvas_memory,
2445 display_info->canvas_memory_size);
2446
2447 /* Create the root window for this canvas */
2448
2449 gx_utility_rectangle_define(&size,
2450 0, 0,
2451 (GX_VALUE) (display_info->x_resolution - 1),
2452 (GX_VALUE) (display_info->y_resolution - 1));
2453
2454 gx_window_root_create(display_info->root_window,
2455 display_info->name,
2456 display_info->canvas, GX_STYLE_NONE, 0, &size);
2457 if (return_root)
2458 {
2459 *return_root = display_info->root_window;
2460 }
2461 return GX_SUCCESS;
2462 }
2463 #undef GUIX_STUDIO_GENERATED_FILE
2464