diff options
Diffstat (limited to 'fw/fe310/eos/eve/widget/pagew.h')
-rw-r--r-- | fw/fe310/eos/eve/widget/pagew.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/fw/fe310/eos/eve/widget/pagew.h b/fw/fe310/eos/eve/widget/pagew.h index 1f9ae18..797f1c3 100644 --- a/fw/fe310/eos/eve/widget/pagew.h +++ b/fw/fe310/eos/eve/widget/pagew.h @@ -4,10 +4,19 @@ typedef struct EVEPageWidget { EVEWidget w; char *title; EVEFont *font; - EVEPage *page; + eve_page_constructor_t constructor; uint8_t tag; } EVEPageWidget; -void eve_pagew_init(EVEPageWidget *widget, EVERect *g, char *title, EVEFont *font, EVEPage *page); +typedef struct EVEPageSpec { + EVEFont *font; + char *title; + eve_page_constructor_t constructor; +} EVEPageSpec; + +int eve_pagew_create(EVEPageWidget *widget, EVERect *g, EVEPageSpec *spec); +void eve_pagew_init(EVEPageWidget *widget, EVERect *g, EVEFont *font, char *title, eve_page_constructor_t constructor); +void eve_pagew_update(EVEPageWidget *widget, EVEFont *font, char *title, eve_page_constructor_t constructor); + int eve_pagew_touch(EVEWidget *_widget, EVEPage *page, uint8_t tag0, int touch_idx); uint8_t eve_pagew_draw(EVEWidget *_widget, EVEPage *page, uint8_t tag0); |