.. this time lets just set the contents margins before we
show. This is kinda ok, and avoids having to follow every
path from lazy load to selection- since we always get a
show event at the end.
.. switch train view perspective when connection is established
but before we start.
if a media file is selected we choose a video perspective
otherwise we look to see if the mode is erg or slope and
select the perspective that meets that.
by choosing to switch on connect we don't jump around too
soon (especially if editing) but does mean that those
folks that like to autoconnect to devices will have to
select their view manually.
Fixes#4104
.. add configuration of switching mode for train view perspectives
the next commit will add the code that switches when a
workout or media is selected.
.. improved performance when switching between tab/tiled mode
which is especially important in train view (and also when
resizing or entering/exiting full screen mode there).
.. removed the title at the top of a chart, when the same info
is already in the name of a tab, saving some real estate.
.. Dial window stop setting fonts via pixel size (its horribly
slow on Qt with hi-dpi displays
.. some other perspective fixups for performance and also added
some debug for stack tracing (disabled in the commit).
.. the view (e.g. trends view) should set its tab/tile status on
the basis of the current perspective.
this fixes an issue where toggle style got out of whack with
what was on screen.
.. train view resize performance was terrible because each time
a telemetry item was resized it would recalculate the right
pixel size for the font.
this was only a problem in hidpi displays, but these are
becoming more and more popular.
.. standard colors now belong to groups:
* Chart - chart decorations e.g. grid lines
* Data - data series e.g. Power
* Gui - Gui elements e.g. toolbar background
.. when selecting colors in user and trends charts we
now filter out any colors that are not data related
to make it easier for users to find a standard color.
.. when enter/leave full screen mode the view sidebar is
hidden and shown to increase screen real estate (and
especially useful in train view).
.. since the user may want to show/hide for other reasons
the view menu now also has an option to show/hide the
view sidebar selector too.
.. the renumbering of columns removed empty columns. This was not
desirable since in some instances where spanning tiles are used
the user may have deliberately done this.
.. thanks to Alan Benstead at the forums for an example chart to
test this fix against.
.. when a spanning tile moves the layout needs to restart to
take into account its new position (since it will displace
other tiles).
.. to enable us to restart the layout we needed to refactor
the updateGeometry() method to separate out the creation
of animations from layout changes (because an item may be
moved several times as spanners take precedence).
.. tile column numbers also need to be renumbered from 0 when
arranging since it is possible to get out of sync as items
are dragged around.
.. this refactor should also make it slightly easier to fix
any other layout tweaks (now the previous issues have been
resolved).