diff options
Diffstat (limited to 'fw/fe310/eos/eve/screen/page.h')
-rw-r--r-- | fw/fe310/eos/eve/screen/page.h | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/fw/fe310/eos/eve/screen/page.h b/fw/fe310/eos/eve/screen/page.h index 227375c..168a017 100644 --- a/fw/fe310/eos/eve/screen/page.h +++ b/fw/fe310/eos/eve/screen/page.h @@ -1,15 +1,11 @@ #include <stdint.h> -#define EVE_PAGE_SIZE_STACK 16 - struct EVEPage; struct EVEWidget; -struct EVEPageStack; -typedef void (*eve_page_constructor_t) (EVEWindow *window, struct EVEPageStack *); -typedef void (*eve_page_destructor_t) (struct EVEPage *); typedef int (*eve_page_evt_handler_t) (struct EVEPage *, struct EVEWidget *, EVETouch *, uint16_t, uint8_t, int); typedef void (*eve_page_g_updater_t) (struct EVEPage *, struct EVEWidget *); +typedef void (*eve_page_destructor_t) (struct EVEPage *); typedef struct EVEPage { EVEView v; @@ -18,19 +14,12 @@ typedef struct EVEPage { eve_page_evt_handler_t handle_evt; eve_page_g_updater_t update_g; eve_page_destructor_t destructor; - struct EVEPageStack *stack; + struct EVEViewStack *stack; struct EVEWidget *widget_f; } EVEPage; -typedef struct EVEPageStack { - eve_page_constructor_t constructor[EVE_PAGE_SIZE_STACK]; - uint8_t level; -} EVEPageStack; - -void eve_page_init(EVEPage *page, EVEWindow *window, EVEPageStack *stack, eve_view_touch_t touch, eve_view_draw_t draw, eve_page_evt_handler_t handle_evt, eve_page_g_updater_t update_g, eve_page_destructor_t destructor); -void eve_page_stack_init(EVEPageStack *stack); -void eve_page_create(EVEWindow *window, EVEPageStack *stack, eve_page_constructor_t constructor); -void eve_page_open(EVEPage *parent, eve_page_constructor_t constructor); +void eve_page_init(EVEPage *page, EVEWindow *window, EVEViewStack *stack, eve_view_touch_t touch, eve_view_draw_t draw, eve_page_evt_handler_t handle_evt, eve_page_g_updater_t update_g, eve_page_destructor_t destructor); +void eve_page_open(EVEPage *parent, eve_view_constructor_t constructor); void eve_page_close(EVEPage *page); int16_t eve_page_x(EVEPage *page, int16_t x); |