src/MonCO2meters.cpp

changeset 328
ee2c8b29f389
parent 326
6728b4c29cb4
child 443
3c195eb4e7a1
--- a/src/MonCO2meters.cpp	Fri Jul 01 22:57:31 2022 +0200
+++ b/src/MonCO2meters.cpp	Sat Jul 02 11:23:13 2022 +0200
@@ -15,7 +15,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 #include "MonCO2meters.h"
-#include "EditSupplier.h"
+#include "DetailCO2meter.h"
 #include "MainWindow.h"
 #include "config.h"
 
@@ -73,16 +73,17 @@
 
     qDebug() << "MonCO2meters reload";
     QSqlQuery query("SELECT record,node,alias,online,mode,beercode,beername,temperature,pressure_bar FROM mon_co2meters ORDER BY node,alias");
-    const QStringList labels({tr("Node"), tr("Unit"), tr("Status"), tr("Beer"), tr("Temperature"), tr("Pressure"), tr("Details")});
+    const QStringList labels({tr("Node"), tr("Unit"), tr("Status"), tr("Mode"), tr("Beer"), tr("Temperature"), tr("Pressure"), tr("Details")});
 
-    this->tableCO2meters->setColumnCount(7);
+    this->tableCO2meters->setColumnCount(8);
     this->tableCO2meters->setColumnWidth(0, 150);	/* Node		*/
     this->tableCO2meters->setColumnWidth(1, 100);	/* Unit		*/
-    this->tableCO2meters->setColumnWidth(2, 100);	/* Status	*/
-    this->tableCO2meters->setColumnWidth(3, 390);	/* Beer		*/
-    this->tableCO2meters->setColumnWidth(4, 100);	/* Temperature	*/
-    this->tableCO2meters->setColumnWidth(5, 100);	/* Pressure	*/
-    this->tableCO2meters->setColumnWidth(6,  90);	/* Edit button	*/
+    this->tableCO2meters->setColumnWidth(2,  80);	/* Status	*/
+    this->tableCO2meters->setColumnWidth(3,  80);	/* Mode		*/
+    this->tableCO2meters->setColumnWidth(4, 350);	/* Beer		*/
+    this->tableCO2meters->setColumnWidth(5,  90);	/* Temperature	*/
+    this->tableCO2meters->setColumnWidth(6,  90);	/* Pressure	*/
+    this->tableCO2meters->setColumnWidth(7,  90);	/* Edit button	*/
     this->tableCO2meters->setRowCount(query.size());
     this->tableCO2meters->setHorizontalHeaderLabels(labels);
     this->tableCO2meters->verticalHeader()->hide();
@@ -102,23 +103,23 @@
         item->setTextAlignment(Qt::AlignCenter|Qt::AlignVCenter);
         this->tableCO2meters->setItem(i, 2, item);
 
-	if (query.value("mode").toString() == "ON") {
-            item = new QTableWidgetItem(query.value("beercode").toString()+" - "+query.value("beername").toString());
-            this->tableCO2meters->setItem(i, 3, item);
-        } else {
-            this->tableCO2meters->setItem(i, 3, new QTableWidgetItem(QString("")));
-        }
+	item = new QTableWidgetItem(query.value("mode").toString());
+	item->setTextAlignment(Qt::AlignCenter|Qt::AlignVCenter);
+        this->tableCO2meters->setItem(i, 3, item);
+
+        item = new QTableWidgetItem(query.value("beercode").toString()+" - "+query.value("beername").toString());
+        this->tableCO2meters->setItem(i, 4, item);
 
 	if (query.value("online").toInt()) {
 	    item = new QTableWidgetItem(QString("%1°C").arg(query.value("temperature").toDouble(), 4, 'f', 3, '0'));
             item->setTextAlignment(Qt::AlignCenter|Qt::AlignVCenter);
-            this->tableCO2meters->setItem(i, 4, item);
+            this->tableCO2meters->setItem(i, 5, item);
 	    item = new QTableWidgetItem(QString("%1 bar").arg(query.value("pressure_bar").toDouble(), 3, 'f', 2, '0'));
             item->setTextAlignment(Qt::AlignCenter|Qt::AlignVCenter);
-            this->tableCO2meters->setItem(i, 5, item);
+            this->tableCO2meters->setItem(i, 6, item);
 	} else {
-	    this->tableCO2meters->setItem(i, 4, new QTableWidgetItem(QString("")));
 	    this->tableCO2meters->setItem(i, 5, new QTableWidgetItem(QString("")));
+	    this->tableCO2meters->setItem(i, 6, new QTableWidgetItem(QString("")));
 	}
 
 	/* Add the Edit button */
@@ -131,7 +132,7 @@
 	pLayout->addWidget(btn_edit);
 	pLayout->setContentsMargins(5, 0, 5, 0);
 	pWidget->setLayout(pLayout);
-	this->tableCO2meters->setCellWidget(i, 6, pWidget);
+	this->tableCO2meters->setCellWidget(i, 7, pWidget);
 	query.next();
     }
     emit setStatus(QString(tr("Total items: %1")).arg(query.size()));
@@ -145,16 +146,15 @@
 {
     qDebug() << "refreshCO2meters" << data;
     emit refreshTable();
+    emit updateCO2meter(data);
 }
 
 
 void MonCO2meters::edit(int recno)
 {
-//    EditSupplier dialog(recno, this);
-    /* Signal from editor if a refresh is needed */
-//    connect(&dialog, SIGNAL(entry_changed()), this, SLOT(refreshTable()));
-//    dialog.setModal(true);
-//    dialog.exec();
+    DetailCO2meter dialog(recno, this);
+    dialog.setModal(true);
+    dialog.exec();
 }
 
 

mercurial