Gcc 4.5 considers explicit calls to object constructors to
be errors. This patch corrects these to enable building using
this current release of the GNU C++ compiler. This is required
to support building on Windows with the current Qt 4.6 sdk
since it includes gcc 4.5.
It is worth noting that this relese of the GNU compiler also
spots two or three uninitialised variables too, I will correct
these at a later date.
The zone ranges configuration page caused a SEGV when deleting the
last zone. On inspection the zone configuration needed to be
revised since the UI was confusing and didn't allow fine grained
user editing (relying upon manual editing of the power.zones file).
The UI has been redesigned and fine grained editing of ranges, zones
and default zones is now supported.
The Zones class has been slightly modified to support the new UI and
existing members are better commented. In addition, the read/write
functions have been updated to always include the DEFAULTS section and
to set defaults according to manual zone setups when it is not present
(legacy support).
There are now 10 TimeInZone metrics to match the maximum of 10 zones
the user can define.
Fixes#78.
Fixes#34.
A new config pane for defining color preferences for chart
curves, shading, background and grid lines et al. Default values
echo the current hard-coded values.
User configurable data entry for recording information about
each workout.
FEATURES:
* Config UI for defining tabs and fields to maintain
* Config UI for defining keywords and colors
* Data maintenance UI on RideSummaryWindow
* "Special" Metadata fields are related to current variables
* Read/Write new fields/metric overrides via GcRideFile
* Metadata extraction in WKO files
* Calendar uses keyword and color config
* Numeric metadata is plottable on the Metric charts
*Metric refresh has been optimised
When setting up the CP for a new cyclist the code for inserting
ranges called setCP with an unitialised range number variable. This
fix sets it to 0 for the very first range.
Also fixed the indentation of the code around the fix to make it
easier to follow.
The commit replaces the erroneous commit a3ae0ee. I thought the problem with
the zones file that motivated that commit was that some of the zones were of
length zero. In fact, the problem was just that the CP is zero in the first
zone range, and a CP of zero leads to a RI of inf.
Just attribute all earlier rides to the first zone. We should do better in
the future, maybe by complaining to the user in a dialog, but for now,
not crashing definitely seems better than crashing.
Rob Carlsen suggested that the htmlSummary should use the same colors as in
the ride list. I agree, but they're a little to light, so bump the saturation
a bit. While we're at it, go ahead and do the zones list, too.