Fixed negative bottle of keg volumes and overflow totals.

Sat, 27 Aug 2022 13:54:01 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Sat, 27 Aug 2022 13:54:01 +0200
changeset 404
47f1259378fe
parent 403
2ed66e586a52
child 405
2c828cc3d943

Fixed negative bottle of keg volumes and overflow totals.

src/EditProductTab11.cpp file | annotate | diff | comparison | revisions
--- a/src/EditProductTab11.cpp	Sat Aug 20 19:35:21 2022 +0200
+++ b/src/EditProductTab11.cpp	Sat Aug 27 13:54:01 2022 +0200
@@ -361,9 +361,17 @@
     /*
      * Check if kegs volume plus this new volume fits in the package volume.
      */
+    const QSignalBlocker blocker1(ui->keg_volumeEdit);
+    if (product->keg_amount < 0)
+	product->keg_amount = 0;	/* Failsafe - bugfix */
+    if (val > product->package_volume) {
+	val = product->package_volume;
+	const QSignalBlocker blocker2(ui->bottle_volumeEdit);
+	ui->bottle_volumeEdit->setValue(val);
+    }
+
     if ((val + product->keg_amount) > product->package_volume) {
         double kegs = product->package_volume - val;
-        const QSignalBlocker blocker1(ui->keg_volumeEdit);
         product->keg_amount = kegs;
         ui->keg_volumeEdit->setValue(kegs);
     }
@@ -459,9 +467,17 @@
     /*
      * Check if bottle volume plus this new volume fits in the package volume.
      */
+    const QSignalBlocker blocker1(ui->bottle_volumeEdit);
+    if (product->bottle_amount < 0)
+        product->bottle_amount = 0;        /* Failsafe - bugfix */
+    if (val > product->package_volume) {
+        val = product->package_volume;
+	const QSignalBlocker blocker2(ui->keg_volumeEdit);
+	ui->keg_volumeEdit->setValue(val);
+    }
+
     if ((val + product->bottle_amount) > product->package_volume) {
 	double bottle = product->package_volume - val;
-	const QSignalBlocker blocker1(ui->bottle_volumeEdit);
 	product->bottle_amount = bottle;
 	ui->bottle_volumeEdit->setValue(bottle);
     }

mercurial