From abc5fb57f0ba86effe610c284d21092ea28fdbaa Mon Sep 17 00:00:00 2001 From: Olliver Schinagl Date: Tue, 31 Mar 2015 17:47:29 +0200 Subject: rename and make parameter out of filepath --- src/eulogium.c | 42 +++++++++++++++++++++++------------------- src/eulogium.h | 13 +++++++++---- 2 files changed, 32 insertions(+), 23 deletions(-) diff --git a/src/eulogium.c b/src/eulogium.c index 8060744..18e3549 100644 --- a/src/eulogium.c +++ b/src/eulogium.c @@ -35,10 +35,10 @@ void eulogium_button_data_set(struct button_def *button, void *data) button->data = data; } -void eulogium_filepath_set(struct eulogium_data *eulogium, char *filepath) +void eulogium_print_file_set(struct eulogium_data *eulogium, char *filepath) { if (filepath && eulogium) - eulogium->filepath = filepath; + eulogium->print.file = filepath; } /* test function to map try to mouse button to emit a click event */ @@ -119,16 +119,16 @@ Evas_Object *eulogium_print_progress(struct eulogium_data *eulogium) evas_object_show(object); elm_table_pack(table, object, 0, 2, 3, 1); - eulogium->print_progress = elm_progressbar_add(table); /* TODO: depending on i18n sig, change inverted */ - elm_progressbar_horizontal_set(eulogium->print_progress, EINA_TRUE); - elm_progressbar_pulse_set(eulogium->print_progress, EINA_FALSE); /* TODO: pulse = time-unknown/pause */ - elm_progressbar_pulse(eulogium->print_progress, EINA_FALSE); -elm_progressbar_value_set(eulogium->print_progress, 0.5); - elm_progressbar_unit_format_set(eulogium->print_progress, "%1.0f%%"); - evas_object_size_hint_weight_set(eulogium->print_progress, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - evas_object_size_hint_align_set(eulogium->print_progress, EVAS_HINT_FILL, EVAS_HINT_FILL); - evas_object_show(eulogium->print_progress); - elm_table_pack(table, eulogium->print_progress, 0, 3, 3, 1); + eulogium->print.progress = elm_progressbar_add(table); /* TODO: depending on i18n sig, change inverted */ + elm_progressbar_horizontal_set(eulogium->print.progress, EINA_TRUE); + elm_progressbar_pulse_set(eulogium->print.progress, EINA_FALSE); /* TODO: pulse = time-unknown/pause */ + elm_progressbar_pulse(eulogium->print.progress, EINA_FALSE); +elm_progressbar_value_set(eulogium->print.progress, 0.5); + elm_progressbar_unit_format_set(eulogium->print.progress, "%1.0f%%"); + evas_object_size_hint_weight_set(eulogium->print.progress, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + evas_object_size_hint_align_set(eulogium->print.progress, EVAS_HINT_FILL, EVAS_HINT_FILL); + evas_object_show(eulogium->print.progress); + elm_table_pack(table, eulogium->print.progress, 0, 3, 3, 1); #if 0 /* FIXME use themed seperator */ object = elm_separator_add(eulogium->layout); @@ -177,6 +177,12 @@ elm_progressbar_value_set(eulogium->print_progress, 0.5); return table; } +Evas_Object *eulogium_start_print(struct eulogium_data *eulogium, char *filepath) +{ + eulogium_print_file_set(eulogium, filepath); + return eulogium_print_progress(eulogium); +} + /* Uglyness due to a 'shortcomming' of elm_list sorted insert using 1 data var for both funcs */ struct _filelist_sort { struct eulogium_data *eulogium; @@ -189,11 +195,10 @@ static void _cb_select_file(void *data, Evas_Object *obj EINA_UNUSED, void *even struct eulogium_data *eulogium = ((struct _filelist_sort *)data)->eulogium; Evas_Object *content; - eulogium->filepath = filepath; /* TODO: can we set this higher up the chain? not likely. */ if (ecore_file_is_dir(filepath)) { - content = eulogium_print_menu(eulogium); /* TODO: maybe path as parameter was not bad */ + content = eulogium_print_menu(eulogium, filepath); } else { - content = eulogium_print_progress(eulogium); + content = eulogium_start_print(eulogium, filepath); } elm_naviframe_item_simple_push(eulogium->layout, content); } @@ -274,7 +279,7 @@ static void _cb_content_prev_set(void *data, Evas_Object *object EINA_UNUSED, vo elm_naviframe_item_pop(eulogium->layout); } -Evas_Object *eulogium_print_menu(struct eulogium_data *eulogium) +Evas_Object *eulogium_print_menu(struct eulogium_data *eulogium, char *filepath) { Evas_Object *box; Evas_Object *list; @@ -290,7 +295,7 @@ Evas_Object *eulogium_print_menu(struct eulogium_data *eulogium) elm_table_pack(box, list, 0, 0, 1, 1); eulogium->data = (void *)list; - eina_file_dir_list(eulogium->filepath, EINA_FALSE, _cb_populate_filelist, eulogium); + eina_file_dir_list(filepath, EINA_FALSE, _cb_populate_filelist, eulogium); eulogium->data = NULL; icon = elm_icon_add(list); @@ -375,7 +380,7 @@ static void _cb_button_main_print(void *data, Evas_Object *object EINA_UNUSED, v Evas_Object *content; /* TODO: add intermediate window to list drive/youmagine */ - content = eulogium_print_menu(eulogium); + content = eulogium_print_menu(eulogium, "/home/oliver"); /* TODO: replace later */ elm_naviframe_item_simple_push(eulogium->layout, content); } @@ -430,7 +435,6 @@ Evas_Object *eulogium_main_menu(Evas_Object *window, struct eulogium_data *eulog static void eulogium_setup(struct eulogium_data *eulogium) { - eulogium->filepath = "/home/oliver"; /* TODO: this is just a quick hack until we get media insert detect */ eulogium_button_cb_data_set(&but_main_print, eulogium); eulogium_button_cb_data_set(&but_main_material, eulogium); eulogium_button_cb_data_set(&but_main_maintanance, eulogium); diff --git a/src/eulogium.h b/src/eulogium.h index 5577a73..47a3778 100644 --- a/src/eulogium.h +++ b/src/eulogium.h @@ -3,10 +3,15 @@ #ifndef _EULOGIUM_H #define _EULOGIUM_H +struct print_data { + Evas_Object *progress; + char *status; /* TODO probably an enum for this */ + char *file; +}; + struct eulogium_data { Evas_Object *layout; - Evas_Object *print_progress; - char *filepath; + struct print_data print; void *data; }; @@ -23,7 +28,7 @@ struct button_def { void *data; }; -void eulogium_filepath_set(struct eulogium_data *eulogium, char *filepath); +void eulogium_print_file_set(struct eulogium_data *eulogium, char *filepath); void eulogium_button_cb_set(struct button_def *button, struct button_cb *cb); void eulogium_button_cb_data_set(struct button_def *button, void *data); @@ -31,7 +36,7 @@ void eulogium_button_data_set(struct button_def *button, void *data); Evas_Object *eulogium_main_menu(Evas_Object *window, struct eulogium_data *eulogium); Evas_Object *eulogium_tripple_button_menu(struct eulogium_data *eulogium, const struct button_def *left, const struct button_def *right, const struct button_def *bottom); -Evas_Object *eulogium_print_menu(struct eulogium_data *eulogium); +Evas_Object *eulogium_print_menu(struct eulogium_data *eulogium, char *filepath); Evas_Object *eulogium_print_progress(struct eulogium_data *eulogium); #endif /* _EULOGIUM_H */ -- cgit v0.12