subsurface/profile-widget
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
..
animationfunctions.cpp profile: remove unused animation functions 2021-12-17 11:54:23 -08:00
animationfunctions.h profile: remove unused animation functions 2021-12-17 11:54:23 -08:00
CMakeLists.txt profile: cache pixmaps for dive event items 2021-12-17 11:54:23 -08:00
divecartesianaxis.cpp profile: implement panning of profile 2022-09-03 13:51:00 -07:00
divecartesianaxis.h profile: implement panning of profile 2022-09-03 13:51:00 -07:00
diveeventitem.cpp core: move gasname() to struct gasmix 2024-08-13 19:28:30 +02:00
diveeventitem.h core: turn event-list of divecomputer into std::vector<> 2024-08-13 19:28:30 +02:00
divehandler.cpp Planner: Improve Gas Handling in CCR Mode. 2024-08-26 12:36:31 +12:00
divehandler.h Planner: Improve Gas Handling in CCR Mode. 2024-08-26 12:36:31 +12:00
divelineitem.cpp Add SPDX header to profile widgets 2017-04-29 13:32:55 -07:00
divelineitem.h Add SPDX header to profile widgets 2017-04-29 13:32:55 -07:00
divepercentageitem.cpp core: turn event-list of divecomputer into std::vector<> 2024-08-13 19:28:30 +02:00
divepercentageitem.h cleanup: remove unused argument and private member 2022-03-12 08:28:32 -08:00
divepixmapcache.cpp Replace remaining qDebug()s by report_info() 2024-04-23 07:47:11 +07:00
divepixmapcache.h profile: cache pixmaps for dive event items 2021-12-17 11:54:23 -08:00
divepixmapitem.cpp profile: move picture removal from DivePictureItem to ProfileWidget2 2020-12-19 20:19:51 +01:00
divepixmapitem.h profile: move picture removal from DivePictureItem to ProfileWidget2 2020-12-19 20:19:51 +01:00
diveprofileitem.cpp Planner: Improve Gas Handling in CCR Mode. 2024-08-26 12:36:31 +12:00
diveprofileitem.h Profile: Add Gas Description to Disambiguate. 2024-05-31 22:50:09 +02:00
diverectitem.cpp Add SPDX header to profile widgets 2017-04-29 13:32:55 -07:00
diverectitem.h Add SPDX header to profile widgets 2017-04-29 13:32:55 -07:00
divetextitem.cpp profile: improve calculation of the right border 2021-12-17 11:54:23 -08:00
divetextitem.h profile: improve calculation of the right border 2021-12-17 11:54:23 -08:00
divetooltipitem.cpp profile: C++-ify plot_info 2024-08-13 19:28:30 +02:00
divetooltipitem.h Desktop: Add a Button to Hide the Infobox in the Dive Profile. 2023-06-25 14:40:23 +02:00
profilescene.cpp core: move get_dive_dc() to struct dive 2024-08-13 19:28:30 +02:00
profilescene.h profile: recalculate profile info when switching from empty state 2022-10-30 15:02:36 -07:00
profilewidget2.cpp Planner: Improve Gas Handling in CCR Mode. 2024-08-26 12:36:31 +12:00
profilewidget2.h Planner: Improve Gas Handling in CCR Mode. 2024-08-26 12:36:31 +12:00
qmlprofile.cpp core: move number_of_divecomputers to struct dive 2024-08-13 19:28:30 +02:00
qmlprofile.h mobile: flip through dive computers on mobile 2022-10-01 18:47:16 +02:00
ruleritem.cpp profile: C++-ify plot_info 2024-08-13 19:28:30 +02:00
ruleritem.h profile: only keep pointer to plot_info in ruler objects 2022-03-13 15:08:01 -07:00
tankitem.cpp core: move gasname() to struct gasmix 2024-08-13 19:28:30 +02:00
tankitem.h profile: remove last dc_number access from profile code 2022-04-03 08:29:05 -07:00