diff options
-rw-r--r-- | qt-mobile/qml/DiveDetails.qml | 3 | ||||
-rw-r--r-- | qt-mobile/qml/DiveDetailsEdit.qml | 16 | ||||
-rw-r--r-- | qt-mobile/qmlmanager.cpp | 4 |
3 files changed, 21 insertions, 2 deletions
diff --git a/qt-mobile/qml/DiveDetails.qml b/qt-mobile/qml/DiveDetails.qml index dc2087a34..b815a04cc 100644 --- a/qt-mobile/qml/DiveDetails.qml +++ b/qt-mobile/qml/DiveDetails.qml @@ -49,6 +49,9 @@ MobileComponents.Page { checkable: true iconName: checked ? "view-readermode" : "document-edit" onTriggered: { + if (diveDetailsWindow.state == "edit") { + manager.commitChanges(dive_id, suit, buddy, divemaster, notes); + } diveDetailsWindow.state = checked ? "edit" : "view"; contextDrawer.close(); // close drawer? diff --git a/qt-mobile/qml/DiveDetailsEdit.qml b/qt-mobile/qml/DiveDetailsEdit.qml index 7648eaf3f..e3545535c 100644 --- a/qt-mobile/qml/DiveDetailsEdit.qml +++ b/qt-mobile/qml/DiveDetailsEdit.qml @@ -65,6 +65,9 @@ Item { id: txtSuit text: suit Layout.fillWidth: true + onEditingFinished: { + suit = text; + } } MobileComponents.Label { @@ -75,6 +78,9 @@ Item { id: txtBuddy text: buddy Layout.fillWidth: true + onEditingFinished: { + buddy = text; + } } MobileComponents.Label { @@ -85,6 +91,9 @@ Item { id: txtDiveMaster text: divemaster Layout.fillWidth: true + onEditingFinished: { + divemaster = text; + } } MobileComponents.Label { @@ -100,6 +109,11 @@ Item { Layout.minimumHeight: MobileComponents.Units.gridUnit * 6 selectByMouse: true wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere +// there is no onEditingFinished signal... not sure how to get the value +// out of this field when we're done editing +// onEditingFinished: { +// diveDetailsWindow.notes = text; +// } } } Item { @@ -107,4 +121,4 @@ Item { width: height // just to make sure the spacer doesn't produce scrollbars, but also isn't null } } -}
\ No newline at end of file +} diff --git a/qt-mobile/qmlmanager.cpp b/qt-mobile/qmlmanager.cpp index 0fbdac286..13749caa4 100644 --- a/qt-mobile/qmlmanager.cpp +++ b/qt-mobile/qmlmanager.cpp @@ -250,8 +250,10 @@ void QMLManager::commitChanges(QString diveId, QString suit, QString buddy, QStr free(d->notes); d->notes = strdup(notes.toUtf8().data()); } - if (diveChanged) + if (diveChanged) { + DiveListModel::instance()->updateDive(d); mark_divelist_changed(true); + } } void QMLManager::saveChanges() |