As a personal habit I tend to use the C pre-processor to
comment out code blocks I don't want to remove. This is in
case the code will be required in the future.
I think it is now safe to say the code commented out is not
required -- most of it is legacy and marks the transition from
earlier designs or legacy code.
I've done this in one big commit since in theory it has no
functional change, and in future can look in this commit for any
code we may want to reinstate.
- incorrect RegEx to read some CRS files
- all files were assumed to be metric - (UNITS = ENGLISH) now converts
- scaling adjusted to not clip the top when some graphs were longer
Upgrade to QWT 6.0.1, but still uses a locally patched copy
since support for 8 axes has not been included, despite it
being a relatively simple patch.
Fixes#634.
Fixes#567.
As a precursor to more sophisticated workout
creation and config, the ergfile format and
plot now supports named intervals.
This is so we can identify blocks of the workout
and reuse them by name (rather than having to
select a section, which should also be supported).
The TimeScaleDraw declaration and definition in
ErgPlot.h clashes (silently) with the definition
in PerfPlot.h.
This caused a SEGV at runtime, but only with some
build tools (but notably Xcode on Lion). Not at
all sure how this has not arisen before.
ErgFilePlot now declares as HourTimeScaleDraw to
avoid the clash.
If no workout is selected (and ERGO/SLOPE mode are also not
selected) then the plot does not extend once you workout
beyond the first hour.
This was due to an uninitialised variable (ergFile) this patch
fixes that.
Fixes#515.
The original ErgFilePlot code used local static variables
to bridge between the selected ErgFile and the Qwt data
handlers.
This was not an issue when we only allowed one chart of this
type to be available at once. But now, with a more configurable
layout it is possible to have multiple.
The currently selected ErgFile can now be referenced from
MainWindow in the same manner as the current RideFile can.
This patch introduces no functional change for users.
The training view has a number of improvements, most
notable of which is the workout plot now plots the
telemetry as you ride. This enables you to view
your performance against the workout as you ride.
In developing and testing this I found and fixed a
number of other minor issues;
* The workout plot didn't have any axes
* The workout plot title didn't reflect the workout selected
* The workout plot markers didn't honour preferences
* Values didn't reset on stop/start of workout
* The rolling 30 second power plot in realtime was broken
* Lap numbers were not available for display
In addition, some minor changes were made;
* Save workout is no longer optional - it always saves
* The control buttons/margins did not resize nicely
* The workout plot uses colour to distinguish between
workouts that are time or distance based.
* A new default train layout for new users to avoid
having to muck about with layouts
* Removed the race servers since they are not used
and steal screen estate. Will re-introduce when
multi-rider or internet racing is implemented.
I have also added a few workout files into the
test/workouts directory, we should think about how
we can distribute these and allow users to share and
contribute them in the future.
Fixes#493.
If you select an erg file then choose ergo/slope
mode in train view the workout plot will crash
when the sidebar is hidden / window resized because
the workout plot is still referencing an ergfile
that has been deleted.
This patch ensures the workout plot is notified that
NO ergfile is selected thus clearing the plot and
also ensuring no reference to the deleted ergfile
remains.
When you select an ergfile the axis for the workout
plot is not set, this often results in a plot with
large amounts of white space to the right of the plot.
Update to a number of plots to align with
the flatter, less cluttered chart style
used elsewhere (Ride, Histogram, CP et al).
Changes made are purely cosmetic and apply
to:
* Aerolab
* HrPw
* Realtime, ErgFile
* Weekly Summary
The training view (aka realtime) is now configurable
allowing users to drag and drop appropriate charts
and dials onto the main view.
The controls for this view are static and comprise the
old controls with start/stop buttons, device selections etc.
I have removed deprecated code too, the following are removed
from the repository;
* ViewSelection
* RealtimeWindow
* TrainWindow
* TrainTabs
Fixes#290.