diff options
author | Uros Majstorovic <majstor@majstor.org> | 2020-06-25 17:43:03 +0200 |
---|---|---|
committer | Uros Majstorovic <majstor@majstor.org> | 2020-06-25 17:43:03 +0200 |
commit | d3d239fa9cb25b4a3656c09dbb38f5743d51a213 (patch) | |
tree | b11e3883b19a3c253cd57c44482c6e50ca5dd2e7 /code/fe310/eos/eve/screen | |
parent | 12a52cf1e334e8d2000be671f30fa243542a056f (diff) |
text widget fixed
Diffstat (limited to 'code/fe310/eos/eve/screen')
-rw-r--r-- | code/fe310/eos/eve/screen/font.c | 1 | ||||
-rw-r--r-- | code/fe310/eos/eve/screen/page.c | 8 | ||||
-rw-r--r-- | code/fe310/eos/eve/screen/page.h | 3 |
3 files changed, 12 insertions, 0 deletions
diff --git a/code/fe310/eos/eve/screen/font.c b/code/fe310/eos/eve/screen/font.c index 1be462d..1441961 100644 --- a/code/fe310/eos/eve/screen/font.c +++ b/code/fe310/eos/eve/screen/font.c @@ -21,6 +21,7 @@ uint16_t eve_font_string_width(EVEFont *font, char *s) { r += font->w_ch[*s]; s++; } + return r; } diff --git a/code/fe310/eos/eve/screen/page.c b/code/fe310/eos/eve/screen/page.c index 4c72243..25acc49 100644 --- a/code/fe310/eos/eve/screen/page.c +++ b/code/fe310/eos/eve/screen/page.c @@ -24,6 +24,14 @@ void eve_page_init(EVEPage *page, eve_view_touch_t touch, eve_view_draw_t draw, page->window = window; } +int16_t eve_page_x(EVEPage *page, int16_t x) { + x + page->win_x - page->window->g.x; +} + +int16_t eve_page_y(EVEPage *page, int16_t y) { + y + page->win_y - page->window->g.y; +} + void eve_page_set_focus(EVEPage *page, EVEWidget *widget, EVERect *f) { EVERect g; diff --git a/code/fe310/eos/eve/screen/page.h b/code/fe310/eos/eve/screen/page.h index a2e5898..eb8dabc 100644 --- a/code/fe310/eos/eve/screen/page.h +++ b/code/fe310/eos/eve/screen/page.h @@ -21,6 +21,9 @@ typedef struct EVEPage { } EVEPage; void eve_page_init(EVEPage *page, eve_view_touch_t touch, eve_view_draw_t draw, eve_page_open_t open, eve_page_close_t close, eve_page_evt_handler_t handle_evt, eve_page_g_updater_t update_g, EVEWindow *window); +int16_t eve_page_x(EVEPage *page, int16_t x); +int16_t eve_page_y(EVEPage *page, int16_t y); + void eve_page_set_focus(EVEPage *page, struct EVEWidget *widget, EVERect *focus); struct EVEWidget *eve_page_get_focus(EVEPage *page); int eve_page_rect_visible(EVEPage *page, EVERect *g); |