mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
mobile cleanup: unduplicate code and do not loop over dives (1)
This is the first of a set of commits that are (very) similar. It appeared that a number of more or less static lists, which are constructed by a loop over all dives in the logbook, were executed when changing focus to a next dive. For example, the in this commit addressed list of used dive suits. What was wrong was that the suitList was linked to a dive. There is only a need to construct the list of used suits when data is changed (and obviously, once on startup of the app). Further, it appeared that a lot of code was duplicated and that we can use (in this case) the same code from the desktop completionmodels.cpp. Basically, this commit involves the following changes: - include completionmodels.cpp in mobile and desktop (so move it from the desktop only category to the generic category). - remove double code from DiveObjectHelper.cpp - Do not differentiate in the init phase and the normal refresh of the list - the per dive logic is now only the getting of a previously constructed list (in init or update of the divelist). There are no visible changes in the UI, other than a better performance when scrolling over dive details. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
This commit is contained in:
parent
79ce3c02cb
commit
e6e1473e6a
8 changed files with 15 additions and 37 deletions
|
@ -30,7 +30,6 @@ Kirigami.Page {
|
|||
property alias notes: detailsEdit.notesText
|
||||
property alias suitIndex: detailsEdit.suitIndex
|
||||
property alias suitText: detailsEdit.suitText
|
||||
property alias suitModel: detailsEdit.suitModel
|
||||
property alias weight: detailsEdit.weightText
|
||||
property alias startpressure: detailsEdit.startpressureText
|
||||
property alias endpressure: detailsEdit.endpressureText
|
||||
|
@ -237,7 +236,7 @@ Kirigami.Page {
|
|||
depth = currentItem.modelData.dive.depth
|
||||
airtemp = currentItem.modelData.dive.airTemp
|
||||
watertemp = currentItem.modelData.dive.waterTemp
|
||||
suitIndex = currentItem.modelData.dive.suitList.indexOf(currentItem.modelData.dive.suit)
|
||||
suitIndex = manager.suitList.indexOf(currentItem.modelData.dive.suit)
|
||||
if (currentItem.modelData.dive.buddy.indexOf(",") > 0) {
|
||||
buddyText = currentItem.modelData.dive.buddy;
|
||||
} else {
|
||||
|
|
|
@ -224,8 +224,7 @@ Item {
|
|||
}
|
||||
HintsTextEdit {
|
||||
id: suitBox
|
||||
model: diveDetailsListView.currentItem && diveDetailsListView.currentItem.modelData !== null ?
|
||||
diveDetailsListView.currentItem.modelData.dive.suitList : null
|
||||
model: manager.suitList
|
||||
inputMethodHints: Qt.ImhNoPredictiveText
|
||||
Layout.fillWidth: true
|
||||
}
|
||||
|
|
|
@ -92,7 +92,7 @@ Kirigami.ApplicationWindow {
|
|||
detailsWindow.location = ""
|
||||
detailsWindow.gps = ""
|
||||
detailsWindow.duration = ""
|
||||
detailsWindow.suitModel = manager.suitInit
|
||||
detailsWindow.suitModel = manager.suitList
|
||||
detailsWindow.suitIndex = -1
|
||||
detailsWindow.suitText = ""
|
||||
detailsWindow.cylinderModel = manager.cylinderInit
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue