From d55351e11e05ef05e15b3ac6db46005ea73b1cdc Mon Sep 17 00:00:00 2001 From: Olliver Schinagl Date: Wed, 3 Jun 2015 14:29:55 +0200 Subject: [griffin.display] Add top level buttons for materials and hotend Signed-off-by: Olliver Schinagl --- src/eulogium.c | 199 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 195 insertions(+), 4 deletions(-) diff --git a/src/eulogium.c b/src/eulogium.c index 212a9ff..524d834 100644 --- a/src/eulogium.c +++ b/src/eulogium.c @@ -39,10 +39,18 @@ static void _cb_button_main_print(void *data, Evas_Object *object EINA_UNUSED, v static void _but_print_local_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED); static void _but_print_usb_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED); static void _but_main_mathot_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED); +static void _but_mathot_material_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED); +static void _but_mathot_hotend_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED); static void _but_settings_material_1_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED); static void _but_settings_material_2_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED); static void _but_change_material_1_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED); static void _but_change_material_2_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED); +static void _but_hotend_change_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED); +static void _but_hotend_settings_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED); +static void _but_settings_hotend_1_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED); +static void _but_settings_hotend_2_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED); +static void _but_change_hotend_1_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED); +static void _but_change_hotend_2_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED); /* Buttons */ static struct button_def but_return = { @@ -116,7 +124,7 @@ static struct button_def but_print_usb = { }; static struct button_def but_main_mathot = { - .text = "MATERIAL
/HOT-END", + .text = "MATERIAL
/HOT END", .cb = { .func = &_but_main_mathot_cb, .data = NULL, @@ -125,6 +133,26 @@ static struct button_def but_main_mathot = { .data = NULL, }; +static struct button_def but_mathot_material = { + .text = "MATERIAL", + .cb = { + .func = &_but_mathot_material_cb, + .data = NULL, + .info = "material button pressed", + }, + .data = NULL, +}; + +static struct button_def but_mathot_hotend = { + .text = "HOT END", + .cb = { + .func = &_but_mathot_hotend_cb, + .data = NULL, + .info = "hot-end button pressed", + }, + .data = NULL, +}; + static struct button_def but_main_settings = { .text = "SETTINGS", .cb = { @@ -208,6 +236,60 @@ static struct button_def but_change_material_2 = { .data = NULL, }; +static struct button_def but_hotend_change = { + .text = "CHANGE", + .cb = { + .func = &_but_hotend_change_cb, + .data = NULL, + }, + .data = NULL, +}; + +static struct button_def but_hotend_settings = { + .text = "SETTINGS", + .cb = { + .func = &_but_hotend_settings_cb, + .data = NULL, + }, + .data = NULL, +}; + +static struct button_def but_settings_hotend_1 = { + .text = "HOT END 1", + .cb = { + .func = &_but_settings_hotend_1_cb, /* XXX we should make 1/2 a var */ + .data = NULL, + }, + .data = NULL, +}; + +static struct button_def but_settings_hotend_2 = { + .text = "HOT END 2", + .cb = { + .func = &_but_settings_hotend_2_cb, /* XXX we should make 1/2 a var */ + .data = NULL, + }, + .data = NULL, +}; + +static struct button_def but_change_hotend_1 = { + .text = "HOT END 1", + .cb = { + .func = &_but_change_hotend_1_cb, /* XXX we should make 1/2 a var */ + .data = NULL, + }, + .data = NULL, +}; + +static struct button_def but_change_hotend_2 = { + .text = "HOT END 2", + .cb = { + .func = &_but_change_hotend_2_cb, /* XXX we should make 1/2 a var */ + .data = NULL, + }, + .data = NULL, +}; + static void eulogium_print_data_clear(struct eulogium_data *eulogium) { if (eulogium->progress_data_refresh) @@ -297,7 +379,7 @@ static void _but_material_change_cb(void *data EINA_UNUSED, Evas_Object *obj EIN Evas_Object *content; printf("But material change\n"); - content = eulogium_tripple_button_menu(eulogium->navi, &but_return, &but_return, &but_return); + content = eulogium_tripple_button_menu(eulogium->navi, &but_change_material_1, &but_change_material_2, &but_return); if (!content) return; elm_naviframe_item_simple_push(eulogium->navi, content); @@ -309,7 +391,31 @@ static void _but_material_settings_cb(void *data EINA_UNUSED, Evas_Object *obj E Evas_Object *content; printf("But material settings\n"); - content = eulogium_tripple_button_menu(eulogium->navi, &but_return, &but_return, &but_return); + content = eulogium_tripple_button_menu(eulogium->navi, &but_settings_material_1, &but_settings_material_2, &but_return); + if (!content) + return; + elm_naviframe_item_simple_push(eulogium->navi, content); +} + +static void _but_hotend_change_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +{ + struct eulogium_data *eulogium = data; + Evas_Object *content; + + printf("But hotend change\n"); + content = eulogium_tripple_button_menu(eulogium->navi, &but_change_hotend_1, &but_change_hotend_2, &but_return); + if (!content) + return; + elm_naviframe_item_simple_push(eulogium->navi, content); +} + +static void _but_hotend_settings_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +{ + struct eulogium_data *eulogium = data; + Evas_Object *content; + + printf("But hotend settings\n"); + content = eulogium_tripple_button_menu(eulogium->navi, &but_settings_hotend_1, &but_settings_hotend_2, &but_return); if (!content) return; elm_naviframe_item_simple_push(eulogium->navi, content); @@ -410,7 +516,7 @@ static void _but_main_mathot_cb(void *data, Evas_Object *object EINA_UNUSED, voi printf("Button matts pressed\n"); - content = eulogium_tripple_button_menu(eulogium->navi, &but_material_change, &but_material_settings, &but_return); + content = eulogium_tripple_button_menu(eulogium->navi, &but_mathot_material, &but_mathot_hotend, &but_return); if (!content) return; elm_naviframe_item_simple_push(eulogium->navi, content); @@ -468,6 +574,83 @@ static void _but_change_material_2_cb(void *data, Evas_Object *object EINA_UNUSE elm_naviframe_item_simple_push(eulogium->navi, content); } +static void _but_mathot_material_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED) +{ + struct eulogium_data *eulogium = data; + Evas_Object *content; + + printf("Button mathot material pressed\n"); + + content = eulogium_tripple_button_menu(eulogium->navi, &but_material_change, &but_material_settings, &but_return); + if (!content) + return; + elm_naviframe_item_simple_push(eulogium->navi, content); +} + +static void _but_mathot_hotend_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED) +{ + struct eulogium_data *eulogium = data; + Evas_Object *content; + + printf("Button mathot hotend pressed\n"); + + content = eulogium_tripple_button_menu(eulogium->navi, &but_hotend_change, &but_hotend_settings, &but_return); + if (!content) + return; + elm_naviframe_item_simple_push(eulogium->navi, content); +} + +static void _but_settings_hotend_1_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED) +{ + struct eulogium_data *eulogium = data; + Evas_Object *content; + + printf("Button hotend settings 1 pressed\n"); + + content = eulogium_tripple_button_menu(eulogium->navi, &but_return, &but_return, &but_return); + if (!content) + return; + elm_naviframe_item_simple_push(eulogium->navi, content); +} + +static void _but_settings_hotend_2_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED) +{ + struct eulogium_data *eulogium = data; + Evas_Object *content; + + printf("Button hotend settings 2 pressed\n"); + + content = eulogium_tripple_button_menu(eulogium->navi, &but_return, &but_return, &but_return); + if (!content) + return; + elm_naviframe_item_simple_push(eulogium->navi, content); +} + +static void _but_change_hotend_1_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED) +{ + struct eulogium_data *eulogium = data; + Evas_Object *content; + + printf("Button hotend change 1 pressed\n"); + + content = eulogium_tripple_button_menu(eulogium->navi, &but_return, &but_return, &but_return); + if (!content) + return; + elm_naviframe_item_simple_push(eulogium->navi, content); +} + +static void _but_change_hotend_2_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED) +{ + struct eulogium_data *eulogium = data; + Evas_Object *content; + + printf("Button matts change 2 pressed\n"); + + content = eulogium_tripple_button_menu(eulogium->navi, &but_return, &but_return, &but_return); + if (!content) + return; + elm_naviframe_item_simple_push(eulogium->navi, content); +} Evas_Object *eulogium_button_list_add(Evas_Object *parent) { @@ -1358,6 +1541,14 @@ static void eulogium_setup(struct eulogium_data *eulogium) eulogium_button_cb_data_set(&but_settings_material_2, eulogium); eulogium_button_cb_data_set(&but_change_material_1, eulogium); eulogium_button_cb_data_set(&but_change_material_2, eulogium); + eulogium_button_cb_data_set(&but_mathot_material, eulogium); + eulogium_button_cb_data_set(&but_mathot_hotend, eulogium); + eulogium_button_cb_data_set(&but_hotend_change, eulogium); + eulogium_button_cb_data_set(&but_hotend_settings, eulogium); + eulogium_button_cb_data_set(&but_settings_hotend_1, eulogium); + eulogium_button_cb_data_set(&but_settings_hotend_2, eulogium); + eulogium_button_cb_data_set(&but_change_hotend_1, eulogium); + eulogium_button_cb_data_set(&but_change_hotend_2, eulogium); } /* TODO May need this later to change certain connections to objects */ -- cgit v0.12