Commit Graph

996 Commits

Author SHA1 Message Date
Rainer Clasen
99c330edc2 tolerate swapped marker in srm files
in certain circumstances srmwin seems to (have?) written bad files: The
first/last data chunks referenced by a marker were swapped plus the "real"
start index was 0 - although chunks are counted from 1.

This patch checks for this defect and interprets the data in the same way
as recent srmwin versions do when reading files with this defect.

Though the way marker are stored in PCV makes me guess, the refernce the
bad chunk index 0 really means "last" chunk in the recording.
2010-10-14 10:12:53 -04:00
Austin Roach
ea05ba2151 Tweet Ride Error Checking
Adds error checking to Tweet Ride.  Checks to make sure that oauth
credentials exist, that tweet is under 140 characters, and that
oauth_http_post received a reply indicating a successful post.

Move addition of hashtag to getTwitterMessage() to cleanup length
calculations.
2010-10-11 10:27:35 -04:00
unknown
0d6949ed9e Changed validation in manual ride entry.
Fixed warning on Bike score estimate label not being used.

Added validators to Bikescore and daniels points manual entry to allow
more than 3 digits.

Added dialog which enforced validator on distance, bikescore and
daniels points.

This fixes #132
2010-10-01 21:33:10 +01:00
Mark Liversedge
2f41cabb1d Re-order crypto/oauth libs for linking
liboauth depends upon libcrypto but they are declared in
the opposite order in src.pro. This patch reverses this to
avoid linker errors on Linux.
2010-10-01 21:30:14 +01:00
Ilja Booij
07e086ce44 Support Tacx CAF Ride File Format
Initial version of Tacx Caf file importer. TacxCafRideFile.cpp added to qmake file.
Fixed parsing of heart rate value, Heart rate and cadence should have used quint8
instead of qint8, because they're unsigned.

Fixed #143.
2010-10-01 13:49:38 +01:00
Mark Liversedge
f31cef3f1e Racermate/Ergvideo TXT file support
This patch add support for the Racemate text export of their
CDF file format. This format has also been adopted by Ergvideo v3.

Fixes #144.
2010-10-01 13:49:33 +01:00
Rainer Clasen
a4828070df be more precise on SRM support on the start page
To save users fruitless work trying GC on non-supported SRM Powercontrols.

Fixes #107.
2010-09-28 22:24:40 +01:00
Mark Liversedge
781e0619ec Fix SEGV in connect error for QT4.6
Fixes #80.
2010-09-28 22:21:04 +01:00
Jamie Kimberley
a8e5777953 Modify line endings in the ride editor
On mac systems, when copying data from excel and pasting into the ride
editor GC would complain about the data ranges not being the same size.
This is a result of the fact that excel mac terminates lines with a CR
(\r) rather than a NL (\n).  This patch changes the behavior so that we
check for all three commonly occurring line endings CR, NL and CRNL.

fixes #135
2010-09-28 22:13:14 +01:00
Ken Sallot
dd5cdd920d Improved handling of smart recording / gaps in TCX files
Currently, GC interpolates time gaps in all TCX files as a result of smart
recording.  However, this overlooks periods of inactivity (stopped at a light
for instance).

1. Provide a configuration option, that if enabled, will tell GC to interpolate
time gaps in TCX files as if they were a result of smart recording.  If the
option is not enabled, then interpolation will not occur.

2. Provide a maximum "high water mark" (in seconds) for these time gaps.  The
default HWM is 25 seconds, but is user configurable.

Any time gaps that exceed the high water mark can be fixed via the Fix Gaps
tool under the toolbar.

Fixes #74.
2010-09-28 21:56:27 +01:00
Justin Knotzke
0139b7ee84 Missing #ifdef if not building with Twitter support. 2010-09-05 14:37:07 -07:00
Justin Knotzke
78111d4279 Missing #ifdef if not building with Twitter support. Thanks John Ehrlinger 2010-09-05 14:24:35 -07:00
Justin Knotzke
899e6eb362 Support for OAuth for the Twitter feature. Metric adjectives by Robert Carlsen. 2010-08-26 14:06:25 -04:00
Mark Liversedge
f6eb97ec0f Add support for Google Earth (KML)
This patch adds an 'Export to KML' option to the ride
menu. It will create a .kml file including power, hr,
torque etc. These can be viewed alongside the map view
in Google Earth 5.2.

Please note this requires libkml. The features of libkml
that are required were introduced in revision 852 which
means that as of Aug 2010 you will need to checkout from
the SVN source repo and build;

svn checkout http://libkml.googlecode.com/svn/trunk/ libkml-read-only

and the ./configure mantra that worked successfully for
me on Mac OS X was;

./configure CC="gcc -arch i386" CXX="g++ -arch i386" --disable-swig

Building on WIN32 is currently fraught with issues, unless
you build via MSVC 2010. Linux is straight forward but you will
need to install / apt-get libcurl.

Fixes #133.
2010-08-26 10:47:49 +01:00
Mark Liversedge
48a25081ed Fix blank space on right of AllPlot. 2010-08-14 13:00:05 +01:00
Damien Grauser
5e575beaff Support for Joule BIN File Format
The new source files, missed from previous commit.
2010-08-10 18:55:55 +01:00
Damien Grauser
861fa5ee38 Support for Joule BIN File Format 2010-08-10 18:54:07 +01:00
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