summaryrefslogtreecommitdiffstats
path: root/src/eulogium.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/eulogium.c')
-rw-r--r--src/eulogium.c50
1 files changed, 27 insertions, 23 deletions
diff --git a/src/eulogium.c b/src/eulogium.c
index e34f748..e4b8338 100644
--- a/src/eulogium.c
+++ b/src/eulogium.c
@@ -120,7 +120,7 @@ static struct button_def but_return = {
.data = NULL,
};
-static struct button_def but_print_abort_confirm = {
+struct button_def but_print_abort_confirm = {
.text = "ABORT",
.cb = {
.func = &_print_abort_confirm_cb,
@@ -140,7 +140,7 @@ static struct button_def but_print_abort = {
.data = NULL,
};
-static struct button_def but_print_tune = {
+struct button_def but_print_tune = {
.text = "TUNE",
.cb = {
.func = &_but_print_tune_cb,
@@ -1704,7 +1704,8 @@ static struct print_data progressbars[] = {
.jobname = NULL,
.time = 0,
.total_time = 0,
- .value = 0.0,
+ .value = -1.0,
+ .format = "%1.1f %%",
.proc_key = PROC_PRINT,
},
[PROC_FIRMWARE_UPDATE] = {
@@ -1713,7 +1714,8 @@ static struct print_data progressbars[] = {
.jobname = NULL,
.time = 0,
.total_time = 0,
- .value = 0.0,
+ .value = -1.0,
+ .format = "%1.1f %%",
.proc_key = PROC_FIRMWARE_UPDATE,
},
};
@@ -2511,7 +2513,7 @@ static char *parse_networks_for_display(struct network_data *networks)
for (i = 0; networks[i].obj_path; i++)
if (networks[i].ipv4) { // TODO || networks[i].ipv6) /* XXX if ipv4 exists, but is '', this will still print an empty field. */
buf = realloc(buf, pos + 34 * sizeof(char *));
- pos += sprintf(buf + pos, "%s%s IP: %s", i == 0 ? "": "<br>", (networks[i].tech == TECH_ETHERNET) ? "Ethernet" : (networks[i].tech == TECH_WIFI) ? "WiFi" : "", networks[i].ipv4);
+ pos += sprintf(buf + pos, "%s%s IP: %s", i == 0 ? "": "<br>", (networks[i].tech == TECH_ETHERNET) ? "LAN" : (networks[i].tech == TECH_WIFI) ? "WiFi" : "", networks[i].ipv4);
}
return buf;
@@ -2736,7 +2738,7 @@ void eulogium_button_data_set(struct button_def *button, void *data)
button->data = data;
}
-void eulogium_print_data_set(struct eulogium_data *eulogium, char *filepath)
+void eulogium_print_data_set(struct print_data *print, char *filepath)
{
char *buf;
size_t buf_size;
@@ -2747,11 +2749,8 @@ void eulogium_print_data_set(struct eulogium_data *eulogium, char *filepath)
buf_size = strlen("file://") + strlen(filepath) + 1;
buf = malloc(buf_size); /* TODO: remember to free this later! */
snprintf(buf, buf_size, "file://%s", filepath);
- eulogium->print.url = buf;
- eulogium->print.jobname = ecore_file_strip_ext(ecore_file_file_get(filepath));
- eulogium->print.flags = "";
- eulogium->print.material = 100.23; /* TODO */
- eulogium->print.time = 12;
+ print->url = buf;
+ print->jobname = ecore_file_strip_ext(ecore_file_file_get(filepath));
}
static void _cb_eulogium_exit(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
@@ -2808,7 +2807,6 @@ static Eina_Bool _timer_progress_data_update_cb(void *data)
elm_progressbar_inverted_set(eulogium->progress, EINA_TRUE);
status = eulogium->printer.status;
}
-#endif
if (progress->value != value) {
elm_progressbar_value_set(eulogium->progress, progress->value);
value = progress->value;
@@ -2855,6 +2853,7 @@ static Eina_Bool _timer_progress_data_update_cb(void *data)
progress->time = time;
}
+#endif
return ECORE_CALLBACK_RENEW;
}
@@ -2973,6 +2972,8 @@ Evas_Object *eulogium_print_progress(Evas_Object *parent, struct eulogium_data *
return NULL;
}
+ return ui_widget_progress(parent, eulogium->procedures[PROC_PRINT].meta, &eulogium->procedures[PROC_PRINT].event);
+#if 0
_top = elm_box_add(parent);
evas_object_size_hint_weight_set(_top, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(_top, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -2993,7 +2994,6 @@ 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, progress->jobname);
elm_label_slide_mode_set(eulogium->name, ELM_LABEL_SLIDE_MODE_AUTO);
@@ -3018,6 +3018,7 @@ Evas_Object *eulogium_print_progress(Evas_Object *parent, struct eulogium_data *
evas_object_show(_bottom);
return eulogium_split_screen(parent, _top, _bottom);
+#endif
}
void eulogium_generic_error(struct eulogium_data *eulogium, uint_fast16_t error_code, const char *error_msg)
@@ -3145,12 +3146,13 @@ static void _cb_select_file(void *data, Evas_Object *obj EINA_UNUSED, void *even
new_dir->dir.path = malloc(new_dir_len); /* XXX memleak, but by copying we can free _filelist_data without worry */
strncpy(new_dir->dir.path, filepath, new_dir_len);
content = menu_widget_list(eulogium, eulogium->navi, new_dir);
- ui_stack_push(eulogium->navi, content, PAGE_NORMAL); /* XXX We need to set the correct page type here */
+ ui_stack_push(eulogium->navi, content, PAGE_NORMAL);
} else {
Evas_Object *content;
+ struct print_data *progress = eulogium->procedures[PROC_PRINT].meta; /* XXX hack, fix me soon! */
- eulogium_print_data_set(eulogium, filepath);
- procedure_print_start(&eulogium->print);
+ eulogium_print_data_set(progress, filepath);
+ procedure_print_start(progress);
content = eulogium_pre_print(eulogium->navi, eulogium);
ui_stack_push(eulogium->navi, content, PAGE_PRINTING);
}
@@ -3968,7 +3970,9 @@ static void _on_get_active_procedures_ret(void *data EINA_UNUSED, const Eldbus_M
return;
}
while (eldbus_message_iter_get_and_next(array, 'r', &act_proc_struct)) {
- if (eldbus_message_iter_arguments_get(act_proc_struct, "ss", &key, &step)) {
+ if (!(eldbus_message_iter_arguments_get(act_proc_struct, "ss", &key, &step))) {
+ EINA_LOG_ERR("Message content does not match expected \"ss\" signature. (%s)", eldbus_message_signature_get(msg));
+ } else {
struct procedure_data *procedure;
EINA_LOG_ERR("Key '%s' step '%s'", key, step);
@@ -4003,10 +4007,10 @@ static void _on_procedure_start_ret(void *data, const Eldbus_Message *msg)
EINA_LOG_ERR("Message content does not match expected \"ss\" signature. (%s)", eldbus_message_signature_get(msg));
return;
}
- EINA_LOG_ERR("Key '%s' step '%s'", key, step);
+// EINA_LOG_ERR("Key '%s' step '%s'", key, step);
procedure = procedure_get(key);
if (!procedure) {
- EINA_LOG_ERR("Unknown procedure %s", key);
+// EINA_LOG_ERR("Unknown procedure %s", key);
return;
}
procedure->status = PROC_ACTIVE;
@@ -4061,15 +4065,15 @@ static void _on_procedure_finished_ret(void *data EINA_UNUSED, const Eldbus_Mess
EINA_LOG_ERR("Message content does not match expected \"s\" signature. (%s)", eldbus_message_signature_get(msg));
return;
}
- EINA_LOG_ERR("finshed Key '%s'", key);
+// EINA_LOG_ERR("finshed Key '%s'", key);
procedure = procedure_get(key);
if (!procedure) {
- EINA_LOG_ERR("Unknown procedure %s", key);
+// EINA_LOG_ERR("Unknown procedure %s", key);
return;
}
procedure->status = PROC_FINISHED;
procedure->step_active = NULL;
- procedure_process_step(procedure, data);
+ procedure_process_finish(procedure, data);
}
static void _on_get_error_ret(void *data, const Eldbus_Message *msg, Eldbus_Pending *pending EINA_UNUSED)
@@ -4262,7 +4266,7 @@ static void eulogium_setup(struct eulogium_data *eulogium)
procedure_meta_set(&eulogium->procedures[PROC_CURRENT_XY], PROC_META_SLIDER, &dials[PROC_CURRENT_XY]);
procedure_meta_set(&eulogium->procedures[PROC_CURRENT_Z], PROC_META_SLIDER, &dials[PROC_CURRENT_Z]);
procedure_meta_set(&eulogium->procedures[PROC_CURRENT_E], PROC_META_SLIDER, &dials[PROC_CURRENT_E]);
- procedure_meta_getall();
+ procedure_meta_getall(); /* XXX do we really want to get all metadata at start? Not only of active and special procedures? */
}
void _priviledges_drop(void)