diff options
author | Dirk Hohndel <dirk@hohndel.org> | 2015-12-07 22:24:56 -0800 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2015-12-07 22:24:56 -0800 |
commit | 8baae6a3b6de67641ef603307727e5159b522519 (patch) | |
tree | 384f24583d3ae02ff0cf7ba4b8e7341096d6187f /qt-mobile/qml | |
parent | 9e6991a0e16799cbd0205536e23654dce1153c30 (diff) | |
download | subsurface-8baae6a3b6de67641ef603307727e5159b522519.tar.gz |
QML-UI: make dive edit almost sort of work
So this has a lot of caveats:
- right now it only works for buddy, divemaster and suit
- you have to actually exit the field with your cursor or the change
doesn't take - that's ridiculous, there must be a far more clever way to
do this
- because I use the onEditingFinished handler I can't do this for the
Notes (so here's another reason why I KNOW that this is the wrong way to
do this)
But it shows in principle how this could be done and once someone who
actually knows what they are doing gets their hands on the code I'm
optimistic that this can be morphed into something much more useful.
It does tie together the changes made in the previous commits so that both
clicking around on the dive list gives the expected results and synching
the data back to the cloud actually works.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-mobile/qml')
-rw-r--r-- | qt-mobile/qml/DiveDetails.qml | 3 | ||||
-rw-r--r-- | qt-mobile/qml/DiveDetailsEdit.qml | 16 |
2 files changed, 18 insertions, 1 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 +} |