From 86aa553093084f9c2f04a5fb3d744b56b656ea3a Mon Sep 17 00:00:00 2001 From: Uros Majstorovic Date: Sat, 11 Jul 2020 03:58:45 +0200 Subject: screen/window/kbd window implemented; str widget tested --- code/fe310/eos/eve/screen/window.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'code/fe310/eos/eve/screen/window.h') diff --git a/code/fe310/eos/eve/screen/window.h b/code/fe310/eos/eve/screen/window.h index 78aabde..7f14f18 100644 --- a/code/fe310/eos/eve/screen/window.h +++ b/code/fe310/eos/eve/screen/window.h @@ -1,6 +1,7 @@ #include struct EVEView; +struct EVEWindow; typedef int (*eve_view_touch_t) (struct EVEView *, uint8_t, int); typedef uint8_t (*eve_view_draw_t) (struct EVEView *, uint8_t); @@ -8,6 +9,7 @@ typedef uint8_t (*eve_view_draw_t) (struct EVEView *, uint8_t); typedef struct EVEView { eve_view_touch_t touch; eve_view_draw_t draw; + struct EVEWindow *window; } EVEView; typedef struct EVEWindow { @@ -15,8 +17,20 @@ typedef struct EVEWindow { EVEView *view; EVEScreen *screen; struct EVEWindow *next; + struct EVEWindow *prev; + uint32_t color_bg; + uint32_t color_fg; + uint8_t tag; } EVEWindow; void eve_window_init(EVEWindow *window, EVERect *g, EVEView *view, EVEScreen *screen); +void eve_window_set_color_bg(EVEWindow *window, uint8_t r, uint8_t g, uint8_t b); +void eve_window_set_color_fg(EVEWindow *window, uint8_t r, uint8_t g, uint8_t b); + int eve_window_visible(EVEWindow *window); void eve_window_visible_g(EVEWindow *window, EVERect *g); + +void eve_window_append(EVEWindow *window); +void eve_window_insert_above(EVEWindow *window, EVEWindow *win_prev); +void eve_window_insert_below(EVEWindow *window, EVEWindow *win_next); +void eve_window_remove(EVEWindow *window); -- cgit v1.2.3