src/PrinterDialog.cpp

Tue, 11 Jun 2024 15:51:17 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Tue, 11 Jun 2024 15:51:17 +0200
changeset 533
288ed828d11a
parent 459
fbb250c725bb
child 535
add1938ada0a
permissions
-rw-r--r--

Version 0.6.b2. In export to forum show the final treated water. Complete water recalculate if sparge water acid or ph is changed. Added and changed pH tooltips on the water tab. Added a line with total treated water to the product print.

52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1 /**
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2 * Printer.cpp is part of bmsapp.
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
3 *
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
4 * bmsapp is free software: you can redistribute it and/or modify
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
5 * it under the terms of the GNU General Public License as published by
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
6 * the Free Software Foundation, either version 3 of the License, or
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
7 * (at your option) any later version.
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
8 *
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
9 * bmsapp is distributed in the hope that it will be useful,
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
12 * GNU General Public License for more details.
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
13 *
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
14 * You should have received a copy of the GNU General Public License
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
16 */
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
17 #include "PrinterDialog.h"
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
18 #include "Utils.h"
158
24bc2de721d9 Activated print recipe button. The recipe record structure is now global. Added global product record structure.
Michiel Broek <mbroek@mbse.eu>
parents: 155
diff changeset
19 #include "EditRecipe.h"
175
f1ed3a2a94e9 Initial import of EditProduct, the part from EditRecipe is ported.
Michiel Broek <mbroek@mbse.eu>
parents: 160
diff changeset
20 #include "EditProduct.h"
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
21 #include "config.h"
133
08635b028dcf Load waters during recipe startup. Started calcWater() function. Load profile_setup record global. The print function uses the globals now too instead of loading from the database.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
22 #include "global.h"
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
23
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
24 #include <QPrintPreviewDialog>
90
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 88
diff changeset
25 #include <QDebug>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 88
diff changeset
26 #include <QtSql>
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
27
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
28
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
29 PrinterDialog::PrinterDialog(int job, int rec, QWidget* parent) : QDialog(parent)
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
30 {
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
31 qDebug() << "PrinterDialog start job" << job << "rec" << rec;
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
32
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
33 p_job = job;
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
34 p_rec = rec;
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
35
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
36 QPrinter printer(QPrinter::ScreenResolution);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
37 QPrintPreviewDialog preview(&printer, this);
88
64cf5468fd22 Improve the CMakeLists.txt. Cleanup unused variables. Removed som debug messages.
Michiel Broek <mbroek@mbse.eu>
parents: 83
diff changeset
38 connect(&preview, &QPrintPreviewDialog::paintRequested, this, &PrinterDialog::printDocument);
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
39 preview.exec();
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
40 }
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
41
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
42
88
64cf5468fd22 Improve the CMakeLists.txt. Cleanup unused variables. Removed som debug messages.
Michiel Broek <mbroek@mbse.eu>
parents: 83
diff changeset
43 PrinterDialog::~PrinterDialog() {}
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
44
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
45
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
46 void PrinterDialog::printDocument(QPrinter *printer)
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
47 {
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
48 qDebug() << "PrinterDialog printDocument()";
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
49
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
50 QRect rectangle;
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
51 QRect boundingRect;
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
52 QPainter painter;
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
53 QString w;
54
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
54 QSqlQuery query;
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
55
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
56 const QColor c_header(255, 150, 100, 255);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
57 const QColor c_line1( 210, 245, 255, 255);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
58 const QColor c_line2( 255, 255, 210, 255);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
59 const QColor f_line( 250, 195, 65, 255);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
60 const QColor h_line( 100, 250, 65, 255);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
61 const QColor y_line( 175, 175, 255, 255);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
62 const QColor mw_line( 240, 140, 130, 255);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
63 const QColor mf_line( 95, 180, 25, 255);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
64 const QColor ms_line( 240, 250, 65, 255);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
65 const QColor mo_line( 210, 245, 255, 255);
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
66 const QColor line( 175, 175, 255, 255); // also y_line
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
67 const QColor w_line( 120, 255, 250, 255);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
68
54
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
69 const QStringList y_unit({tr("pkg"), tr("gr"), tr("ml"), tr("ml"), tr("ml"), tr("ml"), tr("gr")});
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
70 const QStringList color_method({ "Morey", "Mosher", "Daniels", "Halberstadt", "Naudts" });
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
71
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
72 painter.begin(printer);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
73 qreal y = 0;
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
74
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
75 if (p_job == PR_SUPPLIES) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
76 qInfo() << "Print supplies";
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
77
54
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
78 /*
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
79 * Print supplies in stock
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
80 */
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
81 double tot_fermentables = 0, tot_hops = 0, tot_yeasts = 0, tot_miscs = 0;
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
82
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
83 printHeader(&painter);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
84 y = 120;
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
85 /* Fermentables supplies header */
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
86 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
87 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
88 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
89 painter.drawText( 20, y+4, 80, 20, Qt::AlignLeft, tr("Type"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
90 painter.drawText(100, y+4, 100, 20, Qt::AlignLeft, tr("Supplier"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
91 painter.drawText(200, y+4, 260, 20, Qt::AlignLeft, tr("Fermentable"));
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
92 painter.drawText(460, y+4, 115, 20, Qt::AlignRight, tr("Stock"));
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
93 painter.drawText(575, y+4, 80, 20, Qt::AlignRight, tr("Price/Kg"));
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
94 painter.drawText(655, y+4, 80, 20, Qt::AlignRight, tr("Value"));
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
95 y += 20;
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
96 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
54
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
97 query.exec("SELECT type,name,supplier,inventory,cost FROM inventory_fermentables WHERE inventory > 0 ORDER BY type,supplier,name");
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
98 query.first();
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
99 for (int i = 0 ; i < query.size() ; i++ ) {
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
100 if ((y + 20) > painter.device()->height()) {
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
101 printer->newPage();
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
102 printHeader(&painter);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
103 y = 120;
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
104 }
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
105 painter.fillRect( 20, y, 715, 20, (i % 2) ? c_line1:c_line2);
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
106 painter.drawText( 20, y+4, 80, 20, Qt::AlignLeft, QCoreApplication::translate("FermentableType", g_fermentable_types[query.value(0).toInt()]));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
107 painter.drawText(100, y+4, 100, 20, Qt::AlignLeft, query.value(2).toString());
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
108 painter.drawText(200, y+4, 260, 20, Qt::AlignLeft, query.value(1).toString());
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
109 w = QString("%1 kg").arg(query.value(3).toDouble(), 10, 'f', 3);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
110 painter.drawText(460, y+4, 115, 20, Qt::AlignRight, w);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
111 w = QString("%1 €").arg(query.value(4).toDouble(), 8, 'f', 2);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
112 painter.drawText(575, y+4, 80, 20, Qt::AlignRight, w);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
113 w = QString("%1 €").arg(query.value(3).toDouble() * query.value(4).toDouble(), 8, 'f', 2);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
114 tot_fermentables += (query.value(3).toDouble() * query.value(4).toDouble());
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
115 painter.drawText(655, y+4, 80, 20, Qt::AlignRight, w);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
116 query.next();
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
117 y += 20;
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
118 }
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
119 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
120 painter.drawText( 20, y+4, 100, 20, Qt::AlignLeft, tr("Total"));
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
121 w = QString("%1 €").arg(tot_fermentables, 8, 'f', 2);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
122 painter.drawText(655, y+4, 80, 20, Qt::AlignRight, w);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
123 y += 20;
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
124
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
125 /* Hops supplies */
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
126 query.exec("SELECT name,form,origin,inventory,cost FROM inventory_hops WHERE inventory > 0 ORDER BY origin,name");
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
127 query.first();
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
128 if ((y + 80 + (query.size() * 20)) > painter.device()->height()) { /* Rows + header + footer + blank */
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
129 printer->newPage();
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
130 printHeader(&painter);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
131 y = 120;
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
132 } else {
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
133 y += 40;
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
134 }
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
135 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
136 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
137 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
138 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Country"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
139 painter.drawText(140, y+4, 240, 20, Qt::AlignLeft, tr("Hop name"));
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
140 painter.drawText(380, y+4, 80, 20, Qt::AlignLeft, tr("Form"));
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
141 painter.drawText(460, y+4, 115, 20, Qt::AlignRight, tr("Stock"));
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
142 painter.drawText(575, y+4, 80, 20, Qt::AlignRight, tr("Price/Kg"));
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
143 painter.drawText(655, y+4, 80, 20, Qt::AlignRight, tr("Value"));
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
144 y += 20;
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
145 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
146 for (int i = 0; i < query.size(); i++) {
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
147 if ((y + 20) > painter.device()->height()) {
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
148 printer->newPage();
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
149 printHeader(&painter);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
150 y = 120;
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
151 }
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
152 painter.fillRect( 20, y, 715, 20, (i % 2) ? c_line1:c_line2);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
153 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, query.value(2).toString());
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
154 painter.drawText(140, y+4, 240, 20, Qt::AlignLeft, query.value(0).toString());
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
155 painter.drawText(380, y+4, 80, 20, Qt::AlignLeft, QCoreApplication::translate("HopForm", g_hop_forms[query.value(1).toInt()]));
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
156 if (query.value(3).toDouble() < 0.6)
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
157 w = QString("%1 gr").arg(query.value(3).toDouble() * 1000.0, 10, 'f', 1);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
158 else
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
159 w = QString("%1 kg").arg(query.value(3).toDouble(), 10, 'f', 3);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
160 painter.drawText(460, y+4, 115, 20, Qt::AlignRight, w);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
161 w = QString("%1 €").arg(query.value(4).toDouble(), 8, 'f', 2);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
162 painter.drawText(575, y+4, 80, 20, Qt::AlignRight, w);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
163 w = QString("%1 €").arg(query.value(3).toDouble() * query.value(4).toDouble(), 8, 'f', 2);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
164 tot_hops += (query.value(3).toDouble() * query.value(4).toDouble());
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
165 painter.drawText(655, y+4, 80, 20, Qt::AlignRight, w);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
166 query.next();
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
167 y += 20;
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
168 }
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
169 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
170 painter.drawText( 20, y+4, 100, 20, Qt::AlignLeft, tr("Total"));
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
171 w = QString("%1 €").arg(tot_hops, 8, 'f', 2);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
172 painter.drawText(655, y+4, 80, 20, Qt::AlignRight, w);
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
173 y += 20;
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
174
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
175 /* Yeasts supplies */
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
176 query.exec("SELECT name,laboratory,product_id,form,inventory,cost FROM inventory_yeasts WHERE inventory > 0 ORDER BY laboratory,product_id");
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
177 query.first();
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
178 if ((y + 80 + (query.size() * 20)) > painter.device()->height()) { /* Rows + header + footer + blank */
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
179 printer->newPage();
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
180 printHeader(&painter);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
181 y = 120;
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
182 } else {
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
183 y += 40;
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
184 }
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
185 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
186 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
187 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
188 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Laboratory"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
189 painter.drawText(140, y+4, 120, 20, Qt::AlignLeft, tr("Product"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
190 painter.drawText(260, y+4, 235, 20, Qt::AlignLeft, tr("Yeast"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
191 painter.drawText(495, y+4, 80, 20, Qt::AlignRight, tr("Stock"));
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
192 painter.drawText(575, y+4, 80, 20, Qt::AlignRight, tr("Price/Kg"));
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
193 painter.drawText(655, y+4, 80, 20, Qt::AlignRight, tr("Value"));
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
194 y += 20;
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
195 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
196 for (int i = 0; i < query.size(); i++) {
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
197 if ((y + 20) > painter.device()->height()) {
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
198 printer->newPage();
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
199 printHeader(&painter);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
200 y = 120;
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
201 }
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
202 painter.fillRect( 20, y, 715, 20, (i % 2) ? c_line1:c_line2);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
203 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, query.value(1).toString());
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
204 painter.drawText(140, y+4, 120, 20, Qt::AlignLeft, query.value(2).toString());
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
205 painter.drawText(260, y+4, 235, 20, Qt::AlignLeft, query.value(0).toString());
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
206 if (query.value(3).toInt() == 0)
54
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
207 w = QString("%1 %2").arg(query.value(4).toDouble(), 10, 'f', 1).arg(y_unit[query.value(3).toInt()]);
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
208 else
54
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
209 w = QString("%1 %2").arg(query.value(4).toDouble() * 1000.0, 10, 'f', 1).arg(y_unit[query.value(3).toInt()]);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
210 painter.drawText(495, y+4, 80, 20, Qt::AlignRight, w);
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
211 w = QString("%1 €").arg(query.value(5).toDouble(), 8, 'f', 2);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
212 painter.drawText(575, y+4, 80, 20, Qt::AlignRight, w);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
213 w = QString("%1 €").arg(query.value(4).toDouble() * query.value(5).toDouble(), 8, 'f', 2);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
214 tot_yeasts += (query.value(4).toDouble() * query.value(5).toDouble());
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
215 painter.drawText(655, y+4, 80, 20, Qt::AlignRight, w);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
216 query.next();
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
217 y += 20;
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
218 }
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
219 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
220 painter.drawText( 20, y+4, 100, 20, Qt::AlignLeft, tr("Total"));
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
221 w = QString("%1 €").arg(tot_yeasts, 8, 'f', 2);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
222 painter.drawText(655, y+4, 80, 20, Qt::AlignRight, w);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
223 y += 20;
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
224
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
225 /* Miscs supplies */
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
226 query.exec("SELECT name,type,amount_is_weight,inventory,cost FROM inventory_miscs WHERE inventory > 0 ORDER BY type,name");
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
227 query.first();
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
228 if ((y + 80 + (query.size() * 20)) > painter.device()->height()) { /* Rows + header + footer + blank */
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
229 printer->newPage();
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
230 printHeader(&painter);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
231 y = 120;
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
232 } else {
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
233 y += 40;
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
234 }
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
235 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
236 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
237 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
238 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Type"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
239 painter.drawText(140, y+4, 320, 20, Qt::AlignLeft, tr("Ingredient"));
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
240 painter.drawText(460, y+4, 115, 20, Qt::AlignRight, tr("Stock"));
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
241 painter.drawText(575, y+4, 80, 20, Qt::AlignRight, tr("Price/Kg"));
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
242 painter.drawText(655, y+4, 80, 20, Qt::AlignRight, tr("Value"));
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
243 y += 20;
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
244 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
245 for (int i = 0; i < query.size(); i++) {
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
246 if ((y + 20) > painter.device()->height()) {
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
247 printer->newPage();
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
248 printHeader(&painter);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
249 y = 120;
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
250 }
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
251 painter.fillRect( 20, y, 715, 20, (i % 2) ? c_line1:c_line2);
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
252 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, QCoreApplication::translate("MiscType", g_misc_types[query.value(1).toInt()]));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
253 painter.drawText(140, y+4, 320, 20, Qt::AlignLeft, query.value(0).toString());
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
254 if (query.value(2).toInt())
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
255 w = QString("%1 gr").arg(query.value(3).toDouble() * 1000.0, 10, 'f', 1);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
256 else
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
257 w = QString("%1 ml").arg(query.value(3).toDouble() * 1000.0, 10, 'f', 1);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
258 painter.drawText(460, y+4, 115, 20, Qt::AlignRight, w);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
259 w = QString("%1 €").arg(query.value(4).toDouble(), 8, 'f', 2);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
260 painter.drawText(575, y+4, 80, 20, Qt::AlignRight, w);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
261 w = QString("%1 €").arg(query.value(3).toDouble() * query.value(4).toDouble(), 8, 'f', 2);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
262 tot_miscs += (query.value(3).toDouble() * query.value(4).toDouble());
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
263 painter.drawText(655, y+4, 80, 20, Qt::AlignRight, w);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
264 query.next();
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
265 y += 20;
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
266 }
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
267 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
268 painter.drawText( 20, y+4, 100, 20, Qt::AlignLeft, tr("Total"));
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
269 w = QString("%1 €").arg(tot_miscs, 8, 'f', 2);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
270 painter.drawText(655, y+4, 80, 20, Qt::AlignRight, w);
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
271 y += 20;
54
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
272
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
273 } else if (p_job == PR_YEASTBANK) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
274 qInfo() << "Print yeastbank";
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
275
54
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
276 /*
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
277 * Print yeast in the private yeast bank.
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
278 */
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
279 printHeader(&painter);
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
280 y = 120;
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
281
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
282 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
283 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
284 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
285 painter.drawText( 20, y+4, 180, 20, Qt::AlignLeft, tr("Yeast"));
54
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
286 painter.drawText(200, y+4, 230, 20, Qt::AlignLeft, tr("Description"));
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
287 painter.drawText(430, y+4, 80, 20, Qt::AlignCenter, tr("Type"));
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
288 painter.drawText(510, y+4, 80, 20, Qt::AlignCenter, tr("Form"));
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
289 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, tr("Stock"));
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
290 painter.drawText(665, y+4, 70, 20, Qt::AlignLeft, tr("Date"));
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
291 y += 20;
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
292 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
293 query.prepare("SELECT name,type,form,inventory,production_date,short_desc "
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
294 "FROM inventory_yeasts WHERE inventory > 0 AND laboratory = :my_lab ORDER BY product_id");
133
08635b028dcf Load waters during recipe startup. Started calcWater() function. Load profile_setup record global. The print function uses the globals now too instead of loading from the database.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
295 query.bindValue(":my_lab", my_yeastlab);
54
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
296 query.exec();
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
297 query.first();
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
298 for (int i = 0; i < query.size(); i++) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
299 painter.fillRect( 20, y, 715, 20, (i % 2) ? c_line1:c_line2);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
300 painter.drawText( 20, y+4, 180, 20, Qt::AlignLeft, query.value(0).toString());
54
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
301 painter.drawText(200, y+4, 230, 20, Qt::AlignLeft, query.value(5).toString());
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
302 painter.drawText(430, y+4, 80, 20, Qt::AlignCenter, QCoreApplication::translate("YeastType", g_yeast_types[query.value(1).toInt()]));
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
303 painter.drawText(510, y+4, 80, 20, Qt::AlignCenter, QCoreApplication::translate("YeastForm", g_yeast_forms[query.value(2).toInt()]));
54
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
304
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
305 if (query.value(2).toInt() == 0)
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
306 w = QString("%1 %2").arg(query.value(3).toDouble(), 10, 'f', 1).arg(y_unit[query.value(2).toInt()]);
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
307 else
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
308 w = QString("%1 %2").arg(query.value(3).toDouble() * 1000.0, 10, 'f', 1).arg(y_unit[query.value(2).toInt()]);
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
309 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, w);
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
310 painter.drawText(665, y+4, 70, 20, Qt::AlignLeft, query.value(4).toString());
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
311 query.next();
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
312 y += 20;
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
313 }
158
24bc2de721d9 Activated print recipe button. The recipe record structure is now global. Added global product record structure.
Michiel Broek <mbroek@mbse.eu>
parents: 155
diff changeset
314 } else if (p_job == PR_RECIPE) {
24bc2de721d9 Activated print recipe button. The recipe record structure is now global. Added global product record structure.
Michiel Broek <mbroek@mbse.eu>
parents: 155
diff changeset
315
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
316 qInfo() << "Print recipe" << recipe->record;
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
317
158
24bc2de721d9 Activated print recipe button. The recipe record structure is now global. Added global product record structure.
Michiel Broek <mbroek@mbse.eu>
parents: 155
diff changeset
318 printHeader(&painter);
24bc2de721d9 Activated print recipe button. The recipe record structure is now global. Added global product record structure.
Michiel Broek <mbroek@mbse.eu>
parents: 155
diff changeset
319 y = 120;
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
320 /* Generic header */
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
321 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
322 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
323 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
324 painter.drawText( 20, y+4, 715, 20, Qt::AlignCenter, tr("Recipe overview"));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
325 y += 20;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
326 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
327 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
328 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Brew type"));
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
329 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QCoreApplication::translate("Recipe_type", g_recipe_types[recipe->type]));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
330 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
331 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Efficiency"));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
332 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 %").arg(recipe->efficiency, 1, 'f', 1));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
333 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
334 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
335 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Boil time"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
336 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 minutes.").arg(recipe->boil_time, 1, 'f', 0));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
337 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
338 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Batch size"));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
339 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 L.").arg(recipe->batch_size, 1, 'f', 1));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
340 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
341 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
342 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Start SG"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
343 painter.drawText(170, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(recipe->est_og, 1, 'f', 3));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
344 painter.drawText(260, y+4, 90, 20, Qt::AlignLeft, QString("(%1 - %2)").arg(recipe->st_og_min, 1, 'f', 3).arg(recipe->st_og_max, 1, 'f', 3));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
345 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
346 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("End SG"));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
347 painter.drawText(555, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(recipe->est_fg, 1, 'f', 3));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
348 painter.drawText(645, y+4, 90, 20, Qt::AlignLeft, QString("(%1 - %2)").arg(recipe->st_fg_min, 1, 'f', 3).arg(recipe->st_fg_max, 1, 'f', 3));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
349 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
350 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
351 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Estimated Alcohol"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
352 painter.drawText(170, y+4, 90, 20, Qt::AlignLeft, QString("%1%").arg(recipe->est_abv, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
353 painter.drawText(260, y+4, 90, 20, Qt::AlignLeft, QString("(%1 - %2)").arg(recipe->st_abv_min, 1, 'f', 1).arg(recipe->st_abv_max, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
354 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
355 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Estimated CO2 vol"));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
356 painter.drawText(555, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(recipe->est_carb, 1, 'f', 1));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
357 painter.drawText(645, y+4, 90, 20, Qt::AlignLeft, QString("(%1 - %2)").arg(recipe->st_carb_min, 1, 'f', 1).arg(recipe->st_carb_max, 1, 'f', 1));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
358 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
359 painter.fillRect( 20, y, 150, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
360 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Color (") + color_method[recipe->color_method] + ")");
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
361 painter.fillRect(170, y, 180, 20, Utils::ebc_to_color(recipe->est_color));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
362 if (recipe->est_color > 30)
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
363 painter.setPen(Qt::white);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
364 painter.drawText(170, y+4, 90, 20, Qt::AlignLeft, QString("%1 EBC").arg(recipe->est_color, 1, 'f', 0));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
365 painter.drawText(260, y+4, 90, 20, Qt::AlignLeft, QString("(%1 - %2)").arg(recipe->st_color_min, 1, 'f', 0).arg(recipe->st_color_max, 1, 'f', 0));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
366 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
367 painter.fillRect(405, y, 330, 20, c_line1);
336
e97f9e87d94b IBU method names are now global.
Michiel Broek <mbroek@mbse.eu>
parents: 301
diff changeset
368 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("IBU (") + g_ibu_method[recipe->ibu_method] + ")");
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
369 painter.drawText(555, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(recipe->est_ibu, 1, 'f', 1));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
370 painter.drawText(645, y+4, 90, 20, Qt::AlignLeft, QString("(%1 - %2)").arg(recipe->st_ibu_min, 1, 'f', 0).arg(recipe->st_ibu_max, 1, 'f', 0));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
371 y += 40;
158
24bc2de721d9 Activated print recipe button. The recipe record structure is now global. Added global product record structure.
Michiel Broek <mbroek@mbse.eu>
parents: 155
diff changeset
372
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
373 /* Fermentables */
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
374 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
375 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
376 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
377 painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, tr("Fermentable"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
378 painter.drawText(285, y+4, 70, 20, Qt::AlignRight, tr("Percent"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
379 painter.drawText(360, y+4, 70, 20, Qt::AlignRight, tr("Yield"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
380 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
381 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at"));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
382 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount"));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
383 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost"));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
384 y += 20;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
385 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
386 double cost_fermentables = 0;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
387 QString soort, amount, use;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
388 for (int i = 0; i < recipe->fermentables.size(); i++) {
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
389 double cost = recipe->fermentables.at(i).amount * recipe->fermentables.at(i).cost;
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
390 cost_fermentables += cost;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
391
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
392 if (recipe->fermentables.at(i).type == 0)
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
393 soort = QCoreApplication::translate("FermentableGraintype", g_fermentable_graintypes[recipe->fermentables.at(i).graintype]);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
394 else
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
395 soort = QCoreApplication::translate("FermentableType", g_fermentable_types[recipe->fermentables.at(i).type]);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
396
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
397 if (recipe->fermentables.at(i).amount > 100)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
398 amount = QString("%1 kg").arg(recipe->fermentables.at(i).amount, 1, 'f', 1);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
399 else if (recipe->fermentables.at(i).amount > 10)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
400 amount = QString("%1 kg").arg(recipe->fermentables.at(i).amount, 1, 'f', 2);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
401 else
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
402 amount = QString("%1 gr").arg(recipe->fermentables.at(i).amount * 1000, 1, 'f', 0);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
403
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
404 painter.fillRect( 20, y, 715, 20, f_line);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
405
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
406 painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, recipe->fermentables.at(i).name +
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
407 QString(", %1 EBC (").arg(recipe->fermentables.at(i).color, 1, 'f', 0) +
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
408 recipe->fermentables.at(i).supplier + ")");
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
409 painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(recipe->fermentables.at(i).percentage, 1, 'f', 1));
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
410 painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(recipe->fermentables.at(i).yield, 1, 'f', 1));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
411 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, soort);
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
412 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, QCoreApplication::translate("FermentableAdded", g_fermentable_added[recipe->fermentables.at(i).added]));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
413 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, amount);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
414 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
415 y += 20;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
416 }
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
417 painter.fillRect(670, y, 60, 20, c_line1);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
418 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost_fermentables, 1, 'f', 3));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
419 y += 40;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
420
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
421 /* Hops */
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
422 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
423 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
424 painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, tr("Hop"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
425 painter.drawText(285, y+4, 70, 20, Qt::AlignRight, tr("Alpha"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
426 painter.drawText(360, y+4, 70, 20, Qt::AlignRight, tr("IBU"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
427 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
428 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at"));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
429 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount"));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
430 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost"));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
431 y += 20;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
432 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
433 double cost_hops = 0;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
434 for (int i = 0; i < recipe->hops.size(); i++) {
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
435
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
436 double cost = recipe->hops.at(i).amount * recipe->hops.at(i).cost;
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
437 cost_hops += cost;
373
b02aca4e926c First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.
Michiel Broek <mbroek@mbse.eu>
parents: 367
diff changeset
438 double ibu = Utils::toIBU(recipe->hops.at(i).useat, recipe->hops.at(i).form, recipe->preboil_sg, recipe->est_og, recipe->batch_size,
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
439 recipe->hops.at(i).amount, recipe->hops.at(i).time, recipe->hops.at(i).alpha,
373
b02aca4e926c First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.
Michiel Broek <mbroek@mbse.eu>
parents: 367
diff changeset
440 recipe->ibu_method, 0, recipe->hops.at(i).time, 0, recipe->boil_time, 0, 0, 0,
b02aca4e926c First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.
Michiel Broek <mbroek@mbse.eu>
parents: 367
diff changeset
441 recipe->hops.at(i).utilisation, recipe->hops.at(i).bu_factor);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
442
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
443 if (recipe->hops.at(i).useat == 2 || recipe->hops.at(i).useat == 4) // Boil or Whirlpool
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
444 use = QCoreApplication::translate("HopUse", g_hop_useat[recipe->hops.at(i).useat]) + QString(" %1 min").arg(recipe->hops.at(i).time);
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
445 else if (recipe->hops.at(i).useat == 5) // Dryhop
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
446 use = QCoreApplication::translate("HopUse", g_hop_useat[recipe->hops.at(i).useat]) + QString(" %1 days").arg(recipe->hops.at(i).time / 1440);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
447 else
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
448 use = QCoreApplication::translate("HopUse", g_hop_useat[recipe->hops.at(i).useat]);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
449
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
450 if (recipe->hops.at(i).amount > 1)
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
451 amount = QString("%1 kg").arg(recipe->hops.at(i).amount, 1, 'f', 3);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
452 else
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
453 amount = QString("%1 gr").arg(recipe->hops.at(i).amount * 1000, 1, 'f', 1);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
454
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
455 painter.fillRect( 20, y, 715, 20, h_line);
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
456 painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, recipe->hops.at(i).name + " (" + recipe->hops.at(i).origin + ")");
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
457 painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(recipe->hops.at(i).alpha, 1, 'f', 1));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
458 painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(ibu, 1, 'f', 1));
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
459 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, QCoreApplication::translate("HopForm", g_hop_forms[recipe->hops.at(i).form]));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
460 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, use);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
461 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, amount);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
462 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
463 y += 20;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
464 }
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
465 painter.fillRect(670, y, 60, 20, c_line1);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
466 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost_hops, 1, 'f', 3));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
467 y += 40;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
468
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
469 /* Yeasts */
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
470 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
471 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
472 painter.drawText( 20, y+4, 335, 20, Qt::AlignLeft, tr("Yeast"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
473 painter.drawText(360, y+4, 70, 20, Qt::AlignRight, tr("Attn"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
474 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
475 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at"));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
476 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount"));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
477 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost"));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
478 y += 20;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
479 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
480 double cost_yeasts = 0;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
481 for (int i = 0; i < recipe->yeasts.size(); i++) {
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
482 double cost = recipe->yeasts.at(i).amount * recipe->yeasts.at(i).cost;
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
483 cost_yeasts += cost;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
484
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
485 if (recipe->yeasts.at(i).form == 0)
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
486 amount = QString("%1 pack").arg(recipe->yeasts.at(i).amount, 1, 'f', 0);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
487 else if (recipe->yeasts.at(i).form == 1 || recipe->yeasts.at(i).form == 6)
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
488 amount = QString("%1 gr").arg(recipe->yeasts.at(i).amount * 1000.0, 1, 'f', 1);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
489 else
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
490 amount = QString("%1 ml").arg(recipe->yeasts.at(i).amount * 1000.0, 1, 'f', 1);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
491
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
492 painter.fillRect( 20, y, 715, 20, y_line);
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
493 painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, recipe->yeasts.at(i).laboratory + " " +
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
494 recipe->yeasts.at(i).product_id + " (" +
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
495 recipe->yeasts.at(i).name + ")");
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
496 painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(recipe->yeasts.at(i).attenuation, 1, 'f', 1));
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
497 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, QCoreApplication::translate("YeastForm", g_yeast_forms[recipe->yeasts.at(i).form]));
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
498 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, QCoreApplication::translate("YeastUse", g_yeast_use[recipe->yeasts.at(i).use]));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
499 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, amount);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
500 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
501 y += 20;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
502 }
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
503 painter.fillRect(670, y, 60, 20, c_line1);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
504 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost_yeasts, 1, 'f', 3));
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
505
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
506 if ((y + 80 + (recipe->miscs.size() * 20)) > painter.device()->height()) { /* Rows + header + footer + blank */
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
507 printer->newPage();
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
508 printHeader(&painter);
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
509 y = 120;
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
510 } else {
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
511 y += 40;
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
512 }
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
513
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
514 /* Miscs */
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
515 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
516 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
517 painter.drawText( 20, y+4, 410, 20, Qt::AlignLeft, tr("Misc ingredient"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
518 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
519 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at"));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
520 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount"));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
521 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost"));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
522 y += 20;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
523 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
524 double cost_miscs = 0;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
525 for (int i = 0; i < recipe->miscs.size(); i++) {
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
526 double cost = recipe->miscs.at(i).amount * recipe->miscs.at(i).cost;
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
527 cost_miscs += cost;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
528
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
529 if (recipe->miscs.at(i).use_use == 2)
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
530 use = QCoreApplication::translate("MiscUse", g_misc_uses[recipe->miscs.at(i).use_use]) + QString(" %1 min").arg(recipe->miscs.at(i).time);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
531 else
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
532 use = QCoreApplication::translate("MiscUse", g_misc_uses[recipe->miscs.at(i).use_use]);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
533
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
534 if (recipe->miscs.at(i).type == 4) // Water agent
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
535 painter.fillRect( 20, y, 715, 20, mw_line);
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
536 else if (recipe->miscs.at(i).type == 3) // Fining
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
537 painter.fillRect( 20, y, 715, 20, mf_line);
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
538 else if (recipe->miscs.at(i).type < 3 || recipe->miscs.at(i).type == 5) // Spice, Herb, Flavour, Yeast nutrient
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
539 painter.fillRect( 20, y, 715, 20, ms_line);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
540 else
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
541 painter.fillRect( 20, y, 715, 20, mo_line);
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
542 painter.drawText( 20, y+4, 410, 20, Qt::AlignLeft, recipe->miscs.at(i).name);
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
543 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, QCoreApplication::translate("MiscType", g_misc_types[recipe->miscs.at(i).type]));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
544 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, use);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
545 painter.drawText(605, y+4, 60, 20, Qt::AlignRight,
379
0f2ce4ebd1b8 Print recipe and product, miscs weights have 2 decimals. Add hop extract during bottling to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
546 QString("%1 %2").arg(recipe->miscs.at(i).amount * 1000.0, 1, 'f', 2).arg(recipe->miscs.at(i).amount_is_weight ? "gr":"ml"));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
547 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
548 y += 20;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
549 }
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
550 painter.fillRect(670, y, 60, 20, c_line1);
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
551 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost_miscs, 1, 'f', 3));
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
552
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
553 if ((y + 60 + (recipe->mashs.size() * 20)) > painter.device()->height()) { /* Rows + header + blank */
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
554 printer->newPage();
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
555 printHeader(&painter);
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
556 y = 120;
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
557 } else {
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
558 y += 40;
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
559 }
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
560
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
561 /* Mash */
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
562 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
563 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
564 painter.drawText( 20, y+4, 160, 20, Qt::AlignLeft, tr("Mash step"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
565 painter.drawText(180, y+4, 80, 20, Qt::AlignLeft, tr("Step type"));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
566 painter.drawText(260, y+4, 60, 20, Qt::AlignRight, tr("Start °C"));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
567 painter.drawText(325, y+4, 60, 20, Qt::AlignRight, tr("End °C"));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
568 painter.drawText(390, y+4, 60, 20, Qt::AlignRight, tr("Time"));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
569 painter.drawText(455, y+4, 60, 20, Qt::AlignRight, tr("Ramp"));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
570 painter.drawText(520, y+4, 60, 20, Qt::AlignRight, tr("L/kg"));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
571 painter.drawText(585, y+4, 70, 20, Qt::AlignRight, tr("Inf/dec L."));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
572 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, tr("Inf/dec °C"));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
573 y += 20;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
574 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
575 for (int i = 0; i < recipe->mashs.size(); i++) {
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
576 painter.fillRect( 20, y, 715, 20, line);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
577 painter.drawText( 20, y+4, 160, 20, Qt::AlignLeft, recipe->mashs.at(i).step_name);
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
578 painter.drawText(180, y+4, 80, 20, Qt::AlignLeft, QCoreApplication::translate("StepType", g_step_types[recipe->mashs.at(i).step_type]));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
579 painter.drawText(260, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(recipe->mashs.at(i).step_temp, 1, 'f', 1));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
580 painter.drawText(325, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(recipe->mashs.at(i).end_temp, 1, 'f', 1));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
581 painter.drawText(390, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(recipe->mashs.at(i).step_time, 1, 'f', 0));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
582 painter.drawText(455, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(recipe->mashs.at(i).ramp_time, 1, 'f', 0));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
583 painter.drawText(520, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(recipe->mashs.at(i).step_wg_ratio, 1, 'f', 2));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
584 if (recipe->mashs.at(i).step_type != 1) {
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
585 painter.drawText(585, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->mashs.at(i).step_infuse_amount, 1, 'f', 1));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
586 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->mashs.at(i).step_infuse_temp, 1, 'f', 1));
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
587 }
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
588 y += 20;
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
589 }
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
590
366
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
591 if ((y + 100 + ((recipe->w2_amount > 0) ? 40:0)) > painter.device()->height()) { /* waters + header + blank */
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
592 printer->newPage();
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
593 printHeader(&painter);
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
594 y = 120;
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
595 } else {
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
596 y += 40;
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
597 }
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
598
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
599 /* Water */
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
600 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
601 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
602 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Water source"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
603 painter.drawText(170, y+4, 70, 20, Qt::AlignRight, tr("Volume"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
604 painter.drawText(240, y+4, 70, 20, Qt::AlignRight, tr("Ca"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
605 painter.drawText(310, y+4, 70, 20, Qt::AlignRight, tr("Mg"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
606 painter.drawText(380, y+4, 70, 20, Qt::AlignRight, tr("CaCO3"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
607 painter.drawText(450, y+4, 70, 20, Qt::AlignRight, tr("Na"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
608 painter.drawText(520, y+4, 70, 20, Qt::AlignRight, tr("Cl"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
609 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, tr("SO4"));
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
610 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, tr("pH"));
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
611 y += 20;
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
612 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
613 painter.fillRect( 20, y, 715, 20, w_line);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
614 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, recipe->w1_name);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
615 painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(recipe->w1_amount, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
616 painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_calcium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
617 painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_magnesium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
618 painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_total_alkalinity, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
619 painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_sodium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
620 painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_chloride, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
621 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_sulfate, 1, 'f', 1));
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
622 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_ph, 1, 'f', 2));
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
623 y += 20;
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
624 if (recipe->w2_amount > 0) {
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
625 /*
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
626 * If there is dillution water, show it and the mixed result too.
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
627 */
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
628 painter.fillRect( 20, y, 715, 20, w_line);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
629 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, recipe->w2_name);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
630 painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(recipe->w2_amount, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
631 painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_calcium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
632 painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_magnesium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
633 painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_total_alkalinity, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
634 painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_sodium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
635 painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_chloride, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
636 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_sulfate, 1, 'f', 1));
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
637 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_ph, 1, 'f', 2));
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
638 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
639 painter.fillRect( 20, y, 715, 20, w_line);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
640 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Mixed water"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
641 painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(recipe->wg_amount, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
642 painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_calcium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
643 painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_magnesium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
644 painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_total_alkalinity, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
645 painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_sodium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
646 painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_chloride, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
647 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_sulfate, 1, 'f', 1));
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
648 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_ph, 1, 'f', 2));
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
649 y += 20;
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
650 }
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
651 painter.fillRect( 20, y, 715, 20, w_line);
366
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
652 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Treated mash water"));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
653 painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_calcium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
654 painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_magnesium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
655 painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_total_alkalinity, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
656 painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_sodium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
657 painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_chloride, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
658 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_sulfate, 1, 'f', 1));
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
659 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_ph, 1, 'f', 2));
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
660 y += 20;
366
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
661 painter.fillRect( 20, y, 715, 20, w_line);
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
662 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Treated sparge water"));
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
663 painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(recipe->sparge_volume, 1, 'f', 1));
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
664 painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->ws_calcium, 1, 'f', 1));
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
665 painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->ws_magnesium, 1, 'f', 1));
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
666 painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->ws_total_alkalinity, 1, 'f', 1));
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
667 painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->ws_sodium, 1, 'f', 1));
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
668 painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->ws_chloride, 1, 'f', 1));
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
669 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->ws_sulfate, 1, 'f', 1));
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
670 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->sparge_ph, 1, 'f', 2));
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
671 y += 20;
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
672
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
673 /*
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
674 * Print recipe notes if present.
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
675 */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
676 if (recipe->notes.length()) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
677 QStringList lines = recipe->notes.split("\n");
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
678
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
679 if (lines.size() && recipe->notes != "") {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
680 if ((y + 80 + (lines.size() * 20)) > painter.device()->height()) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
681 printer->newPage();
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
682 printHeader(&painter);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
683 y = 120;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
684 } else {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
685 y += 40;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
686 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
687
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
688 /* Notes header */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
689 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
690 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
691 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
692 painter.drawText( 20, y+4, 715, 20, Qt::AlignCenter, tr("Recipe notes"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
693 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
694 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
695 for (int i = 0; i < lines.size(); i++) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
696 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
697 painter.drawText( 20, y+4, 715, 20, Qt::AlignLeft, lines[i]);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
698 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
699 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
700 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
701 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
702
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
703 } else if (p_job == PR_PRODUCT) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
704
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
705 qInfo() << "print product" << product->record;
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
706 printHeader(&painter);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
707 y = 120;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
708 /* Generic header */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
709 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
710 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
711 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
712 painter.drawText( 20, y+4, 715, 20, Qt::AlignCenter, tr("Product overview"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
713 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
714 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
715 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
716 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Brew type"));
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
717 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QCoreApplication::translate("RecipeType", g_recipe_types[product->type]));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
718 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
719 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Efficiency"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
720 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 %").arg(product->efficiency, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
721 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
722 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
723 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Boil time"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
724 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 minutes.").arg(product->boil_time, 1, 'f', 0));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
725 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
726 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Batch size"));
272
4f0281b7b0bb Show split batch status in print product.
Michiel Broek <mbroek@mbse.eu>
parents: 260
diff changeset
727 if (product->divide_type) {
4f0281b7b0bb Show split batch status in print product.
Michiel Broek <mbroek@mbse.eu>
parents: 260
diff changeset
728 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 L. of %2 L.").arg(product->batch_size, 1, 'f', 1)
4f0281b7b0bb Show split batch status in print product.
Michiel Broek <mbroek@mbse.eu>
parents: 260
diff changeset
729 .arg(product->batch_size / product->divide_factor, 1, 'f', 1));
4f0281b7b0bb Show split batch status in print product.
Michiel Broek <mbroek@mbse.eu>
parents: 260
diff changeset
730 } else {
4f0281b7b0bb Show split batch status in print product.
Michiel Broek <mbroek@mbse.eu>
parents: 260
diff changeset
731 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 L.").arg(product->batch_size, 1, 'f', 1));
4f0281b7b0bb Show split batch status in print product.
Michiel Broek <mbroek@mbse.eu>
parents: 260
diff changeset
732 }
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
733 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
734 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
735 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Start SG"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
736 painter.drawText(170, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(product->est_og, 1, 'f', 3));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
737 painter.drawText(260, y+4, 90, 20, Qt::AlignLeft, QString("(%1 - %2)").arg(product->st_og_min, 1, 'f', 3).arg(product->st_og_max, 1, 'f', 3));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
738 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
739 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("End SG"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
740 painter.drawText(555, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(product->est_fg, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
741 painter.drawText(645, y+4, 90, 20, Qt::AlignLeft, QString("(%1 - %2)").arg(product->st_fg_min, 1, 'f', 3).arg(product->st_fg_max, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
742 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
743 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
744 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Estimated Alcohol"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
745 painter.drawText(170, y+4, 90, 20, Qt::AlignLeft, QString("%1%").arg(product->est_abv, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
746 painter.drawText(260, y+4, 90, 20, Qt::AlignLeft, QString("(%1 - %2)").arg(product->st_abv_min, 1, 'f', 1).arg(product->st_abv_max, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
747 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
748 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Estimated CO2 vol"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
749 painter.drawText(555, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(product->est_carb, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
750 painter.drawText(645, y+4, 90, 20, Qt::AlignLeft, QString("(%1 - %2)").arg(product->st_carb_min, 1, 'f', 1).arg(product->st_carb_max, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
751 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
752 painter.fillRect( 20, y, 150, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
753 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Color (") + color_method[product->color_method] + ")");
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
754 painter.fillRect(170, y, 180, 20, Utils::ebc_to_color(product->est_color));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
755 if (product->est_color > 30)
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
756 painter.setPen(Qt::white);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
757 painter.drawText(170, y+4, 90, 20, Qt::AlignLeft, QString("%1 EBC").arg(product->est_color, 1, 'f', 0));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
758 painter.drawText(260, y+4, 90, 20, Qt::AlignLeft, QString("(%1 - %2)").arg(product->st_color_min, 1, 'f', 0).arg(product->st_color_max, 1, 'f', 0));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
759 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
760 painter.fillRect(405, y, 330, 20, c_line1);
336
e97f9e87d94b IBU method names are now global.
Michiel Broek <mbroek@mbse.eu>
parents: 301
diff changeset
761 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("IBU (") + g_ibu_method[product->ibu_method] + ")");
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
762 painter.drawText(555, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(product->est_ibu, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
763 painter.drawText(645, y+4, 90, 20, Qt::AlignLeft, QString("(%1 - %2)").arg(product->st_ibu_min, 1, 'f', 0).arg(product->st_ibu_max, 1, 'f', 0));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
764 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
765 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
766 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Beer style"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
767 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, product->st_name);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
768 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
769 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Stage"));
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
770 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QCoreApplication::translate("ProdStages", g_prod_stages[product->stage]));
272
4f0281b7b0bb Show split batch status in print product.
Michiel Broek <mbroek@mbse.eu>
parents: 260
diff changeset
771 if (product->divide_parts) {
4f0281b7b0bb Show split batch status in print product.
Michiel Broek <mbroek@mbse.eu>
parents: 260
diff changeset
772 y += 20;
4f0281b7b0bb Show split batch status in print product.
Michiel Broek <mbroek@mbse.eu>
parents: 260
diff changeset
773 painter.fillRect( 20, y, 330, 20, c_line1);
4f0281b7b0bb Show split batch status in print product.
Michiel Broek <mbroek@mbse.eu>
parents: 260
diff changeset
774 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Split batch"));
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
775 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QCoreApplication::translate("Splitter", g_prod_split[product->divide_type]));
272
4f0281b7b0bb Show split batch status in print product.
Michiel Broek <mbroek@mbse.eu>
parents: 260
diff changeset
776 painter.fillRect(405, y, 330, 20, c_line1);
4f0281b7b0bb Show split batch status in print product.
Michiel Broek <mbroek@mbse.eu>
parents: 260
diff changeset
777 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Batch number"));
4f0281b7b0bb Show split batch status in print product.
Michiel Broek <mbroek@mbse.eu>
parents: 260
diff changeset
778 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 of %2").arg(product->divide_part + 1).arg(product->divide_parts + 1));
4f0281b7b0bb Show split batch status in print product.
Michiel Broek <mbroek@mbse.eu>
parents: 260
diff changeset
779 }
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
780 y += 40;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
781
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
782 /* Fermentables */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
783 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
784 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
785 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
786 painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, tr("Fermentable"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
787 painter.drawText(285, y+4, 70, 20, Qt::AlignRight, tr("Percent"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
788 painter.drawText(360, y+4, 70, 20, Qt::AlignRight, tr("Yield"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
789 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
790 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
791 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
792 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
793 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
794 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
795 double cost_fermentables = 0;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
796 QString soort, amount, use;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
797 for (int i = 0; i < product->fermentables.size(); i++) {
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
798 double cost = product->fermentables.at(i).amount * product->fermentables.at(i).cost;
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
799 cost_fermentables += cost;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
800
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
801 if (product->fermentables.at(i).type == 0)
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
802 soort = QCoreApplication::translate("FermentableGraintype", g_fermentable_graintypes[product->fermentables.at(i).graintype]);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
803 else
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
804 soort = QCoreApplication::translate("FermentableType", g_fermentable_types[product->fermentables.at(i).type]);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
805
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
806 if (product->fermentables.at(i).amount > 100)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
807 amount = QString("%1 kg").arg(product->fermentables.at(i).amount, 1, 'f', 1);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
808 else if (product->fermentables.at(i).amount > 10)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
809 amount = QString("%1 kg").arg(product->fermentables.at(i).amount, 1, 'f', 2);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
810 else
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
811 amount = QString("%1 gr").arg(product->fermentables.at(i).amount * 1000, 1, 'f', 0);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
812
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
813 painter.fillRect( 20, y, 715, 20, f_line);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
814
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
815 painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, product->fermentables.at(i).name +
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
816 QString(", %1 EBC (").arg(product->fermentables.at(i).color, 1, 'f', 0) +
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
817 product->fermentables.at(i).supplier + ")");
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
818 if (product->fermentables.at(i).added < FERMENTABLE_ADDED_BOTTLE)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
819 painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(product->fermentables.at(i).percentage, 1, 'f', 1));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
820 else
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
821 painter.drawText(285, y+4, 70, 20, Qt::AlignRight, "");
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
822 painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(product->fermentables.at(i).yield, 1, 'f', 1));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
823 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, soort);
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
824 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, QCoreApplication::translate("FermentableAdded", g_fermentable_added[product->fermentables.at(i).added]));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
825 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, amount);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
826 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
827 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
828 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
829 painter.fillRect(670, y, 60, 20, c_line1);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
830 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost_fermentables, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
831 y += 40;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
832
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
833 /* Hops */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
834 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
835 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
836 painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, tr("Hop"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
837 painter.drawText(285, y+4, 70, 20, Qt::AlignRight, tr("Alpha"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
838 painter.drawText(360, y+4, 70, 20, Qt::AlignRight, tr("IBU"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
839 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
840 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
841 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
842 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
843 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
844 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
845 double cost_hops = 0;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
846 for (int i = 0; i < product->hops.size(); i++) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
847
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
848 double cost = product->hops.at(i).amount * product->hops.at(i).cost;
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
849 cost_hops += cost;
373
b02aca4e926c First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.
Michiel Broek <mbroek@mbse.eu>
parents: 367
diff changeset
850 double ibu = Utils::toIBU(product->hops.at(i).useat, product->hops.at(i).form, product->preboil_sg, product->est_og3, product->batch_size,
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
851 product->hops.at(i).amount, product->hops.at(i).time, product->hops.at(i).alpha,
340
b9af88bfe972 Added cooling parameters to the toIBU function.
Michiel Broek <mbroek@mbse.eu>
parents: 336
diff changeset
852 product->ibu_method, product->brew_whirlpool9, product->brew_whirlpool7, product->brew_whirlpool6,
440
349c0c5bd512 Implemented IBU calculation for chilling.
Michiel Broek <mbroek@mbse.eu>
parents: 419
diff changeset
853 product->boil_time, product->brew_cooling_method, product->eq_chiller_to79, product->eq_chiller_lpm,
349c0c5bd512 Implemented IBU calculation for chilling.
Michiel Broek <mbroek@mbse.eu>
parents: 419
diff changeset
854 product->hops.at(i).utilisation, product->hops.at(i).bu_factor);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
855
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
856 if (product->hops.at(i).useat == 2 || product->hops.at(i).useat == 4) // Boil or Whirlpool
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
857 use = QCoreApplication::translate("HopUse", g_hop_useat[product->hops.at(i).useat]) + QString(" %1 min").arg(product->hops.at(i).time);
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
858 else if (product->hops.at(i).useat == 5) // Dryhop
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
859 use = QCoreApplication::translate("HopUse", g_hop_useat[product->hops.at(i).useat]) + QString(" %1 days").arg(product->hops.at(i).time / 1440);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
860 else
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
861 use = QCoreApplication::translate("HopUse", g_hop_useat[product->hops.at(i).useat]);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
862
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
863 if (product->hops.at(i).amount > 1)
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
864 amount = QString("%1 kg").arg(product->hops.at(i).amount, 1, 'f', 3);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
865 else
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
866 amount = QString("%1 gr").arg(product->hops.at(i).amount * 1000, 1, 'f', 1);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
867
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
868 painter.fillRect( 20, y, 715, 20, h_line);
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
869 painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, product->hops.at(i).name + " (" + product->hops.at(i).origin + ")");
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
870 painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(product->hops.at(i).alpha, 1, 'f', 1));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
871 painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(ibu, 1, 'f', 1));
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
872 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, QCoreApplication::translate("HopForm", g_hop_forms[product->hops.at(i).form]));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
873 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, use);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
874 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, amount);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
875 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
876 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
877 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
878 painter.fillRect(670, y, 60, 20, c_line1);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
879 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost_hops, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
880 y += 40;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
881
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
882 /* Yeasts */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
883 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
884 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
885 painter.drawText( 20, y+4, 335, 20, Qt::AlignLeft, tr("Yeast"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
886 painter.drawText(360, y+4, 70, 20, Qt::AlignRight, tr("Attn"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
887 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
888 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
889 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
890 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
891 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
892 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
893 double cost_yeasts = 0;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
894 for (int i = 0; i < product->yeasts.size(); i++) {
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
895 double cost = product->yeasts.at(i).amount * product->yeasts.at(i).cost;
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
896 cost_yeasts += cost;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
897
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
898 if (product->yeasts.at(i).form == 0)
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
899 amount = QString("%1 pack").arg(product->yeasts.at(i).amount, 1, 'f', 0);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
900 else if (product->yeasts.at(i).form == 1 || product->yeasts.at(i).form == 6)
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
901 amount = QString("%1 gr").arg(product->yeasts.at(i).amount * 1000.0, 1, 'f', 1);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
902 else
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
903 amount = QString("%1 ml").arg(product->yeasts.at(i).amount * 1000.0, 1, 'f', 1);
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
904
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
905 painter.fillRect( 20, y, 715, 20, y_line);
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
906 painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, product->yeasts.at(i).laboratory + " " +
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
907 product->yeasts.at(i).product_id + " (" +
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
908 product->yeasts.at(i).name + ")");
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
909 painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(product->yeasts.at(i).attenuation, 1, 'f', 1));
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
910 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, QCoreApplication::translate("YeastForm", g_yeast_forms[product->yeasts.at(i).form]));
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
911 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, QCoreApplication::translate("YeastUse", g_yeast_use[product->yeasts.at(i).use]));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
912 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, amount);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
913 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
914 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
915 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
916 if (product->starter_enable && product->prop_volume[0]) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
917 int st = 0;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
918 double sv = 0;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
919 for (int i = 0; i < 4; i++) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
920 if (product->prop_volume[i] > 0.0) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
921 st++;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
922 if (product->prop_volume[i] > sv)
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
923 sv = product->prop_volume[i];
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
924 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
925 }
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
926 painter.fillRect( 20, y, 715, 20, y_line);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
927 painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, QString(tr("%1 step yeaststarter")).arg(st));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
928 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, QString(tr("Before")));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
929 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, QString("%1 L").arg(sv, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
930 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
931 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
932 painter.fillRect(670, y, 60, 20, c_line1);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
933 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost_yeasts, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
934
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
935 if ((y + 80 + (product->miscs.size() * 20)) > painter.device()->height()) { /* Rows + header + footer + blank */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
936 printer->newPage();
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
937 printHeader(&painter);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
938 y = 120;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
939 } else {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
940 y += 40;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
941 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
942
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
943 /* Miscs */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
944 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
945 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
946 painter.drawText( 20, y+4, 410, 20, Qt::AlignLeft, tr("Misc ingredient"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
947 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
948 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
949 painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
950 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
951 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
952 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
953 double cost_miscs = 0;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
954 for (int i = 0; i < product->miscs.size(); i++) {
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
955 double cost = product->miscs.at(i).amount * product->miscs.at(i).cost;
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
956 cost_miscs += cost;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
957
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
958 if (product->miscs.at(i).use_use == 2)
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
959 use = QCoreApplication::translate("MiscUse", g_misc_uses[product->miscs.at(i).use_use]) + QString(" %1 min").arg(product->miscs.at(i).time);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
960 else
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
961 use = QCoreApplication::translate("MiscUse", g_misc_uses[product->miscs.at(i).use_use]);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
962
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
963 if (product->miscs.at(i).type == 4) // Water agent
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
964 painter.fillRect( 20, y, 715, 20, mw_line);
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
965 else if (product->miscs.at(i).type == 3) // Fining
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
966 painter.fillRect( 20, y, 715, 20, mf_line);
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
967 else if (product->miscs.at(i).type < 3 || product->miscs.at(i).type == 5) // Spice, Herb, Flavour, Yeast nutrient
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
968 painter.fillRect( 20, y, 715, 20, ms_line);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
969 else
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
970 painter.fillRect( 20, y, 715, 20, mo_line);
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
971 painter.drawText( 20, y+4, 410, 20, Qt::AlignLeft, product->miscs.at(i).name);
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
972 painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, QCoreApplication::translate("MiscType", g_misc_types[product->miscs.at(i).type]));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
973 painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, use);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
974 painter.drawText(605, y+4, 60, 20, Qt::AlignRight,
379
0f2ce4ebd1b8 Print recipe and product, miscs weights have 2 decimals. Add hop extract during bottling to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
975 QString("%1 %2").arg(product->miscs.at(i).amount * 1000.0, 1, 'f', 2).arg(product->miscs.at(i).amount_is_weight ? "gr":"ml"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
976 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
977 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
978 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
979 painter.fillRect(670, y, 60, 20, c_line1);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
980 painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost_miscs, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
981
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
982 if ((y + 60 + (product->mashs.size() * 20)) > painter.device()->height()) { /* Rows + header + blank */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
983 printer->newPage();
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
984 printHeader(&painter);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
985 y = 120;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
986 } else {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
987 y += 40;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
988 }
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
989
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
990 /* Mash */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
991 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
992 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
993 painter.drawText( 20, y+4, 160, 20, Qt::AlignLeft, tr("Mash step"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
994 painter.drawText(180, y+4, 80, 20, Qt::AlignLeft, tr("Step type"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
995 painter.drawText(260, y+4, 60, 20, Qt::AlignRight, tr("Start °C"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
996 painter.drawText(325, y+4, 60, 20, Qt::AlignRight, tr("End °C"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
997 painter.drawText(390, y+4, 60, 20, Qt::AlignRight, tr("Time"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
998 painter.drawText(455, y+4, 60, 20, Qt::AlignRight, tr("Ramp"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
999 painter.drawText(520, y+4, 60, 20, Qt::AlignRight, tr("L/kg"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1000 painter.drawText(585, y+4, 70, 20, Qt::AlignRight, tr("Inf/dec L."));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1001 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, tr("Inf/dec °C"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1002 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1003 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1004 for (int i = 0; i < product->mashs.size(); i++) {
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1005 painter.fillRect( 20, y, 715, 20, line);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1006 painter.drawText( 20, y+4, 160, 20, Qt::AlignLeft, product->mashs.at(i).step_name);
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
1007 painter.drawText(180, y+4, 80, 20, Qt::AlignLeft, QCoreApplication::translate("StepType", g_step_types[product->mashs.at(i).step_type]));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1008 painter.drawText(260, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(product->mashs.at(i).step_temp, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1009 painter.drawText(325, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(product->mashs.at(i).end_temp, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1010 painter.drawText(390, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(product->mashs.at(i).step_time, 1, 'f', 0));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1011 painter.drawText(455, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(product->mashs.at(i).ramp_time, 1, 'f', 0));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1012 painter.drawText(520, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(product->mashs.at(i).step_wg_ratio, 1, 'f', 2));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1013 if (product->mashs.at(i).step_type != 1) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1014 painter.drawText(585, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->mashs.at(i).step_infuse_amount, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1015 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->mashs.at(i).step_infuse_temp, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1016 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1017 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1018 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1019
364
1efe29f64551 Initial setup to print sparge water.
Michiel Broek <mbroek@mbse.eu>
parents: 341
diff changeset
1020 if ((y + 100 + ((product->w2_amount > 0) ? 40:0)) > painter.device()->height()) { /* waters + header + blank */
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1021 printer->newPage();
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1022 printHeader(&painter);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1023 y = 120;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1024 } else {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1025 y += 40;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1026 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1027
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1028 /* Water */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1029 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1030 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1031 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Water source"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1032 painter.drawText(170, y+4, 70, 20, Qt::AlignRight, tr("Volume"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1033 painter.drawText(240, y+4, 70, 20, Qt::AlignRight, tr("Ca"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1034 painter.drawText(310, y+4, 70, 20, Qt::AlignRight, tr("Mg"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1035 painter.drawText(380, y+4, 70, 20, Qt::AlignRight, tr("CaCO3"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1036 painter.drawText(450, y+4, 70, 20, Qt::AlignRight, tr("Na"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1037 painter.drawText(520, y+4, 70, 20, Qt::AlignRight, tr("Cl"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1038 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, tr("SO4"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1039 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, tr("pH"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1040 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1041 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1042 painter.fillRect( 20, y, 715, 20, w_line);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1043 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, product->w1_name);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1044 painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(product->w1_amount, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1045 painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_calcium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1046 painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_magnesium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1047 painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_total_alkalinity, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1048 painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_sodium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1049 painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_chloride, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1050 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_sulfate, 1, 'f', 1));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1051 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_ph, 1, 'f', 2));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1052 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1053 if (product->w2_amount > 0) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1054 /*
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1055 * If there is dillution water, show it and the mixed result too.
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1056 */
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1057 painter.fillRect( 20, y, 715, 20, w_line);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1058 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, product->w2_name);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1059 painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(product->w2_amount, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1060 painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_calcium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1061 painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_magnesium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1062 painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_total_alkalinity, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1063 painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_sodium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1064 painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_chloride, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1065 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_sulfate, 1, 'f', 1));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1066 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_ph, 1, 'f', 2));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1067 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1068 painter.fillRect( 20, y, 715, 20, w_line);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1069 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Mixed water"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1070 painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(product->wg_amount, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1071 painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_calcium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1072 painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_magnesium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1073 painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_total_alkalinity, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1074 painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_sodium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1075 painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_chloride, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1076 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_sulfate, 1, 'f', 1));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1077 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_ph, 1, 'f', 2));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1078 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1079 }
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1080 painter.fillRect( 20, y, 715, 20, w_line);
364
1efe29f64551 Initial setup to print sparge water.
Michiel Broek <mbroek@mbse.eu>
parents: 341
diff changeset
1081 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Treated mash water"));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1082 painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_calcium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1083 painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_magnesium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1084 painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_total_alkalinity, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1085 painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_sodium, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1086 painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_chloride, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1087 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_sulfate, 1, 'f', 1));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1088 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_ph, 1, 'f', 2));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1089 y += 20;
364
1efe29f64551 Initial setup to print sparge water.
Michiel Broek <mbroek@mbse.eu>
parents: 341
diff changeset
1090 painter.fillRect( 20, y, 715, 20, w_line);
1efe29f64551 Initial setup to print sparge water.
Michiel Broek <mbroek@mbse.eu>
parents: 341
diff changeset
1091 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Treated sparge water"));
1efe29f64551 Initial setup to print sparge water.
Michiel Broek <mbroek@mbse.eu>
parents: 341
diff changeset
1092 painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(product->sparge_volume, 1, 'f', 1));
366
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
1093 painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->ws_calcium, 1, 'f', 1));
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
1094 painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->ws_magnesium, 1, 'f', 1));
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
1095 painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->ws_total_alkalinity, 1, 'f', 1));
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
1096 painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->ws_sodium, 1, 'f', 1));
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
1097 painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->ws_chloride, 1, 'f', 1));
43bf6cccc4ab Added printing sparge water details.
Michiel Broek <mbroek@mbse.eu>
parents: 364
diff changeset
1098 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->ws_sulfate, 1, 'f', 1));
364
1efe29f64551 Initial setup to print sparge water.
Michiel Broek <mbroek@mbse.eu>
parents: 341
diff changeset
1099 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->sparge_ph, 1, 'f', 2));
1efe29f64551 Initial setup to print sparge water.
Michiel Broek <mbroek@mbse.eu>
parents: 341
diff changeset
1100 y += 20;
533
288ed828d11a Version 0.6.b2. In export to forum show the final treated water. Complete water recalculate if sparge water acid or ph is changed. Added and changed pH tooltips on the water tab. Added a line with total treated water to the product print.
Michiel Broek <mbroek@mbse.eu>
parents: 459
diff changeset
1101 painter.fillRect( 20, y, 715, 20, w_line);
288ed828d11a Version 0.6.b2. In export to forum show the final treated water. Complete water recalculate if sparge water acid or ph is changed. Added and changed pH tooltips on the water tab. Added a line with total treated water to the product print.
Michiel Broek <mbroek@mbse.eu>
parents: 459
diff changeset
1102 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Treated final water"));
288ed828d11a Version 0.6.b2. In export to forum show the final treated water. Complete water recalculate if sparge water acid or ph is changed. Added and changed pH tooltips on the water tab. Added a line with total treated water to the product print.
Michiel Broek <mbroek@mbse.eu>
parents: 459
diff changeset
1103 painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(product->wg_amount + product->sparge_volume, 1, 'f', 1));
288ed828d11a Version 0.6.b2. In export to forum show the final treated water. Complete water recalculate if sparge water acid or ph is changed. Added and changed pH tooltips on the water tab. Added a line with total treated water to the product print.
Michiel Broek <mbroek@mbse.eu>
parents: 459
diff changeset
1104 painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->fw_calcium, 1, 'f', 1));
288ed828d11a Version 0.6.b2. In export to forum show the final treated water. Complete water recalculate if sparge water acid or ph is changed. Added and changed pH tooltips on the water tab. Added a line with total treated water to the product print.
Michiel Broek <mbroek@mbse.eu>
parents: 459
diff changeset
1105 painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->fw_magnesium, 1, 'f', 1));
288ed828d11a Version 0.6.b2. In export to forum show the final treated water. Complete water recalculate if sparge water acid or ph is changed. Added and changed pH tooltips on the water tab. Added a line with total treated water to the product print.
Michiel Broek <mbroek@mbse.eu>
parents: 459
diff changeset
1106 painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->fw_total_alkalinity, 1, 'f', 1));
288ed828d11a Version 0.6.b2. In export to forum show the final treated water. Complete water recalculate if sparge water acid or ph is changed. Added and changed pH tooltips on the water tab. Added a line with total treated water to the product print.
Michiel Broek <mbroek@mbse.eu>
parents: 459
diff changeset
1107 painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->fw_sodium, 1, 'f', 1));
288ed828d11a Version 0.6.b2. In export to forum show the final treated water. Complete water recalculate if sparge water acid or ph is changed. Added and changed pH tooltips on the water tab. Added a line with total treated water to the product print.
Michiel Broek <mbroek@mbse.eu>
parents: 459
diff changeset
1108 painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->fw_chloride, 1, 'f', 1));
288ed828d11a Version 0.6.b2. In export to forum show the final treated water. Complete water recalculate if sparge water acid or ph is changed. Added and changed pH tooltips on the water tab. Added a line with total treated water to the product print.
Michiel Broek <mbroek@mbse.eu>
parents: 459
diff changeset
1109 painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->fw_sulfate, 1, 'f', 1));
288ed828d11a Version 0.6.b2. In export to forum show the final treated water. Complete water recalculate if sparge water acid or ph is changed. Added and changed pH tooltips on the water tab. Added a line with total treated water to the product print.
Michiel Broek <mbroek@mbse.eu>
parents: 459
diff changeset
1110 painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->fw_ph, 1, 'f', 2));
288ed828d11a Version 0.6.b2. In export to forum show the final treated water. Complete water recalculate if sparge water acid or ph is changed. Added and changed pH tooltips on the water tab. Added a line with total treated water to the product print.
Michiel Broek <mbroek@mbse.eu>
parents: 459
diff changeset
1111 y += 20;
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1112
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1113 /*
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1114 * Print product notes if present.
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1115 */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1116 if (product->notes.length()) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1117 QStringList lines = product->notes.split("\n");
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1118
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1119 if (lines.size() && product->notes != "") {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1120 if ((y + 80 + (lines.size() * 20)) > painter.device()->height()) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1121 printer->newPage();
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1122 printHeader(&painter);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1123 y = 120;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1124 } else {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1125 y += 40;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1126 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1127
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1128 /* Notes header */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1129 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1130 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1131 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1132 painter.drawText( 20, y+4, 715, 20, Qt::AlignCenter, tr("Recipe notes"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1133 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1134 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1135 for (int i = 0; i < lines.size(); i++) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1136 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1137 painter.drawText( 20, y+4, 715, 20, Qt::AlignLeft, lines[i]);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1138 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1139 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1140 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1141 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1142
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1143 if (product->stage > PROD_STAGE_BREW) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1144 if ((y + 100) > painter.device()->height()) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1145 printer->newPage();
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1146 printHeader(&painter);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1147 y = 120;
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
1148 } else {
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
1149 y += 40;
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
1150 }
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1151 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
1152 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1153 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1154 painter.drawText( 20, y+2, 715, 20, Qt::AlignCenter, tr("Product brewday"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1155 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1156 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1157 painter.fillRect( 20, y, 300, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1158 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Brewday start"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1159 painter.drawText(140, y+4, 180, 20, Qt::AlignLeft, product->brew_date_start.toString("dd MMM yyyy hh:mm"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1160 painter.fillRect(435, y, 300, 20, c_line1);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1161 painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Brewday end"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1162 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, product->brew_date_end.toString("dd MMM yyyy hh:mm"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1163
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1164 /* Mash history */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1165 if ((y + 60 + (product->mashs.size() * 20)) > painter.device()->height()) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1166 printer->newPage();
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1167 printHeader(&painter);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1168 y = 120;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1169 } else {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1170 y += 40;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1171 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1172 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1173 painter.fillRect( 20, y, 715, 20, line);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1174 painter.drawText( 40, y+4, 250, 20, Qt::AlignLeft, tr("Mash step"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1175 painter.drawText(290, y+4, 120, 20, Qt::AlignLeft, tr("Step type"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1176 painter.drawText(400, y+4, 110, 20, Qt::AlignLeft, tr("Temperature"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1177 painter.drawText(510, y+4, 75, 20, Qt::AlignLeft, tr("Minutes"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1178 painter.drawText(585, y+4, 75, 20, Qt::AlignLeft, tr("SG"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1179 painter.drawText(660, y+4, 75, 20, Qt::AlignLeft, tr("pH"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1180 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1181 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1182 for (int i = 0; i < product->mashs.size(); i++) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1183 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1184 painter.drawText( 20, y+4, 20, 20, Qt::AlignCenter, QString("%1").arg(i + 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1185 painter.drawText( 40, y+4, 250, 20, Qt::AlignLeft, product->mashs.at(i).step_name);
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
1186 painter.drawText(290, y+4, 120, 20, Qt::AlignLeft, QCoreApplication::translate("StepType", g_step_types[product->mashs.at(i).step_type]));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1187 painter.drawText(400, y+4, 110, 20, Qt::AlignLeft, QString("%1 - %2°C").
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1188 arg(product->mashs.at(i).step_temp, 1, 'f', 1).arg(product->mashs.at(i).end_temp, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1189 painter.drawText(510, y+4, 75, 20, Qt::AlignLeft, QString("%1").arg(product->mashs.at(i).step_time, 1, 'f', 0));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1190 painter.drawText(585, y+4, 75, 20, Qt::AlignLeft, QString("%1").arg(product->mashs.at(i).step_sg, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1191 painter.drawText(660, y+4, 75, 20, Qt::AlignLeft, QString("%1").arg(product->mashs.at(i).step_ph, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1192 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1193 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1194
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1195 /* Brew history */
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1196 if ((y + 470) > painter.device()->height()) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1197 printer->newPage();
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1198 printHeader(&painter);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1199 y = 120;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1200 } else {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1201 y += 20;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1202 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1203 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1204 painter.fillRect( 20, y, 715, 20, line);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1205 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Brew item"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1206 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, tr("Expected"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1207 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, tr("Reached"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1208 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, tr("Difference"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1209 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1210 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1211 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1212 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Mash pH"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1213 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 pH").arg(product->mash_ph, 1, 'f', 2));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1214 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 pH").arg(product->brew_mash_ph, 1, 'f', 2));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1215 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->mash_ph, product->brew_mash_ph, 2, " pH"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1216 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1217 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1218 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Mash density"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1219 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, strDensity(product->est_mash_sg));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1220 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, strDensity(product->brew_mash_sg));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1221 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->est_mash_sg, product->brew_mash_sg, 3, " SG"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1222 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1223 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1224 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Mash efficiency"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1225 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, "100%");
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1226 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1%").arg(product->brew_mash_efficiency, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1227 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(100.0, product->brew_mash_efficiency, 1, "%"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1228 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1229 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1230 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Sparge pH"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1231 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 pH").arg(product->sparge_ph, 1, 'f', 2));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1232 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 pH").arg(product->brew_sparge_ph, 1, 'f', 2));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1233 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->sparge_ph, product->brew_sparge_ph, 2, " pH"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1234 y += 25;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1235
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1236 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1237 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Pre boil pH"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1238 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 pH").arg(product->brew_preboil_ph, 1, 'f', 2));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1239 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1240 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1241 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Pre boil density"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1242 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, strDensity(product->preboil_sg));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1243 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, strDensity(product->brew_preboil_sg));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1244 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->preboil_sg, product->brew_preboil_sg, 3, " SG"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1245 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1246 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1247 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Pre boil volume"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1248 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->boil_size * 1.04, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1249 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->brew_preboil_volume, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1250 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->boil_size * 1.04, product->brew_preboil_volume, 1, " L"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1251 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1252 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1253 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Pre boil efficiency"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1254 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1%").arg(product->efficiency, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1255 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1%").arg(product->brew_preboil_efficiency, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1256 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->efficiency, product->brew_preboil_efficiency, 1, "%"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1257 y += 25;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1258 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1259 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("After boil pH"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1260 //painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 pH").arg(product->brew_preboil_ph, 1, 'f', 2));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1261 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 pH").arg(product->brew_aboil_ph, 1, 'f', 2));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1262 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1263 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1264 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("After boil density"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1265 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, strDensity(product->est_og));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1266 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, strDensity(product->brew_aboil_sg));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1267 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->est_og, product->brew_aboil_sg, 3, " SG"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1268 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1269 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1270 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("After boil volume"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1271 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->batch_size * 1.04, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1272 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->brew_aboil_volume, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1273 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->batch_size * 1.04, product->brew_aboil_volume, 1, " L"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1274 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1275 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1276 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("After boil efficiency"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1277 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1%").arg(product->efficiency, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1278 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1%").arg(product->brew_aboil_efficiency, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1279 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->efficiency, product->brew_aboil_efficiency, 1, "%"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1280 y += 25;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1281 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1282 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Chiller and trub loss"));
458
ac216a75ca9b Renamed trub_chiller_loss fields to trub_loss
Michiel Broek <mbroek@mbse.eu>
parents: 440
diff changeset
1283 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->eq_trub_loss, 1, 'f', 1));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1284 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->brew_fermenter_tcloss, 1, 'f', 1));
458
ac216a75ca9b Renamed trub_chiller_loss fields to trub_loss
Michiel Broek <mbroek@mbse.eu>
parents: 440
diff changeset
1285 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->eq_trub_loss, product->brew_fermenter_tcloss, 1, " L"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1286 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1287 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1288 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Top up water"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1289 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->eq_top_up_water, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1290 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->brew_fermenter_extrawater, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1291 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->eq_top_up_water, product->brew_fermenter_extrawater, 1, " L"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1292 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1293 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1294 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Fermenter volume"));
458
ac216a75ca9b Renamed trub_chiller_loss fields to trub_loss
Michiel Broek <mbroek@mbse.eu>
parents: 440
diff changeset
1295 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->batch_size - product->eq_trub_loss - product->boil_absorb, 1, 'f', 1));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1296 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->brew_fermenter_volume, 1, 'f', 1));
458
ac216a75ca9b Renamed trub_chiller_loss fields to trub_loss
Michiel Broek <mbroek@mbse.eu>
parents: 440
diff changeset
1297 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->batch_size - product->eq_trub_loss - product->boil_absorb, product->brew_fermenter_volume, 1, " L"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1298 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1299 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1300 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Fermenter density"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1301 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, strDensity(product->est_og));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1302 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, strDensity(product->brew_fermenter_sg));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1303 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->est_og, product->brew_fermenter_sg, 3, " SG"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1304 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1305 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1306 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Fermenter color"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1307 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 EBC").arg(product->est_color, 1, 'f', 0));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1308 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 EBC").arg(product->brew_fermenter_color, 1, 'f', 0));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1309 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->est_color, product->brew_fermenter_color, 0, " EBC"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1310 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1311 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1312 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Fermenter IBU"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1313 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 IBU").arg(product->est_ibu, 1, 'f', 0));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1314 painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 IBU").arg(product->brew_fermenter_ibu, 1, 'f', 0));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1315 painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->est_ibu, product->brew_fermenter_ibu, 0, " IBU"));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1316 y += 25;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1317 painter.fillRect( 20, y, 430, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1318 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Cooling method"));
341
1b1e2d4c1a3e Cooling method dropdown table loads from a global table. Updated the translations.
Michiel Broek <mbroek@mbse.eu>
parents: 340
diff changeset
1319 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QCoreApplication::translate("ChillerType", g_chiller_types[product->brew_cooling_method]));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1320 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1321 painter.fillRect( 20, y, 430, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1322 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Cooling temperature"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1323 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1°C").arg(product->brew_cooling_to, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1324 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1325 painter.fillRect( 20, y, 430, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1326 painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Cooling time"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1327 painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 min").arg(product->brew_cooling_time, 1, 'f', 0));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1328 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1329
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1330 if (product->stage > PROD_STAGE_TERTIARY) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1331 if ((y + 200) > painter.device()->height()) {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1332 printer->newPage();
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1333 printHeader(&painter);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1334 y = 120;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1335 } else {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1336 y += 40;
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1337 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1338 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1339 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1340 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1341 painter.drawText( 20, y+2, 715, 20, Qt::AlignCenter, tr("Product fermentation"));
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
1342 y += 20;
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
1343 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1344 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1345 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Primary start temp"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1346 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->primary_start_temp, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1347 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1348 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Primary peak temp"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1349 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->primary_max_temp, 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1350 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1351 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1352 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Primary end temp"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1353 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->primary_end_temp, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1354 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1355 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Primary density"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1356 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 SG").arg(product->primary_end_sg, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1357 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1358 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1359 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Primary end date"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1360 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, product->primary_end_date.toString("dd MMM yyyy"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1361 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1362 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1363 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Secondary end temp"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1364 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->secondary_temp, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1365 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1366 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Secondary density"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1367 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 SG").arg(product->secondary_end_sg, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1368 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1369 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1370 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Secondary end date"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1371 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, product->secondary_end_date.toString("dd MMM yyyy"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1372 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1373 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1374 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Tertiary temperature"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1375 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->tertiary_temp, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1376 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1377 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Final density"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1378 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 SG").arg(product->fg, 1, 'f', 3));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1379 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1380 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1381 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Tertiary end date"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1382 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, product->package_date.toString("dd MMM yyyy"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1383 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1384 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Apperant attenuation"));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1385 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1%").arg(Utils::calc_svg(product->brew_fermenter_sg, product->fg), 1, 'f', 1));
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1386 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1387
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1388 if (product->stage > PROD_STAGE_PACKAGE) {
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1389 if ((y + ((product->package_infuse_amount > 0) ? 305:265)) > painter.device()->height()) {
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1390 printer->newPage();
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1391 printHeader(&painter);
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1392 y = 120;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1393 } else {
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1394 y += 40;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1395 }
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1396 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1397 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1398 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1399 painter.drawText( 20, y+2, 715, 20, Qt::AlignCenter, tr("Package product"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1400 y += 20;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1401 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1402 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1403 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Package date"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1404 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, product->package_date.toString("dd MMM yyyy"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1405 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1406 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Package volume"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1407 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->package_volume, 1, 'f', 1));
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1408 y += 20;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1409 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1410 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1411 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Alcohol volume"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1412 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1%").arg(product->package_abv, 1, 'f', 2));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1413 y += 20;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1414 if (product->package_infuse_amount > 0) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1415 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1416 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Infuse volume"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1417 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->package_infuse_amount, 1, 'f', 3));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1418 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1419 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Infuse alcohol"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1420 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1%").arg(product->package_infuse_abv, 1, 'f', 2));
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1421 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1422 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1423 painter.drawText( 20, y+4, 715, 20, Qt::AlignLeft, product->package_infuse_notes);
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1424 y += 20;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1425 }
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1426 y += 5;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1427 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1428 painter.fillRect( 20, y, 330, 20, line);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1429 painter.drawText( 20, y+2, 330, 20, Qt::AlignCenter, tr("Bottles"));
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1430 painter.fillRect(405, y, 330, 20, line);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1431 painter.drawText(405, y+2, 330, 20, Qt::AlignCenter, tr("Kegs"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1432 y += 20;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1433 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1434 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1435 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Bottles volume"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1436 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->bottle_amount, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1437 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1438 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Kegs volume"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1439 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->keg_amount, 1, 'f', 1));
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1440 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1441 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1442 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Bottles CO2 volumes"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1443 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->bottle_carbonation, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1444 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1445 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Kegs CO2 volumes"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1446 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->keg_carbonation, 1, 'f', 1));
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1447 y += 20;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1448 QString bsugar = "", ksugar = "";
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1449 double bamount = 0, kamount = 0;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1450 for (int i = 0; i < product->fermentables.size(); i++) {
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1451 if (product->fermentables.at(i).added == FERMENTABLE_ADDED_BOTTLE) {
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1452 bsugar = product->fermentables.at(i).name;
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1453 bamount = product->fermentables.at(i).amount;
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1454 }
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1455 if (product->fermentables.at(i).added == FERMENTABLE_ADDED_KEGS) {
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1456 ksugar = product->fermentables.at(i).name;
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1457 kamount = product->fermentables.at(i).amount;
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1458 }
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1459 }
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1460 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1461 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Sugar"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1462 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, bsugar);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1463 painter.fillRect(405, y, 330, 20, c_line1);
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1464 if (product->keg_forced_carb) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1465 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Forced carbonation"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1466 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, tr("Yes"));
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1467 } else {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1468 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Sugar"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1469 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, ksugar);
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1470 }
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1471 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1472 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1473 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Sugar amount"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1474 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 Kg").arg(bamount, 1, 'f', 3));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1475 if (! product->keg_forced_carb) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1476 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1477 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Sugar amount"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1478 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 Kg").arg(kamount, 1, 'f', 3));
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1479 }
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1480 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1481 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1482 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Water amount"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1483 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->bottle_priming_water, 1, 'f', 3));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1484 if (! product->keg_forced_carb) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1485 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1486 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Water amount"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1487 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->keg_priming_water, 1, 'f', 3));
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1488 }
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1489 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1490 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1491 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Alcohol volume"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1492 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1%").arg(product->bottle_abv, 1, 'f', 2));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1493 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1494 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Alcohol volume"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1495 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1%").arg(product->keg_abv, 1, 'f', 2));
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1496 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1497 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1498 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Pressure"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1499 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 bar").arg(product->bottle_bar, 1, 'f', 2));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1500 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1501 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Pressure"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1502 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 bar").arg(product->keg_bar, 1, 'f', 2));
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1503 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1504 painter.fillRect( 20, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1505 painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Carbonation temp"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1506 painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->bottle_carbonation_temp, 1, 'f', 1));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1507 painter.fillRect(405, y, 330, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1508 painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Carbonation temp"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1509 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->keg_carbonation_temp, 1, 'f', 1));
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1510 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1511
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1512 if (product->stage > PROD_STAGE_TASTE) {
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1513 QStringList lines = product->taste_notes.split("\n");
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
1514
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1515 if (lines.size() && (product->taste_notes != "")) {
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1516 if ((y + 220 + (lines.size() * 20)) > painter.device()->height()) {
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1517 printer->newPage();
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1518 printHeader(&painter);
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1519 y = 120;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1520 } else {
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1521 y += 40;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1522 }
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1523 } else {
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1524 if ((y + 220) > painter.device()->height()) {
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1525 printer->newPage();
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1526 printHeader(&painter);
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1527 y = 120;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1528 } else {
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1529 y += 40;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1530 }
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1531 }
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1532 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1533 painter.setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1534 painter.fillRect( 20, y, 715, 20, c_header);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1535 painter.drawText( 20, y+2, 715, 20, Qt::AlignCenter, tr("Tasting notes"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1536 y += 20;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1537 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1538 painter.fillRect( 20, y, 300, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1539 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Tasting date"));
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1540 painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, product->taste_date.toString("dd MMM yyyy"));
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1541 painter.fillRect(435, y, 300, 20, c_line1);
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1542 painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Taste score"));
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1543 painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1").arg(product->taste_rate, 1, 'f', 1));
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1544 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1545 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1546 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Color"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1547 painter.drawText(120, y+4, 595, 20, Qt::AlignLeft, product->taste_color);
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1548 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1549 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1550 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Transparency"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1551 painter.drawText(120, y+4, 595, 20, Qt::AlignLeft, product->taste_transparency);
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1552 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1553 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1554 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Head"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1555 painter.drawText(120, y+4, 595, 20, Qt::AlignLeft, product->taste_head);
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1556 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1557 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1558 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Aroma"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1559 painter.drawText(120, y+4, 595, 20, Qt::AlignLeft, product->taste_aroma);
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1560 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1561 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1562 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Taste"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1563 painter.drawText(120, y+4, 595, 20, Qt::AlignLeft, product->taste_taste);
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1564 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1565 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1566 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Mouthfeel"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1567 painter.drawText(120, y+4, 595, 20, Qt::AlignLeft, product->taste_mouthfeel);
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1568 y += 20;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1569 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1570 painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Aftertaste"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1571 painter.drawText(120, y+4, 595, 20, Qt::AlignLeft, product->taste_aftertaste);
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1572 y += 25;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1573 for (int i = 0; i < lines.size(); i++) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1574 painter.fillRect( 20, y, 715, 20, c_line1);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1575 painter.drawText( 20, y+4, 715, 20, Qt::AlignLeft, lines[i]);
238
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1576 y += 20;
047e99c90848 Calulate package abv and pressure and store in the global product variable for later use. Finished the product printing module.
Michiel Broek <mbroek@mbse.eu>
parents: 237
diff changeset
1577 }
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
1578 }
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1579
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1580 } else if (p_job == PR_CHECKLIST) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1581
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1582 double factor = 1.0 / product->divide_factor;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1583 double mashwater = 0;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1584 int numsalts = 0;
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
1585
260
42b88d85fefc Fix default divide_size field in products. Update miscs table column 6 and 7 tooltips and display of the buttons after sort. After a new misc product is selected, update the current row index because the row may be moved. Fix some display misc values in the checklist, they were not multiplied by 1000. Fix display of some bars if the value was 24.
Michiel Broek <mbroek@mbse.eu>
parents: 255
diff changeset
1586 qInfo() << "Print checklist" << product->record << "factor" << factor << product->divide_factor;
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1587 printHeader(&painter);
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1588 y = 120;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1589
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1590 /* First item, a yeast starter if needed, days before brewday. */
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1591 if (product->starter_enable && product->prop_volume[0]) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1592 checkHeader(&painter, &y, tr("Make a yeast starter"));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1593 int days = 0;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1594 int last = 0;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1595 QString s = "";
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1596 for (int i = 0; i < 4; i++) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1597 if (product->prop_volume[i]) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1598 last = i;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1599 if (product->prop_type[i] == STARTERS_STIRRED)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1600 days += 2;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1601 else if (product->prop_type[i] == STARTERS_SHAKEN)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1602 days += 4;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1603 else
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1604 days += 6; // Simple starter
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1605 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1606 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1607 checkLine(&painter, &y, QString(tr("Start about %1 days before brewday with the starter.")).arg(days));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1608 for (int i = 0; i < 4; i++) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1609 if (product->prop_volume[i]) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1610 checkLine(&painter, &y, QString(tr("Starter step %1 of %2 liter with SG %3")).arg(i+1).arg(product->prop_volume[i], 1, 'f', 3).
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1611 arg(product->starter_sg, 1, 'f', 3));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1612 QString w = tr(" until there is enough yeast");
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1613 if (product->prop_type[i] == STARTERS_STIRRED)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1614 checkLine(&painter, &y, QString(tr("about 24 hours on a stirplate"))+w);
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1615 else if (product->prop_type[i] == STARTERS_SHAKEN)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1616 checkLine(&painter, &y, QString(tr("shake often for a few days"))+w);
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1617 else
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1618 checkLine(&painter, &y, QString(tr("let it rest for almost a week"))+w);
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1619 if (i < last) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1620 checkLine(&painter, &y, QString(tr("place starter in the fridge for 24 hours")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1621 checkLine(&painter, &y, QString(tr("remove starter from the fridge and decant")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1622 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1623 checkLine(&painter, &y, QString(tr("place starter in the fridge until brewday")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1624 checkLine(&painter, &y, QString(tr("remove starter from the fridge and decant")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1625 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1626 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1627 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1628 y += 20;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1629 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1630
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1631 checkHeader(&painter, &y, tr("Mash water and treatment"));
367
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1632 checkLine(&painter, &y, QString("%1 liter water `%2`").arg(product->w1_amount * factor, 1, 'f', 1).arg(product->w1_name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1633 mashwater += product->w1_amount * factor;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1634 if (product->w2_name != "" && product->w2_amount > 0) {
367
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1635 checkLine(&painter, &y, QString("%1 liter water `%2`").arg(product->w2_amount * factor, 1, 'f', 1).arg(product->w2_name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1636 mashwater += product->w2_amount * factor;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1637 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1638 for (int i = 0; i < product->miscs.size(); i++) {
367
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1639 if (product->miscs.at(i).type == MISC_TYPES_WATER_AGENT && product->miscs.at(i).use_use == MISC_USES_MASH) {
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1640 QString unit = (product->miscs.at(i).amount_is_weight) ? "gr":"ml";
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1641 checkLine(&painter, &y, QString("%1 %2 %3").arg(product->miscs.at(i).amount * 1000 * factor, 1, 'f', 2).arg(unit).arg(product->miscs.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1642 numsalts++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1643 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1644 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1645 y += 20;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1646
367
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1647 checkHeader(&painter, &y, tr("Sparge water and treatment"));
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1648 QString sw = "";
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1649 if (product->sparge_source == 0) {
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1650 checkLine(&painter, &y, QString("%1 liter water `%2`").arg(product->sparge_volume * factor, 1, 'f', 1).arg(product->w1_name));
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1651 } else if (product->sparge_source == 1) {
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1652 checkLine(&painter, &y, QString("%1 liter water `%2`").arg(product->sparge_volume * factor, 1, 'f', 1).arg(product->w2_name));
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1653 } else if (product->sparge_source == 2) {
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1654 checkLine(&painter, &y, QString("%1 liter water `%2`")
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1655 .arg(product->sparge_volume * (product->w1_amount / (product->w1_amount+product->w2_amount)) * factor, 1, 'f', 1)
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1656 .arg(product->w1_name));
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1657 checkLine(&painter, &y, QString("%1 liter water `%2`")
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1658 .arg(product->sparge_volume * (product->w2_amount / (product->w1_amount+product->w2_amount)) * factor, 1, 'f', 1)
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1659 .arg(product->w2_name));
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1660 }
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1661 for (int i = 0; i < product->miscs.size(); i++) {
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1662 if (product->miscs.at(i).type == MISC_TYPES_WATER_AGENT && product->miscs.at(i).use_use == MISC_USES_SPARGE) {
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1663 QString unit = (product->miscs.at(i).amount_is_weight) ? "gr":"ml";
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1664 checkLine(&painter, &y, QString("%1 %2 %3").arg(product->miscs.at(i).amount * 1000 * factor, 1, 'f', 2).arg(unit).arg(product->miscs.at(i).name));
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1665 numsalts++;
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1666 }
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1667 }
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1668 y += 20;
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1669
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1670 checkHeader(&painter, &y, tr("Weight and mill the malts"));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1671 for (int i = 0; i < product->fermentables.size(); i++) {
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1672 if (product->fermentables.at(i).added == FERMENTABLE_ADDED_MASH) {
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1673 checkLine(&painter, &y, QString("%1 kg `%2` (%3)").arg(product->fermentables.at(i).amount * factor, 1, 'f', 3).
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1674 arg(product->fermentables.at(i).name).arg(product->fermentables.at(i).supplier));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1675 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1676 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1677 checkLine(&painter, &y, QString(tr("Mill the malts")));
405
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1678
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1679 int lines = 0;
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1680 int loop = 0;
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1681 for (int i = 0; i < product->mashs.size(); i++) {
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1682 if (loop == 0) {
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1683 lines += 3;
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1684 if (numsalts > 0)
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1685 lines++;
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1686 for (int j = 0; j < product->hops.size(); j++) {
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1687 if (product->hops.at(j).useat == HOP_USEAT_MASH) {
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1688 lines++;
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1689 }
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1690 }
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1691 for (int j = 0; j < product->miscs.size(); j++) {
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1692 if ((product->miscs.at(j).use_use == MISC_USES_MASH) && (product->miscs.at(j).type != MISC_TYPES_WATER_AGENT)) {
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1693 lines++;
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1694 }
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1695 }
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1696 } else {
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1697 lines++;
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1698 }
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1699 lines++;
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1700 loop++;
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1701 }
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1702 lines++;
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1703 qDebug() << "check" << lines << y + (lines * 20) << painter.device()->height();
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1704 if ((y + (lines * 20)) > painter.device()->height()) {
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1705 printer->newPage();
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1706 printHeader(&painter);
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1707 y = 120;
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1708 } else {
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1709 y += 20;
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1710 }
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1711
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1712 checkHeader(&painter, &y, tr("Mash"));
405
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1713 loop = 0;
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1714 double l, mvol = 0, msugars = 0;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1715 for (int i = 0; i < product->mashs.size(); i++) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1716 if (product->mashs.at(i).step_type == 0)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1717 mvol += product->mashs.at(i).step_infuse_amount * factor; // We need this later
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1718 if (loop == 0) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1719 if (product->mashs.at(i).step_type == 0)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1720 l = product->mashs.at(i).step_infuse_amount * factor;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1721 else
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1722 l = mashwater;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1723 checkLine(&painter, &y, QString(tr("Heat %1 liter water to %2°C (%3 cm below kettle top)"))
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1724 .arg(mashwater, 1, 'f', 1).arg(product->mashs.at(i).step_infuse_temp, 1, 'f', 1)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1725 .arg(Utils::kettle_cm(l, product->eq_tun_volume, product->eq_tun_height), 1, 'f', 1));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1726 if (numsalts > 0)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1727 checkLine(&painter, &y, QString(tr("Add brouwzouten")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1728 checkLine(&painter, &y, QString(tr("Add malts and dough-in")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1729 for (int j = 0; j < product->hops.size(); j++) {
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1730 if (product->hops.at(j).useat == HOP_USEAT_MASH) {
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1731 checkLine(&painter, &y, QString(tr("Add %1 gram `%2` hop")).arg(product->hops.at(j).amount * 1000 * factor, 1, 'f', 1)
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1732 .arg(product->hops.at(j).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1733 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1734 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1735 for (int j = 0; j < product->miscs.size(); j++) {
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1736 if ((product->miscs.at(j).use_use == MISC_USES_MASH) && (product->miscs.at(j).type != MISC_TYPES_WATER_AGENT)) {
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1737 QString unit = (product->miscs.at(j).amount_is_weight) ? "gr":"ml";
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1738 checkLine(&painter, &y, QString(tr("Add %1 %2 `%3`")).arg(product->miscs.at(j).amount * 1000 * factor, 1, 'f', 2)
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1739 .arg(unit).arg(product->miscs.at(j).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1740 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1741 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1742 } else { // loop > 0
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1743 if (product->mashs.at(i).step_type == 0) { // Infusion
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1744 checkLine(&painter, &y, QString(tr("Add %1 liter water of %2°C")).arg(product->mashs.at(i).step_infuse_amount * factor, 1, 'f', 1)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1745 .arg(product->mashs.at(i).step_infuse_temp, 1, 'f', 1));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1746 } else if (product->mashs.at(i).step_type == 1) { // Direct heat
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1747 checkLine(&painter, &y, QString(tr("Heat upto %1°C")).arg(product->mashs.at(i).step_temp, 1, 'f', 1));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1748 } else { // Decoction
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1749 checkLine(&painter, &y, QString(tr("Take, heat, boil and return %1 part of the mash"))
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1750 .arg(product->mashs.at(i).step_infuse_amount * factor, 1, 'f', 1));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1751 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1752 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1753 if (product->mashs.at(i).step_temp != product->mashs.at(i).end_temp) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1754 checkInput(&painter, &y, QString(tr("%1 minutes from %2°C to %3°C")).arg(product->mashs.at(i).step_time)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1755 .arg(product->mashs.at(i).step_temp, 1, 'f', 1).arg(product->mashs.at(i).end_temp, 1, 'f', 1), QString(tr("Brix")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1756 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1757 checkInput(&painter, &y, QString(tr("%1 minutes at %2°C")).arg(product->mashs.at(i).step_time)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1758 .arg(product->mashs.at(i).step_temp, 1, 'f', 1), QString(tr("Brix")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1759 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1760 if (loop == 0)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1761 checkInput(&painter, &y, QString(tr("Measure and adjust pH (target %1 pH)")).arg(product->mash_ph, 1, 'f', 2), QString(tr("pH")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1762 loop++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1763 }
411
c78f8cf11849 Fixed spelling error
Michiel Broek <mbroek@mbse.eu>
parents: 405
diff changeset
1764 double sugardensity = 1.611, grainabsorption = 0;
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1765 for (int i = 0; i < product->fermentables.size(); i++) {
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1766 if (product->fermentables.at(i).added == FERMENTABLE_ADDED_MASH) {
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1767 double d = product->fermentables.at(i).amount * factor * (product->fermentables.at(i).yield / 100) *
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1768 (1 - product->fermentables.at(i).moisture / 100);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1769 mvol += product->fermentables.at(i).amount * factor * (product->fermentables.at(i).moisture / 100);
411
c78f8cf11849 Fixed spelling error
Michiel Broek <mbroek@mbse.eu>
parents: 405
diff changeset
1770 grainabsorption += my_grain_absorption * product->fermentables.at(i).amount * factor;
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1771 msugars += d;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1772 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1773 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1774 double v = msugars / sugardensity + mvol;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1775 double plato = 1000.0 * msugars / (v * 10.0); // deg. Plato
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1776 double mash_sg = Utils::plato_to_sg(plato);
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1777 checkInput(&painter, &y, QString(tr("Target SG end mash: ")) + strDensity(mash_sg), QString(tr("SG")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1778 if ((y + 140) > painter.device()->height()) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1779 printer->newPage();
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1780 printHeader(&painter);
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1781 y = 120;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1782 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1783 y += 20;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1784 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1785
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1786 checkHeader(&painter, &y, tr("Lauter and Sparge"));
367
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1787 checkLine(&painter, &y, QString(tr("Heat sparge water to %1°C")).arg(product->sparge_temp, 1, 'f', 1));
60c493e08800 Added new sparge water data to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 366
diff changeset
1788 checkInput(&painter, &y, QString(tr("Bring water to %1 pH with %2 ml. `%3`")).arg(product->sparge_ph, 1, 'f', 2)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1789 .arg(product->sparge_acid_amount * 1000 * factor, 1, 'f', 2).arg(my_acids.at(product->sparge_acid_type).name_en), QString(tr("pH")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1790 checkLine(&painter, &y, QString(tr("Sparge with close to %1 liter water"))
411
c78f8cf11849 Fixed spelling error
Michiel Broek <mbroek@mbse.eu>
parents: 405
diff changeset
1791 .arg(((product->boil_size * factor) - mashwater + grainabsorption + product->eq_lauter_deadspace) * 1.03, 1, 'f', 1));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1792 checkInput(&painter, &y, QString(tr("Target volume in boil kettle: %1 liter (%2 cm below kettle top)"))
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1793 .arg(product->boil_size * factor * 1.04, 1, 'f', 1)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1794 .arg(Utils::kettle_cm(product->boil_size * factor * 1.04, product->eq_kettle_volume, product->eq_kettle_height), 1, 'f', 1),
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1795 QString(tr("cm")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1796 checkInput(&painter, &y, QString(tr("Target SG in boil kettle: ")) + strDensity(product->preboil_sg), QString(tr("SG")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1797 checkInput(&painter, &y, "", QString(tr("pH")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1798 for (int i = 0; i < product->hops.size(); i++) {
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1799 if (product->hops.at(i).useat == HOP_USEAT_FWH) {
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1800 checkLine(&painter, &y, QString(tr("Add %1 gr `%2` hop after sparge")).arg(product->hops.at(i).amount * 1000 * factor, 1, 'f', 1)
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1801 .arg(product->hops.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1802 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1803 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1804
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1805 if (checkSplit(&painter, &y, 1))
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1806 factor = 1;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1807 /* Boil, how much space do we need */
405
2c828cc3d943 Fix checklist mash steps overflow.
Michiel Broek <mbroek@mbse.eu>
parents: 386
diff changeset
1808 lines = 0;
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1809 if (product->boil_time == 0) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1810 lines = 3;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1811 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1812 lines = 5;
419
d49f38cc76a0 The equipment editor uses named fields for database io. Edit field 'trub chiller loss' is now called 'trub loss', but will be renamed again. Removed editing hop_utilization, lauter_volume and lauter_height. These fields were never used in the application. Not yet removed from the database. Added chiller_type, chiller_to79, chiller_volume, chiller_lpm and chiller_loss fields so that we can tie a chiller to the equipment setup. Renamed some chiller names.
Michiel Broek <mbroek@mbse.eu>
parents: 413
diff changeset
1813 if (product->brew_cooling_method == CHILLER_TYPE_IMMERSION)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1814 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1815 for (int i = 0; i < product->fermentables.size(); i++) {
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1816 if (product->fermentables.at(i).added == FERMENTABLE_ADDED_BOIL)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1817 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1818 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1819 for (int i = 0; i < product->hops.size(); i++) {
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1820 if (product->hops.at(i).useat == HOP_USEAT_BOIL || product->hops.at(i).useat == HOP_USEAT_AROMA)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1821 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1822 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1823 for (int i = 0; i < product->miscs.size(); i++) {
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1824 if (product->miscs.at(i).use_use == MISC_USES_BOIL)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1825 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1826 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1827 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1828 qDebug() << "check" << lines << y + (lines * 20) << painter.device()->height();
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1829 if ((y + (lines * 20)) > painter.device()->height()) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1830 printer->newPage();
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1831 printHeader(&painter);
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1832 y = 120;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1833 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1834 y += 20;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1835 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1836 checkHeader(&painter, &y, tr("Boil"));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1837 if (product->boil_time > 0) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1838 checkLine(&painter, &y, QString(tr("Total boiltime: %1 minutes")).arg(product->boil_time, 1, 'f', 0));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1839 for (int i = product->boil_time; i >= 0; i--) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1840 if (i == 10) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1841 for (int j = 0; j < product->fermentables.size(); j++) {
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1842 if (product->fermentables.at(j).added == FERMENTABLE_ADDED_BOIL)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1843 checkLine(&painter, &y, QString(tr("%1 kg `%2` at 10 minutes before end of boil"))
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1844 .arg(product->fermentables.at(j).amount * factor, 1, 'f', 3)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
1845 .arg(product->fermentables.at(j).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1846 }
419
d49f38cc76a0 The equipment editor uses named fields for database io. Edit field 'trub chiller loss' is now called 'trub loss', but will be renamed again. Removed editing hop_utilization, lauter_volume and lauter_height. These fields were never used in the application. Not yet removed from the database. Added chiller_type, chiller_to79, chiller_volume, chiller_lpm and chiller_loss fields so that we can tie a chiller to the equipment setup. Renamed some chiller names.
Michiel Broek <mbroek@mbse.eu>
parents: 413
diff changeset
1847 if (product->brew_cooling_method == CHILLER_TYPE_IMMERSION)
d49f38cc76a0 The equipment editor uses named fields for database io. Edit field 'trub chiller loss' is now called 'trub loss', but will be renamed again. Removed editing hop_utilization, lauter_volume and lauter_height. These fields were never used in the application. Not yet removed from the database. Added chiller_type, chiller_to79, chiller_volume, chiller_lpm and chiller_loss fields so that we can tie a chiller to the equipment setup. Renamed some chiller names.
Michiel Broek <mbroek@mbse.eu>
parents: 413
diff changeset
1848 checkLine(&painter, &y, QString(tr("Place immersion chiller at 10 minutes before end of boil")));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1849 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1850 for (int j = 0; j < product->hops.size(); j++) {
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1851 if ((product->hops.at(j).useat == HOP_USEAT_BOIL || product->hops.at(j).useat == HOP_USEAT_AROMA) && product->hops.at(j).time == i) {
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1852 if (i == 0)
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1853 checkLine(&painter, &y, QString(tr("%1 gr `%2` at flameout")).arg(product->hops.at(j).amount * 1000 * factor, 1, 'f', 2)
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1854 .arg(product->hops.at(j).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1855 else
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1856 checkLine(&painter, &y, QString(tr("%1 gr `%2` at %3 minutes before end of boil"))
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1857 .arg(product->hops.at(j).amount * 1000 * factor, 1, 'f', 2).arg(product->hops.at(j).name).arg(i));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1858 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1859 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1860 for (int j = 0; j < product->miscs.size(); j++) {
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1861 if (product->miscs.at(j).use_use == MISC_USES_BOIL && product->miscs.at(j).time == i) {
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1862 QString unit = (product->miscs.at(j).amount_is_weight) ? "gr":"ml";
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1863 if (i == 0)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1864 checkLine(&painter, &y, QString(tr("%1 %2 `%3` at flameout"))
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1865 .arg(product->miscs.at(j).amount * 1000 * factor, 1, 'f', 2).arg(unit).arg(product->miscs.at(j).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1866 else
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1867 checkLine(&painter, &y, QString(tr("%1 %2 `%3` at %4 minutes before end of boil"))
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
1868 .arg(product->miscs.at(j).amount * 1000 * factor, 1, 'f', 2).arg(unit).arg(product->miscs.at(j).name).arg(i));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1869 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1870 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1871 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1872 checkInput(&painter, &y, QString(tr("Target volume at end of boil: %1 liter (%2 cm below kettle top)"))
459
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
1873 .arg(((product->batch_size * 1.04) + product->eq_chiller_volume) * factor, 1, 'f', 1)
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
1874 .arg(Utils::kettle_cm(((product->batch_size * 1.04) + product->eq_chiller_volume) * factor, product->eq_kettle_volume, product->eq_kettle_height)),
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1875 QString(tr("cm")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1876 checkInput(&painter, &y, QString(tr("Target SG at end of boil: ")) + strDensity(product->est_og3), QString(tr("SG")));
459
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
1877 if (product->brew_cooling_method == CHILLER_TYPE_IMMERSION) {
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
1878 messageInput(&painter, &y, QString(tr("Note: target volume includes chiller %1 liter"))
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
1879 .arg(product->eq_chiller_volume, 1, 'f', 1), QString(tr("pH")));
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
1880 } else {
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
1881 checkInput(&painter, &y, "", QString(tr("pH")));
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
1882 }
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1883 if (checkSplit(&painter, &y, 2))
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1884 factor = 1;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1885 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1886 checkLine(&painter, &y, QString(tr("This is a `no-boil` recipe")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1887 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1888
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1889 /* Whirlpools and chilling */
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1890 lines = 5;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1891 if (product->brew_whirlpool9)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1892 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1893 if (product->brew_whirlpool7)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1894 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1895 if (product->brew_whirlpool6)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1896 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1897 if (product->brew_whirlpool2)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1898 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1899 for (int i = 0; i < product->hops.size(); i++) {
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1900 if (product->hops.at(i).useat == HOP_USEAT_WHIRLPOOL)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1901 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1902 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1903 if ((y + (lines * 20)) > painter.device()->height()) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1904 printer->newPage();
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1905 printHeader(&painter);
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1906 y = 120;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1907 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1908 y += 20;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1909 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1910 if ((product->brew_whirlpool9 + product->brew_whirlpool7 + product->brew_whirlpool6 + product->brew_whirlpool2) > 0) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1911 checkHeader(&painter, &y, tr("Whirlpool(s) and cooling"));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1912 if (product->brew_whirlpool9 > 0)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1913 checkLine(&painter, &y, QString(tr("Wirlpool for %1 minutes. Keep temp above 85°C")).arg(product->brew_whirlpool9, 1, 'f', 0));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1914 if (product->brew_whirlpool7 > 0)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1915 checkLine(&painter, &y, QString(tr("Wirlpool for %1 minutes. Keep temp between 72 and 79°C")).arg(product->brew_whirlpool7, 1, 'f', 0));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1916 if (product->brew_whirlpool6 > 0)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1917 checkLine(&painter, &y, QString(tr("Wirlpool for %1 minutes. Keep temp between 60 and 66°C")).arg(product->brew_whirlpool6, 1, 'f', 0));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1918 for (int i = 0; i < product->hops.size(); i++) {
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1919 if (product->hops.at(i).useat == HOP_USEAT_WHIRLPOOL)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1920 checkLine(&painter, &y, QString(tr("%1 gr `%2` for %3 minutes in the whirlpool"))
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1921 .arg(product->hops.at(i).amount * 1000 * factor, 1, 'f', 1).arg(product->hops.at(i).name)
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
1922 .arg(product->hops.at(i).time));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1923 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1924 checkLine(&painter, &y, QString(tr("Cool to %1°C")).arg(product->brew_cooling_to, 1, 'f', 1));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1925 if (product->brew_whirlpool2 > 0)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1926 checkLine(&painter, &y, QString(tr("Wirlpool for %1 minutes.")).arg(product->brew_whirlpool2, 1, 'f', 0));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1927 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1928 checkHeader(&painter, &y, tr("Cooling"));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1929 checkLine(&painter, &y, QString(tr("Cool to %1°C")).arg(product->brew_cooling_to, 1, 'f', 1));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1930 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1931 checkLine(&painter, &y, QString(tr("Desinfect fermenter and pump and hoses if needed")));
413
8ea791d4cab6 Version 0.2.28. Use calculated hop absorption during boil to correct the volume to the fermenter.
Michiel Broek <mbroek@mbse.eu>
parents: 411
diff changeset
1932 checkInput(&painter, &y, QString(tr("Transfer about %1 liter wort to the fermenter")).arg(product->brew_fermenter_volume, 1, 'f', 1),
8ea791d4cab6 Version 0.2.28. Use calculated hop absorption during boil to correct the volume to the fermenter.
Michiel Broek <mbroek@mbse.eu>
parents: 411
diff changeset
1933 QString(tr("Liter")));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1934 if (checkSplit(&painter, &y, 3))
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1935 factor = 1;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1936
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1937 double climate = product->brew_cooling_to;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1938 lines = 3;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1939 for (int i = 0; i < product->yeasts.size(); i++) {
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
1940 if (product->yeasts.at(i).use == YEAST_USE_PRIMARY) {
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1941 lines++;
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
1942 if (product->yeasts.at(i).type == YEAST_TYPES_KVEIK && (product->yeasts.at(i).pitch_temperature > 0))
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1943 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1944 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1945 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1946 if (product->brew_aeration_type > 0)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1947 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1948 if (product->brew_fermenter_extrawater > 0)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1949 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1950 if ((y + (lines * 20)) > painter.device()->height()) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1951 printer->newPage();
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1952 printHeader(&painter);
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1953 y = 120;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1954 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1955 y += 20;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1956 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1957 double dry = 0;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1958 checkHeader(&painter, &y, tr("Yeast pitching and fermentation"));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1959 for (int i = 0; i < product->yeasts.size(); i++) {
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
1960 if (product->yeasts.at(i).use == YEAST_USE_PRIMARY) {
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
1961 switch (product->yeasts.at(i).form) {
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
1962 case YEAST_FORMS_LIQUID: checkLine(&painter, &y, QString(tr("%1 pack %2, `%3` yeast")).arg(product->yeasts.at(i).amount)
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
1963 .arg(product->yeasts.at(i).product_id).arg(product->yeasts.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1964 break;
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
1965 case YEAST_FORMS_DRY: dry += product->yeasts.at(i).amount * 1000 * factor;
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1966 case YEAST_FORMS_DRIED: checkLine(&painter, &y, QString(tr("%1 gram %2, `%3` yeast"))
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
1967 .arg(product->yeasts.at(i).amount * 1000 * factor, 1, 'f', 1)
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
1968 .arg(product->yeasts.at(i).product_id).arg(product->yeasts.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1969 break;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1970 default: checkLine(&painter, &y, QString(tr("%1 ml %2, `%3` yeast"))
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
1971 .arg(product->yeasts.at(i).amount * 1000 * factor, 1, 'f', 0)
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
1972 .arg(product->yeasts.at(i).product_id).arg(product->yeasts.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1973 break;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1974 }
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
1975 if (product->yeasts.at(i).type == YEAST_TYPES_KVEIK && (product->yeasts.at(i).pitch_temperature > 0)) {
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
1976 checkLine(&painter, &y, QString(tr("Pitch yeast at %1°C")).arg(product->yeasts.at(i).pitch_temperature, 1, 'f', 1));
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
1977 climate = product->yeasts.at(i).pitch_temperature;
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1978 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1979 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1980 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1981 if (dry > 0) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1982 checkLine(&painter, &y, QString(tr("Pitch yeast dry into the wort")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1983 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1984 if (product->starter_enable && product->prop_volume[0])
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1985 checkLine(&painter, &y, QString(tr("Add decanted yeast starter")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1986 else
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1987 checkLine(&painter, &y, QString(tr("Add the yeast")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1988 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1989 if (product->brew_fermenter_extrawater)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1990 checkLine(&painter, &y, QString(tr("Add %1 liter water in the fermenter")).arg(product->brew_fermenter_extrawater * factor, 1, 'f', 1));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1991 if (product->brew_aeration_type > 0)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1992 checkLine(&painter, &y, QString(tr("Aerate %1 minutes with %2")).arg(product->brew_aeration_time)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1993 .arg((product->brew_aeration_type == 1) ? "air":"oxygen"));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1994 checkLine(&painter, &y, QString(tr("Set fermentation start temperature to %1°C")).arg(climate, 1, 'f', 1));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1995 checkLine(&painter, &y, QString(tr("Start fermentation")));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1996
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1997 /* During primary fermentation */
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1998 lines = 0;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
1999 for (int i = 0; i < product->fermentables.size(); i++)
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2000 if (product->fermentables.at(i).added == FERMENTABLE_ADDED_FERMENTATION)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2001 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2002 for (int i = 0; i < product->miscs.size(); i++)
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2003 if (product->miscs.at(i).use_use == MISC_USES_PRIMARY)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2004 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2005 if (lines) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2006 if ((y + 20 + (lines * 20)) > painter.device()->height()) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2007 printer->newPage();
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2008 printHeader(&painter);
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2009 y = 120;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2010 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2011 y += 20;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2012 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2013 checkHeader(&painter, &y, tr("Primary fermentation"));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2014 for (int i = 0; i < product->fermentables.size(); i++) {
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2015 if (product->fermentables.at(i).added == FERMENTABLE_ADDED_FERMENTATION)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2016 checkLine(&painter, &y, QString(tr("Add %1 kg `%2` on day 3 or 4")).arg(product->fermentables.at(i).amount * factor, 1, 'f', 3)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2017 .arg(product->fermentables.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2018 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2019 for (int i = 0; i < product->miscs.size(); i++) {
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2020 if (product->miscs.at(i).use_use == MISC_USES_PRIMARY) {
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2021 QString unit = (product->miscs.at(i).amount_is_weight) ? "gr":"ml";
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2022 checkLine(&painter, &y, QString(tr("Add %1 %2 `%3` on day 3 or 4")).arg(product->miscs.at(i).amount * 1000 * factor, 1, 'f', 3)
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2023 .arg(unit).arg(product->miscs.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2024 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2025 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2026 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2027 if (checkSplit(&painter, &y, 4))
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2028 factor = 1;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2029
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2030 /* During secondary fermentation, yeast */
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2031 lines = 0;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2032 for (int i = 0; i < product->yeasts.size(); i++) {
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2033 if (product->yeasts.at(i).use == YEAST_USE_SECONDARY)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2034 lines++;
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2035 if (product->yeasts.at(i).harvest_time > 0)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2036 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2037 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2038 if (lines) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2039 if ((y + 20 + (lines * 20)) > painter.device()->height()) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2040 printer->newPage();
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2041 printHeader(&painter);
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2042 y = 120;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2043 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2044 y += 20;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2045 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2046 checkHeader(&painter, &y, tr("Secondary fermentation"));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2047 for (int i = 0; i < product->yeasts.size(); i++) {
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2048 if (product->yeasts.at(i).use == YEAST_USE_SECONDARY) {
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2049 if (product->yeasts.at(i).form == YEAST_FORMS_LIQUID) {
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2050 checkLine(&painter, &y, QString(tr("Add %1 pack %2, `%3` yeast (with starter if needed)"))
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2051 .arg(product->yeasts.at(i).amount).arg(product->yeasts.at(i).product_id).arg(product->yeasts.at(i).name));
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2052 } else if (product->yeasts.at(i).form == YEAST_FORMS_DRY) {
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2053 checkLine(&painter, &y, QString(tr("Add %1 gram %2, `%3`")).arg(product->yeasts.at(i).amount * 1000 * factor, 1, 'f', 1)
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2054 .arg(product->yeasts.at(i).product_id).arg(product->yeasts.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2055 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2056 checkLine(&painter, &y, QString(tr("Add %1 gram %2, `%3` yeast (with starter if needed)"))
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2057 .arg(product->yeasts.at(i).amount * 1000 * factor, 1, 'f', 1)
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2058 .arg(product->yeasts.at(i).product_id).arg(product->yeasts.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2059 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2060 }
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2061 if (product->yeasts.at(i).harvest_time > 0) {
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2062 checkLine(&painter, &y, QString(tr("After %1 hours harvest yeast from the %2")).arg(product->yeasts.at(i).harvest_time)
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2063 .arg((product->yeasts.at(i).harvest_top > 0) ? "top":"bottom"));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2064 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2065 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2066 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2067 if (checkSplit(&painter, &y, 5))
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2068 factor = 1;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2069
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2070 /* During tertiary fermentation */
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2071 lines = 0;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2072 for (int i = 0; i < product->fermentables.size(); i++)
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2073 if (product->fermentables.at(i).added == FERMENTABLE_ADDED_LAGERING)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2074 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2075 for (int i = 0; i < product->hops.size(); i++)
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
2076 if (product->hops.at(i).useat == HOP_USEAT_DRY_HOP)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2077 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2078 for (int i = 0; i < product->miscs.size(); i++)
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2079 if (product->miscs.at(i).use_use == MISC_USES_SECONDARY)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2080 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2081 for (int i = 0; i < product->yeasts.size(); i++) {
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2082 if (product->yeasts.at(i).use == YEAST_USE_TERTIARY)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2083 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2084 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2085 if (lines) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2086 if ((y + 20 + (lines * 20)) > painter.device()->height()) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2087 printer->newPage();
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2088 printHeader(&painter);
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2089 y = 120;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2090 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2091 y += 20;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2092 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2093 checkHeader(&painter, &y, tr("Tertiary fermentation"));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2094 for (int i = 0; i < product->fermentables.size(); i++) {
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2095 if (product->fermentables.at(i).added == FERMENTABLE_ADDED_LAGERING)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2096 checkLine(&painter, &y, QString(tr("Add %1 kg `%2`")).arg(product->fermentables.at(i).amount * factor, 1, 'f', 3)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2097 .arg(product->fermentables.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2098 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2099 for (int i = 0; i < product->hops.size(); i++) {
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
2100 if (product->hops.at(i).useat == HOP_USEAT_DRY_HOP) {
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
2101 checkLine(&painter, &y, QString(tr("Add %1 gram `%2` for %3 days")).arg(product->hops.at(i).amount * 1000 * factor, 1, 'f', 1)
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
2102 .arg(product->hops.at(i).name).arg(product->hops.at(i).time / 1440));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2103 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2104 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2105 for (int i = 0; i < product->yeasts.size(); i++) {
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2106 if (product->yeasts.at(i).use == YEAST_USE_TERTIARY) {
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2107 if (product->yeasts.at(i).form == YEAST_FORMS_LIQUID) {
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2108 checkLine(&painter, &y, QString(tr("Add %1 pack %2, `%3` yeast (with starter if needed)"))
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2109 .arg(product->yeasts.at(i).amount).arg(product->yeasts.at(i).product_id).arg(product->yeasts.at(i).name));
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2110 } else if (product->yeasts.at(i).form == YEAST_FORMS_DRY) {
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2111 checkLine(&painter, &y, QString(tr("Add %1 gram %2, `%3`")).arg(product->yeasts.at(i).amount * 1000 * factor, 1, 'f', 1)
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2112 .arg(product->yeasts.at(i).product_id).arg(product->yeasts.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2113 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2114 checkLine(&painter, &y, QString(tr("Add %1 ml %2, `%3` yeast (with starter if needed)"))
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2115 .arg(product->yeasts.at(i).amount * 1000 * factor, 1, 'f', 1)
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2116 .arg(product->yeasts.at(i).product_id).arg(product->yeasts.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2117 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2118 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2119 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2120 for (int i = 0; i < product->miscs.size(); i++) {
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2121 if (product->miscs.at(i).use_use == MISC_USES_SECONDARY) {
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2122 QString unit = (product->miscs.at(i).amount_is_weight) ? "gr":"ml";
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2123 checkLine(&painter, &y, QString(tr("Add %1 %2 `%3` for %4 days")).arg(product->miscs.at(i).amount * 1000.0 * factor, 1, 'f', 2)
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2124 .arg(unit).arg(product->miscs.at(i).name).arg(product->miscs.at(i).time / 1440));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2125 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2126 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2127 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2128 if (checkSplit(&painter, &y, 6))
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2129 factor = 1;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2130
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2131 /* During packaging */
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2132 lines = 0;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2133 for (int i = 0; i < product->fermentables.size(); i++)
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2134 if (product->fermentables.at(i).added >= FERMENTABLE_ADDED_BOTTLE)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2135 lines++;
379
0f2ce4ebd1b8 Print recipe and product, miscs weights have 2 decimals. Add hop extract during bottling to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
2136 for (int i = 0; i < product->hops.size(); i++)
0f2ce4ebd1b8 Print recipe and product, miscs weights have 2 decimals. Add hop extract during bottling to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
2137 if (product->hops.at(i).useat == HOP_USEAT_BOTTLING)
0f2ce4ebd1b8 Print recipe and product, miscs weights have 2 decimals. Add hop extract during bottling to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
2138 lines++;
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2139 for (int i = 0; i < product->miscs.size(); i++)
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2140 if (product->miscs.at(i).use_use == MISC_USES_BOTTLING)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2141 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2142 for (int i = 0; i < product->yeasts.size(); i++)
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2143 if (product->yeasts.at(i).use == YEAST_USE_BOTTLE)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2144 lines++;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2145 if (lines) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2146 if ((y + 20 + (lines * 20)) > painter.device()->height()) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2147 printer->newPage();
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2148 printHeader(&painter);
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2149 y = 120;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2150 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2151 y += 20;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2152 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2153 checkHeader(&painter, &y, tr("Packaging"));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2154 for (int i = 0; i < product->fermentables.size(); i++) {
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2155 if (product->fermentables.at(i).added == FERMENTABLE_ADDED_BOTTLE)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2156 checkLine(&painter, &y, QString(tr("Bottling add %1 kg `%2` with %3 liter water"))
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2157 .arg(product->fermentables.at(i).amount * factor, 1, 'f', 3)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2158 .arg(product->fermentables.at(i).name).arg(product->bottle_priming_water * factor, 1, 'f', 3));
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2159 if (product->fermentables.at(i).added == FERMENTABLE_ADDED_KEGS)
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2160 checkLine(&painter, &y, QString(tr("Kegging add %1 kg `%2` with %3 liter water"))
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2161 .arg(product->fermentables.at(i).amount * factor, 1, 'f', 3)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
2162 .arg(product->fermentables.at(i).name).arg(product->keg_priming_water * factor, 1, 'f', 3));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2163 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2164 for (int i = 0; i < product->yeasts.size(); i++) {
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2165 if (product->yeasts.at(i).use == YEAST_USE_BOTTLE) {
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2166 if (product->yeasts.at(i).form == YEAST_FORMS_LIQUID) {
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2167 checkLine(&painter, &y, QString(tr("Add %1, `%2` as bottle yeast"))
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2168 .arg(product->yeasts.at(i).product_id).arg(product->yeasts.at(i).name));
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2169 } else if (product->yeasts.at(i).form == YEAST_FORMS_DRY) {
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2170 checkLine(&painter, &y, QString(tr("Add %1 gram %2, `%3` as bottle yeast"))
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2171 .arg(product->yeasts.at(i).amount * 1000 * factor, 1, 'f', 1)
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2172 .arg(product->yeasts.at(i).product_id).arg(product->yeasts.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2173 } else {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2174 checkLine(&painter, &y, QString(tr("Add %1 ml %2, `%3` as bottle yeast"))
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2175 .arg(product->yeasts.at(i).amount * 1000 * factor, 1, 'f', 1)
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
2176 .arg(product->yeasts.at(i).product_id).arg(product->yeasts.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2177 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2178 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2179 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2180 for (int i = 0; i < product->miscs.size(); i++) {
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2181 if (product->miscs.at(i).use_use == MISC_USES_BOTTLING) {
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2182 QString unit = (product->miscs.at(i).amount_is_weight) ? "gr":"ml";
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2183 checkLine(&painter, &y, QString(tr("Add %1 %2 `%3` during bottling")).arg(product->miscs.at(i).amount * 1000 * factor, 1, 'f', 2)
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 272
diff changeset
2184 .arg(unit).arg(product->miscs.at(i).name));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2185 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2186 }
379
0f2ce4ebd1b8 Print recipe and product, miscs weights have 2 decimals. Add hop extract during bottling to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
2187 for (int i = 0; i < product->hops.size(); i++) {
0f2ce4ebd1b8 Print recipe and product, miscs weights have 2 decimals. Add hop extract during bottling to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
2188 if (product->hops.at(i).useat == HOP_USEAT_BOTTLING) {
0f2ce4ebd1b8 Print recipe and product, miscs weights have 2 decimals. Add hop extract during bottling to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
2189 checkLine(&painter, &y, QString(tr("Add %1 gr `%2`")).arg(product->hops.at(i).amount * 1000 * factor, 1, 'f', 2)
0f2ce4ebd1b8 Print recipe and product, miscs weights have 2 decimals. Add hop extract during bottling to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
2190 .arg(product->hops.at(i).name));
0f2ce4ebd1b8 Print recipe and product, miscs weights have 2 decimals. Add hop extract during bottling to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
2191 }
0f2ce4ebd1b8 Print recipe and product, miscs weights have 2 decimals. Add hop extract during bottling to the checklist.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
2192 }
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2193 }
386
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2194 } else if (p_job == PR_REP_TOTAL) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2195
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2196 qInfo() << "Print total production";
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2197 printHeader(&painter);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2198 y = 120;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2199
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2200 /* Report header */
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2201 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2202 painter.setPen(Qt::black);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2203 painter.fillRect( 20, y, 540, 20, c_header);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2204 painter.drawText( 20, y+4, 80, 20, Qt::AlignHCenter, tr("Number"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2205 painter.drawText(100, y+4, 80, 20, Qt::AlignHCenter, tr("Year"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2206 painter.drawText(180, y+4, 120, 20, Qt::AlignRight, tr("Brew sessions"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2207 painter.drawText(300, y+4, 120, 20, Qt::AlignRight, tr("Brew volume"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2208 painter.drawText(420, y+4, 120, 20, Qt::AlignRight, tr("Average volume"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2209 y += 20;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2210 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2211 query.exec("SELECT DISTINCT YEAR(package_date) FROM products WHERE package_date ORDER BY package_date");
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2212 query.first();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2213 int regel = 0, brews = 0, total = 0;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2214 double packaged = 0, tvolume = 0, average;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2215 QString year = "";
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2216 for (int i = 0 ; i < query.size() ; i++ ) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2217 if ((y + 20) > painter.device()->height()) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2218 printer->newPage();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2219 printHeader(&painter);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2220 y = 120;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2221 }
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2222
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2223 brews = 0;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2224 packaged = 0;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2225 regel++;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2226 year = query.value(0).toString();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2227 QSqlQuery query2;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2228 query2.exec("SELECT package_volume FROM products WHERE package_date AND YEAR(package_date) = '" + year + "'");
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2229 while (query2.next()) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2230 brews++;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2231 total++;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2232 packaged += query2.value(0).toDouble();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2233 tvolume += query2.value(0).toDouble();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2234 }
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2235 average = packaged / brews;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2236 painter.fillRect( 20, y, 540, 20, (i % 2) ? c_line1:c_line2);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2237 painter.drawText( 20, y+4, 80, 20, Qt::AlignCenter, QString("%1").arg(regel));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2238 painter.drawText(100, y+4, 100, 20, Qt::AlignCenter, year);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2239 painter.drawText(180, y+4, 120, 20, Qt::AlignRight, QString("%1").arg(brews));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2240 painter.drawText(300, y+4, 120, 20, Qt::AlignRight, QString("%1 L").arg(packaged, 2, 'f', 1, '0'));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2241 painter.drawText(420, y+4, 120, 20, Qt::AlignRight, QString("%1 L").arg(average, 2, 'f', 1, '0'));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2242 query.next();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2243 y += 20;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2244 }
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2245 average = tvolume / total;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2246 painter.fillRect(180, y, 360, 20, w_line);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2247 painter.drawText(180, y+4, 120, 20, Qt::AlignRight, QString("%1").arg(total));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2248 painter.drawText(300, y+4, 120, 20, Qt::AlignRight, QString("%1 L").arg(tvolume, 2, 'f', 1, '0'));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2249 painter.drawText(420, y+4, 120, 20, Qt::AlignRight, QString("%1 L").arg(average, 2, 'f', 1, '0'));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2250 y += 20;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2251
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2252 } else if (p_job == PR_REP_EFF) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2253
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2254 qInfo() << "Print efficiency";
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2255 y = painter.device()->height() + 100;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2256
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2257 query.exec("SELECT * FROM products WHERE package_date AND type='2' ORDER BY code");
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2258 query.first();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2259 for (int i = 0 ; i < query.size() ; i++ ) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2260 if ((y + 20) > painter.device()->height()) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2261 if (i > 0)
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2262 printer->newPage();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2263 printHeader(&painter);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2264 y = 120;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2265
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2266 /* Report header */
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2267 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2268 painter.setPen(Qt::black);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2269 painter.fillRect( 20, y, 715, 20, c_header);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2270 painter.drawText( 25, y+4, 65, 20, Qt::AlignLeft, tr("Code"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2271 painter.drawText( 90, y+4, 200, 20, Qt::AlignLeft, tr("Name"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2272 painter.drawText(290, y+4, 120, 20, Qt::AlignLeft, tr("Beer style"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2273 painter.drawText(410, y+4, 80, 20, Qt::AlignRight, tr("Max extract"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2274 painter.drawText(490, y+4, 80, 20, Qt::AlignRight, tr("Mash eff."));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2275 painter.drawText(570, y+4, 80, 20, Qt::AlignRight, tr("Sparge eff"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2276 painter.drawText(650, y+4, 80, 20, Qt::AlignRight, tr("Boil eff"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2277 y += 20;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2278 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2279 }
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2280
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2281 /*
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2282 * Data is not always available, calculate the missing pieces.
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2283 */
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2284 double mvol = 0, msugars = 0, ssugars = 0;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2285 QJsonParseError parseError;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2286
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2287 const auto& ma_json = query.value("json_mashs").toString().trimmed();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2288 if (!ma_json.trimmed().isEmpty()) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2289 const auto& formattedJson = QString("%1").arg(ma_json);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2290 QJsonDocument mashs = QJsonDocument::fromJson(formattedJson.toUtf8(), &parseError);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2291 if (parseError.error != QJsonParseError::NoError) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2292 qWarning() << "Parse error: " << parseError.errorString() << "at" << parseError.offset ;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2293 } else if (mashs.isArray()) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2294 for (int j = 0; j < mashs.array().size(); j++) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2295 QJsonObject obj = mashs.array().at(j).toObject();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2296 if (obj["step_type"].toInt() == 0)
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2297 mvol += obj["step_infuse_amount"].toDouble();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2298 }
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2299 }
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2300 }
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2301
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2302 const auto& f_json = query.value("json_fermentables").toString();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2303 if (!f_json.trimmed().isEmpty()) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2304 const auto& formattedJson = QString("%1").arg(f_json);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2305 QJsonDocument fermentables = QJsonDocument::fromJson(formattedJson.toUtf8(), &parseError);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2306 if (parseError.error != QJsonParseError::NoError) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2307 qWarning() << "Parse error: " << parseError.errorString() << "at" << parseError.offset ;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2308 } else if (fermentables.isArray()) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2309 for (int j = 0; j < fermentables.array().size(); j++) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2310 QJsonObject obj = fermentables.array().at(j).toObject();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2311 if (obj["f_added"].toInt() == 0) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2312 double d = obj["f_amount"].toDouble() * (obj["f_yield"].toDouble() / 100) * (1 - obj["f_moisture"].toDouble() / 100);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2313 ssugars += obj["f_amount"].toDouble();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2314 mvol += obj["f_amount"].toDouble() * obj["f_moisture"].toDouble() / 100;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2315 msugars += d;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2316 }
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2317 }
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2318 }
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2319 }
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2320
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2321 double sugardensity = 1.611;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2322 double v = msugars / sugardensity + mvol;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2323 double plato = 1000 * msugars / (v * 10); // deg. Plato
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2324 double mash_efficiency = query.value("brew_mash_efficiency").toDouble();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2325 double mash_sg = query.value("brew_mash_sg").toDouble();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2326 if ((mash_efficiency == 0) && (mash_sg > 1)) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2327 mash_efficiency = 100 * Utils::sg_to_plato(mash_sg) / plato;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2328 }
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2329 double mash_extract = 100 * msugars / ssugars;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2330 double preboil_sg = query.value("brew_preboil_sg").toDouble();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2331 double preboil_volume = query.value("brew_preboil_volume").toDouble();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2332 double est_preboil_plato = Utils::sg_to_plato(preboil_sg) * (preboil_volume / 1.04) * preboil_sg * 10 / 1000;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2333 double preboil_efficiency = query.value("brew_preboil_efficiency").toDouble();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2334 if ((msugars > 0) && (preboil_efficiency == 0))
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2335 preboil_efficiency = est_preboil_plato / msugars * 100;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2336 if (preboil_efficiency < 0)
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2337 preboil_efficiency = 0;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2338 double aboil_efficiency = query.value("brew_aboil_efficiency").toDouble();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2339
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2340 painter.fillRect( 20, y, 715, 20, (i % 2) ? c_line1:c_line2);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2341 painter.drawText( 25, y+4, 65, 20, Qt::AlignLeft, query.value("code").toString());
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2342 painter.drawText( 90, y+4, 200, 20, Qt::AlignLeft, query.value("name").toString());
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2343 painter.drawText(290, y+4, 120, 20, Qt::AlignLeft, query.value("st_name").toString());
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2344 painter.drawText(410, y+4, 80, 20, Qt::AlignRight, QString("%1%").arg(mash_extract, 2, 'f', 1, '0'));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2345 painter.drawText(490, y+4, 80, 20, Qt::AlignRight, QString("%1%").arg(mash_efficiency, 2, 'f', 1, '0'));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2346 painter.drawText(570, y+4, 80, 20, Qt::AlignRight, QString("%1%").arg(preboil_efficiency, 2, 'f', 1, '0'));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2347 painter.drawText(650, y+4, 80, 20, Qt::AlignRight, QString("%1%").arg(aboil_efficiency, 2, 'f', 1, '0'));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2348 query.next();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2349 y += 20;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2350 }
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2351
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2352 } else if (p_job == PR_REP_SVG) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2353
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2354 qInfo() << "Print fermentations";
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2355 y = painter.device()->height() + 100;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2356 QString y_name, y_lab, y_product;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2357
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2358 /*
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2359 * Works from MariaDB 10.6.x and later, MySQL 8.x and later.
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2360 * Pick the first yeast record, that should be the one used for primary.
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2361 */
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2362 query.exec("SELECT code,name,brew_date_end,primary_end_temp,primary_end_date,secondary_temp,secondary_end_date,tertiary_temp,"
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2363 "package_date,brew_fermenter_sg,fg,json_yeasts,"
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2364 "JSON_EXTRACT(json_yeasts, '$[0].y_laboratory') AS yeastLab,JSON_EXTRACT(json_yeasts, '$[0].y_product_id') AS yeastID "
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2365 "FROM products WHERE package_date AND type='2' ORDER BY yeastID");
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2366 query.first();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2367
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2368 for (int i = 0 ; i < query.size() ; i++ ) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2369 if ((y + 20) > painter.device()->height()) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2370 if (i > 0)
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2371 printer->newPage();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2372 printHeader(&painter);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2373 y = 120;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2374
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2375 /* Report header */
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2376 painter.setFont(QFont("Helvetica", 9, QFont::Bold));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2377 painter.setPen(Qt::black);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2378 painter.fillRect( 20, y, 715, 20, c_header);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2379 painter.drawText( 25, y+4, 65, 20, Qt::AlignLeft, tr("Code"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2380 painter.drawText( 90, y+4, 180, 20, Qt::AlignLeft, tr("Name"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2381 painter.drawText(270, y+4, 110, 20, Qt::AlignLeft, tr("Yeast"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2382 painter.drawText(380, y+4, 60, 20, Qt::AlignHCenter, tr("Primary"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2383 painter.drawText(440, y+4, 60, 20, Qt::AlignHCenter, tr("Secondary"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2384 painter.drawText(500, y+4, 60, 20, Qt::AlignHCenter, tr("Tertiary"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2385 painter.drawText(560, y+4, 40, 20, Qt::AlignRight, tr("Days"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2386 painter.drawText(600, y+4, 40, 20, Qt::AlignRight, tr("OG"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2387 painter.drawText(640, y+4, 40, 20, Qt::AlignRight, tr("FG"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2388 painter.drawText(680, y+4, 50, 20, Qt::AlignRight, tr("AA"));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2389 y += 20;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2390 painter.setFont(QFont("Helvetica", 9, QFont::Normal));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2391 }
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2392
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2393 int primary = query.value("brew_date_end").toDate().daysTo(query.value("primary_end_date").toDate());
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2394 int secondary = query.value("primary_end_date").toDate().daysTo(query.value("secondary_end_date").toDate());
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2395 int tertiary = query.value("secondary_end_date").toDate().daysTo(query.value("package_date").toDate());
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2396 int total = query.value("brew_date_end").toDate().daysTo(query.value("package_date").toDate());
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2397 double og = query.value("brew_fermenter_sg").toDouble();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2398 double fg = query.value("fg").toDouble();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2399 double aa = Utils::calc_svg(og, fg);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2400
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2401 painter.fillRect( 20, y, 715, 20, (i % 2) ? c_line1:c_line2);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2402 painter.drawText( 25, y+4, 65, 20, Qt::AlignLeft, query.value("code").toString());
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2403 painter.drawText( 90, y+4, 180, 20, Qt::AlignLeft, query.value("name").toString());
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2404 painter.drawText(270, y+4, 110, 20, Qt::AlignLeft, query.value("yeastID").toString() + " " + query.value("yeastLab").toString());
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2405 painter.drawText(380, y+4, 40, 20, Qt::AlignRight, QString("%1°").arg(query.value("primary_end_temp").toDouble(), 2, 'f', 1));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2406 painter.drawText(420, y+4, 20, 20, Qt::AlignRight, QString("%1").arg(primary));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2407 painter.drawText(440, y+4, 40, 20, Qt::AlignRight, QString("%1°").arg(query.value("secondary_temp").toDouble(), 2, 'f', 1));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2408 painter.drawText(480, y+4, 20, 20, Qt::AlignRight, QString("%1").arg(secondary));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2409 painter.drawText(500, y+4, 40, 20, Qt::AlignRight, QString("%1°").arg(query.value("tertiary_temp").toDouble(), 2, 'f', 1));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2410 painter.drawText(540, y+4, 20, 20, Qt::AlignRight, QString("%1").arg(tertiary));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2411 painter.drawText(560, y+4, 40, 20, Qt::AlignRight, QString("%1").arg(total));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2412 painter.drawText(600, y+4, 40, 20, Qt::AlignRight, QString("%1").arg(og, 4, 'f', 3, '0'));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2413 painter.drawText(640, y+4, 40, 20, Qt::AlignRight, QString("%1").arg(fg, 4, 'f', 3, '0'));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2414 painter.drawText(680, y+4, 50, 20, Qt::AlignRight, QString("%1%").arg(aa, 2, 'f', 1, '0'));
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2415
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2416 query.next();
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2417 y += 20;
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2418 }
160
2b62a032079f Completed print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 159
diff changeset
2419 }
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2420
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2421 painter.end();
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2422 }
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2423
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2424
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2425 void PrinterDialog::checkHeader(QPainter *painter, qreal *y, QString text)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2426 {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2427 painter->setFont(QFont("Arial", 10, QFont::Bold));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2428 painter->setPen(Qt::black);
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2429 painter->drawText(50, *y, 700, 20, Qt::AlignLeft, text);
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2430 painter->setFont(QFont("Arial", 10, QFont::Normal));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2431 *y += 20;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2432 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2433
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2434
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2435 /*
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2436 * Draw a checkbox and text.
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2437 */
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2438 void PrinterDialog::checkLine(QPainter *painter, qreal *y, QString text)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2439 {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2440 painter->drawRect(24, *y, 16, 16);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2441 painter->drawText(50, *y,630, 20, Qt::AlignLeft, text);
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2442 *y += 20;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2443 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2444
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2445
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2446 void PrinterDialog::checkInput(QPainter *painter, qreal *y, QString text, QString prompt)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2447 {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2448 if (text != "") {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2449 painter->drawRect(24, *y, 16, 16);
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2450 painter->drawText(50, *y,480, 20, Qt::AlignLeft, text);
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2451 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2452 painter->drawText(515, *y, 150, 20, Qt::AlignRight, QString(tr("Measured:")) + QString(" _________"));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2453 painter->drawText(675, *y, 60, 20, Qt::AlignLeft, prompt);
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2454 *y += 20;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2455 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2456
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2457
459
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
2458 void PrinterDialog::messageInput(QPainter *painter, qreal *y, QString text, QString prompt)
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
2459 {
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
2460 if (text != "") {
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
2461 painter->drawText(50, *y,480, 20, Qt::AlignLeft, text);
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
2462 }
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
2463 painter->drawText(515, *y, 150, 20, Qt::AlignRight, QString(tr("Measured:")) + QString(" _________"));
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
2464 painter->drawText(675, *y, 60, 20, Qt::AlignLeft, prompt);
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
2465 *y += 20;
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
2466 }
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
2467
fbb250c725bb In print checklist show volume after boil inclusive immersion chiller volume. Improved some prompts in equipment edit.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
2468
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2469 bool PrinterDialog::checkSplit(QPainter *painter, qreal *y, int moment)
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2470 {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2471 if (product->divide_type && product->divide_type == moment) {
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2472 *y += 20;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2473 painter->setFont(QFont("Helvetica", 14, QFont::Bold));
301
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
2474 painter->drawText(20, *y, 715, 20, Qt::AlignCenter,
fe6346211b5b Finally the translation of string arrays is working.
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
2475 QString(tr("%1 split the batch here!")).arg(QCoreApplication::translate("Splitter", g_prod_split[product->divide_type])));
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2476 painter->setFont(QFont("Arial", 10, QFont::Normal));
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2477 *y += 26;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2478 return true;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2479 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2480 return false;
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2481 }
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2482
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2483
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
2484 QString PrinterDialog::strDiff(double v1, double v2, int decimals, QString suffix)
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
2485 {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
2486 return QString("%1%2%3").arg((v2 > v1) ? "+":"").arg(v2 - v1, 1, 'f', decimals).arg(suffix);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
2487 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
2488
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
2489
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
2490 QString PrinterDialog::strDensity(double density)
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
2491 {
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
2492 return QString("%1 SG %2°Brix %3°P").arg(density, 1, 'f', 3).arg(Utils::sg_to_brix(density), 1, 'f', 1).arg(Utils::sg_to_plato(density), 1, 'f', 1);
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
2493 }
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
2494
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2495
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2496 void PrinterDialog::printHeader(QPainter *painter)
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2497 {
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2498 QPixmap outPixmap = QPixmap();
133
08635b028dcf Load waters during recipe startup. Started calcWater() function. Load profile_setup record global. The print function uses the globals now too instead of loading from the database.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
2499 outPixmap.loadFromData(my_logoByteArray);
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2500 int w = outPixmap.width();
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2501 int h = outPixmap.height();
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2502 /* Make sure to keep the logo aspect ratio */
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2503 if (w == h) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2504 painter->drawPixmap(20, 0, 100, 100, outPixmap);
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2505 } else if (w > h) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2506 painter->drawPixmap(20, 0, 100, (h * 100) / w, outPixmap);
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2507 } else {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2508 painter->drawPixmap(20, 0, (w * 100) / h, 100, outPixmap);
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2509 }
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2510
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2511 /* The fat header line */
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2512 painter->setFont(QFont("Helvetica",18, QFont::Bold));
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2513 if (p_job == PR_SUPPLIES) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2514 painter->drawText(140, 0, 500, 40, Qt::AlignLeft, tr("Inventory") + " " + my_brewery_name);
54
bba7be9034be Added print private yeastbank
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
2515 } else if (p_job == PR_YEASTBANK) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2516 painter->drawText(140, 0, 500, 40, Qt::AlignLeft, tr("Yeastbank") + " " + my_brewery_name);
158
24bc2de721d9 Activated print recipe button. The recipe record structure is now global. Added global product record structure.
Michiel Broek <mbroek@mbse.eu>
parents: 155
diff changeset
2517 } else if (p_job == PR_RECIPE) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2518 painter->drawText(140, 0, 500, 40, Qt::AlignLeft, recipe->name);
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2519 } else if (p_job == PR_PRODUCT || p_job == PR_CHECKLIST) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2520 painter->drawText(140, 0, 500, 40, Qt::AlignLeft, product->code + " " + product->name);
386
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2521 } else if (p_job == PR_REP_TOTAL) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2522 painter->drawText(140, 0, 500, 40, Qt::AlignLeft, tr("Year production") + " " + my_brewery_name);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2523 } else if (p_job == PR_REP_EFF) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2524 painter->drawText(140, 0, 500, 40, Qt::AlignLeft, tr("Brew efficiency") + " " + my_brewery_name);
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2525 } else if (p_job == PR_REP_SVG) {
2e30c9c20d22 Added reports, total production, fermentations and efficiency.
Michiel Broek <mbroek@mbse.eu>
parents: 379
diff changeset
2526 painter->drawText(140, 0, 500, 40, Qt::AlignLeft, tr("Fermentations") + " " + my_brewery_name);
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2527 } else {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2528 painter->drawText(140, 0, 500, 40, Qt::AlignLeft, "?? " + my_brewery_name);
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2529 }
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2530 /* The first normal header line */
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2531 painter->setFont(QFont("Helvetica",10, QFont::Normal));
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2532 painter->drawText(140,35, 80, 20, Qt::AlignLeft, tr("Date and time"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2533 painter->drawText(220,35, 400, 20, Qt::AlignLeft, ": " + QDateTime::currentDateTime().toString("dd-MMM-yyyy hh:mm"));
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
2534 if (p_job == PR_RECIPE) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2535 painter->drawText(140,55, 80, 20, Qt::AlignLeft, tr("Beer style"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2536 painter->drawText(220,55, 400, 20, Qt::AlignLeft, ": " + recipe->st_name);
159
231f5c8002e3 Added the largest part of print recipe.
Michiel Broek <mbroek@mbse.eu>
parents: 158
diff changeset
2537 }
240
52efe638e79a Added print checklist
Michiel Broek <mbroek@mbse.eu>
parents: 238
diff changeset
2538 if (p_job == PR_PRODUCT || p_job == PR_CHECKLIST) {
255
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2539 painter->drawText(140,55, 80, 20, Qt::AlignLeft, tr("Beer style"));
f237db73d4c8 Reformatted output by inserting intend of 20 pixels.
Michiel Broek <mbroek@mbse.eu>
parents: 240
diff changeset
2540 painter->drawText(220,55, 400, 20, Qt::AlignLeft, ": " + product->st_name);
237
f1032191578b Added most of print product
Michiel Broek <mbroek@mbse.eu>
parents: 208
diff changeset
2541 }
53
d36879f13d32 Completed printing inventory supplies.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
2542 /* The report itself may print more lines from y = 55. */
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2543 }
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2544
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2545

mercurial