diff options
Diffstat (limited to 'src/eulogium.c')
-rw-r--r-- | src/eulogium.c | 64 |
1 files changed, 31 insertions, 33 deletions
diff --git a/src/eulogium.c b/src/eulogium.c index d858c41..e34f748 100644 --- a/src/eulogium.c +++ b/src/eulogium.c @@ -2794,67 +2794,65 @@ struct _status_msg { static Eina_Bool _timer_progress_data_update_cb(void *data) { struct eulogium_data *eulogium = data; + struct print_data *progress = eulogium->procedures[PROC_PRINT].meta; static enum printer_status status = -1; static double value = 0; static double time = -1; - procedure_metadata_key_get(PROC_PRINT); - /* XXX This is an ugly hack that doesn't even work to abort the timer, we need to refactor this into something sensible - * Basically we want to stop this time whenever the item gets removed from the stack via the - * clean/free callback. */ - if ((!eulogium->status) && (!eulogium->progress) && (!eulogium->name) && (!eulogium->time)) - return ECORE_CALLBACK_CANCEL; + procedure_metadata_key_get(progress->proc_key); +#if 0 if (eulogium->printer.status != status) { elm_object_text_set(eulogium->status, "TODO (step key)"); if (eulogium->printer.status == COOLING) elm_progressbar_inverted_set(eulogium->progress, EINA_TRUE); status = eulogium->printer.status; } - if (eulogium->print.value != value) { - elm_progressbar_value_set(eulogium->progress, eulogium->print.value); - value = eulogium->print.value; +#endif + if (progress->value != value) { + elm_progressbar_value_set(eulogium->progress, progress->value); + value = progress->value; } - if (eulogium->print.time != time) { + if (progress->time != time) { char buf[255], *str; int_fast32_t time = 0; - if (eulogium->print.time < 1) { + if (progress->time < 1) { str = "Print time unknown"; time = 0; } - if (eulogium->print.time > 0) { + if (progress->time > 0) { str = "Time left: %d second%s"; - time = eulogium->print.time; + time = progress->time; } - if (eulogium->print.time > MINUTE) { + if (progress->time > MINUTE) { str = "Time left: %d minute%s"; - time = eulogium->print.time / MINUTE; + time = progress->time / MINUTE; } - if (eulogium->print.time > HOUR) { + if (progress->time > HOUR) { str = "Time left: %d hour%s"; - time = eulogium->print.time / HOUR; + time = progress->time / HOUR; } - if (eulogium->print.time > DAY) { + if (progress->time > DAY) { str = "Time left: %d day%s"; - time = eulogium->print.time / DAY; + time = progress->time / DAY; } - if (eulogium->print.time > WEEK) { + if (progress->time > WEEK) { str = "Time left: %d week%s"; - time = eulogium->print.time / WEEK; + time = progress->time / WEEK; } - if (eulogium->print.time > MONTH) { + if (progress->time > MONTH) { str = "Time left: %d month%s"; - time = eulogium->print.time / MONTH; + time = progress->time / MONTH; } - if (eulogium->print.time > YEAR) { + if (progress->time > YEAR) { str = "Time left: %d year%s"; - time = eulogium->print.time / YEAR; + time = progress->time / YEAR; } - snprintf(buf, sizeof(buf), str, (int)eulogium->print.time, (time > 1) ? "s" : ""); /* TODO: This won't work with in10 */ + snprintf(buf, sizeof(buf), str, (int)progress->time, (time > 1) ? "s" : ""); /* TODO: This won't work with in10 */ elm_object_text_set(eulogium->time, _(buf)); - eulogium->print.time = time; + progress->time = time; } return ECORE_CALLBACK_RENEW; @@ -2961,7 +2959,7 @@ Evas_Object *eulogium_pre_print(Evas_Object *parent, struct eulogium_data *eulog return eulogium_split_screen(eulogium->navi, _top, _bottom); } -Evas_Object *eulogium_print_progress(Evas_Object *parent, struct eulogium_data *eulogium, const struct print_data *print) /* TODO pass timer var to store timer in */ +Evas_Object *eulogium_print_progress(Evas_Object *parent, struct eulogium_data *eulogium, const struct print_data *progress) /* TODO pass timer var to store timer in */ { Evas_Object *_top, *_bottom; @@ -2995,8 +2993,9 @@ Evas_Object *eulogium_print_progress(Evas_Object *parent, struct eulogium_data * evas_object_show(eulogium->status); elm_box_pack_end(_top, eulogium->status); + printf("jobname: %s\n", progress->jobname); eulogium->name = elm_label_add(_top); - elm_object_text_set(eulogium->name, print->jobname); + elm_object_text_set(eulogium->name, progress->jobname); elm_label_slide_mode_set(eulogium->name, ELM_LABEL_SLIDE_MODE_AUTO); //elm_label_slide_speed_set(object, 2); elm_label_slide_go(eulogium->name); @@ -3009,7 +3008,7 @@ Evas_Object *eulogium_print_progress(Evas_Object *parent, struct eulogium_data * elm_progressbar_horizontal_set(eulogium->progress, EINA_TRUE); elm_progressbar_pulse_set(eulogium->progress, EINA_FALSE); /* TODO: pulse = time-unknown/pause */ elm_progressbar_pulse(eulogium->progress, EINA_FALSE); - elm_progressbar_value_set(eulogium->progress, print->value); + elm_progressbar_value_set(eulogium->progress, progress->value); elm_progressbar_unit_format_set(eulogium->progress, "%1.1f %%"); evas_object_size_hint_align_set(eulogium->progress, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_show(eulogium->progress); @@ -3565,8 +3564,8 @@ Evas_Object *eulogium_main_menu(Evas_Object *window, struct eulogium_data *eulog content = eulogium_tripple_button_menu(eulogium->navi, &but_main_print, &but_main_mathot, &but_main_system); ui_stack_push(eulogium->navi, content, PAGE_BOTTOM); /* XXX Test: pop a wizard at the start dev it */ - content = wizard_add(eulogium->navi, &material_unload, 0, EINA_TRUE); - ui_stack_push(eulogium->navi, content, PAGE_WIZARD); +// content = wizard_add(eulogium->navi, &material_unload, 0, EINA_TRUE); +// ui_stack_push(eulogium->navi, content, PAGE_WIZARD); return eulogium->navi; } @@ -4071,7 +4070,6 @@ static void _on_procedure_finished_ret(void *data EINA_UNUSED, const Eldbus_Mess procedure->status = PROC_FINISHED; procedure->step_active = NULL; procedure_process_step(procedure, data); - // XXX procedure_metadata_key_get(key) } static void _on_get_error_ret(void *data, const Eldbus_Message *msg, Eldbus_Pending *pending EINA_UNUSED) |