Printing: call print from printer class

This is the main function that prints dive lists.

Signed-off-by: Gehad elrobey <gehadelrobey@gmail.com>
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Gehad elrobey 2015-05-30 15:20:01 +02:00 committed by Dirk Hohndel
parent b4e1563d10
commit 231f90bd26
2 changed files with 17 additions and 3 deletions

View file

@ -25,12 +25,15 @@ PrintDialog::PrintDialog(QWidget *parent, Qt::WindowFlags f) : QDialog(parent, f
printOptions.print_selected = s.value("print_selected").toBool(); printOptions.print_selected = s.value("print_selected").toBool();
printOptions.color_selected = s.value("color_selected").toBool(); printOptions.color_selected = s.value("color_selected").toBool();
printOptions.landscape = s.value("landscape").toBool(); printOptions.landscape = s.value("landscape").toBool();
printer.setOrientation((QPrinter::Orientation)printOptions.landscape); qprinter.setOrientation((QPrinter::Orientation)printOptions.landscape);
} }
// create a print options object and pass our options struct // create a print options object and pass our options struct
optionsWidget = new PrintOptions(this, &printOptions); optionsWidget = new PrintOptions(this, &printOptions);
// create a new printer object
printer = new Printer(&qprinter);
QVBoxLayout *layout = new QVBoxLayout(this); QVBoxLayout *layout = new QVBoxLayout(this);
setLayout(layout); setLayout(layout);
@ -89,8 +92,17 @@ void PrintDialog::previewClicked(void)
void PrintDialog::printClicked(void) void PrintDialog::printClicked(void)
{ {
QPrintDialog printDialog(&printer, this); QPrintDialog printDialog(&qprinter, this);
if (printDialog.exec() == QDialog::Accepted) { if (printDialog.exec() == QDialog::Accepted) {
switch (printOptions.type) {
case print_options::DIVELIST:
printer->print();
break;
case print_options::TABLE:
break;
case print_options::STATISTICS:
break;
}
close(); close();
} }
} }

View file

@ -4,6 +4,7 @@
#include <QDialog> #include <QDialog>
#include <QPrinter> #include <QPrinter>
#include "printoptions.h" #include "printoptions.h"
#include "printer.h"
class QProgressBar; class QProgressBar;
class PrintOptions; class PrintOptions;
@ -19,7 +20,8 @@ public:
private: private:
PrintOptions *optionsWidget; PrintOptions *optionsWidget;
QProgressBar *progressBar; QProgressBar *progressBar;
QPrinter printer; Printer *printer;
QPrinter qprinter;
struct print_options printOptions; struct print_options printOptions;
private private