diff options
Diffstat (limited to 'confui')
-rw-r--r-- | confui/mainwindow.cpp | 7 | ||||
-rw-r--r-- | confui/mainwindow.h | 2 | ||||
-rw-r--r-- | confui/ui_node.cpp | 2 | ||||
-rw-r--r-- | confui/ui_node.h | 2 |
4 files changed, 12 insertions, 1 deletions
diff --git a/confui/mainwindow.cpp b/confui/mainwindow.cpp index 4fac1e9..20f61f1 100644 --- a/confui/mainwindow.cpp +++ b/confui/mainwindow.cpp @@ -73,13 +73,18 @@ void CDMainWindow::update() { QAction *menu_port = menu_options_serialport->addAction(QString::fromStdString(port)); connect(menu_port, &QAction::triggered, this, [this, port]() { menu_set_serial_port(port); }); } +} +void CDMainWindow::update_net() { cd_s_bin *msg = cd_cmd_gen_get_node(true, NULL); cd_pclient_send(msg); free(msg); } -void CDMainWindow::menu_refresh() { update(); } +void CDMainWindow::menu_refresh() { + update_net(); + update(); +} void CDMainWindow::menu_add_automation() { g_cd_mesh_connector->create_link(); diff --git a/confui/mainwindow.h b/confui/mainwindow.h index 53a30c2..af52617 100644 --- a/confui/mainwindow.h +++ b/confui/mainwindow.h @@ -42,4 +42,6 @@ public: virtual void menu_add_automation(); /** @brief menu bar set serial port action handler */ void menu_set_serial_port(string new_port); + /** @brief send get_node command to sync network state */ + virtual void update_net(); }; diff --git a/confui/ui_node.cpp b/confui/ui_node.cpp index f1175f6..2898c42 100644 --- a/confui/ui_node.cpp +++ b/confui/ui_node.cpp @@ -44,7 +44,9 @@ void CDNodeWidget::update() { switch_on_off->setChecked(_node->light_on); button_add_remove->setText(_node->provisioned ? "Remove from network" : "Join network"); +} +void CDNodeWidget::update_net() { cd_s_bin *msg = cd_cmd_gen_get_node(false, this->_node->uuid); cd_pclient_send(msg); free(msg); diff --git a/confui/ui_node.h b/confui/ui_node.h index eb07f6d..4c049b3 100644 --- a/confui/ui_node.h +++ b/confui/ui_node.h @@ -34,4 +34,6 @@ public: virtual void toggle_provision(); /** @brief turn led on/off */ virtual void update_led(bool on); + /** @brief send get_node command to update self */ + virtual void update_net(); }; |