.. fixup ride mode, interval hover crash/bugs
.. fixup interval compare mode
.. fixup rangemode
NOTE: Compare date ranges is still broken that
will be fixed in part 3.
.. When interval tree is rebuilt it can cause an issue in the
ride editor when clearing the selection model.
.. still trying to get to the botton of a SEGV on Mac.
.. now can drag and drop any date range onto the
home view compare pane to compatre different
seasons, and even across athletes.
.. we setup the metrics and measures in the context
so the charts don't have to, but we still need to
reference the source context for bests and ridefilecache
data
NOTE: We need a mechanism for 'locking' source tabs/athletes
when they are part of a compare to avoid crashing when
a context is deleted whilst we are comparing
NOTE: We till need a way to remove entries from the compare
pane, possibly call it when an athlete is closed too
(see note above).
The final part (and one of the reasons) for the mainwindow
refactoring -- we now support tabbed athletes rather than
having a new mainwindow for each athlete opened.
Context is saved/restored and there are new functions for
opening and closing tabs and windows of tabs.
The tabbar itself is fugly -- the next few days will spend
some time looking at making it prettier on Linux/Win and
more native on Mac (see MMTabBar).
Split the views in MainWindow into separate classes;
* Tab is a collection of the 4 main views
* TabView is a base class for all of the 4 view types
* {Analysis,Train,Diary,Home}View are all derived from
TabView and deal with specifics of those views (e.g.
Diary/Home worry about date ranges).
We should be ready to move to tabbed athletes soon.
There are a few nits left for this part of the refactor
that will need to be resolved in some fixups over the
next few days;
* tile mode segment selector has wrong segment selected
when the view is in tile mode.
* Minimum height/width of MainWindow is large for some
reason
* the Train view controls (play, ffwd etc) have nowhere
to go at present -- need to fix that !!!
* When you resize the mainwindow width the sidebars expand
and should remain a fixed width
* not sure if it will build on Windows or Mac!