[PATCH] Print: allow optional table on top of profile

Lubomir I. Ivanov neolit123 at gmail.com
Sat Oct 5 03:31:08 UTC 2013


From: "Lubomir I. Ivanov" <neolit123 at gmail.com>

Patch enables the 'Profile on top' / 'Notes on top'
functionality in the print options dialog.

Signed-off-by: Lubomir I. Ivanov <neolit123 at gmail.com>
---
resending
---
 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 8224c91..3ddc02a 100644
--- a/qt-ui/printlayout.cpp
+++ b/qt-ui/printlayout.cpp
@@ -139,6 +139,12 @@ void PrintLayout::printProfileDives(int divesPerRow, int divesPerColumn)
 	const int tableH = profilePrintTableMaxH;
 	// resize the profile widget
 	profile->resize(scaledW, scaledH - tableH - padPT);
+	// offset table or profile on top
+	int yOffsetProfile = 0, yOffsetTable = 0;
+	if (printOptions->notes_up)
+		yOffsetProfile = tableH + padPT;
+	else
+		yOffsetTable = scaledH - tableH;
 
 	// plot the dives at specific rows and columns on the page
 	int i, row = 0, col = 0;
@@ -158,13 +164,13 @@ void PrintLayout::printProfileDives(int divesPerRow, int divesPerColumn)
 		profile->plot(dive, true);
 		QPixmap profilePm = QPixmap::grabWidget(profile); // Qt4
 		painter.drawPixmap((scaledW + padW) * col,
-		                   (scaledH + padH) * row,
+		                   (scaledH + padH) * row + yOffsetProfile,
 		                   profilePm);
 		// draw a table
 		model.setDive(dive);
 		QPixmap tablePm = QPixmap::grabWidget(table); // Qt4
 		painter.drawPixmap((scaledW + padW) * col,
-		                   (scaledH + padH) * row + (scaledH - tableH),
+		                   (scaledH + padH) * row + yOffsetTable,
 		                   tablePm);
 		col++;
 	}
-- 
1.7.11.msysgit.0



More information about the subsurface mailing list