Commit Graph

979 Commits

Author SHA1 Message Date
Mark Liversedge
fef237f138 PWX Ride file support
Support for Training peaks new .pwx file format. This
is an XML format (and is particularly verbose). Support
has been added to enable interoperability with WKO+ v3,
TrainingPeaks.com and Device Agent.
2010-08-06 19:48:51 +01:00
Justin Knotzke
21572977b4 When DFPM watts were detected, GC was still using fake iBike watts. 2010-08-05 16:08:51 -07:00
Mark Liversedge
9109eb616f Fix crash in AllPlot on Manual Ride
When a manual ride is selected whilst on allplot
it will refresh the plots, but computes invalid
offsets into the ride data. this patch fixes this
crash.

Fixes #128.
2010-08-04 22:19:46 +01:00
Mark Liversedge
de0b28f9dc Fix gcc 4.5 compile errors
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.
2010-08-04 21:35:09 +01:00
Mark Liversedge
02fe34216d Fix lots of SEGV in AllPlot for new cyclist (rideItem is null). 2010-07-30 06:43:54 +01:00
Robert Carlsen
081856bf64 Updating stack zoom control enabling logic. 2010-07-29 21:16:22 -04:00
Robert Carlsen
62d658c929 Disable stack zoom controls when stacked view is disabled. 2010-07-29 02:16:22 -04:00
Mark Liversedge
29069cd63f Fix crash on openRideFile
The recent data processor / ride editor patch added some
post-processing actions after a ride file is opened. The
functions are called without checking for an open ride
failure. This patch fixes that stupid error.
2010-07-29 06:48:06 +01:00
Sean Rhea
0fe01407a2 link to Gareth's devel builds from main site 2010-07-28 19:48:05 -07:00
Mark Liversedge
efd4de62a1 Fix Imperial Show By Distance on AllPlot
The recent patch for allPlot zooming does not display the full plot
properly when the user has selected imperial units and is displaying
by distance (not time). This minor fix corrects this.
2010-07-28 20:23:01 +01:00
Mark Liversedge
2962fce0b7 Scrolling AllPlot and Tooltip
Introduce a span-slider on the normal Ride Plot chart to enable
users to select a range to plot and scroll left and right. The
zoom to interval function now uses this slider rather than setting
a zoom range. Tooltips are now displayed on the normal and stacked
views to assist in reviewing specific data points.

Old style zooming still works as expected, but scrolling at a zoom
level is not yet implemented.

The qxt widget 'QxtSpanSlider' has been placed in the top
level directory (GoldenCheetah/qxt) alongside the qwt widgets to
avoid adding another dependency.

A number of optimizations have also been introduced to speed up
plotting in general. A new color setting for the thumbnail plot
has also been introduced. Refresh of the plot when data is changed
in the editor has been fixed. The zoom scale up/down widgets are
also disabled when in normal mode to avoid the bug highlighted by
Robert Carlsen.

Fixes #122.
2010-07-27 19:46:35 +01:00
Justin Knotzke
8e73d01829 Fixed a small typo in QHttp. 2010-07-26 06:51:29 -07:00
Justin Knotzke
ca24400a0a Merge branch 'origin' 2010-07-25 07:54:29 -04:00
Justin Knotzke
4465d18b4f Twitter image for the Config Dialog page. 2010-07-25 06:59:53 -04:00
Justin Knotzke
3e2468dcc6 Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-07-25 06:57:23 -04:00
Justin Knotzke
e1d69f71e1 Tweet your ride. You can now tweet your ride from GC 2010-07-18 15:15:26 -04:00
Mark Liversedge
1a71a8a41f Fix RideEditor crash on right-click Column
RideEditor::colMapper was not initialised in the
constructor leading to an erroneous delete when
first referenced and a subsequent crash.
2010-07-18 14:12:54 +01:00
Justin Knotzke
1506c41cca Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-07-17 14:45:45 -04:00
Mark Liversedge
cd3bbc4e64 Ride editor and tools
A new tab 'Editor' for manually editing ride file data points and
associated menu options under 'Tools' for fixing spikes, gaps, GPS
errors and adjusting torque values. A revert to saved ride option
is also included to 'undo' all changes.

The ride editor supports undo/redo as well as cut and paste and
"paste special" (to append points or swap columns/overwrite
selected data series). The editor also supports search and will
automatically highlight anomalous data.

When a file is saved, the changes are recorded in a new metadata
special field called "Change History" which can be added as a
Textbox in the metadata config.

The data processors can be run manually or automatically when a
ride is opened - these are configured on the ride data tab in
the config pane.

Significant changes have been introduced in the codebase, the most
significant of which are; a RideFileCommand class for modifying
ride data has been introduced (as a member of RideFile) and the
RideItem class is now a QObject as well as QTreeWidgetItem to
enable signalling. The Ride Editor uses a RideFileTableModel that
can be re-used in other parts of the code. LTMoutliers class has been
introduced in support of anomaly detection in the editor (which
highlights anomalies with a wiggly red line).

Fixes #103.
2010-07-17 14:33:39 +01:00
Justin Knotzke
fc668303da Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-07-06 17:35:20 -04:00
Mark Liversedge
8569f812a6 Fix assert crash in BestIntervalDialog.cpp
Removed redundant assert in BestIntervalDialog.cpp. It is redundant
because it is executed prior to a logic check for the same condition.

The assert check has been shown to be unreliable due to inherent
inaccuracies in float arithmetic and comparisons for example, according
to the IEEE specs 1000.2 - 1000.0 will be stored as 0.200012. This
inherent problem with floats is particularly relevant in this
code since it is dealing with interval durations and recording intervals
which are expressed to a precision of 100th or even 1000th of a second.

Fixes #99.
2010-07-06 14:35:13 +01:00
Justin Knotzke
0b7140161c Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-06-07 06:32:18 -04:00
Mark Liversedge
06e44b8d47 Fix drag slider from Maps tab
When viewing the maps tab it is possible to drag and drop
the slider causing a file import dialog to pop-up and fail.
This patch rejects any drop events where the url is http.

Fixes #97.
2010-06-06 18:43:22 -07:00
Mark Liversedge
51784f64f6 Increase precision of sample data in .GC file format
Three related issues fixes; firstly lat/lon values lose precision when
being read from .tcx files by Qt's QString::toDouble(). This
has been replaced with the stdc strtod() function in TcxParser.

Secondly, when writing to .gc format precision was also lost, this
has been fixed for lat/lon values.

Thirdly, when writing to .gc format precision of seconds was lost,
this is particularly relevant to Powertap files which have a sample
rate of 1.26 seconds.

Fixes #83.
2010-06-06 18:39:26 -07:00
Mark Liversedge
c4f82e19b6 Better Zones Configuration Page
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.
2010-06-06 18:36:50 -07:00
Gareth Coco
7941f0a9bc Add read power from variable ns3:Watts.
TCX files exported from Garmin Connect have power as follows:
<Extensions>
              <ns3:TPX>
                <ns3:Speed>2.236999988555908</ns3:Speed>
                <ns3:Watts>68</ns3:Watts>
              </ns3:TPX>
</Extensions>

Fixed parser to read this as a valid power reading.

Fixes #65
2010-06-06 18:26:59 -07:00
Gareth Coco
d03d538498 Mapping and Latitude/Longitude logic changes
Patch changes the valid latitude/longitdue selection alogrithm.
Ensures that the data points are valid (-90<=Lat<=90, -180<=Long<=180)
Tightens up .WKO file import issues.
Allows for missed GPS data points of 0/0 in Garmin FIT files.
Changes mapping function to not plot invalid lat/long values.

Fixes #75
2010-06-06 18:20:43 -07:00
Justin Knotzke
8741af20ff Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-05-01 16:01:48 -04:00
Mark Liversedge
a0c5669166 Support for Polar SRD file format
A ridefile reader for Polar .srd format files. The code is
largely based upon code from the "s710" project.

Since "s710" is dependant upon GD and a number of deployment tools
and the fact that the code hasn't changed since May 2007 the
workout code has been included directly into the SrdRideFile.h
and SrdRideFile.cpp source files.

2 sample SRD files have been included in the test/rides directory
which were kindly supplied by Ian Charles.
2010-05-01 10:34:19 -07:00
Mark Liversedge
3f4adc2d31 Use Zone Colors on Map
A patch to use the GC zone color scheme (or preferences) when
plotting power on the Map tab.

fixes #82
2010-05-01 10:26:58 -07:00
Mitsukuni Sato
fc7dce1634 japanese translation 2010-05-01 10:22:25 -07:00
Mark Liversedge
803383ba2c Fix StressCalculator SEGV
If no results are returned from metricDB the stress calculator will
SEGV. This will occur when the DBVersion is out of sync with the
metricfactory (and this should not occur).
2010-05-01 10:21:03 -07:00
Mark Liversedge
9ae79db4cb fix SEGV in AllPlot on manual/null rides
fixes #71
2010-05-01 10:19:46 -07:00
Mark Liversedge
74f85f08d5 Show LAT/LON on 3D Plot
Add latitude and longitude to values that can be plotted on the
3D plot model window.

fixes #43
2010-05-01 10:14:34 -07:00
Justin Knotzke
85ee3859e4 Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-04-11 17:42:24 -04:00
Mark Liversedge
a6917a682a Metrics & Maps update for Win32 installer
The new metrics feature requires the SQLITE plugins to be
deployed alongside the binary and the forthcoming Google
Maps patch requires QtWebKit, Phonon, Xml and Xmlpatterns
deployed. Additionally, the terrain view requires the
jpeg image formats deplyed.

This patch updates the win32 NSI script to include these
new dependencies and has been tested for Win 7, Vista and
XP SP3.

fixes #51
2010-04-11 17:37:46 -04:00
Julian Baumgartner
d77c6ed576 added the javascript routine to do mouse overs 2010-04-11 17:22:34 -04:00
Sean Rhea
ac570c415c make sure "current" is initialized
Also, a nit: fix indentation of 1 line in AllPlotWindow.h.
2010-04-11 17:19:33 -04:00
Patrick J. McNerthney
4ca86c441d Enhanced src/src.pro to detect the standard Debian/Ubuntu install set up of qwtplot3d and use that if QWT3D_INSTALL is not defined. 2010-04-11 17:10:46 -04:00
Sean Rhea
fbdd15f218 fix Daniels EqP when Time Riding == 0.0 2010-04-06 21:37:27 -04:00
Sean Rhea
afb9a44fe2 fix ugly formatting 2010-04-06 21:36:58 -04:00
Mark Liversedge
1751d8bf12 Remove update 'flicker' when tab selected
The recent patch to reduce redraws when rides are selected
causes each tab to redraw whenever the tab IS selected. This
patch reduces this by remembering the current ride plotted.

It also fixes the "double draw" in GoogleMapControl and AllPlot
when selected for the first time.
2010-04-04 17:28:07 -04:00
Justin Knotzke
fdb7d124d9 Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-04-02 09:53:47 -04:00
Sean Rhea
07623bf94f fix metrics for missing data
...by avoiding divide-by-zero errors.
2010-04-02 09:45:19 -04:00
Justin Knotzke
906b6f0a18 Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-04-02 06:39:55 -04:00
Mark Liversedge
744294dd53 fix crash for man .gc file import
checks for empty datapoints and also checks for overrides for time
and distance.
2010-04-01 10:29:14 -04:00
Mark Liversedge
38df7c28bd User Configurable Colors
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.
2010-04-01 10:29:13 -04:00
Mark Liversedge
778d651f00 User Configurable Metadata
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
2010-04-01 10:29:13 -04:00
Justin Knotzke
f820627fda Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-03-25 16:37:59 -04:00
Mark Liversedge
b1f71eda4c Deprecate .man in favour of .gc
Save manual files in .gc format (using overrides) instead
of writing in csv format to a .man file. The .man file is
still supported via ManualRideFile but no longer created
by ManualRideDialog.
2010-03-25 09:16:29 -07:00