From ac7126b84a3bc573342abcc2e042ba58f8e1f0cd Mon Sep 17 00:00:00 2001 From: "Lubomir I. Ivanov" Date: Wed, 4 Dec 2013 15:16:20 +0200 Subject: PrintLayout: emit progress from printProfileDives() printProfileDives() now emits a 'signalProgress' each time a dive is done processing. Signed-off-by: Lubomir I. Ivanov --- qt-ui/printlayout.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/qt-ui/printlayout.cpp b/qt-ui/printlayout.cpp index 7e5e57533..3e7408702 100644 --- a/qt-ui/printlayout.cpp +++ b/qt-ui/printlayout.cpp @@ -115,6 +115,12 @@ void PrintLayout::estimateTotalDives(struct dive *dive, int *i, int *total) cons void PrintLayout::printProfileDives(int divesPerRow, int divesPerColumn) { + int i, row = 0, col = 0, printed = 0, total = 0; + struct dive *dive; + estimateTotalDives(dive, &i, &total); + if (!total) + return; + // setup a painter QPainter painter; painter.begin(printer); @@ -159,8 +165,6 @@ void PrintLayout::printProfileDives(int divesPerRow, int divesPerColumn) yOffsetTable = scaledH - tableH; // plot the dives at specific rows and columns on the page - int i, row = 0, col = 0; - struct dive *dive; for_each_dive(i, dive) { if (!dive->selected && printOptions->print_selected) continue; @@ -186,6 +190,8 @@ void PrintLayout::printProfileDives(int divesPerRow, int divesPerColumn) table->render(&painter); painter.setTransform(origTransform); col++; + printed++; + emit signalProgress((printed * 100) / total); } // cleanup -- cgit v1.2.3-70-g09d2