subsurface/qt-models
Berthold Stoeger 68414531ad Mobile: don't format trip heading for all dives
QML's ListView uses the "section" property to test if items belong to the
same section. Apparently, this must be a string and therefore we can't
pass e.g. a dive-trip object. Therefore a specially formatted string
was passed in, which was guaranteed to be unique (contained the dive-trip
pointer value) and the fully formatted trip-title and short-date.

The disadvantage of that approach is that the formatting is performed for
every dive and not every trip. Perhaps not a problem now, but it makes
it for example necessary to cache the number of filtered dives.

To be more flexible, pass in only the pointer value formatted as
hexadecimal string and provide a function to convert that string
back to a trip-pointer (in the form of a QVariant, so that it can
be passed to QML). Moreover provide two functions for formatting the
title and the short-date.

The three new functions are members of DiveListSortModel. This might not
be the perfect place, but it is easy to reach from the DiveListView.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-11-23 13:22:24 -08:00
..
cleanertablemodel.cpp qt-models: Change Q_UNUSED to no parameter name 2018-05-21 12:48:04 -07:00
cleanertablemodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
CMakeLists.txt Cleanup: Remove SsrfFilterSortProxyModel 2018-10-11 16:25:32 -07:00
completionmodels.cpp Add SPDX header to Qt models 2017-04-29 13:32:55 -07:00
completionmodels.h Add SPDX header to Qt models 2017-04-29 13:32:55 -07:00
cylindermodel.cpp Cleanup: pass gasmix by value 2018-08-23 05:16:38 -07:00
cylindermodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
divecomputerextradatamodel.cpp qt-models: Change Q_UNUSED to no parameter name 2018-05-21 12:48:04 -07:00
divecomputerextradatamodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
divecomputermodel.cpp Dive computers: turn QMultiMap into sorted vector 2018-06-17 06:53:13 +09:00
divecomputermodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
diveimportedmodel.cpp Autogroup only when selected 2018-10-14 09:22:56 +02:00
diveimportedmodel.h Core: remove dive.h from files that don't need it 2018-05-14 10:13:39 -07:00
divelistmodel.cpp Mobile: don't format trip heading for all dives 2018-11-23 13:22:24 -08:00
divelistmodel.h Mobile: don't format trip heading for all dives 2018-11-23 13:22:24 -08:00
divelocationmodel.cpp Dive site: pass pointer-to-dive_site via QVariant 2018-10-29 00:09:31 +00:00
divelocationmodel.h Dive site: remove UUIDs from LocationInformationModel 2018-10-29 00:09:31 +00:00
divepicturemodel.cpp Dive media: put duration on video thumbnails 2018-07-28 15:31:25 -07:00
divepicturemodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
diveplannermodel.cpp Undo: make adding of planned dive undo-able 2018-10-11 16:22:27 -07:00
diveplannermodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
diveplotdatamodel.cpp qt-models: Change Q_UNUSED to no parameter name 2018-05-21 12:48:04 -07:00
diveplotdatamodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
divetripmodel.cpp Cleanup: make "struct dive *" and "struct dive_trip *" Qt metatypes 2018-11-23 13:22:24 -08:00
divetripmodel.h Dive list: update position of trip if data changed 2018-11-18 16:50:09 -08:00
filtermodels.cpp Cleanup: make "struct dive *" and "struct dive_trip *" Qt metatypes 2018-11-23 13:22:24 -08:00
filtermodels.h Dive list: implement custom lessThan function 2018-11-01 07:28:15 -07:00
gpslistmodel.cpp Add 'location_t' data structure 2018-10-21 19:55:09 +03:00
gpslistmodel.h Unused code: GpsListModel::addGpsFix() 2018-01-10 16:45:42 +01:00
maplocationmodel.cpp Dive list: don't pass dive_site via uintptr_t through QML 2018-10-29 00:09:31 +00:00
maplocationmodel.h Dive list: don't pass dive_site via uintptr_t through QML 2018-10-29 00:09:31 +00:00
messagehandlermodel.cpp qt-models: Change Q_UNUSED to no parameter name 2018-05-21 12:48:04 -07:00
messagehandlermodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
models.cpp Change from gettextFromC::instance()->tr() to gettextFromC::tr(); 2018-06-18 07:42:39 +02:00
models.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
tankinfomodel.cpp equipment: sanitize 'tank_info' loop limits 2018-06-20 09:30:58 +09:00
tankinfomodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
treemodel.cpp Cleanup: make DiveTripModel a global object 2018-09-01 07:48:43 -07:00
treemodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
weightmodel.cpp equipment: sanitize 'ws_info' loop limits 2018-06-20 09:30:58 +09:00
weightmodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
weightsysteminfomodel.cpp equipment: sanitize 'ws_info' loop limits 2018-06-20 09:30:58 +09:00
weightsysteminfomodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
yearlystatisticsmodel.cpp Statistics: only consider selected dives in HTML export statistics 2018-10-07 17:50:51 +03:00
yearlystatisticsmodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00