subsurface/core
Berthold Stoeger 145f70aab5 Undo: implement split-out of dive computer
Allow splitting out a dive computer into a distinct dive. This
is realized by generating a base class from SplitDive.

This turned out to be more cumbersome than expected: we don't
know a-priori which of the split dives will come first. Since
the undo-command saves the indices where the dives will be insert,
these have to be calculated. This is an premature optimization,
which makes more pain than necessary. Let's remove it and
simply determine the insertion index when executing the command.

Original code by Linus Torvalds <torvalds@linux-foundation.org>.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-04-04 09:38:12 -07:00
..
settings Cleanup: don't instantiate a QPref object 2019-04-04 09:29:45 -07:00
subsurface-qt Cleanup: provide printGPSCoords in C and C++ versions 2019-03-27 13:58:15 +01:00
android.cpp Make device enumeration use the device transport data 2018-08-27 22:10:38 -07:00
btdiscovery.cpp Bluetooth: don't free a resource created by new 2019-03-17 11:23:49 -07:00
btdiscovery.h Mobile: only show dive computers in the Bluetooth connection list 2019-02-14 09:05:58 -08: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 Export profile data 2019-04-04 09:33:56 -07:00
cochran.c Core: cast to the correct type 2019-03-17 15:11:31 -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
configuredivecomputer.cpp ConfigureDiveComputer::saveXMLBackup(): factor out writing gas details 2019-03-27 07:36:33 -07:00
configuredivecomputer.h Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
configuredivecomputerthreads.cpp Misc: replace some FIXME comments 2019-03-19 09:56:48 -07:00
configuredivecomputerthreads.h Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
connectionlistmodel.cpp slightly optimize ConnectionListModel 2019-03-27 07:36:33 -07:00
connectionlistmodel.h slightly optimize ConnectionListModel 2019-03-27 07:36:33 -07:00
datatrak.c Cleanup: remove bit field demux in datatrak.c 2019-03-18 15:59:27 -07:00
datatrak.h Cleanup: const-ify functions taking dives and divecomputers 2018-08-23 14:41:01 -07:00
deco.c Core: cast before multiplication to avoid potential overflow 2019-03-17 15:11:31 -07: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 Undo: implement split-out of dive computer 2019-04-04 09:38:12 -07:00
dive.h Undo: implement split-out of dive computer 2019-04-04 09:38:12 -07: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 Core: remove variable name conflict 2019-03-17 15:11:31 -07:00
divelist.h Core: remove variable name conflict 2019-03-17 15:11:31 -07:00
divelogexportlogic.cpp avoid duplicate and inconsistent applying of QDir::separator() 2019-03-27 07:36:33 -07:00
divelogexportlogic.h avoid duplicate and inconsistent applying of QDir::separator() 2019-03-27 07:36:33 -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 Cleanup: move get_divesite_idx() to divesite.c 2019-02-28 07:27:10 -08:00
divesite.h Cleanup: move get_divesite_idx() to divesite.c 2019-02-28 07:27:10 -08: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 Core: simplify ConnectionListModel 2019-03-20 09:07:17 -07:00
downloadfromdcthread.h Cleanup: remove DownloadFromDCThread::tripTable 2019-02-28 15:31:48 -08: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: add trip_table parameter to parsing functions 2019-01-09 20:58:04 -08:00
file.h Cleanup: put all function declarations in file.h in extern "C" 2019-02-28 07:27:10 -08: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 Core: fix missing argument to report_error 2019-03-17 11:23:49 -07:00
git-access.h prefs: git_local_only is not a preference 2018-09-10 16:26:49 -07:00
gpslocation.cpp Cleanup: provide printGPSCoords in C and C++ versions 2019-03-27 13:58:15 +01:00
gpslocation.h Add 'location_t' data structure 2018-10-21 19:55:09 +03:00
imagedownloader.cpp Core: remove variable name conflict 2019-03-18 19:40:32 -07:00
imagedownloader.h Profile: add "synchronous" mode for picture plotting 2019-02-07 16:06:43 +01:00
import-cobalt.c Parser: add trip_table parameter to parsing functions 2019-01-09 20:58:04 -08:00
import-csv.c Parser: add trip_table parameter to parsing functions 2019-01-09 20:58:04 -08:00
import-csv.h Parser: add trip_table parameter to parsing functions 2019-01-09 20:58:04 -08:00
import-divinglog.c Parser: add trip_table parameter to parsing functions 2019-01-09 20:58:04 -08:00
import-shearwater.c Parser: add trip_table parameter to parsing functions 2019-01-09 20:58:04 -08:00
import-suunto.c Parser: add trip_table parameter to parsing functions 2019-01-09 20:58:04 -08:00
ios.cpp Make device enumeration use the device transport data 2018-08-27 22:10:38 -07:00
libdivecomputer.c libdivecomputer: small wording change in a warning 2019-01-22 11:01:40 +13:00
libdivecomputer.h Cleanup: remove outdated comment in libdivecomputer.h 2019-02-28 15:31:48 -08:00
liquivision.c Parser: add trip_table parameter to parsing functions 2019-01-09 20:58:04 -08:00
load-git.c Cleanup: provide printGPSCoords in C and C++ versions 2019-03-27 13:58:15 +01:00
macos.c macOS: always list 'FTDI' as a serial connection 2018-09-24 18:51:21 +02:00
membuffer.c Cleanup: unconstify string argument to add_to_string() 2019-03-27 13:58:15 +01:00
membuffer.h Cleanup: unconstify string argument to add_to_string() 2019-03-27 13:58:15 +01: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: Rename functions to more generic names 2019-01-09 20:58:04 -08:00
parse-xml.c Initial support for Mares import 2019-04-02 07:47:11 -07:00
parse.c Parser: add trip_table parameter to parsing functions 2019-01-09 20:58:04 -08:00
parse.h Parser: add trip_table parameter to parsing functions 2019-01-09 20:58:04 -08:00
planner.c Make sure surface air is not considered a deco gas 2019-03-29 06:51:12 -07:00
planner.h Cleanup: pass gasmix by value 2018-08-23 05:16:38 -07:00
plannernotes.c Show a bit of surface degassing in the planner 2019-03-29 06:51:12 -07:00
pref.h Add UI element for final surface segment in planner 2019-03-29 06:51:12 -07:00
profile.c Show a bit of surface degassing in the planner 2019-03-29 06:51:12 -07:00
profile.h Include surface GF in infobox 2019-02-05 14:18:14 +01:00
qt-ble.cpp BLE debug: make things less verbose 2019-01-22 11:14:03 +13: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 Cleanup: provide printGPSCoords in C and C++ versions 2019-03-27 13:58:15 +01:00
qthelper.h Cleanup: provide printGPSCoords in C and C++ versions 2019-03-27 13:58:15 +01:00
qtserialbluetooth.cpp drop support for Qt 5.4 and before 2019-03-27 07:36:33 -07:00
save-git.c Cleanup: remove deletion of webservice dive sites 2019-02-28 07:27:10 -08:00
save-html.c Core: keep trips in table(s) 2019-01-09 20:58:04 -08:00
save-html.h Add SPDX header to core C files 2017-04-29 13:32:55 -07:00
save-profiledata.c Export profile data 2019-04-04 09:33:56 -07:00
save-profiledata.h Export profile data 2019-04-04 09:33:56 -07:00
save-xml.c Cleanup: remove deletion of webservice dive sites 2019-02-28 07:27:10 -08:00
serial_ftdi.c Fix Cressi interface ftdi opening bug 2018-11-18 20:01:28 +02:00
sha1.c
sha1.h
ssrf.h mobile: add timer to measure startup. 2018-05-30 21:47:07 -07:00
statistics.c Add backend support for statistics by depth and temperature 2019-03-12 00:53:51 +01:00
statistics.h Add backend support for statistics by depth and temperature 2019-03-12 00:53:51 +01: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 Add UI element for final surface segment in planner 2019-03-29 06:51:12 -07:00
subsurfacestartup.h Fix ownership issues in preferences code 2017-11-25 07:41:09 -08:00
subsurfacesysinfo.cpp drop support for Qt 5.4 and before 2019-03-27 07:36:33 -07:00
subsurfacesysinfo.h drop support for Qt 5.4 and before 2019-03-27 07:36:33 -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: remove variable name conflict 2019-03-17 15:11:31 -07: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 Don't allow empty username for git 2019-01-16 02:38:30 +01:00
version.c Add SPDX header to remaining core files 2017-04-29 13:32:55 -07:00
version.h
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 windows.c: fix wrong usage of wcslen() for utf8 conversation 2018-12-29 18:27:21 +01: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 Desktop: fix yet another variable name conflict 2019-03-18 19:40:32 -07:00
xmp_parser.h Metadata: rudimentary support for XMP metadataa in MP4-based videos 2018-09-25 14:59:14 -07:00