subsurface/profile-widget
Berthold Stoeger 177df72d33 profile: unify formating of axis labels
Instead of a host of virtual functions, let the base class
(DiveCartesianAxis) do the formatting of the axis labels.
To do so, it needs to know how to convert the internal
representation (e.g. mm) into the displayed value (e.g. feet).
Moreover, this transformation has to be adapted when changing
the locale-setting, therefore do it for every plot() call.

The transformation itself cannot be a simple linear translation,
because we have non-absolute display units, namely °C and °F.
Thankfully affine transformations are enough though.

Only one custom formatter remains: the time axis. It might
be a good idea to remove the virtual function and do this
via a flag.

This is all done not so much for code simplification, but
because for a general layout of the axis labels, the
axis has to understand the values of the labels and not
only handle them as opaque texts.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2021-12-17 11:54:23 -08:00
..
animationfunctions.cpp Profile: add speed parameter to Animation::* functions 2019-07-12 09:59:28 +02:00
animationfunctions.h Profile: add speed parameter to Animation::* functions 2019-07-12 09:59:28 +02:00
CMakeLists.txt profile: cache pixmaps for dive event items 2021-12-17 11:54:23 -08:00
divecartesianaxis.cpp profile: unify formating of axis labels 2021-12-17 11:54:23 -08:00
divecartesianaxis.h profile: unify formating of axis labels 2021-12-17 11:54:23 -08:00
diveeventitem.cpp profile: indicate bookmark by pole of flag 2021-12-17 11:54:23 -08:00
diveeventitem.h profile: save depth of event 2021-12-17 11:54:23 -08:00
divehandler.cpp profile: move axes to ProfileScene 2021-12-17 11:54:23 -08:00
divehandler.h profile: pass dive to DiveHandler 2021-01-10 15:57:39 -08: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 profile: reimplement DivePercentageItem 2021-12-17 11:54:23 -08:00
divepercentageitem.h profile: reimplement DivePercentageItem 2021-12-17 11:54:23 -08:00
divepixmapcache.cpp profile: remove special iOS DPR handling for event icons 2021-12-17 11:54:23 -08: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 profile: reimplement DivePercentageItem 2021-12-17 11:54:23 -08:00
diveprofileitem.h profile: reimplement DivePercentageItem 2021-12-17 11:54:23 -08: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: calculate maximum label sizes on construction 2021-12-17 11:54:23 -08:00
divetextitem.h profile: calculate maximum label sizes on construction 2021-12-17 11:54:23 -08:00
divetooltipitem.cpp cleanup: replace membuffer by membufferpp in C-code 2021-07-23 11:22:43 -07:00
divetooltipitem.h cleanup: remove function static variables 2021-07-20 09:27:35 -07:00
profilescene.cpp profile: unify formating of axis labels 2021-12-17 11:54:23 -08:00
profilescene.h profile: always update axis-positions when plotting dive 2021-12-17 11:54:23 -08:00
profilewidget2.cpp profile: set minimum/maximum of axes with a single call 2021-12-17 11:54:23 -08:00
profilewidget2.h profile: rename printFontScale to dpr (device pixel ratio) 2021-12-17 11:54:23 -08:00
qmlprofile.cpp profile: don't render mobile profile in printmode 2021-12-17 11:54:23 -08:00
qmlprofile.h profile: merge plotDive() into draw() call 2021-12-17 11:54:23 -08:00
ruleritem.cpp profile: pass dive to RulerItem 2021-01-10 15:57:39 -08:00
ruleritem.h profile: pass dive to RulerItem 2021-01-10 15:57:39 -08:00
tankitem.cpp profile: start with "absolutizing" the profile layout 2021-12-17 11:54:23 -08:00
tankitem.h profile: start with "absolutizing" the profile layout 2021-12-17 11:54:23 -08:00