From 6699e3ab3e3f617d5080720733df85cb6a9e2296 Mon Sep 17 00:00:00 2001 From: "Robert C. Helling" Date: Tue, 3 Jun 2014 10:06:18 +0200 Subject: Add print button to planner Signed-off-by: Robert C. Helling Signed-off-by: Dirk Hohndel --- qt-ui/diveplanner.cpp | 6 ++++++ qt-ui/diveplanner.h | 1 + qt-ui/diveplanner.ui | 21 ++++++++++++++------- qt-ui/mainwindow.cpp | 12 ++++++++++++ qt-ui/mainwindow.h | 1 + 5 files changed, 34 insertions(+), 7 deletions(-) diff --git a/qt-ui/diveplanner.cpp b/qt-ui/diveplanner.cpp index 36c8538a1..516c29126 100644 --- a/qt-ui/diveplanner.cpp +++ b/qt-ui/diveplanner.cpp @@ -277,6 +277,7 @@ DivePlannerWidget::DivePlannerWidget(QWidget *parent, Qt::WindowFlags f) : QWidg connect(ui.display_duration, SIGNAL(toggled(bool)), plannerModel, SLOT(setDisplayDuration(bool))); connect(ui.display_runtime, SIGNAL(toggled(bool)), plannerModel, SLOT(setDisplayRuntime(bool))); connect(ui.display_transitions, SIGNAL(toggled(bool)), plannerModel, SLOT(setDisplayTransitions(bool))); + connect(ui.printPlan, SIGNAL(pressed()), this, SLOT(printDecoPlan())); // Creating (and canceling) the plan connect(ui.buttonBox, SIGNAL(accepted()), plannerModel, SLOT(createPlan())); @@ -320,6 +321,11 @@ void DivePlannerWidget::decoSacChanged(const QString &decosac) plannerModel->setDecoSac(decosac.toInt()); } +void DivePlannerWidget::printDecoPlan() +{ + MainWindow::instance()->printPlan(); +} + void DivePlannerPointsModel::setPlanMode(Mode m) { mode = m; diff --git a/qt-ui/diveplanner.h b/qt-ui/diveplanner.h index f96094059..fabf2e683 100644 --- a/qt-ui/diveplanner.h +++ b/qt-ui/diveplanner.h @@ -136,6 +136,7 @@ slots: void atmPressureChanged(const QString &pressure); void bottomSacChanged(const QString &bottomSac); void decoSacChanged(const QString &decosac); + void printDecoPlan(); private: Ui::DivePlanner ui; diff --git a/qt-ui/diveplanner.ui b/qt-ui/diveplanner.ui index 4e1071470..043214340 100644 --- a/qt-ui/diveplanner.ui +++ b/qt-ui/diveplanner.ui @@ -124,7 +124,7 @@ - + QDialogButtonBox::Abort|QDialogButtonBox::Save @@ -189,6 +189,16 @@ + + + + In diveplan, list transitions or treat them as implicit + + + display transitions + + + @@ -212,13 +222,10 @@ - - - - In diveplan, list transitions or treat them as implicit - + + - display transitions + Print diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp index a49cdc460..d94ec8561 100644 --- a/qt-ui/mainwindow.cpp +++ b/qt-ui/mainwindow.cpp @@ -20,6 +20,7 @@ #include #include #include +#include #include #include "divelistview.h" #include "starwidget.h" @@ -419,6 +420,17 @@ void MainWindow::setPlanNotes(const char *notes) ui.divePlanOutput->setHtml(notes); } +void MainWindow::printPlan() +{ + QPrinter printer; + QPrintDialog *dialog = new QPrintDialog(&printer, this); + dialog->setWindowTitle(tr("Print runtime table")); + if (dialog->exec() != QDialog::Accepted) + return; + + ui.divePlanOutput->print(&printer); +} + void MainWindow::on_actionDivePlanner_triggered() { if(!plannerStateClean()) diff --git a/qt-ui/mainwindow.h b/qt-ui/mainwindow.h index 57c205ba4..6f352cc74 100644 --- a/qt-ui/mainwindow.h +++ b/qt-ui/mainwindow.h @@ -78,6 +78,7 @@ public: void setLoadedWithFiles(bool filesFromCommandLine); bool filesFromCommandLine() const; void setPlanNotes(const char *notes); + void printPlan(); private slots: /* file menu action */ -- cgit v1.2.3-70-g09d2