Rewritten the hop taste and aroma progress bars to use a gradient.

Sat, 21 May 2022 19:45:14 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Sat, 21 May 2022 19:45:14 +0200
changeset 230
b68c0c61d261
parent 229
815ee118ad49
child 231
54b5abd46958

Rewritten the hop taste and aroma progress bars to use a gradient.

src/EditProduct.h file | annotate | diff | comparison | revisions
src/EditProductTab4.cpp file | annotate | diff | comparison | revisions
src/EditRecipe.h file | annotate | diff | comparison | revisions
src/EditRecipeTab3.cpp file | annotate | diff | comparison | revisions
--- a/src/EditProduct.h	Sat May 21 16:50:12 2022 +0200
+++ b/src/EditProduct.h	Sat May 21 19:45:14 2022 +0200
@@ -239,13 +239,8 @@
 private:
     Ui::EditProduct *ui;
     QString bar_red = "QProgressBar::chunk {background: #FF0000;}";
-    QString bar_orange = "QProgressBar::chunk {background: #EB7331;}";
     QString bar_green = "QProgressBar::chunk {background: #008C00;}";
     QString bar_20 = "QProgressBar::chunk {background: #004D00;}";
-    QString bar_40 = "QProgressBar::chunk {background: #008C00;}";
-    QString bar_60 = "QProgressBar::chunk {background: #00BF00;}";
-    QString bar_80 = "QProgressBar::chunk {background: #00FF00;}";
-    QString bar_100 = "QProgressBar::chunk {background: #80FF80;}";
     int recno;
     bool textIsChanged = false;
     double ret_fg;
--- a/src/EditProductTab4.cpp	Sat May 21 16:50:12 2022 +0200
+++ b/src/EditProductTab4.cpp	Sat May 21 19:45:14 2022 +0200
@@ -151,19 +151,38 @@
 {
     if (value < 20) {
         ui->hop_tasteShow->setStyleSheet(bar_20);
-	ui->hop_tasteShow->setFormat(tr("Very low"));
-    } else if (value < 40) {
-	ui->hop_tasteShow->setStyleSheet(bar_40);
-	ui->hop_tasteShow->setFormat(tr("Low"));
-    } else if (value < 60) {
-        ui->hop_tasteShow->setStyleSheet(bar_60);
-        ui->hop_tasteShow->setFormat(tr("Moderate"));
-    } else if (value < 80) {
-        ui->hop_tasteShow->setStyleSheet(bar_80);
-        ui->hop_tasteShow->setFormat(tr("High"));
+        ui->hop_tasteShow->setFormat(tr("Very low"));
     } else {
-        ui->hop_tasteShow->setStyleSheet(bar_100);
-	ui->hop_tasteShow->setFormat(tr("Very high"));
+        double s1 = 20.0 / value;
+        if (value < 40) {
+            ui->hop_tasteShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                  "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #008C00, stop: 1 #008C00);}").arg(s1).arg(s1));
+            ui->hop_tasteShow->setFormat(tr("Low"));
+        } else {
+            double s2 = 40.0 / value;
+            if (value < 60) {
+                ui->hop_tasteShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                  "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #006C00, stop: %3 #006C00, stop: %4 #008C00, stop: 1 #008C00"
+                  ");}").arg(s1).arg(s1).arg(s2).arg(s2));
+                ui->hop_tasteShow->setFormat(tr("Moderate"));
+            } else {
+                double s3 = 60.0 / value;
+                if (value < 80) {
+                    ui->hop_tasteShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                      "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #006C00, stop: %3 #006C00, stop: %4 #008C00, stop: %5 #008C00, "
+                      "stop: %6 #00AC00, stop: 1 #00AC00"
+                      ");}").arg(s1).arg(s1).arg(s2).arg(s2).arg(s3).arg(s3));
+                    ui->hop_tasteShow->setFormat(tr("High"));
+                } else {
+                    double s4 = 80.0 / value;
+                    ui->hop_tasteShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                      "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #006C00, stop: %3 #006C00, stop: %4 #008C00, stop: %5 #008C00, "
+                      "stop: %6 #00AC00, stop: %7 #00AC00, stop: %8 #00CC00, stop: 1 #00CC00"
+                      ");}").arg(s1).arg(s1).arg(s2).arg(s2).arg(s3).arg(s3).arg(s4).arg(s4));
+                    ui->hop_tasteShow->setFormat(tr("Very high"));
+                }
+            }
+        }
     }
 }
 
@@ -171,20 +190,39 @@
 void EditProduct::hop_Aroma_valueChanged(int value)
 {
     if (value < 20) {
-        ui->hop_aromaShow->setStyleSheet(bar_20);
+	ui->hop_aromaShow->setStyleSheet(bar_20);
         ui->hop_aromaShow->setFormat(tr("Very low"));
-    } else if (value < 40) {
-        ui->hop_aromaShow->setStyleSheet(bar_40);
-        ui->hop_aromaShow->setFormat(tr("Low"));
-    } else if (value < 60) {
-        ui->hop_aromaShow->setStyleSheet(bar_60);
-        ui->hop_aromaShow->setFormat(tr("Moderate"));
-    } else if (value < 80) {
-        ui->hop_aromaShow->setStyleSheet(bar_80);
-        ui->hop_aromaShow->setFormat(tr("High"));
     } else {
-        ui->hop_aromaShow->setStyleSheet(bar_100);
-        ui->hop_aromaShow->setFormat(tr("Very high"));
+	double s1 = 20.0 / value;
+	if (value < 40) {
+	    ui->hop_aromaShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                  "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #008C00, stop: 1 #008C00);}").arg(s1).arg(s1));
+	    ui->hop_aromaShow->setFormat(tr("Low"));
+	} else {
+	    double s2 = 40.0 / value;
+	    if (value < 60) {
+		ui->hop_aromaShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                  "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #006C00, stop: %3 #006C00, stop: %4 #008C00, stop: 1 #008C00"
+                  ");}").arg(s1).arg(s1).arg(s2).arg(s2));
+		ui->hop_aromaShow->setFormat(tr("Moderate"));
+	    } else {
+		double s3 = 60.0 / value;
+		if (value < 80) {
+		    ui->hop_aromaShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                      "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #006C00, stop: %3 #006C00, stop: %4 #008C00, stop: %5 #008C00, "
+		      "stop: %6 #00AC00, stop: 1 #00AC00"
+                      ");}").arg(s1).arg(s1).arg(s2).arg(s2).arg(s3).arg(s3));
+		    ui->hop_aromaShow->setFormat(tr("High"));
+		} else {
+		    double s4 = 80.0 / value;
+		    ui->hop_aromaShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                      "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #006C00, stop: %3 #006C00, stop: %4 #008C00, stop: %5 #008C00, "
+                      "stop: %6 #00AC00, stop: %7 #00AC00, stop: %8 #00CC00, stop: 1 #00CC00"
+                      ");}").arg(s1).arg(s1).arg(s2).arg(s2).arg(s3).arg(s3).arg(s4).arg(s4));
+		    ui->hop_aromaShow->setFormat(tr("Very high"));
+		}
+	    }
+	}
     }
 }
 
--- a/src/EditRecipe.h	Sat May 21 16:50:12 2022 +0200
+++ b/src/EditRecipe.h	Sat May 21 19:45:14 2022 +0200
@@ -132,13 +132,8 @@
 private:
     Ui::EditRecipe *ui;
     QString bar_red = "QProgressBar::chunk {background: #FF0000;}";
-    QString bar_orange = "QProgressBar::chunk {background: #EB7331;}";
     QString bar_green = "QProgressBar::chunk {background: #008C00;}";
     QString bar_20 = "QProgressBar::chunk {background: #004D00;}";
-    QString bar_40 = "QProgressBar::chunk {background: #008C00;}";
-    QString bar_60 = "QProgressBar::chunk {background: #00BF00;}";
-    QString bar_80 = "QProgressBar::chunk {background: #00FF00;}";
-    QString bar_100 = "QProgressBar::chunk {background: #80FF80;}";
     int recno;
     bool textIsChanged = false;
     /*
--- a/src/EditRecipeTab3.cpp	Sat May 21 16:50:12 2022 +0200
+++ b/src/EditRecipeTab3.cpp	Sat May 21 19:45:14 2022 +0200
@@ -140,19 +140,38 @@
 {
     if (value < 20) {
         ui->hop_tasteShow->setStyleSheet(bar_20);
-	ui->hop_tasteShow->setFormat(tr("Very low"));
-    } else if (value < 40) {
-	ui->hop_tasteShow->setStyleSheet(bar_40);
-	ui->hop_tasteShow->setFormat(tr("Low"));
-    } else if (value < 60) {
-        ui->hop_tasteShow->setStyleSheet(bar_60);
-        ui->hop_tasteShow->setFormat(tr("Moderate"));
-    } else if (value < 80) {
-        ui->hop_tasteShow->setStyleSheet(bar_80);
-        ui->hop_tasteShow->setFormat(tr("High"));
+        ui->hop_tasteShow->setFormat(tr("Very low"));
     } else {
-        ui->hop_tasteShow->setStyleSheet(bar_100);
-	ui->hop_tasteShow->setFormat(tr("Very high"));
+        double s1 = 20.0 / value;
+        if (value < 40) {
+            ui->hop_tasteShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                  "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #008C00, stop: 1 #008C00);}").arg(s1).arg(s1));
+            ui->hop_tasteShow->setFormat(tr("Low"));
+        } else {
+            double s2 = 40.0 / value;
+            if (value < 60) {
+                ui->hop_tasteShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                  "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #006C00, stop: %3 #006C00, stop: %4 #008C00, stop: 1 #008C00"
+                  ");}").arg(s1).arg(s1).arg(s2).arg(s2));
+                ui->hop_tasteShow->setFormat(tr("Moderate"));
+            } else {
+                double s3 = 60.0 / value;
+                if (value < 80) {
+                    ui->hop_tasteShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                      "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #006C00, stop: %3 #006C00, stop: %4 #008C00, stop: %5 #008C00, "
+                      "stop: %6 #00AC00, stop: 1 #00AC00"
+                      ");}").arg(s1).arg(s1).arg(s2).arg(s2).arg(s3).arg(s3));
+                    ui->hop_tasteShow->setFormat(tr("High"));
+                } else {
+                    double s4 = 80.0 / value;
+                    ui->hop_tasteShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                      "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #006C00, stop: %3 #006C00, stop: %4 #008C00, stop: %5 #008C00, "
+                      "stop: %6 #00AC00, stop: %7 #00AC00, stop: %8 #00CC00, stop: 1 #00CC00"
+                      ");}").arg(s1).arg(s1).arg(s2).arg(s2).arg(s3).arg(s3).arg(s4).arg(s4));
+                    ui->hop_tasteShow->setFormat(tr("Very high"));
+                }
+            }
+        }
     }
 }
 
@@ -162,18 +181,37 @@
     if (value < 20) {
         ui->hop_aromaShow->setStyleSheet(bar_20);
         ui->hop_aromaShow->setFormat(tr("Very low"));
-    } else if (value < 40) {
-        ui->hop_aromaShow->setStyleSheet(bar_40);
-        ui->hop_aromaShow->setFormat(tr("Low"));
-    } else if (value < 60) {
-        ui->hop_aromaShow->setStyleSheet(bar_60);
-        ui->hop_aromaShow->setFormat(tr("Moderate"));
-    } else if (value < 80) {
-        ui->hop_aromaShow->setStyleSheet(bar_80);
-        ui->hop_aromaShow->setFormat(tr("High"));
     } else {
-        ui->hop_aromaShow->setStyleSheet(bar_100);
-        ui->hop_aromaShow->setFormat(tr("Very high"));
+        double s1 = 20.0 / value;
+        if (value < 40) {
+            ui->hop_aromaShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                  "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #008C00, stop: 1 #008C00);}").arg(s1).arg(s1));
+            ui->hop_aromaShow->setFormat(tr("Low"));
+        } else {
+            double s2 = 40.0 / value;
+            if (value < 60) {
+                ui->hop_aromaShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                  "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #006C00, stop: %3 #006C00, stop: %4 #008C00, stop: 1 #008C00"
+                  ");}").arg(s1).arg(s1).arg(s2).arg(s2));
+                ui->hop_aromaShow->setFormat(tr("Moderate"));
+            } else {
+                double s3 = 60.0 / value;
+                if (value < 80) {
+                    ui->hop_aromaShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                      "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #006C00, stop: %3 #006C00, stop: %4 #008C00, stop: %5 #008C00, "
+                      "stop: %6 #00AC00, stop: 1 #00AC00"
+                      ");}").arg(s1).arg(s1).arg(s2).arg(s2).arg(s3).arg(s3));
+                    ui->hop_aromaShow->setFormat(tr("High"));
+                } else {
+                    double s4 = 80.0 / value;
+                    ui->hop_aromaShow->setStyleSheet(QString("QProgressBar::chunk {background-color: qlineargradient(x0: 0, x2: 1, "
+                      "stop: 0 #004D00, stop: %1 #004D00, stop: %2 #006C00, stop: %3 #006C00, stop: %4 #008C00, stop: %5 #008C00, "
+                      "stop: %6 #00AC00, stop: %7 #00AC00, stop: %8 #00CC00, stop: 1 #00CC00"
+                      ");}").arg(s1).arg(s1).arg(s2).arg(s2).arg(s3).arg(s3).arg(s4).arg(s4));
+                    ui->hop_aromaShow->setFormat(tr("Very high"));
+                }
+            }
+        }
     }
 }
 

mercurial