diff --git a/web.cpp b/web.cpp index 43c6afd43f8e7889485b37b4cbd145dd7f604e58..e1865cc1e70ee981cfe17fbfb6a5abd8b875ea6a 100644 --- a/web.cpp +++ b/web.cpp @@ -92,25 +92,34 @@ void web_setup () select_syringe_maj(tab1); + uint16_t syringe_ref = ESPUI.addControl( ControlType::Label, "Caractéristiques de la seringue 1 : ", "Reférence : ? " , ControlColor::None, tab1); + uint16_t syringe_brand =ESPUI.addControl( ControlType::Label, "Caractéristiques de la seringue 1 : ", "Marque : ? " , ControlColor::None, syringe_ref); + uint16_t syringe_volume =ESPUI.addControl( ControlType::Label, "Caractéristiques de la seringue 1 : ", "Volume total = ? mL" , ControlColor::None, syringe_ref); + uint16_t syringe_diameter =ESPUI.addControl( ControlType::Label, "Caractéristiques de la seringue 1 : ", "Diamètre interne = ? mm" , ControlColor::None, syringe_ref); - uint16_t carac1 = ESPUI.addControl( ControlType::Label, "Caractéristiques de la seringue 1 : ", "D = 4mm, V = 10µL", ControlColor::None, tab1); - style (carac1, 3); + style (syringe_ref, 3); + style (syringe_brand, 3); + style (syringe_volume, 3); + style (syringe_diameter, 3); + choose_syringe = ESPUI.addControl(ControlType::Button, "Choisir cette seringue", "Valider", ControlColor::None, syringe_selection, choose_syringe_callback, (void*)19); + //TAB3 : Nouvelle seringue - ESPUI.addControl(ControlType::Text, "Nom de la seringue :", "", ControlColor::None, tab3, text_callback); - ESPUI.addControl(ControlType::Number, "Diamètre interne de la seringue en mm", "5", ControlColor::None, tab3, number_callback); - ESPUI.addControl(ControlType::Number, "Volume total de la seringue en µL", "5", ControlColor::None, tab3, number_callback); + new_syringe =ESPUI.addControl(ControlType::Text, "Nouvelle seringue", "Nom de la seringue :", ControlColor::None, tab3, syringe_name_callback); + ESPUI.addControl(ControlType::Number, "Diamètre interne de la seringue en mm", "5", ControlColor::None, new_syringe, number_callback); + ESPUI.addControl(ControlType::Number, "Volume total de la seringue en µL", "5", ControlColor::None, new_syringe, number_callback); - add_syringe = ESPUI.addControl(ControlType::Button, "Ajouter la seringue", "Valider", ControlColor::None, tab3, add_syringe_callback, (void*)19); - + add_syringe = ESPUI.addControl(ControlType::Button, "Ajouter la seringue", "Valider", ControlColor::None, new_syringe, add_syringe_callback, (void*)19); + + style (new_syringe, 3); //TAB4 : Configurations avancées //Diamètre de la vis ESPUI.addControl(ControlType::Number, "Diamètre de la vis sans fin", "5", ControlColor::None, tab4, number_callback); //Sens de rotation du moteur - ESPUI.addControl(ControlType::Switcher, "Sens de rotation du moteur", "Horaire", ControlColor::None, tab4, other_switch_callback); + ESPUI.addControl(ControlType::Switcher, "Sens de rotation du moteur", "Horaire", ControlColor::None, tab4, switch_callback); @@ -128,7 +137,7 @@ void number_callback(Control* sender, int type) } -void text_callback(Control* sender, int type) +void syringe_name_callback(Control* sender, int type) { Serial.print("Text: ID: "); Serial.print(sender->id); @@ -138,15 +147,16 @@ void text_callback(Control* sender, int type) -void select_callback(Control* sender, int value) +void syringe_selection_callback(Control* sender, int value) { Serial.print("Select: ID: "); Serial.print(sender->id); Serial.print(", Value: "); Serial.println(sender->value); + select_value = sender->value; } -void other_switch_callback(Control* sender, int value) +void switch_callback(Control* sender, int value) { switch (value) { @@ -283,11 +293,26 @@ void syringe_filled_placement_callback (Control* sender, int value, void* param) } + +void choose_syringe_callback (Control* sender, int value, void* param) +{ + switch (value) + { + case B_DOWN: + Serial.println("Button DOWN"); + break; + + case B_UP: + Serial.println("Button UP"); + break; + } + +} + /*************ON/OFF_METHODS****************/ void syringe_pump_on() { - Serial.print("Active:"); ESPUI.print(status_syringe_pump, "En marche"); ESPUI.updateSwitcher(activation_syringe_pump, true); style (status_syringe_pump, 1); @@ -298,7 +323,6 @@ void syringe_pump_on() void syringe_pump_off() { - Serial.print("Inactive"); ESPUI.print(status_syringe_pump, "A l'arrêt"); ESPUI.updateSwitcher(activation_syringe_pump, false); style (status_syringe_pump, 2); @@ -309,25 +333,23 @@ void syringe_pump_off() void syringe_filled_placement_on() { - Serial.print("Active:"); ESPUI.print(status_syringe_filled, "En place"); style (status_syringe_filled, 1); style (syringe_filled_placement, 1); ESPUI.setEnabled(initialisation, false); - style (initialisation, 1); + style (initialisation, 2); syringe_pump_on(); } void syringe_filled_placement_off() { - Serial.print("Inactive"); ESPUI.print(status_syringe_filled, "Enlevée"); style (status_syringe_filled, 2); style (syringe_filled_placement, 2); ESPUI.setEnabled(initialisation, true); - style (initialisation, 2); + style (initialisation, 1); } @@ -338,16 +360,16 @@ void syringe_filled_placement_off() void select_syringe_maj(uint16_t tab) { - select1 = ESPUI.addControl(ControlType::Select, "Choix de la seringue :", "", ControlColor::None, tab, select_callback); + syringe_selection = ESPUI.addControl(ControlType::Select, "Choix de la seringue :", "", ControlColor::None, tab, syringe_selection_callback); JsonObject root = syringe.get_syringe_database_object(); for (JsonPair kv : root) { - ESPUI.addControl(ControlType::Option, kv.key().c_str(), "", ControlColor::None, select1); + ESPUI.addControl(ControlType::Option, kv.key().c_str(), kv.key().c_str(), ControlColor::None, syringe_selection); } - style (select1, 3); + style (syringe_selection, 3); } diff --git a/web.h b/web.h index b9872f61a45f276ffb92bea99dfdc85fefbb9843..07f2952f494566d9d598cdf9599848e21a94a913 100644 --- a/web.h +++ b/web.h @@ -18,9 +18,12 @@ int status_syringe_pump, status_syringe_filled; -uint16_t activation_syringe_pump, syringe_filled_placement, initialisation, position_choice, label_position_choice, add_syringe; +uint16_t activation_syringe_pump, syringe_filled_placement, initialisation, position_choice, label_position_choice, add_syringe, choose_syringe; + +uint16_t syringe_selection, syringe_ref, syringe_brand, syringe_volume, syringe_diameter, new_syringe; + +String select_value; -uint16_t select1; int millis_label_id; @@ -65,16 +68,17 @@ void syringe_pump_on_off(); //callback methods void number_callback(Control* sender, int type); -void text_callback(Control* sender, int type); +void syringe_name_callback(Control* sender, int type); -void select_callback(Control* sender, int value); -void other_switch_callback(Control* sender, int value); +void syringe_selection_callback(Control* sender, int value); +void switch_callback(Control* sender, int value); void button_seringue(Control* sender, int type); void syringe_filled_placement_callback (Control* sender, int value, void* param); +void choose_syringe_callback (Control* sender, int value, void* param);