diff options
Diffstat (limited to 'src/eulogium.h')
-rw-r--r-- | src/eulogium.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/eulogium.h b/src/eulogium.h index 39acd0b..d6d59d3 100644 --- a/src/eulogium.h +++ b/src/eulogium.h @@ -90,6 +90,7 @@ struct eulogium_data { Evas_Object *status; Evas_Object *progress; Ecore_Timer *progress_data_refresh; + Evas_Object *footer; /* XXX this really shows why we need per window persistent data */ struct printer_data printer; struct print_data print; struct dbus_data dbus; @@ -109,6 +110,23 @@ struct button_def { void *data; }; +struct menu_entry_def { + const char *icon; + const char *label; + Evas_Object *end; + const char *footer; /* Primary footer */ + const char *footer_alt; /* Alternating footer */ + Ecore_Timer *toggle_timer; + void (*func)(void *data, Evas_Object *object, void *event_info); + void *data; +}; + +struct menu_def { + const char *title; + void *data; + struct menu_entry_def entry[]; +}; + struct multi_text { uint_fast8_t count; const char *button_text; @@ -145,6 +163,7 @@ Evas_Object *eulogium_dual_button_add(Evas_Object *parent, const struct button_d Evas_Object *eulogium_print_menu(struct eulogium_data *eulogium, char *filepath); Evas_Object *eulogium_print_progress(struct eulogium_data *eulogium); Evas_Object *eulogium_multi_text_menu(struct eulogium_data *eulogium, Evas_Object *parent, struct button_def *button, struct multi_text *data, const uint_fast8_t pagenum, Eina_Bool pageindex); +Evas_Object *menu_widget_list(struct eulogium_data *eulogium, Evas_Object *parent, struct menu_def *menu); Evas_Object *eulogium_multi_screen_menu(struct eulogium_data *eulogium, Evas_Object *parent, struct multi_screen_data *screen_data, const uint_fast8_t pagenum, Eina_Bool pageindex); #endif /* _EULOGIUM_H */ |