[PATCH 2/2] Show sample pressures in the cylinder equipment page

Linus Torvalds torvalds at linux-foundation.org
Wed Jun 19 21:50:05 PDT 2013


From: Linus Torvalds <torvalds at linux-foundation.org>
Date: Wed, 19 Jun 2013 18:42:48 -1000
Subject: [PATCH 2/2] Show sample pressures in the cylinder equipment page

If we don't have any manually set pressure data, show the data from the
samples instead.  It uses an italic font for this case, mainly because I
couldn't figure out how to gray things out.

Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>
---

Ok, so I don't love the italics. I think grayed-out would be better. But I 
don't do Qt, so this is what you get. At least I can see my pressures now.

 qt-ui/models.cpp | 24 ++++++++++++++++++++----
 1 file changed, 20 insertions(+), 4 deletions(-)

diff --git a/qt-ui/models.cpp b/qt-ui/models.cpp
index c2cce561577d..0288e7107b8d 100644
--- a/qt-ui/models.cpp
+++ b/qt-ui/models.cpp
@@ -78,9 +78,21 @@ QVariant CylindersModel::data(const QModelIndex& index, int role) const
 
 	cylinder_t *cyl = &current->cylinder[index.row()];
 	switch (role) {
-	case Qt::FontRole:
-		ret = defaultModelFont();
+	case Qt::FontRole: {
+		QFont font = defaultModelFont();
+		switch (index.column()) {
+		case START:
+			if (!cyl->start.mbar)
+				font.setItalic(true);
+			break;
+		case END:
+			if (!cyl->end.mbar)
+				font.setItalic(true);
+			break;
+		}
+		ret = font;
 		break;
+	}
 	case Qt::TextAlignmentRole:
 		ret = Qt::AlignHCenter;
 		break;
@@ -112,11 +124,15 @@ QVariant CylindersModel::data(const QModelIndex& index, int role) const
 			break;
 		case START:
 			if (cyl->start.mbar)
-				ret = get_pressure_string(cyl->start, TRUE);
+				ret = get_pressure_string(cyl->start, FALSE);
+			else if (cyl->sample_start.mbar)
+				ret = get_pressure_string(cyl->sample_start, FALSE);
 			break;
 		case END:
 			if (cyl->end.mbar)
-				ret = get_pressure_string(cyl->end, TRUE);
+				ret = get_pressure_string(cyl->end, FALSE);
+			else if (cyl->sample_end.mbar)
+				ret = get_pressure_string(cyl->sample_end, FALSE);
 			break;
 		case O2:
 			ret = percent_string(cyl->gasmix.o2);
-- 
1.8.3



More information about the subsurface mailing list