subsurface/core
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
..
settings qPref: reduce recompiles with every commit 2018-10-27 07:16:01 -07:00
subsurface-qt Mobile: don't format trip heading for all dives 2018-11-23 13:22:24 -08:00
android.cpp Make device enumeration use the device transport data 2018-08-27 22:10:38 -07:00
btdiscovery.cpp core: recognize Aqualung i770R over BLE 2018-10-12 10:10:06 -07:00
btdiscovery.h Bluetooth: add helper to separate BT name and address 2018-10-12 08:22:44 -07:00
checkcloudconnection.cpp prefs: git_local_only is not a preference 2018-09-10 16:26:49 -07:00
checkcloudconnection.h Remove self-include of core/checkcloudconnection.h 2017-12-06 02:23:47 +01:00
cloudstorage.cpp core/settings ... : remove qPref* includes in qPref.h 2018-09-11 17:25:00 -07:00
cloudstorage.h prefs: cloud_new_password is not a preference 2018-09-10 16:26:49 -07:00
CMakeLists.txt Dive list: implement proper Qt-model semantics for DiveTripModel 2018-10-11 16:22:27 -07:00
cochran.c Core: remove dive->downloaded flag 2018-10-06 19:47:06 -07:00
cochran.h Cochran import: better support for older models 2017-05-31 21:53:00 -07:00
color.cpp Cleanup: silence clang missing braces warning in core/color.cpp 2018-09-01 11:31:18 -07:00
color.h Cleanups to core/color.[c|hpp] 2018-07-18 02:09:15 +03:00
compressibility.r Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
configuredivecomputer.cpp Actually tie in the new libdivecomputer IO model to open the dive computer device 2018-04-24 17:54:08 -07:00
configuredivecomputer.h Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
configuredivecomputerthreads.cpp libdivecomputer: remove ifdefs for ancient versions 2018-10-08 23:06:09 +03:00
configuredivecomputerthreads.h Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
connectionlistmodel.cpp Substring match BT address 2018-10-09 21:04:23 -07:00
connectionlistmodel.h core: add indexOf member to ConnectionListModel 2018-08-11 11:14:22 -07:00
datatrak.c Dive site: replace dive->dive_site_uuid by dive_site 2018-10-29 00:09:31 +00:00
datatrak.h Cleanup: const-ify functions taking dives and divecomputers 2018-08-23 14:41:01 -07:00
deco.c deco: _really_ make sure the deco state is fully initialized 2018-10-15 20:57:25 -04:00
deco.h Cleanup: const-ify functions taking pointers to events 2018-08-23 05:16:38 -07:00
device.c core: replace (void) with UNUSED(x) and include ssrf.h 2018-05-24 08:34:14 -07:00
device.h Core: remove dive.h from files that don't need it 2018-05-14 10:13:39 -07:00
devicedetails.cpp Implement OSTC4 specific settings 2017-05-04 10:50:15 -07:00
devicedetails.h Implement OSTC4 specific settings 2017-05-04 10:50:15 -07:00
display.h Make device enumeration use the device transport data 2018-08-27 22:10:38 -07:00
dive.c Core: replace tripflag by notrip boolean 2018-11-20 08:14:54 -08:00
dive.h Cleanup: make "struct dive *" and "struct dive_trip *" Qt metatypes 2018-11-23 13:22:24 -08:00
divecomputer.cpp core: remove SettingsObjectWrapper and update qPref calls 2018-08-15 16:11:39 -07:00
divecomputer.h Dive computers: turn QMultiMap into sorted vector 2018-06-17 06:53:13 +09:00
divelist.c Improve OTU calculations 2018-11-22 02:37:14 +02:00
divelist.h Core: remove "when" field of struct dive_trip 2018-11-18 16:50:09 -08:00
divelogexportlogic.cpp Statistics: only consider selected dives in HTML export statistics 2018-10-07 17:50:51 +03:00
divelogexportlogic.h Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
divesite-helper.cpp Dive site: use own copy of taxonomy in dive-site-edit widget 2018-10-13 21:41:41 -04:00
divesite.c Dive site: replace dive->dive_site_uuid by dive_site 2018-10-29 00:09:31 +00:00
divesite.h Dive site: pass pointer-to-dive_site via QVariant 2018-10-29 00:09:31 +00:00
divesitehelpers.cpp Geo lookup: don't pass arguments / result via global object 2018-10-11 16:25:02 -07:00
divesitehelpers.h Geo lookup: don't pass arguments / result via global object 2018-10-11 16:25:02 -07:00
downloadfromdcthread.cpp QML UI: do not try to download from DC with empty vendor/product 2018-10-10 06:27:21 -07:00
downloadfromdcthread.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
equipment.c Cleanup: user properly typed pointers 2018-08-23 05:21:08 -07:00
errorhelper.c Make report_error() reentrant 2018-01-31 14:47:26 +01:00
exif.cpp Coding-style: remove superfluous parentheses 2018-02-17 19:38:52 -08:00
exif.h Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
file.c Parser: parse text-based files into arbitrary table 2018-09-28 15:06:00 -07:00
file.h Parser: parse text-based files into arbitrary table 2018-09-28 15:06:00 -07:00
format.cpp Cleanup: Slightly shorten code in vqasprintf_loc() 2018-04-09 11:29:43 -07:00
format.h Cleanup: Move *_loc formatting functions into new format.cpp file 2018-04-09 11:29:43 -07:00
gas-model.c Cleanup: pass gasmix by value 2018-08-23 05:16:38 -07:00
gaspressures.c Cleanup: const-ify functions taking pointers to events 2018-08-23 05:16:38 -07:00
gaspressures.h Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
gettext.h Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
gettextfromc.cpp Localization: make cache thread safe and robust against use-after-free 2018-06-24 20:31:14 +02:00
gettextfromc.h Localization: remove gettextFromC::instance() 2018-06-24 20:31:14 +02:00
git-access.c prefs: git_local_only is not a preference 2018-09-10 16:26:49 -07:00
git-access.h prefs: git_local_only is not a preference 2018-09-10 16:26:49 -07:00
gpslocation.cpp Dive site: replace dive->dive_site_uuid by dive_site 2018-10-29 00:09:31 +00:00
gpslocation.h Add 'location_t' data structure 2018-10-21 19:55:09 +03:00
imagedownloader.cpp Dive media: Extract thumbnails from videos with ffmpeg 2018-07-28 15:31:25 -07:00
imagedownloader.h Dive media: Extract thumbnails from videos with ffmpeg 2018-07-28 15:31:25 -07:00
import-cobalt.c Dive site: replace dive->dive_site_uuid by dive_site 2018-10-29 00:09:31 +00:00
import-csv.c Import: remove unnecessary processing of dives in DAN import 2018-10-04 07:37:28 +02:00
import-csv.h Parser: parse text-based files into arbitrary table 2018-09-28 15:06:00 -07:00
import-divinglog.c Dive site: replace dive->dive_site_uuid by dive_site 2018-10-29 00:09:31 +00:00
import-shearwater.c Parser: make parser (mostly) reentrant 2018-10-23 08:06:17 +01:00
import-suunto.c Parser: make parser (mostly) reentrant 2018-10-23 08:06:17 +01:00
ios.cpp Make device enumeration use the device transport data 2018-08-27 22:10:38 -07:00
isocialnetworkintegration.cpp Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
isocialnetworkintegration.h Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
libdivecomputer.c Dive site: replace dive->dive_site_uuid by dive_site 2018-10-29 00:09:31 +00:00
libdivecomputer.h qt-ble: add 'get_name()' function to expose the BLE name to libdivecomputer 2018-10-08 00:10:29 +03:00
liquivision.c Dive site: replace dive->dive_site_uuid by dive_site 2018-10-29 00:09:31 +00:00
load-git.c Git parser: don't produce user-visible error on git parsing 2018-11-21 12:45:29 -08:00
macos.c macOS: always list 'FTDI' as a serial connection 2018-09-24 18:51:21 +02:00
membuffer.c Add 'location_t' data structure 2018-10-21 19:55:09 +03:00
membuffer.h Add 'location_t' data structure 2018-10-21 19:55:09 +03:00
metadata.cpp Add 'location_t' data structure 2018-10-21 19:55:09 +03:00
metadata.h Add 'location_t' data structure 2018-10-21 19:55:09 +03:00
metrics.cpp Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
metrics.h Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
ostctools.c Core: introduce new subsurface-string header 2018-05-14 10:13:39 -07:00
parse-xml.c Core: replace tripflag by notrip boolean 2018-11-20 08:14:54 -08:00
parse.c Core: remove ASSIGNED_TRIP trip flag 2018-11-20 08:14:54 -08:00
parse.h Parser: make parser (mostly) reentrant 2018-10-23 08:06:17 +01:00
planner.c Cleanup: const-ify functions taking pointers to events 2018-08-23 05:16:38 -07:00
planner.h Cleanup: pass gasmix by value 2018-08-23 05:16:38 -07:00
plannernotes.c Planner: fix display of "overlapping dives" message 2018-09-12 14:17:55 -07:00
pluginmanager.cpp Unused code: remove PluginManager::socialNetworkIntegrationPlugins() 2018-01-10 16:45:42 +01:00
pluginmanager.h Unused code: remove PluginManager::socialNetworkIntegrationPlugins() 2018-01-10 16:45:42 +01:00
pref.h Mobile/filtering: add two preferences for filtering 2018-10-23 22:45:30 +01:00
profile.c Undo: select dives after add, remove, merge, split dive commands 2018-10-11 16:22:27 -07:00
profile.h Cleanup: const-ify functions taking pointers to events 2018-08-23 05:16:38 -07:00
qt-ble.cpp qt-ble: add 'get_name()' function to expose the BLE name to libdivecomputer 2018-10-08 00:10:29 +03:00
qt-ble.h qt-ble: add 'get_name()' function to expose the BLE name to libdivecomputer 2018-10-08 00:10:29 +03:00
qt-gui.h core,tests: change qml register function 2018-09-11 17:22:58 -07:00
qt-init.cpp Core: use British translations in South Africa 2018-11-01 09:30:14 -07:00
qthelper.cpp Dive list: correctly translate trip date 2018-11-16 16:55:55 -08:00
qthelper.h Add 'location_t' data structure 2018-10-21 19:55:09 +03:00
qtserialbluetooth.cpp qt-ble: add 'get_name()' function to expose the BLE name to libdivecomputer 2018-10-08 00:10:29 +03:00
save-git.c Core: replace tripflag by notrip boolean 2018-11-20 08:14:54 -08:00
save-html.c Dive list: replace dive-list of trips by a table 2018-11-18 16:50:09 -08:00
save-html.h Add SPDX header to core C files 2017-04-29 13:32:55 -07:00
save-xml.c Core: replace tripflag by notrip boolean 2018-11-20 08:14:54 -08:00
serial_ftdi.c Fix Cressi interface ftdi opening bug 2018-11-18 20:01:28 +02:00
sha1.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
sha1.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
ssrf.h mobile: add timer to measure startup. 2018-05-30 21:47:07 -07:00
statistics.c Statistics: only consider selected dives in HTML export statistics 2018-10-07 17:50:51 +03:00
statistics.h Statistics: only consider selected dives in HTML export statistics 2018-10-07 17:50:51 +03:00
strndup.h Add SPDX header to core C files 2017-04-29 13:32:55 -07:00
strtod.c Core: introduce new subsurface-string header 2018-05-14 10:13:39 -07:00
subsurface-string.h Core: don't inline rarely used function 2018-05-14 10:13:39 -07:00
subsurfacestartup.c Mobile/filtering: add two preferences for filtering 2018-10-23 22:45:30 +01:00
subsurfacestartup.h Fix ownership issues in preferences code 2017-11-25 07:41:09 -08:00
subsurfacesysinfo.cpp Random whitespace cleanup 2017-05-27 11:07:20 -07:00
subsurfacesysinfo.h Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
taxonomy.c Dive site: use own copy of taxonomy in dive-site-edit widget 2018-10-13 21:41:41 -04:00
taxonomy.h Dive site: use own copy of taxonomy in dive-site-edit widget 2018-10-13 21:41:41 -04:00
time.c Add SPDX header to core C files 2017-04-29 13:32:55 -07:00
uemis-downloader.c Core: replace tripflag by notrip boolean 2018-11-20 08:14:54 -08:00
uemis.c Dive site: use pointer instead of uuid in uemis_helper 2018-10-29 00:09:31 +00:00
uemis.h Dive site: use pointer instead of uuid in uemis_helper 2018-10-29 00:09:31 +00:00
units.h Add 'location_t' data structure 2018-10-21 19:55:09 +03:00
unix.c Make device enumeration use the device transport data 2018-08-27 22:10:38 -07:00
version.c Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
version.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
videoframeextractor.cpp Dive media: Extract thumbnails from videos with ffmpeg 2018-07-28 15:31:25 -07:00
videoframeextractor.h Dive media: Extract thumbnails from videos with ffmpeg 2018-07-28 15:31:25 -07:00
webservice.h Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
windows.c core/windows.c: write logs to the user path 2018-09-03 13:29:03 -07:00
windowtitleupdate.cpp Cleanup: Make WindowsTitleUpdate a global object 2018-07-30 13:55:23 -07:00
windowtitleupdate.h Cleanup: Make WindowsTitleUpdate a global object 2018-07-30 13:55:23 -07:00
worldmap-options.h Add SPDX header to core C files 2017-04-29 13:32:55 -07:00
worldmap-save.c Add 'location_t' data structure 2018-10-21 19:55:09 +03:00
worldmap-save.h Add SPDX header to core C files 2017-04-29 13:32:55 -07:00
xmp_parser.cpp Metadata: rudimentary support for XMP metadataa in MP4-based videos 2018-09-25 14:59:14 -07:00
xmp_parser.h Metadata: rudimentary support for XMP metadataa in MP4-based videos 2018-09-25 14:59:14 -07:00