printing: don't access displayed_dive in printing code

To phase out this global variable, avoid access of displayed_dive
in the printing code. This is used when printing a plan. Instead,
when in plan-mode, pass the planned dive to the printing code
as a single dive to be printed.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2022-11-06 20:37:53 +01:00 committed by bstoeger
parent 80df790efc
commit d51589b9a7
8 changed files with 44 additions and 29 deletions

View file

@ -548,8 +548,10 @@ void MainWindow::updateLastUsedDir(const QString &dir)
void MainWindow::on_actionPrint_triggered()
{
#ifndef NO_PRINTING
bool in_planner = inPlanner();
PrintDialog dlg(in_planner, this);
// When in planner, only print the planned dive.
dive *singleDive = appState == ApplicationState::PlanDive ? &displayed_dive
: nullptr;
PrintDialog dlg(singleDive, this);
dlg.exec();
#endif