diff options
Diffstat (limited to 'confui/ui_node.cpp')
| -rw-r--r-- | confui/ui_node.cpp | 18 | 
1 files changed, 18 insertions, 0 deletions
| diff --git a/confui/ui_node.cpp b/confui/ui_node.cpp index 94768f9..c810c29 100644 --- a/confui/ui_node.cpp +++ b/confui/ui_node.cpp @@ -16,6 +16,9 @@ CDNodeWidget::CDNodeWidget(cd_s_node* node, QWidget *parent) : QWidget(parent) {  	main_layout->addWidget(switch_on_off);  	main_layout->addWidget(button_add_remove); +	connect(button_add_remove, &QPushButton::clicked, this, &CDNodeWidget::toggle_provision); +	connect(switch_on_off, &QCheckBox::toggled, this, &CDNodeWidget::update_led); +  	update();  	setLayout(main_layout);  } @@ -40,3 +43,18 @@ void CDNodeWidget::update() {  	button_add_remove->setText(_node->provisioned ? "Remove from network" : "Join network");  } + +void CDNodeWidget::toggle_provision() { +	if (_node->provisioned) g_cd_mesh_connector->node_remove_network(_node); +	else g_cd_mesh_connector->node_join_network(_node); + +	update(); +} + +void CDNodeWidget::update_led(bool on) { +	_node->light_on = on; +	g_cd_mesh_connector->update_node(_node); + +	update(); +} + |