1
0
mirror of https://github.com/azure-rtos/guix.git synced 2025-02-04 07:13:17 +08:00
Ting Zhu 0e6fdbf5ab
Add GUIX regression tests. (#68)
Add GUIX regression tests.
2023-11-16 15:56:54 +08:00

44 lines
1.2 KiB
C

/* This is a small demo of the high-performance GUIX graphics framework. */
#include <stdio.h>
#include "gx_api.h"
#include "all_widgets_16bpp_resources.h"
#include "all_widgets_16bpp_specifications.h"
extern GX_WINDOW *pGaugeScreen;
static INT angle[6] = { -114, -90, 52, -27, 52, -114 };
static int angle_index = 0;
VOID set_gauge_angle(GX_CIRCULAR_GAUGE *gauge)
{
gx_circular_gauge_angle_set(gauge, angle[angle_index++]);
if (angle_index >= (int)(sizeof(angle) / sizeof(INT)))
{
angle_index = 0;
}
}
UINT gauge_event_handle(GX_WINDOW *window, GX_EVENT *event_ptr)
{
GX_CIRCULAR_GAUGE *gauge = &gauge_screen.gauge_screen_gauge_1;
INT tics;
switch (event_ptr->gx_event_type)
{
case GX_EVENT_SHOW:
gx_window_event_process(window, event_ptr);
set_gauge_angle(gauge);
break;
case GX_SIGNAL(ID_GAUGE, GX_EVENT_ANIMATION_COMPLETE):
set_gauge_angle(gauge);
tics = gauge->gx_circular_gauge_info.gx_circular_gauge_info_animation_delay;
gx_system_timer_start((GX_WIDGET *)gauge, GX_CIRCULAR_GAUGE_TIMER, tics, tics);
break;
default:
return next_button_handler(window, event_ptr);
}
return 0;
}