<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jan 27, 2016 at 3:34 PM, Joakim Bygdell <span dir="ltr"><<a href="mailto:j.bygdell@gmail.com" target="_blank">j.bygdell@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">As per Tomaz recomendation the helper functions from 19588ce and e072596 are<br>
 moved from qmlmanager to DiveObjectsHelper.<br></blockquote><div><br></div><div>Thank you, much better. :)<br></div><div>we may need to other 'ObjectHelpers' for DiveTrip, Cylinder, Weight later.<br><br></div><div> <br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Signed-off-by: Joakim Bygdell <<a href="mailto:j.bygdell@gmail.com">j.bygdell@gmail.com</a>><br>
---<br>
 qt-mobile/qml/DiveDetailsView.qml                  |  6 ++--<br>
 qt-mobile/qmlmanager.cpp                           | 36 ----------------------<br>
 qt-mobile/qmlmanager.h                             |  2 --<br>
 subsurface-core/subsurface-qt/DiveObjectHelper.cpp | 28 +++++++++++++++++<br>
 subsurface-core/subsurface-qt/DiveObjectHelper.h   |  4 +++<br>
 5 files changed, 34 insertions(+), 42 deletions(-)<br>
<br>
diff --git a/qt-mobile/qml/DiveDetailsView.qml b/qt-mobile/qml/DiveDetailsView.qml<br>
index df1d255..a47cea1 100644<br>
--- a/qt-mobile/qml/DiveDetailsView.qml<br>
+++ b/qt-mobile/qml/DiveDetailsView.qml<br>
@@ -12,8 +12,6 @@ import org.kde.plasma.mobilecomponents 0.2 as MobileComponents<br>
 Item {<br>
        id: detailsView<br>
        property int labelWidth: MobileComponents.Units.gridUnit * 10<br>
-       property string cylinder: manager.getCylinder(<a href="http://dive.id" rel="noreferrer" target="_blank">dive.id</a>)<br>
-       property string weight: manager.getWeights(<a href="http://dive.id" rel="noreferrer" target="_blank">dive.id</a>)<br>
        width: parent.width<br>
        height: mainLayout.implicitHeight + MobileComponents.Units.iconSizes.large<br>
        Rectangle {<br>
@@ -171,7 +169,7 @@ Item {<br>
                }<br>
                MobileComponents.Label {<br>
                        id: txtWeight<br>
-                       text: weight<br>
+                       text: dive.sumWeight<br>
                        wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere<br>
                        Layout.alignment: Qt.AlignRight<br>
                }<br>
@@ -183,7 +181,7 @@ Item {<br>
                }<br>
                MobileComponents.Label {<br>
                        id: txtCylinder<br>
-                       text: cylinder<br>
+                       text: dive.getCylinder<br>
                        Layout.fillWidth: true<br>
                        wrapMode: TextEdit.WordWrap<br>
                }<br>
diff --git a/qt-mobile/qmlmanager.cpp b/qt-mobile/qmlmanager.cpp<br>
index 336774c..a26e183 100644<br>
--- a/qt-mobile/qmlmanager.cpp<br>
+++ b/qt-mobile/qmlmanager.cpp<br>
@@ -706,39 +706,3 @@ QString QMLManager::getDate(const QString& diveId)<br>
                datestring = get_dive_date_string(d->when);<br>
        return datestring;<br>
 }<br>
-<br>
-QString QMLManager::getCylinder(const QString& diveId)<br>
-{<br>
-       int dive_id = diveId.toInt();<br>
-       struct dive *d = get_dive_by_uniq_id(dive_id);<br>
-       QString cylinder;<br>
-       if (d){<br>
-               if (d->cylinder[1].type.description != NULL){<br>
-                       cylinder = "Multiple";<br>
-               }<br>
-               else {<br>
-                       cylinder = d->cylinder[0].type.description;<br>
-               }<br>
-       }<br>
-       return cylinder;<br>
-}<br>
-<br>
-QString QMLManager::getWeights(const QString& diveId)<br>
-{<br>
-       int dive_id = diveId.toInt();<br>
-       struct dive *d = get_dive_by_uniq_id(dive_id);<br>
-       int weight = 0;<br>
-       QString weights;<br>
-       if (d){<br>
-               for (int i = 0; i < MAX_WEIGHTSYSTEMS; i++)<br>
-                       weight += d->weightsystem[i].weight.grams;<br>
-<br>
-               if (informational_prefs.unit_system == IMPERIAL){<br>
-                       weights = QString::number(grams_to_lbs(weight)) + " lbs";<br>
-               }<br>
-               else {<br>
-                       weights = QString::number(weight/1000) + " kg";<br>
-               }<br>
-       }<br>
-       return weights;<br>
-}<br>
diff --git a/qt-mobile/qmlmanager.h b/qt-mobile/qmlmanager.h<br>
index b53af4d..eb225a6 100644<br>
--- a/qt-mobile/qmlmanager.h<br>
+++ b/qt-mobile/qmlmanager.h<br>
@@ -87,8 +87,6 @@ public slots:<br>
        QString getNumber(const QString& diveId);<br>
        QString getDate(const QString& diveId);<br>
        QString getCurrentPosition();<br>
-       QString getCylinder(const QString& diveId);<br>
-       QString getWeights(const QString& diveId);<br>
        void deleteGpsFix(quint64 when);<br>
        void refreshDiveList();<br>
<br>
diff --git a/subsurface-core/subsurface-qt/DiveObjectHelper.cpp b/subsurface-core/subsurface-qt/DiveObjectHelper.cpp<br>
index e29bd38..3f05363 100644<br>
--- a/subsurface-core/subsurface-qt/DiveObjectHelper.cpp<br>
+++ b/subsurface-core/subsurface-qt/DiveObjectHelper.cpp<br>
@@ -243,3 +243,31 @@ int DiveObjectHelper::rating() const<br>
 {<br>
        return m_dive->rating;<br>
 }<br>
+<br>
+QString DiveObjectHelper::sumWeight() const<br>
+{<br>
+       int sum = 0;<br>
+       QString sumWeight;<br>
+       for (int i = 0; i < MAX_WEIGHTSYSTEMS; i++){<br>
+               sum += m_dive->weightsystem[i].weight.grams;<br>
+       }<br>
+       if (informational_prefs.unit_system == IMPERIAL){<br>
+               sumWeight = QString::number(grams_to_lbs(sum)) + " lbs";<br>
+       }<br>
+       else {<br>
+               sumWeight = QString::number(sum/1000) + " kg";<br>
+       }<br>
+       return sumWeight;<br>
+}<br>
+<br>
+QString DiveObjectHelper::getCylinder() const<br>
+{<br>
+       QString getCylinder;<br>
+       if (m_dive->cylinder[1].type.description != NULL){<br>
+               getCylinder = QObject::tr("Multiple");<br>
+       }<br>
+       else {<br>
+               getCylinder = m_dive->cylinder[0].type.description;<br>
+       }<br>
+       return getCylinder;<br>
+}<br>
diff --git a/subsurface-core/subsurface-qt/DiveObjectHelper.h b/subsurface-core/subsurface-qt/DiveObjectHelper.h<br>
index 84c9346..f44971f 100644<br>
--- a/subsurface-core/subsurface-qt/DiveObjectHelper.h<br>
+++ b/subsurface-core/subsurface-qt/DiveObjectHelper.h<br>
@@ -32,6 +32,8 @@ class DiveObjectHelper : public QObject {<br>
        Q_PROPERTY(QString tripMeta READ tripMeta CONSTANT)<br>
        Q_PROPERTY(QString maxcns READ maxcns CONSTANT)<br>
        Q_PROPERTY(QString otu READ otu CONSTANT)<br>
+       Q_PROPERTY(QString sumWeight READ sumWeight CONSTANT)<br>
+    Q_PROPERTY(QString getCylinder READ getCylinder CONSTANT)<br>
 public:<br>
        DiveObjectHelper(struct dive *dive = NULL);<br>
        ~DiveObjectHelper();<br>
@@ -62,6 +64,8 @@ public:<br>
        QString tripMeta() const;<br>
        QString maxcns() const;<br>
        QString otu() const;<br>
+       QString sumWeight() const;<br>
+       QString getCylinder() const;<br>
<br>
 private:<br>
        struct dive *m_dive;<br>
<span class="HOEnZb"><font color="#888888">--<br>
2.4.9 (Apple Git-60)<br>
<br>
_______________________________________________<br>
subsurface mailing list<br>
<a href="mailto:subsurface@subsurface-divelog.org">subsurface@subsurface-divelog.org</a><br>
<a href="http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface" rel="noreferrer" target="_blank">http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface</a><br>
</font></span></blockquote></div><br></div></div>