src/MainWindow.cpp

changeset 311
449116c083bd
parent 310
bdaac24b86ed
child 332
146874d7bb47
equal deleted inserted replaced
310:bdaac24b86ed 311:449116c083bd
239 /* 239 /*
240 * Two maingroups, nodes and devices. 240 * Two maingroups, nodes and devices.
241 * Node message are detected by the group_id object. 241 * Node message are detected by the group_id object.
242 * Device messages are detected by the device object. 242 * Device messages are detected by the device object.
243 * 243 *
244 * Messages can be connected to client widgets so we can emit messages to them. 244 * Signals can be connected from child widgets so we can emit messages to them.
245 */ 245 */
246 QString device = jsonMessage.object()["device"].toString(); 246 QString device = jsonMessage.object()["device"].toString();
247 QString group_id = jsonMessage.object()["group_id"].toString(); 247 QString group_id = jsonMessage.object()["group_id"].toString();
248 if (device != "") { 248 if (device != "") {
249 if (device == "fermenters") { 249 if (device == "fermenters") {
251 emit updateFermenters(jsonMessage.object()["node"].toString()+"/"+jsonMessage.object()["unit"].toString()); 251 emit updateFermenters(jsonMessage.object()["node"].toString()+"/"+jsonMessage.object()["unit"].toString());
252 } else if (device == "co2meters") { 252 } else if (device == "co2meters") {
253 //qDebug() << "found co2meter" << jsonMessage.object()["node"].toString()+"/"+jsonMessage.object()["unit"].toString(); 253 //qDebug() << "found co2meter" << jsonMessage.object()["node"].toString()+"/"+jsonMessage.object()["unit"].toString();
254 emit updateCO2meters(jsonMessage.object()["node"].toString()+"/"+jsonMessage.object()["unit"].toString()); 254 emit updateCO2meters(jsonMessage.object()["node"].toString()+"/"+jsonMessage.object()["unit"].toString());
255 } else if (device == "ispindels") { 255 } else if (device == "ispindels") {
256 qDebug() << "found iSpindel" << jsonMessage.object()["node"].toString()+"/"+jsonMessage.object()["unit"].toString(); 256 //qDebug() << "found iSpindel" << jsonMessage.object()["node"].toString()+"/"+jsonMessage.object()["unit"].toString();
257 emit updateiSpindels(jsonMessage.object()["node"].toString()+"/"+jsonMessage.object()["unit"].toString()); 257 emit updateiSpindels(jsonMessage.object()["node"].toString()+"/"+jsonMessage.object()["unit"].toString());
258 } else { 258 } else {
259 qDebug() << "unknown device" << device; 259 qDebug() << "unknown device" << device;
260 } 260 }
261 } else if (group_id != "") { 261 } else if (group_id != "") {
262 emit updateNodes(jsonMessage.object()["node"].toString()); 262 emit updateNodes(jsonMessage.object()["node"].toString());
263 // } else if (jsonMessage.object()["ping"].toString() != "") { 263 } else if (jsonMessage.object()["ping"].toInt() ) {
264 // qDebug() << "ping" << jsonMessage; 264 /*
265 * Reply to ping message. Note that the bmsd ignore's
266 * our reply, but we send it anyway.
267 */
268 webSocket->sendTextMessage(QString("{\"pong\":1}"));
265 } else { 269 } else {
266 qDebug() << "unknown WS message" << message; 270 qDebug() << "unknown WS message" << message << jsonMessage;
267 } 271 }
268 } 272 }
269 273
270 274
271 void MainWindow::readsettings() 275 void MainWindow::readsettings()
439 MonFermentersWindow = new MonFermenters(this); 443 MonFermentersWindow = new MonFermenters(this);
440 int index = ui->mainStack->count(); 444 int index = ui->mainStack->count();
441 ui->mainStack->addWidget(MonFermentersWindow); 445 ui->mainStack->addWidget(MonFermentersWindow);
442 ui->mainStack->setCurrentIndex(index); 446 ui->mainStack->setCurrentIndex(index);
443 setWindowTitle( QString("BMSapp - %1 - Monitor Fermenters").arg(VERSIONSTRING)); 447 setWindowTitle( QString("BMSapp - %1 - Monitor Fermenters").arg(VERSIONSTRING));
444 // ui->menuBar->setVisible(false); 448 ui->menuBar->setVisible(false);
445 } 449 }
446 450
447 451
448 void MainWindow::fromMonCO2meters() 452 void MainWindow::fromMonCO2meters()
449 { 453 {
481 MoniSpindelsWindow = new MoniSpindels(this); 485 MoniSpindelsWindow = new MoniSpindels(this);
482 int index = ui->mainStack->count(); 486 int index = ui->mainStack->count();
483 ui->mainStack->addWidget(MoniSpindelsWindow); 487 ui->mainStack->addWidget(MoniSpindelsWindow);
484 ui->mainStack->setCurrentIndex(index); 488 ui->mainStack->setCurrentIndex(index);
485 setWindowTitle( QString("BMSapp - %1 - Monitor iSpindels").arg(VERSIONSTRING)); 489 setWindowTitle( QString("BMSapp - %1 - Monitor iSpindels").arg(VERSIONSTRING));
486 // ui->menuBar->setVisible(false); 490 ui->menuBar->setVisible(false);
487 } 491 }
488 492
489 493
490 void MainWindow::fromRecipesTree() 494 void MainWindow::fromRecipesTree()
491 { 495 {

mercurial