summaryrefslogtreecommitdiff
path: root/fw/fe310/eos/eve/screen/page.h
diff options
context:
space:
mode:
Diffstat (limited to 'fw/fe310/eos/eve/screen/page.h')
-rw-r--r--fw/fe310/eos/eve/screen/page.h15
1 files changed, 10 insertions, 5 deletions
diff --git a/fw/fe310/eos/eve/screen/page.h b/fw/fe310/eos/eve/screen/page.h
index 7aa8c1d..6874a2d 100644
--- a/fw/fe310/eos/eve/screen/page.h
+++ b/fw/fe310/eos/eve/screen/page.h
@@ -14,6 +14,9 @@
struct EVEWidget;
struct EVEPage;
+typedef uint8_t (*eve_page_draw_t) (struct EVEPage *, uint8_t);
+typedef int (*eve_page_touch_t) (struct EVEPage *, EVETouch *, uint16_t, uint8_t);
+typedef int (*eve_page_uievt_t) (struct EVEPage *, uint16_t, void *);
typedef void (*eve_page_destructor_t) (struct EVEPage *);
typedef struct EVEPage {
@@ -32,9 +35,10 @@ typedef struct EVEPage {
uint8_t opt;
} EVEPage;
-void eve_page_init(EVEPage *page, EVEWindow *window, EVEViewStack *stack, struct EVEWidget *widget, uint16_t widget_size, uint8_t opt,eve_view_draw_t draw, eve_view_touch_t touch, eve_view_uievt_t uievt, eve_page_destructor_t destructor);
+void eve_page_init(EVEPage *page, EVEWindow *window, EVEViewStack *stack, struct EVEWidget *widget, uint16_t widget_size, uint8_t opt, eve_page_draw_t draw, eve_page_touch_t touch, eve_page_uievt_t uievt, eve_page_destructor_t destructor);
struct EVEWidget *eve_page_widget(EVEPage *page, uint16_t idx);
+struct EVEWidget *eve_page_widget_search(EVEPage *page, char *label);
void eve_page_set_widget(EVEPage *page, struct EVEWidget *widget, uint16_t widget_size);
void eve_page_open(EVEPage *parent, eve_view_constructor_t constructor);
@@ -50,10 +54,11 @@ int16_t eve_page_win_y(EVEPage *page, int16_t y);
int16_t eve_page_scr_x(EVEPage *page, int16_t x);
int16_t eve_page_scr_y(EVEPage *page, int16_t y);
int eve_page_rect_visible(EVEPage *page, EVERect *g);
-void eve_page_rect_set_visible(EVEPage *page, EVERect *rect);
+void eve_page_show_rect(EVEPage *page, EVERect *rect);
+int eve_page_oob(EVEPage *page, int *_max_x, int *_max_y);
struct EVEWidget *eve_page_focus(EVEPage *page);
-void eve_page_set_focus(EVEPage *page, struct EVEWidget *widget, EVERect *rect);
+void eve_page_set_focus(EVEPage *page, struct EVEWidget *widget);
-uint8_t eve_page_draw(EVEView *view, uint8_t tag0);
-int eve_page_touch(EVEView *view, EVETouch *touch, uint16_t evt, uint8_t tag0);
+uint8_t eve_page_draw(EVEPage *page, uint8_t tag0);
+int eve_page_touch(EVEPage *page, EVETouch *touch, uint16_t evt, uint8_t tag0);