subsurface/tests
Michael Keller 2d8e343221 Planner: Improve Gas Handling in CCR Mode.
This has become a bit of a catch-all overhaul of a large portion of the
planner - I started out wanting to improve the CCR mode, but then as I
started pulling all the other threads that needed addressing started to
come with it.

Improve how the gas selection is handled when planning dives in CCR
mode, by making the type (OC / CCR) of segments dependent on the gas use
type that was set for the selected gas.
Add a preference to allow the user to chose to use OC gases as diluent,
in a similar fashion to the original implementation.
Hide gases that cannot be used in the currently selected dive mode in
all drop downs.
Include usage type in gas names if this is needed.
Hide columns and disable elements in the 'Dive planner points' table if
they can they can not be edited in the curently selected dive mode.
Visually identify gases and usage types that are not appropriate for the
currently selected dive mode.
Move the 'Dive mode' selection to the top of the planner view, to
accommodate the fact that this is a property of the dive and not a
planner setting.
Show a warning instead of the dive plan if the plan contains gases that
are not usable in the selected dive mode.
Fix the data entry for the setpoint in the 'Dive planner points' table.
Fix problems with enabling / disabling planner settings when switching
between dive modes.
Refactor some names to make them more appropriate for their current
usage.

One point that is still open is to hide gas usage graphs in the planner
profile if the gas isn't used for OC, as there is no way to meaningfully
interpolate such usage.

Signed-off-by: Michael Keller <github@ike.ch>
2024-08-26 12:36:31 +12:00
..
.gitignore tests: add .gitignore to ignore qmlc files 2018-07-12 17:12:56 +02:00
CMakeLists.txt Add tests for formatDiveGasString 2023-10-18 21:34:56 +13:00
testAirPressure.cpp core: remove get_dive() function 2024-08-13 19:28:30 +02:00
testAirPressure.h Convert the atmospheric pressure in the Information Tab to an editable field 2019-05-15 07:37:14 -07:00
testdivesiteduplication.cpp preferences: use std::string in struct preferences 2024-08-13 19:28:30 +02:00
testdivesiteduplication.h Whitespace cleanup tests 2018-07-26 16:32:51 +03:00
testformatDiveGasString.cpp core: move get_or_create_cylinder() to struct dive 2024-08-13 19:28:30 +02:00
testformatDiveGasString.h Add another test for formatDiveGasString 2023-10-18 21:34:56 +13:00
testgitstorage.cpp core: remove get_dive() function 2024-08-13 19:28:30 +02:00
testgitstorage.h testing/git-storage: fairly fundamental rewrite of the storage test 2020-04-15 07:58:10 -07:00
testgpscoords.cpp Whitespace cleanup tests 2018-07-26 16:32:51 +03:00
testgpscoords.h Whitespace cleanup tests 2018-07-26 16:32:51 +03:00
testhelper.cpp import: turn C-string in device_data_t into std::strings 2024-08-13 19:28:30 +02:00
testhelper.h Bluetooth: add helper to separate BT name and address 2018-10-12 08:22:44 -07:00
testmerge.cpp core: move process_import_dives() and related functions to divelog 2024-08-13 19:28:30 +02:00
testmerge.h Whitespace cleanup tests 2018-07-26 16:32:51 +03:00
testparse.cpp parser: keep divelist sorted 2024-08-13 19:28:30 +02:00
testparse.h Test case for multicylinder support on CSV import 2020-05-26 11:33:10 -07:00
testparseperformance.cpp preferences: use std::string in struct preferences 2024-08-13 19:28:30 +02:00
testparseperformance.h Add performance test case 2018-08-31 06:33:46 -07:00
testpicture.cpp core: remove get_dive() function 2024-08-13 19:28:30 +02:00
testpicture.h Whitespace cleanup tests 2018-07-26 16:32:51 +03:00
testplan.cpp core: move get_or_create_cylinder() to struct dive 2024-08-13 19:28:30 +02:00
testplan.h Fix invalid bailout gas choice when planning a CCR dive. 2023-02-17 10:49:24 +01:00
testplannershared.cpp Cleanup: rename plannerShared to PlannerShared 2020-02-04 02:17:52 +01:00
testplannershared.h backend-shared: remove asc/desc functions 2020-01-20 15:49:02 -08:00
testprofile.cpp parser: keep divelist sorted 2024-08-13 19:28:30 +02:00
testprofile.h cloudstorage: adapt tests 2021-04-19 12:51:01 -07:00
testqml.cpp tests: deactivate testQML 2019-12-29 12:32:02 -08:00
testqml.h tests: change testqml to allow direct register of C++ objects 2018-09-11 17:22:58 -07:00
testqPrefCloudStorage.cpp preferences: use std::string in struct preferences 2024-08-13 19:28:30 +02:00
testqPrefCloudStorage.h tests: add signal test to call testqPref*cpp 2018-09-11 17:25:00 -07:00
testqPrefDisplay.cpp preferences: use std::string in struct preferences 2024-08-13 19:28:30 +02:00
testqPrefDisplay.h tests: add signal test to call testqPref*cpp 2018-09-11 17:25:00 -07:00
testqPrefDiveComputer.cpp preferences: use std::string in struct preferences 2024-08-13 19:28:30 +02:00
testqPrefDiveComputer.h tests: add signal test to call testqPref*cpp 2018-09-11 17:25:00 -07:00
testqPrefDivePlanner.cpp tests: correct testqPref*.cpp to use static qPref* functions. 2019-12-05 11:48:26 -08:00
testqPrefDivePlanner.h tests: add signal test to call testqPref*cpp 2018-09-11 17:25:00 -07:00
testqPrefEquipment.cpp preferences: use std::string in struct preferences 2024-08-13 19:28:30 +02:00
testqPrefEquipment.h Preferences UI: create new equipment tab 2019-12-25 02:57:42 +09:00
testqPrefGeneral.cpp Preferences UI: add dive log tab 2019-12-25 02:57:42 +09:00
testqPrefGeneral.h tests: add signal test to call testqPref*cpp 2018-09-11 17:25:00 -07:00
testqPrefGeocoding.cpp tests: correct testqPref*.cpp to use static qPref* functions. 2019-12-05 11:48:26 -08:00
testqPrefGeocoding.h tests: add signal test to call testqPref*cpp 2018-09-11 17:25:00 -07:00
testqPrefLanguage.cpp preferences: use std::string in struct preferences 2024-08-13 19:28:30 +02:00
testqPrefLanguage.h tests: add signal test to call testqPref*cpp 2018-09-11 17:25:00 -07:00
testqPrefLog.cpp preferences: use std::string in struct preferences 2024-08-13 19:28:30 +02:00
testqPrefLog.h Preferences: add some tests 2019-12-25 02:57:42 +09:00
testqPrefMedia.cpp preferences: use std::string in struct preferences 2024-08-13 19:28:30 +02:00
testqPrefMedia.h Preferences: Create a test program for qPrefMedia 2019-12-25 02:57:42 +09:00
testqPrefPartialPressureGas.cpp tests: correct testqPref*.cpp to use static qPref* functions. 2019-12-05 11:48:26 -08:00
testqPrefPartialPressureGas.h tests: add signal test to call testqPref*cpp 2018-09-11 17:25:00 -07:00
testqPrefProxy.cpp preferences: use std::string in struct preferences 2024-08-13 19:28:30 +02:00
testqPrefProxy.h tests: add signal test to call testqPref*cpp 2018-09-11 17:25:00 -07:00
testqPrefTechnicalDetails.cpp Desktop: Add a Button to Hide the Infobox in the Dive Profile. 2023-06-25 14:40:23 +02:00
testqPrefTechnicalDetails.h tests: add signal test to call testqPref*cpp 2018-09-11 17:25:00 -07:00
testqPrefUnits.cpp core/settings:: remove string functions for units 2020-01-20 09:55:26 -08:00
testqPrefUnits.h tests: add signal test to call testqPref*cpp 2018-09-11 17:25:00 -07:00
testqPrefUpdateManager.cpp preferences: use std::string in struct preferences 2024-08-13 19:28:30 +02:00
testqPrefUpdateManager.h tests: add signal test to call testqPref*cpp 2018-09-11 17:25:00 -07:00
testrenumber.cpp core: remove get_dive() function 2024-08-13 19:28:30 +02:00
testrenumber.h Whitespace cleanup tests 2018-07-26 16:32:51 +03:00
testtaglist.cpp core: port tag-list to C++ 2024-08-13 19:28:30 +02:00
testtaglist.h core: port tag-list to C++ 2024-08-13 19:28:30 +02:00
testunitconversion.cpp core: move floating point functions to own header file 2022-08-30 22:34:38 +02:00
testunitconversion.h Whitespace cleanup tests 2018-07-26 16:32:51 +03:00
tst_qPrefCloudStorage.qml cloudstorage: some cleanup of cloud url handling 2021-04-19 12:51:01 -07:00
tst_qPrefDisplay.qml desktop: remove user survey 2020-04-19 14:27:54 -07:00
tst_qPrefDiveComputer.qml Tests: remove testing of download_mode 2018-10-15 19:46:18 +02:00
tst_qPrefDivePlanner.qml tests: add signal test to call tst_qPref*qml 2018-09-11 17:25:00 -07:00
tst_qPrefGeneral.qml tests: add signal test to call tst_qPref*qml 2018-09-11 17:25:00 -07:00
tst_qPrefGeocoding.qml tests: add signal test to call tst_qPref*qml 2018-09-11 17:25:00 -07:00
tst_qPrefLanguage.qml tests: add signal test to call tst_qPref*qml 2018-09-11 17:25:00 -07:00
tst_qPrefPartialPressureGas.qml tests: add signal test to call tst_qPref*qml 2018-09-11 17:25:00 -07:00
tst_qPrefProxy.qml tests: add signal test to call tst_qPref*qml 2018-09-11 17:25:00 -07:00
tst_qPrefTechnicalDetails.qml Planner: Improve Gas Handling in CCR Mode. 2024-08-26 12:36:31 +12:00
tst_qPrefUnits.qml tests: add signal test to call tst_qPref*qml 2018-09-11 17:25:00 -07:00
tst_qPrefUpdateManager.qml tests: add signal test to call tst_qPref*qml 2018-09-11 17:25:00 -07:00