aboutsummaryrefslogtreecommitdiffstats
path: root/qt-ui/profile
diff options
context:
space:
mode:
authorGravatar Tomaz Canabrava <tcanabrava@kde.org>2014-01-22 19:22:07 -0200
committerGravatar Dirk Hohndel <dirk@hohndel.org>2014-01-22 13:28:25 -0800
commitcde9bc0de9f4b7684336ef7209f47a47c8b751ba (patch)
treed3fd3c51d4e607b61eb2d275a2f51a88646be248 /qt-ui/profile
parentf8a4f8de8159bb60235af170d2acb603ec40ccad (diff)
downloadsubsurface-cde9bc0de9f4b7684336ef7209f47a47c8b751ba.tar.gz
Make the tissues be preferences-aware.
This patch adds a new class DiveCalculatedTissue that's preferences aware. It knows when to show or hide itself. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui/profile')
-rw-r--r--qt-ui/profile/diveprofileitem.cpp12
-rw-r--r--qt-ui/profile/diveprofileitem.h7
-rw-r--r--qt-ui/profile/profilewidget2.cpp2
-rw-r--r--qt-ui/profile/profilewidget2.h3
4 files changed, 22 insertions, 2 deletions
diff --git a/qt-ui/profile/diveprofileitem.cpp b/qt-ui/profile/diveprofileitem.cpp
index e740640e2..0768f38f6 100644
--- a/qt-ui/profile/diveprofileitem.cpp
+++ b/qt-ui/profile/diveprofileitem.cpp
@@ -388,6 +388,18 @@ void DiveCalculatedCeiling::paint(QPainter* painter, const QStyleOptionGraphicsI
QGraphicsPolygonItem::paint(painter, option, widget);
}
+DiveCalculatedTissue::DiveCalculatedTissue()
+{
+ preferencesChanged();
+}
+
+void DiveCalculatedTissue::preferencesChanged()
+{
+ QSettings s;
+ s.beginGroup("TecDetails");
+ setVisible(s.value("calcalltissues").toBool());
+}
+
void DiveReportedCeiling::modelDataChanged()
{
if (!hAxis || !vAxis || !dataModel || hDataColumn == -1 || vDataColumn == -1)
diff --git a/qt-ui/profile/diveprofileitem.h b/qt-ui/profile/diveprofileitem.h
index 272ee0821..c6c5b19e3 100644
--- a/qt-ui/profile/diveprofileitem.h
+++ b/qt-ui/profile/diveprofileitem.h
@@ -103,6 +103,13 @@ public:
virtual void preferencesChanged();
};
+class DiveCalculatedTissue : public DiveCalculatedCeiling {
+ Q_OBJECT
+public:
+ DiveCalculatedTissue();
+ void preferencesChanged();
+};
+
class MeanDepthLine : public DiveLineItem {
Q_OBJECT
public:
diff --git a/qt-ui/profile/profilewidget2.cpp b/qt-ui/profile/profilewidget2.cpp
index fd579a5c4..3451ddf40 100644
--- a/qt-ui/profile/profilewidget2.cpp
+++ b/qt-ui/profile/profilewidget2.cpp
@@ -388,7 +388,7 @@ void ProfileWidget2::plotDives(QList<dive*> dives)
qDeleteAll(allTissues);
allTissues.clear();
for(int i = 0; i < 16; i++){
- DiveCalculatedCeiling *tissueItem = new DiveCalculatedCeiling();
+ DiveCalculatedTissue *tissueItem = new DiveCalculatedTissue();
tissueItem->setHorizontalAxis(timeAxis);
tissueItem->setVerticalAxis(profileYAxis);
tissueItem->setModel(dataModel);
diff --git a/qt-ui/profile/profilewidget2.h b/qt-ui/profile/profilewidget2.h
index 780a9b2a7..c20a3f333 100644
--- a/qt-ui/profile/profilewidget2.h
+++ b/qt-ui/profile/profilewidget2.h
@@ -36,6 +36,7 @@ struct plot_info;
struct DiveGasPressureItem;
struct DiveCalculatedCeiling;
struct DiveReportedCeiling;
+struct DiveCalculatedTissue;
class ProfileWidget2 : public QGraphicsView {
Q_OBJECT
@@ -88,7 +89,7 @@ private:
QList<DiveEventItem*> eventItems;
DiveTextItem *diveComputerText;
DiveCalculatedCeiling *diveCeiling;
- QList<DiveCalculatedCeiling*> allTissues;
+ QList<DiveCalculatedTissue*> allTissues;
DiveReportedCeiling *reportedCeiling;
};