This fixes issues with date range editing in the Metrics controls
and provides support for Season load planning (under development).
Creating and selecting seasons is largely managed within the
Metrics tool. This has not been changed with this patch. Athlete
seasons are now managed as a member of the MainWindow class (although
this will move to an Athlete/Cyclist class when MainWindow is
refactored).
A Season identifier (UUID) has been introduced to enable Seasons to
be referenced independently of their name or date ranges. The LTM
tool now keeps track of changes to Seasons (when new seasons are
created, changed, deleted). Additionally, the Season XML file now
supports storage of a Season Load Plan.
The previous commit enabling tile 'bumping' as
you move them around proved impractical with
charts that largely filled the screen.
This patch replaces this approach (original code
is retained though) by using a 'cursor' to show
where charts will be dropped / moved to and moving
or dropping to this position.
This means the layout code is complete, except for
potentially adding support for multiple layouts (e.g.
have saved layouts for different purposes like
LTM charts for last 6 months or 28 days or an
agenda view that shows past week next week calendar).
More work to support moving tiles on HomeWindow. This update
adds tile movement and 'pushing' other tiles out the way as
you move them around.
Tile ordering/positioning is still todo, but this introduces
the visual feedback during a move for the user.