[PATCH 2/5] Profile2: add some print related flags

Lubomir I. Ivanov neolit123 at gmail.com
Tue Mar 25 14:34:09 PDT 2014


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

Some flags like printMode and isGrayscale are missing yet needed.
The flag printMode is required so that we know *when* to hide
certain elements such as the ruler and tool tip (e.g. not needed
while printing).

isGrayscale should be passed to all getColor() calls, so that
the greyscale color table is respected.

Signed-off-by: Lubomir I. Ivanov <neolit123 at gmail.com>
---
 qt-ui/profile/profilewidget2.cpp | 10 +++++++++-
 qt-ui/profile/profilewidget2.h   |  3 +++
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/qt-ui/profile/profilewidget2.cpp b/qt-ui/profile/profilewidget2.cpp
index cba977b..b0bbdbe 100644
--- a/qt-ui/profile/profilewidget2.cpp
+++ b/qt-ui/profile/profilewidget2.cpp
@@ -83,7 +83,9 @@ ProfileWidget2::ProfileWidget2(QWidget *parent) : QGraphicsView(parent),
 	po2GasItem(new PartialPressureGasItem()),
 	heartBeatAxis(new DiveCartesianAxis()),
 	heartBeatItem(new DiveHeartrateItem()),
-	rulerItem(new RulerItem2())
+	rulerItem(new RulerItem2()),
+	isGrayscale(false),
+	printMode(false)
 {
 	memset(&plotInfo, 0, sizeof(plotInfo));
 
@@ -788,3 +790,9 @@ void ProfileWidget2::changeGas()
 	mark_divelist_changed(true);
 	replot();
 }
+
+void ProfileWidget2::setPrintMode(bool mode, bool grayscale)
+{
+	printMode = mode;
+	isGrayscale = mode ? grayscale : false;
+}
diff --git a/qt-ui/profile/profilewidget2.h b/qt-ui/profile/profilewidget2.h
index f02ca40..eb7486e 100644
--- a/qt-ui/profile/profilewidget2.h
+++ b/qt-ui/profile/profilewidget2.h
@@ -67,6 +67,7 @@ public:
 	void replot();
 	virtual bool eventFilter(QObject *, QEvent *);
 	void setupItem(AbstractProfilePolygonItem *item, DiveCartesianAxis *hAxis, DiveCartesianAxis *vAxis, DivePlotDataModel *model, int vData, int hData, int zValue);
+	void setPrintMode(bool mode, bool grayscale = false);
 
 public
 slots: // Necessary to call from QAction's signals.
@@ -126,6 +127,8 @@ private:
 	DiveCartesianAxis *heartBeatAxis;
 	DiveHeartrateItem *heartBeatItem;
 	RulerItem2 *rulerItem;
+	bool isGrayscale;
+	bool printMode;
 };
 
 #endif // PROFILEWIDGET2_H
-- 
1.7.11.msysgit.0



More information about the subsurface mailing list