diff options
-rw-r--r-- | printer.cpp | 15 | ||||
-rw-r--r-- | templatelayout.cpp | 8 |
2 files changed, 19 insertions, 4 deletions
diff --git a/printer.cpp b/printer.cpp index 5116521fa..f21ff478d 100644 --- a/printer.cpp +++ b/printer.cpp @@ -44,7 +44,7 @@ void Printer::render() // apply printing settings to profile profile->setFrameStyle(QFrame::NoFrame); - profile->setPrintMode(true); + profile->setPrintMode(true, !printOptions->color_selected); profile->setFontPrintScale(0.6); profile->setToolTipVisibile(false); prefs.animation_speed = 0; @@ -56,9 +56,18 @@ void Printer::render() painter.begin(printer); painter.setRenderHint(QPainter::Antialiasing); painter.setRenderHint(QPainter::SmoothPixmapTransform); - webView->page()->setViewportSize(size); - int Pages = ceil(getTotalWork() / 2.0); + + int divesPerPage; + switch (printOptions->p_template) { + case print_options::ONE_DIVE: + divesPerPage = 1; + break; + case print_options::TWO_DIVE: + divesPerPage = 2; + break; + } + int Pages = ceil(getTotalWork() / (float)divesPerPage); // get all refereces to diveprofile class in the Html template QWebElementCollection collection = webView->page()->mainFrame()->findAllElements(".diveprofile"); diff --git a/templatelayout.cpp b/templatelayout.cpp index 33b96086e..2739b6d7e 100644 --- a/templatelayout.cpp +++ b/templatelayout.cpp @@ -30,6 +30,7 @@ QString TemplateLayout::generate() { int progress = 0; int totalWork = getTotalWork(); + QString templateName; QString htmlContent; m_engine = new Grantlee::Engine(this); @@ -59,7 +60,12 @@ QString TemplateLayout::generate() Grantlee::Context c(mapping); - Grantlee::Template t = m_engine->loadByName("base.html"); + if (PrintOptions->p_template == print_options::ONE_DIVE) { + templateName = "one_dive.html"; + } else if (PrintOptions->p_template == print_options::TWO_DIVE) { + templateName = "base.html"; + } + Grantlee::Template t = m_engine->loadByName(templateName); if (!t || t->error()) { qDebug() << "Can't load template"; return htmlContent; |