<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>