mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
QML UI: use unique names for the different ListViews
Having both the dive list (the vertical list) and the sequence of dive details (the horizontally swipe-able list) named the same caused me endless confusion. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
106bb07cff
commit
c52769a90f
2 changed files with 30 additions and 30 deletions
|
@ -8,7 +8,7 @@ import org.kde.plasma.mobilecomponents 0.2 as MobileComponents
|
||||||
|
|
||||||
MobileComponents.Page {
|
MobileComponents.Page {
|
||||||
id: diveDetailsPage
|
id: diveDetailsPage
|
||||||
property alias currentIndex: diveListView.currentIndex
|
property alias currentIndex: diveDetailsListView.currentIndex
|
||||||
|
|
||||||
state: "view"
|
state: "view"
|
||||||
|
|
||||||
|
@ -34,35 +34,35 @@ MobileComponents.Page {
|
||||||
// After saving, the list may be shuffled, so first of all make sure that
|
// After saving, the list may be shuffled, so first of all make sure that
|
||||||
// the listview's currentIndex is the visible item
|
// the listview's currentIndex is the visible item
|
||||||
// This makes sure that we always edit the currently visible item
|
// This makes sure that we always edit the currently visible item
|
||||||
diveListView.currentIndex = diveListView.indexAt(diveListView.contentX+1, 1);
|
diveDetailsListView.currentIndex = diveDetailsListView.indexAt(diveDetailsListView.contentX+1, 1);
|
||||||
detailsEdit.dive_id = diveListView.currentItem.modelData.dive.id
|
detailsEdit.dive_id = diveDetailsListView.currentItem.modelData.dive.id
|
||||||
detailsEdit.number = diveListView.currentItem.modelData.dive.number
|
detailsEdit.number = diveDetailsListView.currentItem.modelData.dive.number
|
||||||
detailsEdit.dateText = diveListView.currentItem.modelData.dive.date + " " + diveListView.currentItem.modelData.dive.time
|
detailsEdit.dateText = diveDetailsListView.currentItem.modelData.dive.date + " " + diveDetailsListView.currentItem.modelData.dive.time
|
||||||
detailsEdit.locationText = diveListView.currentItem.modelData.dive.location
|
detailsEdit.locationText = diveDetailsListView.currentItem.modelData.dive.location
|
||||||
detailsEdit.durationText = diveListView.currentItem.modelData.dive.duration
|
detailsEdit.durationText = diveDetailsListView.currentItem.modelData.dive.duration
|
||||||
detailsEdit.depthText = diveListView.currentItem.modelData.dive.depth
|
detailsEdit.depthText = diveDetailsListView.currentItem.modelData.dive.depth
|
||||||
detailsEdit.airtempText = diveListView.currentItem.modelData.dive.airTemp
|
detailsEdit.airtempText = diveDetailsListView.currentItem.modelData.dive.airTemp
|
||||||
detailsEdit.watertempText = diveListView.currentItem.modelData.dive.waterTemp
|
detailsEdit.watertempText = diveDetailsListView.currentItem.modelData.dive.waterTemp
|
||||||
detailsEdit.suitText = diveListView.currentItem.modelData.dive.suit
|
detailsEdit.suitText = diveDetailsListView.currentItem.modelData.dive.suit
|
||||||
detailsEdit.buddyText = diveListView.currentItem.modelData.dive.buddy
|
detailsEdit.buddyText = diveDetailsListView.currentItem.modelData.dive.buddy
|
||||||
detailsEdit.divemasterText = diveListView.currentItem.modelData.dive.divemaster
|
detailsEdit.divemasterText = diveDetailsListView.currentItem.modelData.dive.divemaster
|
||||||
detailsEdit.notesText = diveListView.currentItem.modelData.dive.notes
|
detailsEdit.notesText = diveDetailsListView.currentItem.modelData.dive.notes
|
||||||
detailsEdit.forcedWidth = diveDetailsPage.width
|
detailsEdit.forcedWidth = diveDetailsPage.width
|
||||||
diveDetailsPage.state = "edit"
|
diveDetailsPage.state = "edit"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function showDiveIndex(index) {
|
function showDiveIndex(index) {
|
||||||
diveListView.currentIndex = index;
|
diveDetailsListView.currentIndex = index;
|
||||||
diveListView.positionViewAtIndex(diveListView.currentIndex, ListView.Beginning);
|
diveDetailsListView.positionViewAtIndex(diveDetailsListView.currentIndex, ListView.Beginning);
|
||||||
}
|
}
|
||||||
onWidthChanged: diveListView.positionViewAtIndex(diveListView.currentIndex, ListView.Beginning);
|
onWidthChanged: diveDetailsListView.positionViewAtIndex(diveDetailsListView.currentIndex, ListView.Beginning);
|
||||||
|
|
||||||
ScrollView {
|
ScrollView {
|
||||||
id: diveDetailList
|
id: diveDetailList
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
ListView {
|
ListView {
|
||||||
id: diveListView
|
id: diveDetailsListView
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
model: diveModel
|
model: diveModel
|
||||||
currentIndex: -1
|
currentIndex: -1
|
||||||
|
@ -77,8 +77,8 @@ MobileComponents.Page {
|
||||||
}
|
}
|
||||||
delegate: ScrollView {
|
delegate: ScrollView {
|
||||||
id: internalScrollView
|
id: internalScrollView
|
||||||
width: diveListView.width
|
width: diveDetailsListView.width
|
||||||
height: diveListView.height
|
height: diveDetailsListView.height
|
||||||
property var modelData: model
|
property var modelData: model
|
||||||
Flickable {
|
Flickable {
|
||||||
//contentWidth: parent.width
|
//contentWidth: parent.width
|
||||||
|
|
|
@ -159,16 +159,16 @@ Item {
|
||||||
detailsEdit.depthText, detailsEdit.airtempText, detailsEdit.watertempText, detailsEdit.suitText,
|
detailsEdit.depthText, detailsEdit.airtempText, detailsEdit.watertempText, detailsEdit.suitText,
|
||||||
detailsEdit.buddyText, detailsEdit.divemasterText, detailsEdit.notesText)
|
detailsEdit.buddyText, detailsEdit.divemasterText, detailsEdit.notesText)
|
||||||
// apply the changes to the dive detail view
|
// apply the changes to the dive detail view
|
||||||
diveListView.currentItem.modelData.date = detailsEdit.dateText
|
diveDetailsListView.currentItem.modelData.date = detailsEdit.dateText
|
||||||
diveListView.currentItem.modelData.location = detailsEdit.locationText
|
diveDetailsListView.currentItem.modelData.location = detailsEdit.locationText
|
||||||
diveListView.currentItem.modelData.duration = detailsEdit.durationText
|
diveDetailsListView.currentItem.modelData.duration = detailsEdit.durationText
|
||||||
diveListView.currentItem.modelData.depth = detailsEdit.depthText
|
diveDetailsListView.currentItem.modelData.depth = detailsEdit.depthText
|
||||||
diveListView.currentItem.modelData.airtemp = detailsEdit.airtempText
|
diveDetailsListView.currentItem.modelData.airtemp = detailsEdit.airtempText
|
||||||
diveListView.currentItem.modelData.watertemp = detailsEdit.watertempText
|
diveDetailsListView.currentItem.modelData.watertemp = detailsEdit.watertempText
|
||||||
diveListView.currentItem.modelData.suit = detailsEdit.suitText
|
diveDetailsListView.currentItem.modelData.suit = detailsEdit.suitText
|
||||||
diveListView.currentItem.modelData.buddy = detailsEdit.buddyText
|
diveDetailsListView.currentItem.modelData.buddy = detailsEdit.buddyText
|
||||||
diveListView.currentItem.modelData.divemaster = detailsEdit.divemasterText
|
diveDetailsListView.currentItem.modelData.divemaster = detailsEdit.divemasterText
|
||||||
diveListView.currentItem.modelData.notes = detailsEdit.notesText
|
diveDetailsListView.currentItem.modelData.notes = detailsEdit.notesText
|
||||||
diveDetailsPage.state = "view"
|
diveDetailsPage.state = "view"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue