# HG changeset patch # User Michiel Broek # Date 1654455298 -7200 # Node ID f237db73d4c89e5de645212c0ce312190e0bc63c # Parent b0adda0053c50d0cef58316d93f8b26b56397cd2 Reformatted output by inserting intend of 20 pixels. diff -r b0adda0053c5 -r f237db73d4c8 src/PrinterDialog.cpp --- a/src/PrinterDialog.cpp Sun Jun 05 14:50:33 2022 +0200 +++ b/src/PrinterDialog.cpp Sun Jun 05 20:54:58 2022 +0200 @@ -75,6 +75,8 @@ qreal y = 0; if (p_job == PR_SUPPLIES) { + qInfo() << "Print supplies"; + /* * Print supplies in stock */ @@ -85,10 +87,10 @@ /* Fermentables supplies header */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 90, 20, Qt::AlignLeft, tr("Type")); - painter.drawText( 90, y+4, 100, 20, Qt::AlignLeft, tr("Supplier")); - painter.drawText(190, y+4, 270, 20, Qt::AlignLeft, tr("Fermentable")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 80, 20, Qt::AlignLeft, tr("Type")); + painter.drawText(100, y+4, 100, 20, Qt::AlignLeft, tr("Supplier")); + painter.drawText(200, y+4, 260, 20, Qt::AlignLeft, tr("Fermentable")); painter.drawText(460, y+4, 115, 20, Qt::AlignRight, tr("Stock")); painter.drawText(575, y+4, 80, 20, Qt::AlignRight, tr("Price/Kg")); painter.drawText(655, y+4, 80, 20, Qt::AlignRight, tr("Value")); @@ -102,10 +104,10 @@ printHeader(&painter); y = 120; } - painter.fillRect( 0, y, 735, 20, (i % 2) ? c_line1:c_line2); - painter.drawText( 0, y+4, 90, 20, Qt::AlignLeft, fermentable_types[query.value(0).toInt()]); - painter.drawText( 90, y+4, 100, 20, Qt::AlignLeft, query.value(2).toString()); - painter.drawText(190, y+4, 270, 20, Qt::AlignLeft, query.value(1).toString()); + painter.fillRect( 20, y, 715, 20, (i % 2) ? c_line1:c_line2); + painter.drawText( 20, y+4, 80, 20, Qt::AlignLeft, fermentable_types[query.value(0).toInt()]); + painter.drawText(100, y+4, 100, 20, Qt::AlignLeft, query.value(2).toString()); + painter.drawText(200, y+4, 260, 20, Qt::AlignLeft, query.value(1).toString()); w = QString("%1 kg").arg(query.value(3).toDouble(), 10, 'f', 3); painter.drawText(460, y+4, 115, 20, Qt::AlignRight, w); w = QString("%1 €").arg(query.value(4).toDouble(), 8, 'f', 2); @@ -116,8 +118,8 @@ query.next(); y += 20; } - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 100, 20, Qt::AlignLeft, tr("Total")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 100, 20, Qt::AlignLeft, tr("Total")); w = QString("%1 €").arg(tot_fermentables, 8, 'f', 2); painter.drawText(655, y+4, 80, 20, Qt::AlignRight, w); y += 20; @@ -134,9 +136,9 @@ } painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Country")); - painter.drawText(120, y+4, 260, 20, Qt::AlignLeft, tr("Hop name")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Country")); + painter.drawText(140, y+4, 240, 20, Qt::AlignLeft, tr("Hop name")); painter.drawText(380, y+4, 80, 20, Qt::AlignLeft, tr("Form")); painter.drawText(460, y+4, 115, 20, Qt::AlignRight, tr("Stock")); painter.drawText(575, y+4, 80, 20, Qt::AlignRight, tr("Price/Kg")); @@ -149,9 +151,9 @@ printHeader(&painter); y = 120; } - painter.fillRect( 0, y, 735, 20, (i % 2) ? c_line1:c_line2); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, query.value(2).toString()); - painter.drawText(120, y+4, 260, 20, Qt::AlignLeft, query.value(0).toString()); + painter.fillRect( 20, y, 715, 20, (i % 2) ? c_line1:c_line2); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, query.value(2).toString()); + painter.drawText(140, y+4, 240, 20, Qt::AlignLeft, query.value(0).toString()); painter.drawText(380, y+4, 80, 20, Qt::AlignLeft, hop_forms[query.value(1).toInt()]); if (query.value(3).toDouble() < 0.6) w = QString("%1 gr").arg(query.value(3).toDouble() * 1000.0, 10, 'f', 1); @@ -166,8 +168,8 @@ query.next(); y += 20; } - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 100, 20, Qt::AlignLeft, tr("Total")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 100, 20, Qt::AlignLeft, tr("Total")); w = QString("%1 €").arg(tot_hops, 8, 'f', 2); painter.drawText(655, y+4, 80, 20, Qt::AlignRight, w); y += 20; @@ -184,11 +186,11 @@ } painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Laboratory")); - painter.drawText(120, y+4, 120, 20, Qt::AlignLeft, tr("Product")); - painter.drawText(240, y+4, 220, 20, Qt::AlignLeft, tr("Yeast")); - painter.drawText(460, y+4, 115, 20, Qt::AlignRight, tr("Stock")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Laboratory")); + painter.drawText(140, y+4, 120, 20, Qt::AlignLeft, tr("Product")); + painter.drawText(260, y+4, 235, 20, Qt::AlignLeft, tr("Yeast")); + painter.drawText(495, y+4, 80, 20, Qt::AlignRight, tr("Stock")); painter.drawText(575, y+4, 80, 20, Qt::AlignRight, tr("Price/Kg")); painter.drawText(655, y+4, 80, 20, Qt::AlignRight, tr("Value")); y += 20; @@ -199,15 +201,15 @@ printHeader(&painter); y = 120; } - painter.fillRect( 0, y, 735, 20, (i % 2) ? c_line1:c_line2); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, query.value(1).toString()); - painter.drawText(120, y+4, 120, 20, Qt::AlignLeft, query.value(2).toString()); - painter.drawText(240, y+4, 220, 20, Qt::AlignLeft, query.value(0).toString()); + painter.fillRect( 20, y, 715, 20, (i % 2) ? c_line1:c_line2); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, query.value(1).toString()); + painter.drawText(140, y+4, 120, 20, Qt::AlignLeft, query.value(2).toString()); + painter.drawText(260, y+4, 235, 20, Qt::AlignLeft, query.value(0).toString()); if (query.value(3).toInt() == 0) w = QString("%1 %2").arg(query.value(4).toDouble(), 10, 'f', 1).arg(y_unit[query.value(3).toInt()]); else w = QString("%1 %2").arg(query.value(4).toDouble() * 1000.0, 10, 'f', 1).arg(y_unit[query.value(3).toInt()]); - painter.drawText(460, y+4, 115, 20, Qt::AlignRight, w); + painter.drawText(495, y+4, 80, 20, Qt::AlignRight, w); w = QString("%1 €").arg(query.value(5).toDouble(), 8, 'f', 2); painter.drawText(575, y+4, 80, 20, Qt::AlignRight, w); w = QString("%1 €").arg(query.value(4).toDouble() * query.value(5).toDouble(), 8, 'f', 2); @@ -216,8 +218,8 @@ query.next(); y += 20; } - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 100, 20, Qt::AlignLeft, tr("Total")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 100, 20, Qt::AlignLeft, tr("Total")); w = QString("%1 €").arg(tot_yeasts, 8, 'f', 2); painter.drawText(655, y+4, 80, 20, Qt::AlignRight, w); y += 20; @@ -234,9 +236,9 @@ } painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Type")); - painter.drawText(120, y+4, 340, 20, Qt::AlignLeft, tr("Ingredient")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Type")); + painter.drawText(140, y+4, 320, 20, Qt::AlignLeft, tr("Ingredient")); painter.drawText(460, y+4, 115, 20, Qt::AlignRight, tr("Stock")); painter.drawText(575, y+4, 80, 20, Qt::AlignRight, tr("Price/Kg")); painter.drawText(655, y+4, 80, 20, Qt::AlignRight, tr("Value")); @@ -248,9 +250,9 @@ printHeader(&painter); y = 120; } - painter.fillRect( 0, y, 735, 20, (i % 2) ? c_line1:c_line2); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, misc_types[query.value(1).toInt()]); - painter.drawText(120, y+4, 340, 20, Qt::AlignLeft, query.value(0).toString()); + painter.fillRect( 20, y, 715, 20, (i % 2) ? c_line1:c_line2); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, misc_types[query.value(1).toInt()]); + painter.drawText(140, y+4, 320, 20, Qt::AlignLeft, query.value(0).toString()); if (query.value(2).toInt()) w = QString("%1 gr").arg(query.value(3).toDouble() * 1000.0, 10, 'f', 1); else @@ -264,13 +266,15 @@ query.next(); y += 20; } - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 100, 20, Qt::AlignLeft, tr("Total")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 100, 20, Qt::AlignLeft, tr("Total")); w = QString("%1 €").arg(tot_miscs, 8, 'f', 2); painter.drawText(655, y+4, 80, 20, Qt::AlignRight, w); y += 20; } else if (p_job == PR_YEASTBANK) { + qInfo() << "Print yeastbank"; + /* * Print yeast in the private yeast bank. */ @@ -279,8 +283,8 @@ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 200, 20, Qt::AlignLeft, tr("Yeast")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 180, 20, Qt::AlignLeft, tr("Yeast")); painter.drawText(200, y+4, 230, 20, Qt::AlignLeft, tr("Description")); painter.drawText(430, y+4, 80, 20, Qt::AlignCenter, tr("Type")); painter.drawText(510, y+4, 80, 20, Qt::AlignCenter, tr("Form")); @@ -294,8 +298,8 @@ query.exec(); query.first(); for (int i = 0; i < query.size(); i++) { - painter.fillRect( 0, y, 735, 20, (i % 2) ? c_line1:c_line2); - painter.drawText( 0, y+4, 200, 20, Qt::AlignLeft, query.value(0).toString()); + painter.fillRect( 20, y, 715, 20, (i % 2) ? c_line1:c_line2); + painter.drawText( 20, y+4, 180, 20, Qt::AlignLeft, query.value(0).toString()); painter.drawText(200, y+4, 230, 20, Qt::AlignLeft, query.value(5).toString()); painter.drawText(430, y+4, 80, 20, Qt::AlignCenter, yeast_types[query.value(1).toInt()]); painter.drawText(510, y+4, 80, 20, Qt::AlignCenter, yeast_forms[query.value(2).toInt()]); @@ -311,57 +315,59 @@ } } else if (p_job == PR_RECIPE) { + qInfo() << "Print recipe" << recipe->record; + printHeader(&painter); y = 120; /* Generic header */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 735, 20, Qt::AlignCenter, tr("Recipe overview")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 715, 20, Qt::AlignCenter, tr("Recipe overview")); y += 20; painter.setFont(QFont("Helvetica", 9, QFont::Normal)); - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Brew type")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, recipe_types[recipe->type]); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Efficiency")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Brew type")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, recipe_types[recipe->type]); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Efficiency")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 %").arg(recipe->efficiency, 1, 'f', 1)); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Boil time")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1 minutes.").arg(recipe->boil_time, 1, 'f', 0)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Batch size")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Boil time")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 minutes.").arg(recipe->boil_time, 1, 'f', 0)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Batch size")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 L.").arg(recipe->batch_size, 1, 'f', 1)); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Start SG")); - painter.drawText(120, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(recipe->est_og, 1, 'f', 3)); - painter.drawText(210, 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)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("End SG")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Start SG")); + painter.drawText(170, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(recipe->est_og, 1, 'f', 3)); + 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)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("End SG")); painter.drawText(555, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(recipe->est_fg, 1, 'f', 3)); 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)); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Estimated Alcohol")); - painter.drawText(120, y+4, 90, 20, Qt::AlignLeft, QString("%1%").arg(recipe->est_abv, 1, 'f', 1)); - painter.drawText(210, 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)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Estimated CO2 vol")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Estimated Alcohol")); + painter.drawText(170, y+4, 90, 20, Qt::AlignLeft, QString("%1%").arg(recipe->est_abv, 1, 'f', 1)); + 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)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Estimated CO2 vol")); painter.drawText(555, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(recipe->est_carb, 1, 'f', 1)); 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)); y += 20; - painter.fillRect( 0, y, 120, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Color (") + color_method[recipe->color_method] + ")"); - painter.fillRect(120, y, 180, 20, Utils::ebc_to_color(recipe->est_color)); + painter.fillRect( 20, y, 150, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Color (") + color_method[recipe->color_method] + ")"); + painter.fillRect(170, y, 180, 20, Utils::ebc_to_color(recipe->est_color)); if (recipe->est_color > 30) painter.setPen(Qt::white); - painter.drawText(120, y+4, 90, 20, Qt::AlignLeft, QString("%1 EBC").arg(recipe->est_color, 1, 'f', 0)); - painter.drawText(210, 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)); + painter.drawText(170, y+4, 90, 20, Qt::AlignLeft, QString("%1 EBC").arg(recipe->est_color, 1, 'f', 0)); + 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)); painter.setPen(Qt::black); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("IBU (") + ibu_method[recipe->ibu_method] + ")"); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("IBU (") + ibu_method[recipe->ibu_method] + ")"); painter.drawText(555, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(recipe->est_ibu, 1, 'f', 1)); 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)); y += 40; @@ -369,12 +375,12 @@ /* Fermentables */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 260, 20, Qt::AlignLeft, tr("Fermentable")); - painter.drawText(265, y+4, 70, 20, Qt::AlignRight, tr("Percent")); - painter.drawText(340, y+4, 70, 20, Qt::AlignRight, tr("Yield")); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, tr("Type")); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, tr("Use at")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, tr("Fermentable")); + painter.drawText(285, y+4, 70, 20, Qt::AlignRight, tr("Percent")); + painter.drawText(360, y+4, 70, 20, Qt::AlignRight, tr("Yield")); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type")); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at")); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount")); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost")); y += 20; @@ -397,15 +403,15 @@ else amount = QString("%1 gr").arg(recipe->fermentables.at(i).f_amount * 1000, 1, 'f', 0); - painter.fillRect( 0, y, 735, 20, f_line); + painter.fillRect( 20, y, 715, 20, f_line); - painter.drawText( 0, y+4, 260, 20, Qt::AlignLeft, recipe->fermentables.at(i).f_name + + painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, recipe->fermentables.at(i).f_name + QString(", %1 EBC (").arg(recipe->fermentables.at(i).f_color, 1, 'f', 0) + recipe->fermentables.at(i).f_supplier + ")"); - painter.drawText(265, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(recipe->fermentables.at(i).f_percentage, 1, 'f', 1)); - painter.drawText(340, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(recipe->fermentables.at(i).f_yield, 1, 'f', 1)); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, soort); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, fermentable_added[recipe->fermentables.at(i).f_added]); + painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(recipe->fermentables.at(i).f_percentage, 1, 'f', 1)); + painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(recipe->fermentables.at(i).f_yield, 1, 'f', 1)); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, soort); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, fermentable_added[recipe->fermentables.at(i).f_added]); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, amount); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3)); y += 20; @@ -416,12 +422,12 @@ /* Hops */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 260, 20, Qt::AlignLeft, tr("Hop")); - painter.drawText(265, y+4, 70, 20, Qt::AlignRight, tr("Alpha")); - painter.drawText(340, y+4, 70, 20, Qt::AlignRight, tr("IBU")); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, tr("Type")); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, tr("Use at")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, tr("Hop")); + painter.drawText(285, y+4, 70, 20, Qt::AlignRight, tr("Alpha")); + painter.drawText(360, y+4, 70, 20, Qt::AlignRight, tr("IBU")); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type")); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at")); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount")); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost")); y += 20; @@ -447,12 +453,12 @@ else amount = QString("%1 gr").arg(recipe->hops.at(i).h_amount * 1000, 1, 'f', 1); - painter.fillRect( 0, y, 735, 20, h_line); - painter.drawText( 0, y+4, 260, 20, Qt::AlignLeft, recipe->hops.at(i).h_name + " (" + recipe->hops.at(i).h_origin + ")"); - painter.drawText(265, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(recipe->hops.at(i).h_alpha, 1, 'f', 1)); - painter.drawText(340, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(ibu, 1, 'f', 1)); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, hop_forms[recipe->hops.at(i).h_form]); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, use); + painter.fillRect( 20, y, 715, 20, h_line); + painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, recipe->hops.at(i).h_name + " (" + recipe->hops.at(i).h_origin + ")"); + painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(recipe->hops.at(i).h_alpha, 1, 'f', 1)); + painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(ibu, 1, 'f', 1)); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, hop_forms[recipe->hops.at(i).h_form]); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, use); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, amount); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3)); y += 20; @@ -463,11 +469,11 @@ /* Yeasts */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 335, 20, Qt::AlignLeft, tr("Yeast")); - painter.drawText(340, y+4, 70, 20, Qt::AlignRight, tr("Attn")); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, tr("Type")); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, tr("Use at")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 335, 20, Qt::AlignLeft, tr("Yeast")); + painter.drawText(360, y+4, 70, 20, Qt::AlignRight, tr("Attn")); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type")); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at")); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount")); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost")); y += 20; @@ -484,13 +490,13 @@ else amount = QString("%1 ml").arg(recipe->yeasts.at(i).y_amount * 1000.0, 1, 'f', 1); - painter.fillRect( 0, y, 735, 20, y_line); - painter.drawText( 0, y+4, 260, 20, Qt::AlignLeft, recipe->yeasts.at(i).y_laboratory + " " + + painter.fillRect( 20, y, 715, 20, y_line); + painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, recipe->yeasts.at(i).y_laboratory + " " + recipe->yeasts.at(i).y_product_id + " (" + recipe->yeasts.at(i).y_name + ")"); - painter.drawText(340, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(recipe->yeasts.at(i).y_attenuation, 1, 'f', 1)); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, yeast_forms[recipe->yeasts.at(i).y_form]); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, yeast_use[recipe->yeasts.at(i).y_use]); + painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(recipe->yeasts.at(i).y_attenuation, 1, 'f', 1)); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, yeast_forms[recipe->yeasts.at(i).y_form]); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, yeast_use[recipe->yeasts.at(i).y_use]); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, amount); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3)); y += 20; @@ -508,10 +514,10 @@ /* Miscs */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 410, 20, Qt::AlignLeft, tr("Misc ingredient")); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, tr("Type")); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, tr("Use at")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 410, 20, Qt::AlignLeft, tr("Misc ingredient")); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type")); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at")); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount")); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost")); y += 20; @@ -527,16 +533,16 @@ use = misc_uses[recipe->miscs.at(i).m_use_use]; if (recipe->miscs.at(i).m_type == 4) // Water agent - painter.fillRect( 0, y, 735, 20, mw_line); + painter.fillRect( 20, y, 715, 20, mw_line); else if (recipe->miscs.at(i).m_type == 3) // Fining - painter.fillRect( 0, y, 735, 20, mf_line); + painter.fillRect( 20, y, 715, 20, mf_line); else if (recipe->miscs.at(i).m_type < 3 || recipe->miscs.at(i).m_type == 5) // Spice, Herb, Flavour, Yeast nutrient - painter.fillRect( 0, y, 735, 20, ms_line); + painter.fillRect( 20, y, 715, 20, ms_line); else - painter.fillRect( 0, y, 735, 20, mo_line); - painter.drawText( 0, y+4, 410, 20, Qt::AlignLeft, recipe->miscs.at(i).m_name); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, misc_types[recipe->miscs.at(i).m_type]); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, use); + painter.fillRect( 20, y, 715, 20, mo_line); + painter.drawText( 20, y+4, 410, 20, Qt::AlignLeft, recipe->miscs.at(i).m_name); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, misc_types[recipe->miscs.at(i).m_type]); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, use); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, QString("%1 %2").arg(recipe->miscs.at(i).m_amount * 1000.0, 1, 'f', 1).arg(recipe->miscs.at(i).m_amount_is_weight ? "gr":"ml")); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3)); @@ -555,9 +561,9 @@ /* Mash */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 160, 20, Qt::AlignLeft, tr("Mash step")); - painter.drawText(165, y+4, 90, 20, Qt::AlignLeft, tr("Step type")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 160, 20, Qt::AlignLeft, tr("Mash step")); + painter.drawText(180, y+4, 80, 20, Qt::AlignLeft, tr("Step type")); painter.drawText(260, y+4, 60, 20, Qt::AlignRight, tr("Start °C")); painter.drawText(325, y+4, 60, 20, Qt::AlignRight, tr("End °C")); painter.drawText(390, y+4, 60, 20, Qt::AlignRight, tr("Time")); @@ -568,9 +574,9 @@ y += 20; painter.setFont(QFont("Helvetica", 9, QFont::Normal)); for (int i = 0; i < recipe->mashs.size(); i++) { - painter.fillRect( 0, y, 735, 20, m_line); - painter.drawText( 0, y+4, 160, 20, Qt::AlignLeft, recipe->mashs.at(i).step_name); - painter.drawText(165, y+4, 90, 20, Qt::AlignLeft, step_types[recipe->mashs.at(i).step_type]); + painter.fillRect( 20, y, 715, 20, m_line); + painter.drawText( 20, y+4, 160, 20, Qt::AlignLeft, recipe->mashs.at(i).step_name); + painter.drawText(180, y+4, 80, 20, Qt::AlignLeft, step_types[recipe->mashs.at(i).step_type]); painter.drawText(260, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(recipe->mashs.at(i).step_temp, 1, 'f', 1)); painter.drawText(325, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(recipe->mashs.at(i).end_temp, 1, 'f', 1)); painter.drawText(390, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(recipe->mashs.at(i).step_time, 1, 'f', 0)); @@ -593,64 +599,64 @@ /* Water */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 135, 20, Qt::AlignLeft, tr("Water source")); - painter.drawText(135, y+4, 70, 20, Qt::AlignRight, tr("Volume")); - painter.drawText(210, y+4, 70, 20, Qt::AlignRight, tr("Ca")); - painter.drawText(285, y+4, 70, 20, Qt::AlignRight, tr("Mg")); - painter.drawText(360, y+4, 70, 20, Qt::AlignRight, tr("CaCO3")); - painter.drawText(435, y+4, 70, 20, Qt::AlignRight, tr("Na")); - painter.drawText(510, y+4, 70, 20, Qt::AlignRight, tr("Cl")); - painter.drawText(585, y+4, 70, 20, Qt::AlignRight, tr("SO4")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Water source")); + painter.drawText(170, y+4, 70, 20, Qt::AlignRight, tr("Volume")); + painter.drawText(240, y+4, 70, 20, Qt::AlignRight, tr("Ca")); + painter.drawText(310, y+4, 70, 20, Qt::AlignRight, tr("Mg")); + painter.drawText(380, y+4, 70, 20, Qt::AlignRight, tr("CaCO3")); + painter.drawText(450, y+4, 70, 20, Qt::AlignRight, tr("Na")); + painter.drawText(520, y+4, 70, 20, Qt::AlignRight, tr("Cl")); + painter.drawText(590, y+4, 70, 20, Qt::AlignRight, tr("SO4")); painter.drawText(660, y+4, 70, 20, Qt::AlignRight, tr("pH")); y += 20; painter.setFont(QFont("Helvetica", 9, QFont::Normal)); - painter.fillRect( 0, y, 735, 20, w_line); - painter.drawText( 0, y+4, 135, 20, Qt::AlignLeft, recipe->w1_name); - painter.drawText(135, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(recipe->w1_amount, 1, 'f', 1)); - painter.drawText(210, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_calcium, 1, 'f', 1)); - painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_magnesium, 1, 'f', 1)); - painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_total_alkalinity, 1, 'f', 1)); - painter.drawText(435, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_sodium, 1, 'f', 1)); - painter.drawText(510, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_chloride, 1, 'f', 1)); - painter.drawText(585, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_sulfate, 1, 'f', 1)); + painter.fillRect( 20, y, 715, 20, w_line); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, recipe->w1_name); + painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(recipe->w1_amount, 1, 'f', 1)); + painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_calcium, 1, 'f', 1)); + painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_magnesium, 1, 'f', 1)); + painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_total_alkalinity, 1, 'f', 1)); + painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_sodium, 1, 'f', 1)); + painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_chloride, 1, 'f', 1)); + painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_sulfate, 1, 'f', 1)); painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w1_ph, 1, 'f', 2)); y += 20; if (recipe->w2_amount > 0) { /* * If there is dillution water, show it and the mixed result too. */ - painter.fillRect( 0, y, 735, 20, w_line); - painter.drawText( 0, y+4, 135, 20, Qt::AlignLeft, recipe->w2_name); - painter.drawText(135, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(recipe->w2_amount, 1, 'f', 1)); - painter.drawText(210, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_calcium, 1, 'f', 1)); - painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_magnesium, 1, 'f', 1)); - painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_total_alkalinity, 1, 'f', 1)); - painter.drawText(435, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_sodium, 1, 'f', 1)); - painter.drawText(510, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_chloride, 1, 'f', 1)); - painter.drawText(585, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_sulfate, 1, 'f', 1)); + painter.fillRect( 20, y, 715, 20, w_line); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, recipe->w2_name); + painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(recipe->w2_amount, 1, 'f', 1)); + painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_calcium, 1, 'f', 1)); + painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_magnesium, 1, 'f', 1)); + painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_total_alkalinity, 1, 'f', 1)); + painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_sodium, 1, 'f', 1)); + painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_chloride, 1, 'f', 1)); + painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_sulfate, 1, 'f', 1)); painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->w2_ph, 1, 'f', 2)); y += 20; - painter.fillRect( 0, y, 735, 20, w_line); - painter.drawText( 0, y+4, 135, 20, Qt::AlignLeft, tr("Mixed water")); - painter.drawText(135, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(recipe->wg_amount, 1, 'f', 1)); - painter.drawText(210, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_calcium, 1, 'f', 1)); - painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_magnesium, 1, 'f', 1)); - painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_total_alkalinity, 1, 'f', 1)); - painter.drawText(435, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_sodium, 1, 'f', 1)); - painter.drawText(510, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_chloride, 1, 'f', 1)); - painter.drawText(585, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_sulfate, 1, 'f', 1)); + painter.fillRect( 20, y, 715, 20, w_line); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Mixed water")); + painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(recipe->wg_amount, 1, 'f', 1)); + painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_calcium, 1, 'f', 1)); + painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_magnesium, 1, 'f', 1)); + painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_total_alkalinity, 1, 'f', 1)); + painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_sodium, 1, 'f', 1)); + painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_chloride, 1, 'f', 1)); + painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_sulfate, 1, 'f', 1)); painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wg_ph, 1, 'f', 2)); y += 20; } - painter.fillRect( 0, y, 735, 20, w_line); - painter.drawText( 0, y+4, 135, 20, Qt::AlignLeft, tr("Treated water")); - painter.drawText(210, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_calcium, 1, 'f', 1)); - painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_magnesium, 1, 'f', 1)); - painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_total_alkalinity, 1, 'f', 1)); - painter.drawText(435, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_sodium, 1, 'f', 1)); - painter.drawText(510, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_chloride, 1, 'f', 1)); - painter.drawText(585, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_sulfate, 1, 'f', 1)); + painter.fillRect( 20, y, 715, 20, w_line); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Treated water")); + painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_calcium, 1, 'f', 1)); + painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_magnesium, 1, 'f', 1)); + painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_total_alkalinity, 1, 'f', 1)); + painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_sodium, 1, 'f', 1)); + painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_chloride, 1, 'f', 1)); + painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_sulfate, 1, 'f', 1)); painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(recipe->wb_ph, 1, 'f', 2)); y += 20; @@ -672,13 +678,13 @@ /* Notes header */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 735, 20, Qt::AlignCenter, tr("Recipe notes")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 715, 20, Qt::AlignCenter, tr("Recipe notes")); y += 20; painter.setFont(QFont("Helvetica", 9, QFont::Normal)); for (int i = 0; i < lines.size(); i++) { - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 735, 20, Qt::AlignLeft, lines[i]); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 715, 20, Qt::AlignLeft, lines[i]); y += 20; } } @@ -686,78 +692,78 @@ } else if (p_job == PR_PRODUCT) { - qDebug() << "print product"; + qInfo() << "print product" << product->record; printHeader(&painter); y = 120; /* Generic header */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 735, 20, Qt::AlignCenter, tr("Product overview")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 715, 20, Qt::AlignCenter, tr("Product overview")); y += 20; painter.setFont(QFont("Helvetica", 9, QFont::Normal)); - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Brew type")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, recipe_types[product->type]); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Efficiency")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Brew type")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, recipe_types[product->type]); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Efficiency")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 %").arg(product->efficiency, 1, 'f', 1)); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Boil time")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1 minutes.").arg(product->boil_time, 1, 'f', 0)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Batch size")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Boil time")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 minutes.").arg(product->boil_time, 1, 'f', 0)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Batch size")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 L.").arg(product->batch_size, 1, 'f', 1)); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Start SG")); - painter.drawText(120, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(product->est_og, 1, 'f', 3)); - painter.drawText(210, 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)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("End SG")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Start SG")); + painter.drawText(170, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(product->est_og, 1, 'f', 3)); + 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)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("End SG")); painter.drawText(555, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(product->est_fg, 1, 'f', 3)); 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)); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Estimated Alcohol")); - painter.drawText(120, y+4, 90, 20, Qt::AlignLeft, QString("%1%").arg(product->est_abv, 1, 'f', 1)); - painter.drawText(210, 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)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Estimated CO2 vol")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Estimated Alcohol")); + painter.drawText(170, y+4, 90, 20, Qt::AlignLeft, QString("%1%").arg(product->est_abv, 1, 'f', 1)); + 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)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Estimated CO2 vol")); painter.drawText(555, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(product->est_carb, 1, 'f', 1)); 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)); y += 20; - painter.fillRect( 0, y, 120, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Color (") + color_method[product->color_method] + ")"); - painter.fillRect(120, y, 180, 20, Utils::ebc_to_color(product->est_color)); + painter.fillRect( 20, y, 150, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Color (") + color_method[product->color_method] + ")"); + painter.fillRect(170, y, 180, 20, Utils::ebc_to_color(product->est_color)); if (product->est_color > 30) painter.setPen(Qt::white); - painter.drawText(120, y+4, 90, 20, Qt::AlignLeft, QString("%1 EBC").arg(product->est_color, 1, 'f', 0)); - painter.drawText(210, 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)); + painter.drawText(170, y+4, 90, 20, Qt::AlignLeft, QString("%1 EBC").arg(product->est_color, 1, 'f', 0)); + 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)); painter.setPen(Qt::black); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("IBU (") + ibu_method[product->ibu_method] + ")"); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("IBU (") + ibu_method[product->ibu_method] + ")"); painter.drawText(555, y+4, 90, 20, Qt::AlignLeft, QString("%1").arg(product->est_ibu, 1, 'f', 1)); 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)); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Beer style")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, product->st_name); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Stage")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Beer style")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, product->st_name); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Stage")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, prod_stages[product->stage]); y += 40; /* Fermentables */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 260, 20, Qt::AlignLeft, tr("Fermentable")); - painter.drawText(265, y+4, 70, 20, Qt::AlignRight, tr("Percent")); - painter.drawText(340, y+4, 70, 20, Qt::AlignRight, tr("Yield")); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, tr("Type")); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, tr("Use at")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, tr("Fermentable")); + painter.drawText(285, y+4, 70, 20, Qt::AlignRight, tr("Percent")); + painter.drawText(360, y+4, 70, 20, Qt::AlignRight, tr("Yield")); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type")); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at")); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount")); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost")); y += 20; @@ -780,18 +786,18 @@ else amount = QString("%1 gr").arg(product->fermentables.at(i).f_amount * 1000, 1, 'f', 0); - painter.fillRect( 0, y, 735, 20, f_line); + painter.fillRect( 20, y, 715, 20, f_line); - painter.drawText( 0, y+4, 260, 20, Qt::AlignLeft, product->fermentables.at(i).f_name + + painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, product->fermentables.at(i).f_name + QString(", %1 EBC (").arg(product->fermentables.at(i).f_color, 1, 'f', 0) + product->fermentables.at(i).f_supplier + ")"); if (product->fermentables.at(i).f_added < FERMENTABLE_ADDED_BOTTLE) - painter.drawText(265, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(product->fermentables.at(i).f_percentage, 1, 'f', 1)); + painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(product->fermentables.at(i).f_percentage, 1, 'f', 1)); else - painter.drawText(265, y+4, 70, 20, Qt::AlignRight, ""); - painter.drawText(340, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(product->fermentables.at(i).f_yield, 1, 'f', 1)); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, soort); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, fermentable_added[product->fermentables.at(i).f_added]); + painter.drawText(285, y+4, 70, 20, Qt::AlignRight, ""); + painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(product->fermentables.at(i).f_yield, 1, 'f', 1)); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, soort); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, fermentable_added[product->fermentables.at(i).f_added]); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, amount); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3)); y += 20; @@ -802,12 +808,12 @@ /* Hops */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 260, 20, Qt::AlignLeft, tr("Hop")); - painter.drawText(265, y+4, 70, 20, Qt::AlignRight, tr("Alpha")); - painter.drawText(340, y+4, 70, 20, Qt::AlignRight, tr("IBU")); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, tr("Type")); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, tr("Use at")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, tr("Hop")); + painter.drawText(285, y+4, 70, 20, Qt::AlignRight, tr("Alpha")); + painter.drawText(360, y+4, 70, 20, Qt::AlignRight, tr("IBU")); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type")); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at")); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount")); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost")); y += 20; @@ -833,12 +839,12 @@ else amount = QString("%1 gr").arg(product->hops.at(i).h_amount * 1000, 1, 'f', 1); - painter.fillRect( 0, y, 735, 20, h_line); - painter.drawText( 0, y+4, 260, 20, Qt::AlignLeft, product->hops.at(i).h_name + " (" + product->hops.at(i).h_origin + ")"); - painter.drawText(265, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(product->hops.at(i).h_alpha, 1, 'f', 1)); - painter.drawText(340, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(ibu, 1, 'f', 1)); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, hop_forms[product->hops.at(i).h_form]); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, use); + painter.fillRect( 20, y, 715, 20, h_line); + painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, product->hops.at(i).h_name + " (" + product->hops.at(i).h_origin + ")"); + painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(product->hops.at(i).h_alpha, 1, 'f', 1)); + painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(ibu, 1, 'f', 1)); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, hop_forms[product->hops.at(i).h_form]); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, use); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, amount); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3)); y += 20; @@ -849,11 +855,11 @@ /* Yeasts */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 335, 20, Qt::AlignLeft, tr("Yeast")); - painter.drawText(340, y+4, 70, 20, Qt::AlignRight, tr("Attn")); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, tr("Type")); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, tr("Use at")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 335, 20, Qt::AlignLeft, tr("Yeast")); + painter.drawText(360, y+4, 70, 20, Qt::AlignRight, tr("Attn")); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type")); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at")); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount")); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost")); y += 20; @@ -870,13 +876,13 @@ else amount = QString("%1 ml").arg(product->yeasts.at(i).y_amount * 1000.0, 1, 'f', 1); - painter.fillRect( 0, y, 735, 20, y_line); - painter.drawText( 0, y+4, 260, 20, Qt::AlignLeft, product->yeasts.at(i).y_laboratory + " " + + painter.fillRect( 20, y, 715, 20, y_line); + painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, product->yeasts.at(i).y_laboratory + " " + product->yeasts.at(i).y_product_id + " (" + product->yeasts.at(i).y_name + ")"); - painter.drawText(340, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(product->yeasts.at(i).y_attenuation, 1, 'f', 1)); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, yeast_forms[product->yeasts.at(i).y_form]); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, yeast_use[product->yeasts.at(i).y_use]); + painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1%").arg(product->yeasts.at(i).y_attenuation, 1, 'f', 1)); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, yeast_forms[product->yeasts.at(i).y_form]); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, yeast_use[product->yeasts.at(i).y_use]); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, amount); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3)); y += 20; @@ -891,9 +897,9 @@ sv = product->prop_volume[i]; } } - painter.fillRect( 0, y, 735, 20, y_line); - painter.drawText( 0, y+4, 260, 20, Qt::AlignLeft, QString(tr("%1 step yeaststarter")).arg(st)); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, QString(tr("Before"))); + painter.fillRect( 20, y, 715, 20, y_line); + painter.drawText( 20, y+4, 260, 20, Qt::AlignLeft, QString(tr("%1 step yeaststarter")).arg(st)); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, QString(tr("Before"))); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, QString("%1 L").arg(sv, 1, 'f', 3)); y += 20; } @@ -910,10 +916,10 @@ /* Miscs */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 410, 20, Qt::AlignLeft, tr("Misc ingredient")); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, tr("Type")); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, tr("Use at")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 410, 20, Qt::AlignLeft, tr("Misc ingredient")); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, tr("Type")); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, tr("Use at")); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, tr("Amount")); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, tr("Cost")); y += 20; @@ -929,16 +935,16 @@ use = misc_uses[product->miscs.at(i).m_use_use]; if (product->miscs.at(i).m_type == 4) // Water agent - painter.fillRect( 0, y, 735, 20, mw_line); + painter.fillRect( 20, y, 715, 20, mw_line); else if (product->miscs.at(i).m_type == 3) // Fining - painter.fillRect( 0, y, 735, 20, mf_line); + painter.fillRect( 20, y, 715, 20, mf_line); else if (product->miscs.at(i).m_type < 3 || product->miscs.at(i).m_type == 5) // Spice, Herb, Flavour, Yeast nutrient - painter.fillRect( 0, y, 735, 20, ms_line); + painter.fillRect( 20, y, 715, 20, ms_line); else - painter.fillRect( 0, y, 735, 20, mo_line); - painter.drawText( 0, y+4, 410, 20, Qt::AlignLeft, product->miscs.at(i).m_name); - painter.drawText(415, y+4, 90, 20, Qt::AlignLeft, misc_types[product->miscs.at(i).m_type]); - painter.drawText(510, y+4, 90, 20, Qt::AlignLeft, use); + painter.fillRect( 20, y, 715, 20, mo_line); + painter.drawText( 20, y+4, 410, 20, Qt::AlignLeft, product->miscs.at(i).m_name); + painter.drawText(435, y+4, 80, 20, Qt::AlignLeft, misc_types[product->miscs.at(i).m_type]); + painter.drawText(520, y+4, 80, 20, Qt::AlignLeft, use); painter.drawText(605, y+4, 60, 20, Qt::AlignRight, QString("%1 %2").arg(product->miscs.at(i).m_amount * 1000.0, 1, 'f', 1).arg(product->miscs.at(i).m_amount_is_weight ? "gr":"ml")); painter.drawText(670, y+4, 60, 20, Qt::AlignRight, QString("%1 €").arg(cost, 1, 'f', 3)); @@ -957,9 +963,9 @@ /* Mash */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 160, 20, Qt::AlignLeft, tr("Mash step")); - painter.drawText(165, y+4, 90, 20, Qt::AlignLeft, tr("Step type")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 160, 20, Qt::AlignLeft, tr("Mash step")); + painter.drawText(180, y+4, 80, 20, Qt::AlignLeft, tr("Step type")); painter.drawText(260, y+4, 60, 20, Qt::AlignRight, tr("Start °C")); painter.drawText(325, y+4, 60, 20, Qt::AlignRight, tr("End °C")); painter.drawText(390, y+4, 60, 20, Qt::AlignRight, tr("Time")); @@ -970,9 +976,9 @@ y += 20; painter.setFont(QFont("Helvetica", 9, QFont::Normal)); for (int i = 0; i < product->mashs.size(); i++) { - painter.fillRect( 0, y, 735, 20, m_line); - painter.drawText( 0, y+4, 160, 20, Qt::AlignLeft, product->mashs.at(i).step_name); - painter.drawText(165, y+4, 90, 20, Qt::AlignLeft, step_types[product->mashs.at(i).step_type]); + painter.fillRect( 20, y, 715, 20, m_line); + painter.drawText( 20, y+4, 160, 20, Qt::AlignLeft, product->mashs.at(i).step_name); + painter.drawText(180, y+4, 80, 20, Qt::AlignLeft, step_types[product->mashs.at(i).step_type]); painter.drawText(260, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(product->mashs.at(i).step_temp, 1, 'f', 1)); painter.drawText(325, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(product->mashs.at(i).end_temp, 1, 'f', 1)); painter.drawText(390, y+4, 60, 20, Qt::AlignRight, QString("%1").arg(product->mashs.at(i).step_time, 1, 'f', 0)); @@ -995,64 +1001,64 @@ /* Water */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 135, 20, Qt::AlignLeft, tr("Water source")); - painter.drawText(135, y+4, 70, 20, Qt::AlignRight, tr("Volume")); - painter.drawText(210, y+4, 70, 20, Qt::AlignRight, tr("Ca")); - painter.drawText(285, y+4, 70, 20, Qt::AlignRight, tr("Mg")); - painter.drawText(360, y+4, 70, 20, Qt::AlignRight, tr("CaCO3")); - painter.drawText(435, y+4, 70, 20, Qt::AlignRight, tr("Na")); - painter.drawText(510, y+4, 70, 20, Qt::AlignRight, tr("Cl")); - painter.drawText(585, y+4, 70, 20, Qt::AlignRight, tr("SO4")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Water source")); + painter.drawText(170, y+4, 70, 20, Qt::AlignRight, tr("Volume")); + painter.drawText(240, y+4, 70, 20, Qt::AlignRight, tr("Ca")); + painter.drawText(310, y+4, 70, 20, Qt::AlignRight, tr("Mg")); + painter.drawText(380, y+4, 70, 20, Qt::AlignRight, tr("CaCO3")); + painter.drawText(450, y+4, 70, 20, Qt::AlignRight, tr("Na")); + painter.drawText(520, y+4, 70, 20, Qt::AlignRight, tr("Cl")); + painter.drawText(590, y+4, 70, 20, Qt::AlignRight, tr("SO4")); painter.drawText(660, y+4, 70, 20, Qt::AlignRight, tr("pH")); y += 20; painter.setFont(QFont("Helvetica", 9, QFont::Normal)); - painter.fillRect( 0, y, 735, 20, w_line); - painter.drawText( 0, y+4, 135, 20, Qt::AlignLeft, product->w1_name); - painter.drawText(135, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(product->w1_amount, 1, 'f', 1)); - painter.drawText(210, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_calcium, 1, 'f', 1)); - painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_magnesium, 1, 'f', 1)); - painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_total_alkalinity, 1, 'f', 1)); - painter.drawText(435, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_sodium, 1, 'f', 1)); - painter.drawText(510, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_chloride, 1, 'f', 1)); - painter.drawText(585, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_sulfate, 1, 'f', 1)); + painter.fillRect( 20, y, 715, 20, w_line); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, product->w1_name); + painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(product->w1_amount, 1, 'f', 1)); + painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_calcium, 1, 'f', 1)); + painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_magnesium, 1, 'f', 1)); + painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_total_alkalinity, 1, 'f', 1)); + painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_sodium, 1, 'f', 1)); + painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_chloride, 1, 'f', 1)); + painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_sulfate, 1, 'f', 1)); painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w1_ph, 1, 'f', 2)); y += 20; if (product->w2_amount > 0) { /* * If there is dillution water, show it and the mixed result too. */ - painter.fillRect( 0, y, 735, 20, w_line); - painter.drawText( 0, y+4, 135, 20, Qt::AlignLeft, product->w2_name); - painter.drawText(135, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(product->w2_amount, 1, 'f', 1)); - painter.drawText(210, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_calcium, 1, 'f', 1)); - painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_magnesium, 1, 'f', 1)); - painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_total_alkalinity, 1, 'f', 1)); - painter.drawText(435, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_sodium, 1, 'f', 1)); - painter.drawText(510, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_chloride, 1, 'f', 1)); - painter.drawText(585, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_sulfate, 1, 'f', 1)); + painter.fillRect( 20, y, 715, 20, w_line); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, product->w2_name); + painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(product->w2_amount, 1, 'f', 1)); + painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_calcium, 1, 'f', 1)); + painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_magnesium, 1, 'f', 1)); + painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_total_alkalinity, 1, 'f', 1)); + painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_sodium, 1, 'f', 1)); + painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_chloride, 1, 'f', 1)); + painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_sulfate, 1, 'f', 1)); painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->w2_ph, 1, 'f', 2)); y += 20; - painter.fillRect( 0, y, 735, 20, w_line); - painter.drawText( 0, y+4, 135, 20, Qt::AlignLeft, tr("Mixed water")); - painter.drawText(135, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(product->wg_amount, 1, 'f', 1)); - painter.drawText(210, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_calcium, 1, 'f', 1)); - painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_magnesium, 1, 'f', 1)); - painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_total_alkalinity, 1, 'f', 1)); - painter.drawText(435, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_sodium, 1, 'f', 1)); - painter.drawText(510, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_chloride, 1, 'f', 1)); - painter.drawText(585, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_sulfate, 1, 'f', 1)); + painter.fillRect( 20, y, 715, 20, w_line); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Mixed water")); + painter.drawText(170, y+4, 70, 20, Qt::AlignRight, QString("%1 L").arg(product->wg_amount, 1, 'f', 1)); + painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_calcium, 1, 'f', 1)); + painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_magnesium, 1, 'f', 1)); + painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_total_alkalinity, 1, 'f', 1)); + painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_sodium, 1, 'f', 1)); + painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_chloride, 1, 'f', 1)); + painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_sulfate, 1, 'f', 1)); painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wg_ph, 1, 'f', 2)); y += 20; } - painter.fillRect( 0, y, 735, 20, w_line); - painter.drawText( 0, y+4, 135, 20, Qt::AlignLeft, tr("Treated water")); - painter.drawText(210, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_calcium, 1, 'f', 1)); - painter.drawText(285, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_magnesium, 1, 'f', 1)); - painter.drawText(360, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_total_alkalinity, 1, 'f', 1)); - painter.drawText(435, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_sodium, 1, 'f', 1)); - painter.drawText(510, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_chloride, 1, 'f', 1)); - painter.drawText(585, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_sulfate, 1, 'f', 1)); + painter.fillRect( 20, y, 715, 20, w_line); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Treated water")); + painter.drawText(240, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_calcium, 1, 'f', 1)); + painter.drawText(310, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_magnesium, 1, 'f', 1)); + painter.drawText(380, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_total_alkalinity, 1, 'f', 1)); + painter.drawText(450, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_sodium, 1, 'f', 1)); + painter.drawText(520, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_chloride, 1, 'f', 1)); + painter.drawText(590, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_sulfate, 1, 'f', 1)); painter.drawText(660, y+4, 70, 20, Qt::AlignRight, QString("%1").arg(product->wb_ph, 1, 'f', 2)); y += 20; @@ -1074,13 +1080,13 @@ /* Notes header */ painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+4, 735, 20, Qt::AlignCenter, tr("Recipe notes")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+4, 715, 20, Qt::AlignCenter, tr("Recipe notes")); y += 20; painter.setFont(QFont("Helvetica", 9, QFont::Normal)); for (int i = 0; i < lines.size(); i++) { - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 735, 20, Qt::AlignLeft, lines[i]); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 715, 20, Qt::AlignLeft, lines[i]); y += 20; } } @@ -1096,13 +1102,13 @@ } painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+2, 735, 20, Qt::AlignCenter, tr("Product brewday")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+2, 715, 20, Qt::AlignCenter, tr("Product brewday")); y += 20; painter.setFont(QFont("Helvetica", 9, QFont::Normal)); - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Brewday start")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, product->brew_date_start.toString("dd MMM yyyy hh:mm")); + painter.fillRect( 20, y, 300, 20, c_line1); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Brewday start")); + painter.drawText(140, y+4, 180, 20, Qt::AlignLeft, product->brew_date_start.toString("dd MMM yyyy hh:mm")); painter.fillRect(435, y, 300, 20, c_line1); painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Brewday end")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, product->brew_date_end.toString("dd MMM yyyy hh:mm")); @@ -1116,8 +1122,8 @@ y += 40; } painter.setFont(QFont("Helvetica", 9, QFont::Bold)); - painter.fillRect( 0, y, 735, 20, m_line); - painter.drawText( 30, y+4, 260, 20, Qt::AlignLeft, tr("Mash step")); + painter.fillRect( 20, y, 715, 20, m_line); + painter.drawText( 40, y+4, 250, 20, Qt::AlignLeft, tr("Mash step")); painter.drawText(290, y+4, 120, 20, Qt::AlignLeft, tr("Step type")); painter.drawText(400, y+4, 110, 20, Qt::AlignLeft, tr("Temperature")); painter.drawText(510, y+4, 75, 20, Qt::AlignLeft, tr("Minutes")); @@ -1126,9 +1132,9 @@ painter.setFont(QFont("Helvetica", 9, QFont::Normal)); y += 20; for (int i = 0; i < product->mashs.size(); i++) { - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 30, 20, Qt::AlignCenter, QString("%1").arg(i + 1)); - painter.drawText( 30, y+4, 260, 20, Qt::AlignLeft, product->mashs.at(i).step_name); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 20, 20, Qt::AlignCenter, QString("%1").arg(i + 1)); + painter.drawText( 40, y+4, 250, 20, Qt::AlignLeft, product->mashs.at(i).step_name); painter.drawText(290, y+4, 120, 20, Qt::AlignLeft, step_types[product->mashs.at(i).step_type]); painter.drawText(400, y+4, 110, 20, Qt::AlignLeft, QString("%1 - %2°C"). arg(product->mashs.at(i).step_temp, 1, 'f', 1).arg(product->mashs.at(i).end_temp, 1, 'f', 1)); @@ -1147,129 +1153,129 @@ y += 20; } painter.setFont(QFont("Helvetica", 9, QFont::Bold)); - painter.fillRect( 0, y, 735, 20, m_line); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Brew item")); + painter.fillRect( 20, y, 715, 20, m_line); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Brew item")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, tr("Expected")); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, tr("Reached")); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, tr("Difference")); painter.setFont(QFont("Helvetica", 9, QFont::Normal)); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Mash pH")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Mash pH")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 pH").arg(product->mash_ph, 1, 'f', 2)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 pH").arg(product->brew_mash_ph, 1, 'f', 2)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->mash_ph, product->brew_mash_ph, 2, " pH")); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Mash density")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Mash density")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, strDensity(product->est_mash_sg)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, strDensity(product->brew_mash_sg)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->est_mash_sg, product->brew_mash_sg, 3, " SG")); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Mash efficiency")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Mash efficiency")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, "100%"); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1%").arg(product->brew_mash_efficiency, 1, 'f', 1)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(100.0, product->brew_mash_efficiency, 1, "%")); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Sparge pH")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Sparge pH")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 pH").arg(product->sparge_ph, 1, 'f', 2)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 pH").arg(product->brew_sparge_ph, 1, 'f', 2)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->sparge_ph, product->brew_sparge_ph, 2, " pH")); y += 25; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Pre boil pH")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Pre boil pH")); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 pH").arg(product->brew_preboil_ph, 1, 'f', 2)); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Pre boil density")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Pre boil density")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, strDensity(product->preboil_sg)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, strDensity(product->brew_preboil_sg)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->preboil_sg, product->brew_preboil_sg, 3, " SG")); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Pre boil volume")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Pre boil volume")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->boil_size * 1.04, 1, 'f', 1)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->brew_preboil_volume, 1, 'f', 1)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->boil_size * 1.04, product->brew_preboil_volume, 1, " L")); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Pre boil efficiency")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Pre boil efficiency")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1%").arg(product->efficiency, 1, 'f', 1)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1%").arg(product->brew_preboil_efficiency, 1, 'f', 1)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->efficiency, product->brew_preboil_efficiency, 1, "%")); y += 25; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("After boil pH")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("After boil pH")); //painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 pH").arg(product->brew_preboil_ph, 1, 'f', 2)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 pH").arg(product->brew_aboil_ph, 1, 'f', 2)); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("After boil density")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("After boil density")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, strDensity(product->est_og)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, strDensity(product->brew_aboil_sg)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->est_og, product->brew_aboil_sg, 3, " SG")); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("After boil volume")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("After boil volume")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->batch_size * 1.04, 1, 'f', 1)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->brew_aboil_volume, 1, 'f', 1)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->batch_size * 1.04, product->brew_aboil_volume, 1, " L")); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("After boil efficiency")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("After boil efficiency")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1%").arg(product->efficiency, 1, 'f', 1)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1%").arg(product->brew_aboil_efficiency, 1, 'f', 1)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->efficiency, product->brew_aboil_efficiency, 1, "%")); y += 25; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Chiller and trub loss")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Chiller and trub loss")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->eq_trub_chiller_loss, 1, 'f', 1)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->brew_fermenter_tcloss, 1, 'f', 1)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->eq_trub_chiller_loss, product->brew_fermenter_tcloss, 1, " L")); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Top up water")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Top up water")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->eq_top_up_water, 1, 'f', 1)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->brew_fermenter_extrawater, 1, 'f', 1)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->eq_top_up_water, product->brew_fermenter_extrawater, 1, " L")); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Fermenter volume")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Fermenter volume")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->batch_size - product->eq_trub_chiller_loss, 1, 'f', 1)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 L").arg(product->brew_fermenter_volume, 1, 'f', 1)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->batch_size - product->eq_trub_chiller_loss, product->brew_fermenter_volume, 1, " L")); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Fermenter density")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Fermenter density")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, strDensity(product->est_og)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, strDensity(product->brew_fermenter_sg)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->est_og, product->brew_fermenter_sg, 3, " SG")); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Fermenter color")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Fermenter color")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 EBC").arg(product->est_color, 1, 'f', 0)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 EBC").arg(product->brew_fermenter_color, 1, 'f', 0)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->est_color, product->brew_fermenter_color, 0, " EBC")); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Fermenter IBU")); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Fermenter IBU")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 IBU").arg(product->est_ibu, 1, 'f', 0)); painter.drawText(450, y+4, 200, 20, Qt::AlignLeft, QString("%1 IBU").arg(product->brew_fermenter_ibu, 1, 'f', 0)); painter.drawText(650, y+4, 85, 20, Qt::AlignLeft, strDiff(product->est_ibu, product->brew_fermenter_ibu, 0, " IBU")); y += 25; - painter.fillRect( 0, y, 450, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Cooling method")); + painter.fillRect( 20, y, 430, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Cooling method")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, cooling_method[product->brew_cooling_method]); y += 20; - painter.fillRect( 0, y, 450, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Cooling temperature")); + painter.fillRect( 20, y, 430, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Cooling temperature")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1°C").arg(product->brew_cooling_to, 1, 'f', 1)); y += 20; - painter.fillRect( 0, y, 450, 20, c_line1); - painter.drawText( 0, y+4, 250, 20, Qt::AlignLeft, tr("Cooling time")); + painter.fillRect( 20, y, 430, 20, c_line1); + painter.drawText( 20, y+4, 230, 20, Qt::AlignLeft, tr("Cooling time")); painter.drawText(250, y+4, 200, 20, Qt::AlignLeft, QString("%1 min").arg(product->brew_cooling_time, 1, 'f', 0)); } @@ -1283,51 +1289,51 @@ } painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+2, 735, 20, Qt::AlignCenter, tr("Product fermentation")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+2, 715, 20, Qt::AlignCenter, tr("Product fermentation")); y += 20; painter.setFont(QFont("Helvetica", 9, QFont::Normal)); - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Primary start temp")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->primary_start_temp, 1, 'f', 1)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Primary peak temp")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Primary start temp")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->primary_start_temp, 1, 'f', 1)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Primary peak temp")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->primary_max_temp, 1, 'f', 1)); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Primary end temp")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->primary_end_temp, 1, 'f', 1)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Primary density")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Primary end temp")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->primary_end_temp, 1, 'f', 1)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Primary density")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 SG").arg(product->primary_end_sg, 1, 'f', 3)); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Primary end date")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, product->primary_end_date.toString("dd MMM yyyy")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Primary end date")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, product->primary_end_date.toString("dd MMM yyyy")); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Secondary end temp")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->secondary_temp, 1, 'f', 1)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Secondary density")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Secondary end temp")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->secondary_temp, 1, 'f', 1)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Secondary density")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 SG").arg(product->secondary_end_sg, 1, 'f', 3)); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Secondary end date")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, product->secondary_end_date.toString("dd MMM yyyy")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Secondary end date")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, product->secondary_end_date.toString("dd MMM yyyy")); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Tertiary temperature")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->tertiary_temp, 1, 'f', 1)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Final density")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Tertiary temperature")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->tertiary_temp, 1, 'f', 1)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Final density")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 SG").arg(product->fg, 1, 'f', 3)); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Tertiary end date")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, product->package_date.toString("dd MMM yyyy")); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Apperant attenuation")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Tertiary end date")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, product->package_date.toString("dd MMM yyyy")); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Apperant attenuation")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1%").arg(Utils::calc_svg(product->brew_fermenter_sg, product->fg), 1, 'f', 1)); } @@ -1341,54 +1347,54 @@ } painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+2, 735, 20, Qt::AlignCenter, tr("Package product")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+2, 715, 20, Qt::AlignCenter, tr("Package product")); y += 20; painter.setFont(QFont("Helvetica", 9, QFont::Normal)); - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Package date")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, product->package_date.toString("dd MMM yyyy")); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Package volume")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Package date")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, product->package_date.toString("dd MMM yyyy")); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Package volume")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->package_volume, 1, 'f', 1)); y += 20; painter.setFont(QFont("Helvetica", 9, QFont::Normal)); - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Alcohol volume")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1%").arg(product->package_abv, 1, 'f', 2)); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Alcohol volume")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1%").arg(product->package_abv, 1, 'f', 2)); y += 20; if (product->package_infuse_amount > 0) { - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Infuse volume")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->package_infuse_amount, 1, 'f', 3)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Infuse alcohol")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Infuse volume")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->package_infuse_amount, 1, 'f', 3)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Infuse alcohol")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1%").arg(product->package_infuse_abv, 1, 'f', 2)); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 735, 20, Qt::AlignLeft, product->package_infuse_notes); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 715, 20, Qt::AlignLeft, product->package_infuse_notes); y += 20; } y += 5; painter.setFont(QFont("Helvetica", 9, QFont::Bold)); - painter.fillRect( 0, y, 300, 20, m_line); - painter.drawText( 0, y+2, 300, 20, Qt::AlignCenter, tr("Bottles")); - painter.fillRect(435, y, 300, 20, m_line); - painter.drawText(435, y+2, 300, 20, Qt::AlignCenter, tr("Kegs")); + painter.fillRect( 20, y, 330, 20, m_line); + painter.drawText( 20, y+2, 330, 20, Qt::AlignCenter, tr("Bottles")); + painter.fillRect(405, y, 330, 20, m_line); + painter.drawText(405, y+2, 330, 20, Qt::AlignCenter, tr("Kegs")); y += 20; painter.setFont(QFont("Helvetica", 9, QFont::Normal)); - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Bottles volume")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->bottle_amount, 1, 'f', 1)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Kegs volume")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Bottles volume")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->bottle_amount, 1, 'f', 1)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Kegs volume")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->keg_amount, 1, 'f', 1)); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Bottles CO2 volumes")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->bottle_carbonation, 1, 'f', 1)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Kegs CO2 volumes")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Bottles CO2 volumes")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->bottle_carbonation, 1, 'f', 1)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Kegs CO2 volumes")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->keg_carbonation, 1, 'f', 1)); y += 20; QString bsugar = "", ksugar = ""; @@ -1403,55 +1409,55 @@ kamount = product->fermentables.at(i).f_amount; } } - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Sugar")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, bsugar); - painter.fillRect(435, y, 300, 20, c_line1); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Sugar")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, bsugar); + painter.fillRect(405, y, 330, 20, c_line1); if (product->keg_forced_carb) { - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Forced carbonation")); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Forced carbonation")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, tr("Yes")); } else { - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Sugar")); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Sugar")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, ksugar); } y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Sugar amount")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1 Kg").arg(bamount, 1, 'f', 3)); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Sugar amount")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 Kg").arg(bamount, 1, 'f', 3)); if (! product->keg_forced_carb) { - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Sugar amount")); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Sugar amount")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 Kg").arg(kamount, 1, 'f', 3)); } y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Water amount")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->bottle_priming_water, 1, 'f', 3)); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Water amount")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->bottle_priming_water, 1, 'f', 3)); if (! product->keg_forced_carb) { - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Water amount")); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Water amount")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 L").arg(product->keg_priming_water, 1, 'f', 3)); } y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Alcohol volume")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1%").arg(product->bottle_abv, 1, 'f', 2)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Alcohol volume")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Alcohol volume")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1%").arg(product->bottle_abv, 1, 'f', 2)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Alcohol volume")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1%").arg(product->keg_abv, 1, 'f', 2)); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Pressure")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1 bar").arg(product->bottle_bar, 1, 'f', 2)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Pressure")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Pressure")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1 bar").arg(product->bottle_bar, 1, 'f', 2)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Pressure")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1 bar").arg(product->keg_bar, 1, 'f', 2)); y += 20; - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Carbonation temp")); - painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->bottle_carbonation_temp, 1, 'f', 1)); - painter.fillRect(435, y, 300, 20, c_line1); - painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Carbonation temp")); + painter.fillRect( 20, y, 330, 20, c_line1); + painter.drawText( 20, y+4, 150, 20, Qt::AlignLeft, tr("Carbonation temp")); + painter.drawText(170, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->bottle_carbonation_temp, 1, 'f', 1)); + painter.fillRect(405, y, 330, 20, c_line1); + painter.drawText(405, y+4, 150, 20, Qt::AlignLeft, tr("Carbonation temp")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1°C").arg(product->keg_carbonation_temp, 1, 'f', 1)); } @@ -1477,48 +1483,48 @@ } painter.setFont(QFont("Helvetica", 9, QFont::Bold)); painter.setPen(Qt::black); - painter.fillRect( 0, y, 735, 20, c_header); - painter.drawText( 0, y+2, 735, 20, Qt::AlignCenter, tr("Tasting notes")); + painter.fillRect( 20, y, 715, 20, c_header); + painter.drawText( 20, y+2, 715, 20, Qt::AlignCenter, tr("Tasting notes")); y += 20; painter.setFont(QFont("Helvetica", 9, QFont::Normal)); - painter.fillRect( 0, y, 300, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Tasting date")); + painter.fillRect( 20, y, 300, 20, c_line1); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Tasting date")); painter.drawText(120, y+4, 180, 20, Qt::AlignLeft, product->taste_date.toString("dd MMM yyyy")); painter.fillRect(435, y, 300, 20, c_line1); painter.drawText(435, y+4, 120, 20, Qt::AlignLeft, tr("Taste score")); painter.drawText(555, y+4, 180, 20, Qt::AlignLeft, QString("%1").arg(product->taste_rate, 1, 'f', 1)); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Color")); - painter.drawText(120, y+4, 615, 20, Qt::AlignLeft, product->taste_color); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Color")); + painter.drawText(120, y+4, 595, 20, Qt::AlignLeft, product->taste_color); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Transparency")); - painter.drawText(120, y+4, 615, 20, Qt::AlignLeft, product->taste_transparency); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Transparency")); + painter.drawText(120, y+4, 595, 20, Qt::AlignLeft, product->taste_transparency); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Head")); - painter.drawText(120, y+4, 615, 20, Qt::AlignLeft, product->taste_head); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Head")); + painter.drawText(120, y+4, 595, 20, Qt::AlignLeft, product->taste_head); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Aroma")); - painter.drawText(120, y+4, 615, 20, Qt::AlignLeft, product->taste_aroma); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Aroma")); + painter.drawText(120, y+4, 595, 20, Qt::AlignLeft, product->taste_aroma); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Taste")); - painter.drawText(120, y+4, 615, 20, Qt::AlignLeft, product->taste_taste); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Taste")); + painter.drawText(120, y+4, 595, 20, Qt::AlignLeft, product->taste_taste); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Mouthfeel")); - painter.drawText(120, y+4, 615, 20, Qt::AlignLeft, product->taste_mouthfeel); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Mouthfeel")); + painter.drawText(120, y+4, 595, 20, Qt::AlignLeft, product->taste_mouthfeel); y += 20; - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 120, 20, Qt::AlignLeft, tr("Aftertaste")); - painter.drawText(120, y+4, 615, 20, Qt::AlignLeft, product->taste_aftertaste); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 120, 20, Qt::AlignLeft, tr("Aftertaste")); + painter.drawText(120, y+4, 595, 20, Qt::AlignLeft, product->taste_aftertaste); y += 25; for (int i = 0; i < lines.size(); i++) { - painter.fillRect( 0, y, 735, 20, c_line1); - painter.drawText( 0, y+4, 735, 20, Qt::AlignLeft, lines[i]); + painter.fillRect( 20, y, 715, 20, c_line1); + painter.drawText( 20, y+4, 715, 20, Qt::AlignLeft, lines[i]); y += 20; } } @@ -1528,7 +1534,8 @@ double factor = 1.0 / product->divide_factor; double mashwater = 0; int numsalts = 0; - qDebug() << "print checklist"; + + qInfo() << "Print checklist" << product->record; printHeader(&painter); y = 120; @@ -2077,7 +2084,7 @@ { painter->setFont(QFont("Arial", 10, QFont::Bold)); painter->setPen(Qt::black); - painter->drawText(30, *y, 700, 20, Qt::AlignLeft, text); + painter->drawText(50, *y, 700, 20, Qt::AlignLeft, text); painter->setFont(QFont("Arial", 10, QFont::Normal)); *y += 20; } @@ -2088,8 +2095,8 @@ */ void PrinterDialog::checkLine(QPainter *painter, qreal *y, QString text) { - painter->drawRect( 4, *y, 16, 16); - painter->drawText(30, *y,650, 20, Qt::AlignLeft, text); + painter->drawRect(24, *y, 16, 16); + painter->drawText(50, *y,630, 20, Qt::AlignLeft, text); *y += 20; } @@ -2097,8 +2104,8 @@ void PrinterDialog::checkInput(QPainter *painter, qreal *y, QString text, QString prompt) { if (text != "") { - painter->drawRect( 4, *y, 16, 16); - painter->drawText(30, *y,500, 20, Qt::AlignLeft, text); + painter->drawRect(24, *y, 16, 16); + painter->drawText(50, *y,480, 20, Qt::AlignLeft, text); } painter->drawText(515, *y, 150, 20, Qt::AlignRight, QString(tr("Measured:")) + QString(" _________")); painter->drawText(675, *y, 60, 20, Qt::AlignLeft, prompt); @@ -2111,7 +2118,7 @@ if (product->divide_type && product->divide_type == moment) { *y += 20; painter->setFont(QFont("Helvetica", 14, QFont::Bold)); - painter->drawText(0, *y, 735, 20, Qt::AlignCenter, QString(tr("%1 split the batch here!")).arg(prod_split[product->divide_type])); + painter->drawText(20, *y, 715, 20, Qt::AlignCenter, QString(tr("%1 split the batch here!")).arg(prod_split[product->divide_type])); painter->setFont(QFont("Arial", 10, QFont::Normal)); *y += 26; return true; @@ -2140,37 +2147,37 @@ int h = outPixmap.height(); /* Make sure to keep the logo aspect ratio */ if (w == h) { - painter->drawPixmap(0, 0, 100, 100, outPixmap); + painter->drawPixmap(20, 0, 100, 100, outPixmap); } else if (w > h) { - painter->drawPixmap(0, 0, 100, (h * 100) / w, outPixmap); + painter->drawPixmap(20, 0, 100, (h * 100) / w, outPixmap); } else { - painter->drawPixmap(0, 0, (w * 100) / h, 100, outPixmap); + painter->drawPixmap(20, 0, (w * 100) / h, 100, outPixmap); } /* The fat header line */ painter->setFont(QFont("Helvetica",18, QFont::Bold)); if (p_job == PR_SUPPLIES) { - painter->drawText(120, 0, 500, 40, Qt::AlignLeft, tr("Inventory") + " " + my_brewery_name); + painter->drawText(140, 0, 500, 40, Qt::AlignLeft, tr("Inventory") + " " + my_brewery_name); } else if (p_job == PR_YEASTBANK) { - painter->drawText(120, 0, 500, 40, Qt::AlignLeft, tr("Yeastbank") + " " + my_brewery_name); + painter->drawText(140, 0, 500, 40, Qt::AlignLeft, tr("Yeastbank") + " " + my_brewery_name); } else if (p_job == PR_RECIPE) { - painter->drawText(120, 0, 500, 40, Qt::AlignLeft, recipe->name); + painter->drawText(140, 0, 500, 40, Qt::AlignLeft, recipe->name); } else if (p_job == PR_PRODUCT || p_job == PR_CHECKLIST) { - painter->drawText(120, 0, 500, 40, Qt::AlignLeft, product->code + " " + product->name); + painter->drawText(140, 0, 500, 40, Qt::AlignLeft, product->code + " " + product->name); } else { - painter->drawText(120, 0, 500, 40, Qt::AlignLeft, "?? " + my_brewery_name); + painter->drawText(140, 0, 500, 40, Qt::AlignLeft, "?? " + my_brewery_name); } /* The first normal header line */ painter->setFont(QFont("Helvetica",10, QFont::Normal)); - painter->drawText(120,35, 80, 20, Qt::AlignLeft, tr("Date and time")); - painter->drawText(200,35, 400, 20, Qt::AlignLeft, ": " + QDateTime::currentDateTime().toString("dd-MMM-yyyy hh:mm")); + painter->drawText(140,35, 80, 20, Qt::AlignLeft, tr("Date and time")); + painter->drawText(220,35, 400, 20, Qt::AlignLeft, ": " + QDateTime::currentDateTime().toString("dd-MMM-yyyy hh:mm")); if (p_job == PR_RECIPE) { - painter->drawText(120,55, 80, 20, Qt::AlignLeft, tr("Beer style")); - painter->drawText(200,55, 400, 20, Qt::AlignLeft, ": " + recipe->st_name); + painter->drawText(140,55, 80, 20, Qt::AlignLeft, tr("Beer style")); + painter->drawText(220,55, 400, 20, Qt::AlignLeft, ": " + recipe->st_name); } if (p_job == PR_PRODUCT || p_job == PR_CHECKLIST) { - painter->drawText(120,55, 80, 20, Qt::AlignLeft, tr("Beer style")); - painter->drawText(200,55, 400, 20, Qt::AlignLeft, ": " + product->st_name); + painter->drawText(140,55, 80, 20, Qt::AlignLeft, tr("Beer style")); + painter->drawText(220,55, 400, 20, Qt::AlignLeft, ": " + product->st_name); } /* The report itself may print more lines from y = 55. */ }