Compare commits

..

5482 Commits

Author SHA1 Message Date
Mark Liversedge
3b72bfcd4f Fix SEGV LTM Edit
.. when using Moving Average trend.
2015-08-13 17:50:07 +01:00
Mark Liversedge
e2cb864d5b Version 3.2 Release
.. update of version numbers
2015-08-12 09:43:33 +01:00
Mark Liversedge
3d4425852c Merge pull request #1510 from prokoudine/master
Updated Russian translation
2015-08-12 09:30:48 +01:00
Alexandre Prokoudine
078534ca9e Update Russian translation 2015-08-12 10:47:01 +03:00
grauser
37ecb2c353 translation: small fix for french 2015-08-12 09:22:46 +02:00
grauser
f7bbc05835 translation: French for 3.2 (2/2) 2015-08-12 00:00:03 +02:00
Mark Liversedge
aa818bec00 Logical Expressions with >2 Primary Expressions
.. ie. expr && expr was supported but not
   expr && expr && expr
2015-08-11 20:08:07 +01:00
Mark Liversedge
4ae9d45695 Merge pull request #1509 from Joern-R/DE
LIBKML patch (only for Windows)
2015-08-11 20:02:39 +01:00
Joern
052ac8222d LIBKML patch (only for Windows)
... removing tests,... from LIBKML build
... allowing building of base functionality of LIBKML on Windows with MinGW
... covering the LIBKML functional scope used by GoldenCheetah
2015-08-11 20:27:45 +02:00
Mark Liversedge
c500d8bb36 Fix DataFilter grammar for logical expressions
.. NP > 200 && IF > 0.85 didn't work because the datafilter
   grammar needed fixing up for precedence of the && and || operators.

.. this has been fixed by embedding into the grammar; binary expressions
   and logical expressions are now declared individually.

.. the generated tree uses the same encoding so no changes required
   to the code, just the grammar
2015-08-11 09:14:43 +01:00
grauser
46769d6ca9 Translation: French for 3.2 (1/2) 2015-08-10 23:22:43 +02:00
grauser
3c5378f047 Export: Unable to export in CSV format
fix #1507
2015-08-10 21:46:58 +02:00
Mark Liversedge
aefb50b6b3 Merge pull request #1506 from Joern-R/DE
Update Translation DE
2015-08-09 15:40:01 +01:00
Joern
3200b9e334 Update Translation DE 2015-08-09 14:20:53 +02:00
Mark Liversedge
602b94b730 Merge pull request #1504 from amtriathlon/master
Updated Spanish Translation
2015-08-08 19:51:47 +01:00
Alejandro Martinez
c877e8731c Updated Spanish Translation
New backup message on upgrade
2015-08-08 15:49:28 -03:00
Mark Liversedge
6f87400368 Merge pull request #1503 from amtriathlon/master
Fixed overridden metrics not initialized in Medatada
2015-08-08 19:11:39 +01:00
Alejandro Martinez
5b211e1c69 Fixed overridden metrics not initialized in Medatada 2015-08-08 13:38:29 -03:00
Mark Liversedge
2823da7e2e Time Riding --> Time Moving
.. when reading older GC Json files; we need to rename both
   the tag and the override.
2015-08-08 17:31:37 +01:00
Mark Liversedge
02e4ca537f Fix Crash Edit Metric on Extra tab
.. don't allow editing there.
2015-08-08 17:22:16 +01:00
Mark Liversedge
94fea2b1c5 Merge pull request #1502 from Joern-R/Upgrade
Indicate the Path to Athlete Directory to backup during Upgrade
2015-08-08 15:19:21 +01:00
Joern
381ab7e987 Indicate the Path to Athlete Directory to backup during Upgrade (original code by GitHub user "mtbkeith" - thanks)
..show path in Upgrade Windows (separate from the scrolling section)
..allow path to be selected and copied to clipboard via Mouse
2015-08-08 15:41:06 +02:00
Mark Liversedge
5acf6210a3 Merge pull request #1499 from Joern-R/DE
Translation DE
2015-08-07 19:01:57 +01:00
Joern
ff16e2952e Translation DE 2015-08-07 19:56:18 +02:00
Mark Liversedge
4e99143943 Enforce types for First Class Metadata Fields
In case user borked them in setup, applies to:

- Ride Date (startTime.date)
- Ride Time (startTime.time)
- Device (deviceType)
- Recording Interval (recIntSecs)
- Identifier (Id)

Since latest update for metadata now honours user configuration.
2015-08-07 10:40:03 +01:00
Mark Liversedge
7f93f7a969 Merge pull request #1498 from amtriathlon/master
Fixed translate charts when config file is missing
2015-08-07 09:39:01 +01:00
Alejandro Martinez
bc011dfedd Updated Spanish Translation 2015-08-06 20:41:45 -03:00
Alejandro Martinez
49fb90f6e4 Updated chart titles according to charts.xml
To enable translation
2015-08-06 20:39:59 -03:00
Alejandro Martinez
82f7d590aa Fixed translate charts when config file is missing
Default config due to new user or deleted config should be translated
2015-08-06 18:03:43 -03:00
Mark Liversedge
d6c59d6b0d PMC (TRIMP) fixup
.. common axis Stress
.. look and feel like other PMCs
2015-08-06 21:14:39 +01:00
Mark Liversedge
3bf05fca18 Merge pull request #1496 from MaksVasilev/master
Make default PMC TRIMP chart to real TRIMP
2015-08-06 21:06:36 +01:00
Stranger
0171fd46ae Fix name for PMC (TRIMP) chart 2015-08-06 22:20:45 +03:00
Mark Liversedge
472fe3929a Texts frozen for v3.2
.. lupdate translations for all supported languages.
2015-08-06 19:56:24 +01:00
Mark Liversedge
bcad5c2cb4 Merge pull request #1493 from Joern-R/Translation
Update Translation DE
2015-08-06 19:42:56 +01:00
Stranger
a9ff348a9f Make default PMC TRIMP chart to real TRIMP 2015-08-06 21:40:56 +03:00
Joern
169a852b48 Update Translation DE 2015-08-06 20:35:43 +02:00
Mark Liversedge
7a665a3bf6 Merge pull request #1491 from amtriathlon/master
Fixed never translate charts in HomeWindow
2015-08-06 19:08:26 +01:00
Alejandro Martinez
9a39390b32 Fixed never translate charts in HomeWindow
Local variable defaultUsed was initialized to false and never updated
2015-08-06 14:50:06 -03:00
Mark Liversedge
0a2ddc9f6c FitRideFile Garmin Fenix 3 identifier
Fixes #1489
2015-08-06 18:24:16 +01:00
Mark Liversedge
46b2e6cfe2 Only translate chart titles once
.. not every time they are loaded.
2015-08-06 14:52:39 +01:00
Mark Liversedge
a7fa3a0b50 Add link to USARIEM
.. in the about dialog.
2015-08-06 11:00:23 +01:00
Mark Liversedge
4b87e84643 Add LOCALHEADERS/LOCALSOURCE to src.pro
.. allow local development/extensions without needing to update src.pro.
2015-08-06 10:40:05 +01:00
Mark Liversedge
9f6d7a6256 Merge pull request #1487 from amtriathlon/master
Add Pace to LTMPopup and change total distance according to sport
2015-08-06 08:59:16 +01:00
Alejandro Martinez
27cf3af4f3 Add Pace to LTMPopup and change total distance according to sport 2015-08-05 21:50:23 -03:00
Mark Liversedge
5ff676a237 Upgrade cosmetics
.. change LTM trend background to same as ride plot on upgrade
   as by default it will be black and look different

.. remove metal look on anything other than Mac prior to the
   10.10 Yosemite look. Metal looks naff these days.
2015-08-06 00:57:46 +01:00
Mark Liversedge
b65d9b178c Save Dialog should be on top
.. as it can be obscured by other windows
2015-08-06 00:20:11 +01:00
Mark Liversedge
02c77cf5d9 Sanity check LTMSettings
.. avoid crash with a sanity check
.. not sure why they got corrupted
.. need to investigate mixing 32/64bit runtime
2015-08-05 23:52:28 +01:00
Mark Liversedge
a8d08b5a06 Fix metric on Extra tab
.. stick to original functionality instead of borking.
2015-08-05 22:27:22 +01:00
Mark Liversedge
81b8a26d8a Merge pull request #1486 from Joern-R/Test
Fix Upload - VeloHero.de / Trainingstagebuch.org for QT 5 based builds
2015-08-05 21:43:49 +01:00
Joern
4ec2b793ff Fix Upload - VeloHero.de / Trainingstagebuch.org for QT 5 based builds
... tested on QT4.8.6 and QT 5.4.2
2015-08-05 20:03:29 +02:00
Mark Liversedge
acb1abf73f Merge pull request #1485 from amtriathlon/master
Add Route and RPE to SpecialFields
2015-08-05 18:16:32 +01:00
Alejandro Martinez
92e22b90e9 Add Route and RPE to SpecialFields
So this new metadata fields can be translated
2015-08-05 10:54:42 -03:00
Mark Liversedge
42e66dd14b Fixup Time Riding -> Time Moving
.. since we deal with more than just cycling now.
2015-08-05 11:38:28 +01:00
Mark Liversedge
091f4e6c4f Tidy Up metadata.xml
.. it had got wonky
.. also changed Time Riding to Time Moving
2015-08-05 11:29:00 +01:00
Mark Liversedge
75d3124cdc Recognise Mark Buller
.. for support wrt use of the TCore algorithm in GoldenCheetah
2015-08-04 20:22:03 +01:00
Mark Liversedge
4b2610dc1f Attribution for Core Temperature
.. we have been granted permission to use the TCore algorithm
   and so the attributions have been added to the code and about
   box.

.. Mark Buller should be added to the contributors too.
2015-08-04 20:22:03 +01:00
grauser
f451191cb2 Update french translation 2015-08-03 23:07:10 +02:00
grauser
fd5d1aac73 AllPlot: Correct Core Temp default 2015-08-03 23:07:10 +02:00
Mark Liversedge
3abbf4fea7 Edit Chart with Bests
.. clear old values
2015-08-02 19:04:13 +01:00
Mark Liversedge
d6fc1c58c6 Merge pull request #1482 from amtriathlon/master
Minor tweak in Histogram round numbers for labels
2015-08-02 18:17:32 +01:00
Alejandro Martinez
1b7e282bde Minor tweak in Histogram round numbers for labels
Truncation is rather odd, specially for percentages
2015-08-02 11:32:25 -03:00
Mark Liversedge
2b3f3bce3a More default charts
.. tss/if, bikescore/ri, cp analysis
2015-08-02 10:20:15 +01:00
Mark Liversedge
3b089b1e6d Tidy Trend View Layout
.. put chart in a logical sequence
.. remove all the TIZ charts as they're in the library
.. fix tracker 60m power as it shows speed
2015-08-02 10:09:50 +01:00
Mark Liversedge
adc534c575 Fix save metadata refresh of calendar text
.. via ^S or menu when focus in notes type box.
2015-08-01 22:30:25 +01:00
Mark Liversedge
76d1b7b391 Minor paint tweak for scope bar
.. overly rounded rectangles are de-riguer these days
   so make the scope bar a little squarer as per
   the new aesthetic in Yosemite.
2015-08-01 20:28:33 +01:00
Mark Liversedge
ebe8b5d2c4 Version 3.2 Release Candidate 4
.. update build for RC4
2015-08-01 10:19:19 +01:00
Mark Liversedge
63265af146 Fix Edit Bests LTMSettings SEGV
.. in sidebar chart edit.
2015-08-01 10:09:40 +01:00
grauser
545c895fd4 RideFileCache : XPower in MeanMaxComputer
Exponential moving average from first point for Xpower in MeanMaxComputer
2015-08-01 00:05:24 +02:00
grauser
6435c23591 RideFileCache : Correct weighting factor for Xpower in MeanMaxComputer
fix #1480
2015-07-31 23:35:51 +02:00
Mark Liversedge
903aeb5c65 More new user nits
.. chrome reset by 3.1 upgrade .. aaaargghhh.
.. set default date range to last 3 months not all
2015-07-31 09:55:11 +01:00
Mark Liversedge
5a6363b1c5 Fix "Chrome" default
.. Mac on Mac before Yosemite (when its flat)
.. Flat everywhere else
.. Use a lighter color
2015-07-31 09:31:15 +01:00
Mark Liversedge
f4ec8ea494 Cleanup of charts.xml
.. old / wrong-headed charts deleted.
2015-07-31 00:49:23 +01:00
Mark Liversedge
6780e1c80b More default charts 2015-07-31 00:43:01 +01:00
Mark Liversedge
64dfe28994 Fix LTM add chart SEGV on date range
.. by trying to plot backward date ranges
2015-07-31 00:09:56 +01:00
Mark Liversedge
0131bdb8f7 Celebrate the TdF with a new color scheme. 2015-07-30 23:08:10 +01:00
Mark Liversedge
09464dba1a Don't include "Calendar Text" in Meta CRC
.. otherwise it causes a refresh() when it is reconstructed
   due to config changes (not data changes!)
2015-07-30 20:24:22 +01:00
Mark Liversedge
dbe163d7d9 Merge pull request #1478 from amtriathlon/master
Fixed tab order in New Athlete and Manual Workout
2015-07-30 19:36:52 +01:00
Mark Liversedge
798e6e3ae9 Fix refresh of 'Calendar Text'
.. when the metadata config changes.
2015-07-30 19:33:05 +01:00
Alejandro Martinez
bee0f8e032 Changed GOVSS to TriScore in LTM stress metrics
They could be deprecated, but if left for consistency TriScore
is more useful than GOVSS.
2015-07-30 10:28:20 -03:00
Alejandro Martinez
c6c0c3204a Fixed tab order in New Athlete and Manual Workout
Fixes #1476
2015-07-30 10:15:14 -03:00
Mark Liversedge
7567f625fc Merge pull request #1475 from amtriathlon/master
New metadata fields and SwimScore copyrigth notice
2015-07-30 06:38:55 +01:00
Alejandro Martinez
4799137010 Updated Spanish Translation 2015-07-29 20:19:07 -03:00
Alejandro Martinez
28610f87cb Added copyrigth notice for SwimScore 2015-07-29 20:12:12 -03:00
Alejandro Martinez
81ae04f19e Some love for Session RPE and new metadata fields
Added RPE to metadata.xml to allow data entry in the Workout tab and
PMC (Session RPE) to charts.xml
Added Equipment to Workout tab
Added GOVSS and SwimScore to Metric tab, to allow metric override
2015-07-29 20:00:37 -03:00
Mark Liversedge
3ff81dc127 Switch to chart on import
.. when drag and dropping a chart onto mainwindow we now
   switch to trend view and select it, so the user doesn't
   have to track it down.
2015-07-29 11:59:58 +01:00
Mark Liversedge
1b3d72af7a Fix ^S clearing metadata
.. also optimised up the way metadata changed
   was signalled, which speeds up navigation
   somewhat.
2015-07-28 22:17:59 +01:00
Mark Liversedge
c2c0ae708f Merge pull request #1473 from Joern-R/DE
Update Translation DE
2015-07-28 20:19:50 +01:00
Joern
013e47025f Update Translation DE 2015-07-28 19:07:43 +02:00
Mark Liversedge
9efb920806 Fix Hide Non-curves on legend
.. trend, outliers, bests all failed to hide.
2015-07-28 15:19:54 +01:00
Mark Liversedge
41b80d8fa6 Select 'Library' chart automagically
.. when a preset is selected in the trend view sidebar
   we automatically switch to the library chart to
   show it.
2015-07-28 13:42:17 +01:00
Mark Liversedge
a0344d4fb5 Merge pull request #1471 from amtriathlon/master
Updated Spanish Translation
2015-07-28 06:35:33 +01:00
Alejandro Martinez
a0d637b239 Updated Spanish Translation
Includes a minor fix to avoid a lupdate warning and new chart names
2015-07-27 20:54:01 -03:00
Mark Liversedge
f7426957ca Fix Chart Add/Edit SEGV
.. halfwitted code deleted a widget, after moving the
   "Use sidebar settings" checkbox to it.
2015-07-27 21:07:39 +01:00
Mark Liversedge
9e66191e3c Merge pull request #1470 from amtriathlon/master
Fixed RideSummary refresh when filters change while not visible
2015-07-27 18:41:49 +01:00
Alejandro Martinez
6f1e25cdbb Fixed RideSummary refresh when filters change while not visible
The problem showed up only for date ranges not ending today
2015-07-27 14:34:32 -03:00
Mark Liversedge
64183a6647 Tidy up LTM Chart configuration
.. move use sidebar settings to basic page and
   disable the other pages if its using sidebar
   settings

.. when working in the sidebar, hide the basic
   page since it is not shared

.. make the add chart dialog bigger if the screen
   is large enough, since it needs to show a chart
   and the config pane which has grown a little
   over time.
2015-07-27 17:16:13 +01:00
Mark Liversedge
ed9b9197e7 Fixup Chart Preset Workflow and SEGV/Bug
.. remove all the editing/import/export functions
   from the chart settings now they have their own
   sidebar.

.. this also removes some of the problems with conflicts
   and bugs in the code e.g. setting the first chart name
   to "" by accident in the editingFinished() method (since
   that is no longer supported !)
2015-07-27 13:08:17 +01:00
grauser
32dfaf5875 LTMChartParser: no selection after drag/drop 2015-07-26 23:28:11 +02:00
grauser
6da6a43516 LTMChartParser: clearSelection 2015-07-26 23:10:27 +02:00
Mark Liversedge
6714e88e14 Small fix for SEGV chart drop to end
.. if you drag a chart in the LTM chart sidebar to beyond the
   end of the list the move results in a QList assert abort.

..  this small fix checks for -1 and adjusts accordingly.
2015-07-26 22:02:19 +01:00
grauser
1d9ebb2c44 LTMChartParser: Selection after drop 2015-07-26 22:54:53 +02:00
grauser
5ca8b816e8 LTMChartParser: Drap/Drop multiple selection 2015-07-26 22:28:04 +02:00
grauser
cb2dcd7f84 Update French translation 2015-07-26 22:14:06 +02:00
Mark Liversedge
df6790eae2 Force Chrome on Yosemite
.. to match the flat look of Yosemite (i.e. not metal) and
   to match the fixed colors for the title bar.
2015-07-26 17:18:30 +01:00
Mark Liversedge
081994038f Another Edit Chart SEGV
.. on the trend view sidebar
2015-07-26 16:48:23 +01:00
Mark Liversedge
91c47de934 Fix reading dates in ISO format 2015-07-26 14:09:34 +01:00
Mark Liversedge
a0c500f947 Fix Edit Chart SEGV !
.. setting date ranges before curves
2015-07-26 10:18:04 +01:00
Mark Liversedge
0b3eeab600 Enable Export of LTM Chart Configuration
.. and fix import of >1 chart file !
2015-07-26 09:48:09 +01:00
Mark Liversedge
e5a043e81e Trend Chart Sidebar Menu - Part 2 of 2
.. import/export charts

.. drag/drop them in the list to reorder

.. drop a 'charts.xml' (any .xml) file onto the mainwindow
   to import charts exported by someone else.
2015-07-25 21:29:08 +01:00
Mark Liversedge
7330ac66a5 Trend Chart Sidebar Menu - Part 1 of 2
.. added add, edit, delete and reset

.. still need to add import and export as well
   as the right-click context menu.
2015-07-25 12:58:19 +01:00
Mark Liversedge
ad85ce0560 Merge pull request #1468 from Joern-R/UpgradeFixTools
Upgrade/JSON Conversion - Switch off "Auto" Fix Tools
2015-07-25 09:04:21 +01:00
Joern
fc81383a3e Upgrade/JSON Conversion - Switch off "Auto" Fix Tools
... add feature to switch off "Auto" Fix tools
... switch off "Auto" Fix Tools during Upgrade/JSON Conversion
2015-07-25 09:59:41 +02:00
Mark Liversedge
5ade8926b0 View reset layout from goldencheetah.org/defaults
.. when resetting the layouts we first go try the default
   layouts from the goldencheetah website

   http://www.goldencheetah.org/defaults/<release>/xxx-layout.xml

.. this means we can update the default setup independently of
   the release binary; make tweaks etc

.. the same concept will shortly be introduced for resetting the
   standard charts.xml presets for the trend view
2015-07-24 21:18:15 +01:00
Mark Liversedge
c05f5bba27 Get rid of X-axis grid lines on CP plot 2015-07-24 17:40:51 +01:00
Mark Liversedge
3a1ed2c871 Fixup Core Temperature Gamma Constant
.. it was calculated incorrectly, 0.022 x 0.22 instead of
   0.022 x 0.022 so quite a significant order of magnitude !
2015-07-23 22:56:28 +01:00
Mark Liversedge
abfe642dea Merge pull request #1466 from amtriathlon/master
Fixed Endurance Index scale in CVchart
2015-07-23 20:58:10 +01:00
Alejandro Martinez
126af19b5d Fixed Endurance Index scale in CVchart
EI = C'/CV, W' in meters and CV in m/s, so EI units are seconds
2015-07-23 16:22:12 -03:00
Mark Liversedge
858e467851 Merge pull request #1465 from amtriathlon/master
Fixed D' display in CVChart
2015-07-23 06:45:51 +01:00
Alejandro Martinez
e02fddd4d7 Fixed D' display in CVChart
To have better resolution and to show in m/yd.
2015-07-22 20:34:47 -03:00
Mark Liversedge
1a0f9993c6 Merge pull request #1464 from Joern-R/Translation
Update Translation DE
2015-07-22 10:04:53 +01:00
Joern
cc781d8f68 Update Translation DE 2015-07-22 10:50:52 +02:00
Mark Liversedge
7588098a31 Merge pull request #1463 from amtriathlon/master
Translation fixes
2015-07-22 06:47:03 +01:00
Alejandro Martinez
a5a42a6878 Added Q_OBJECT macro to ComputrainerController and FortiusController
So lupdate stop complaining, it may require to run qmake
2015-07-21 19:24:46 -03:00
Alejandro Martinez
4c79caadcc Updated spanish translation 2015-07-21 19:24:11 -03:00
Alejandro Martinez
e12c250e61 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-07-21 17:31:42 -03:00
Mark Liversedge
068baafb0d Tidy up default charts
.. PMC charts all largely look  the same

.. remove all the crappy ones

.. we should think about more we could add
2015-07-21 20:02:45 +01:00
Mark Liversedge
aa9da6c98a Fix Top/Lowest curves not being removed 2015-07-21 20:01:40 +01:00
Mark Liversedge
6d68128eb8 Merge pull request #1462 from Joern-R/Calendar
Fix "MiniCalendar" does not show colors on first open
2015-07-21 19:28:49 +01:00
Mark Liversedge
fa56273204 Revert "LTM high and low curves not deleted"
This reverts commit 9e852faf5c.
2015-07-21 19:19:21 +01:00
Mark Liversedge
b56e87e649 LTM high and low curves not deleted
.. if you select e.g. the TriScore PMC in the Library chart
   in Trends, the high/low curves get left behind because they
   use the same name (Best_xxx).

.. ironically this was already worked around by creating a name
   that included the symbol, but this was not used when adding to
   the curve mapping.
2015-07-21 19:15:53 +01:00
Mark Liversedge
f83d2df3d7 Merge pull request #1461 from amtriathlon/master
Fixed default button in Edit Interval dialog
2015-07-21 19:02:00 +01:00
Alejandro Martinez
36e6960af5 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-07-21 15:01:38 -03:00
Alejandro Martinez
7fb3306390 Fixed default button in Edit Interval dialog
It was color button, now it is Ok button
2015-07-21 14:59:11 -03:00
Joern
9e39714b2e Fix "MiniCalendar" does not show colors on first open
... ensures that Month is changed to month of current ride (which fixes the missing color)
... tested also for new Athlete creation (without any Ride data)

Note: Root cause may be a sequence issue of setting the calendar month, setting the ride, setting to current ride.
So there might be a better way to fix the problem.
2015-07-21 19:01:57 +02:00
Mark Liversedge
8844166fad Merge pull request #1459 from amtriathlon/master
Fixed PMC (TriScore) and Run Pace in charts.xml
2015-07-21 16:13:30 +01:00
Mark Liversedge
dd3e168b31 Merge pull request #1460 from prokoudine/master
Typo fixes and updated Russian translation
2015-07-21 16:13:03 +01:00
Alexandre Prokoudine
9101eca7ef Updated Russian translation 2015-07-21 03:26:33 +03:00
Alexandre Prokoudine
dffc8a0e44 Fix a typo in a user-visible message 2015-07-21 02:13:21 +03:00
Alexandre Prokoudine
a744802374 Fix a typo in a user-visible message 2015-07-21 01:16:26 +03:00
Alejandro Martinez
9409b8d654 Fixed PMC (TriScore) and Run Pace in charts.xml
Units were wrong due to the translation problem recently fixed
2015-07-20 16:16:08 -03:00
Mark Liversedge
735dd4d0e6 Merge pull request #1458 from Joern-R/LTMTranslatePrep
LTM Translation Preparation
2015-07-20 15:36:20 +01:00
Mark Liversedge
9268dd5fff Merge pull request #1457 from amtriathlon/translation
Updated Metrics translation in LTM
2015-07-20 15:31:01 +01:00
Joern
6e9f88c5c9 LTM Translation Preparation
... fill "units" field with original "units" from Metrics if new Chart is created
... store original "unit" into LTMSettings for later reference in automatic translation
... use a new version of LTMSettings to be compatible with any written version
2015-07-20 14:40:52 +02:00
Alejandro Martinez
bec9369082 Updated Metrics translation in LTM
- Code cleanup, removing deprecated code and refactoring
- Metrics translation is now done in a method for LTMSettings
- User defined metric name (uname) is translated if it matches english name
- User defined units (uunit) is only translated if it matches saved units
2015-07-19 14:37:13 -03:00
Mark Liversedge
7eb07fa038 Reinstate Withings Measures
.. bodyfat kg, lean kg, bodyfat percent
.. fixup charts.xml to use it

NOTE: RideItem changes so touch *.y or
      make clean after pulling this commit
2015-07-18 20:18:51 +01:00
Mark Liversedge
ce9476ca32 LTM translation only if not English
.. saves time, since translation not required

.. also avoids messing up the uunits when charts are customised
   to have common y-axis e.g. Stress Ae and An Stress and PMC
   using Stress instead of ATL, CTL, TSB etc
2015-07-17 21:24:24 +01:00
Mark Liversedge
1b5e6beff9 More agressive EWMA
.. set the default too lax.
2015-07-17 20:04:28 +01:00
Mark Liversedge
6d4afd844c Merge pull request #1456 from Joern-R/UI
UI Nit - RideImportWizard
2015-07-17 18:29:24 +01:00
Joern
f1cbecdcf3 UI Nit - RideImportWizard 2015-07-17 19:24:17 +02:00
Mark Liversedge
ef676cd412 Merge pull request #1455 from Joern-R/TE1
Translation Enablement
2015-07-17 18:14:08 +01:00
Joern
71b824830c Translation Enablement 2015-07-17 18:59:07 +02:00
Mark Liversedge
fa443ba705 Fixup default charts
.. cleanup PMC in home layout
.. fix weight tracking chart
2015-07-17 17:45:02 +01:00
Mark Liversedge
befbd75902 Merge pull request #1454 from amtriathlon/master
Added default filters for multisport use
2015-07-17 16:34:23 +01:00
Alejandro Martinez
745e4b36a9 Added default filters for multisport use
Only when there is no named searchs defined yet
2015-07-17 11:55:08 -03:00
Mark Liversedge
305e07b939 Add Moving Average Trend Line
.. using the Holt-Winters double exponential smoothing to avoid
   low on rising and high on falling data series.

.. works best with relatively noisy and contiguous data
2015-07-17 12:11:09 +01:00
Mark Liversedge
324c7af370 Merge pull request #1453 from amtriathlon/master
Add Pace metrics for runs and swims
2015-07-17 06:59:15 +01:00
Alejandro Martinez
af7c2c6d8e Add Pace metrics for runs and swims
- to default interval metrics
- to default summary metrics
- conditionally to Summary averages
2015-07-16 19:50:26 -03:00
Mark Liversedge
4d5fd3e514 Merge pull request #1452 from amtriathlon/master
Translation fixes for Diary
2015-07-16 11:39:59 +01:00
Alejandro Martinez
8851ddf470 Translation fixes for Diary
Navigator title and days of the week in mini-calendar
2015-07-15 20:10:51 -03:00
Mark Liversedge
a14820fcca Merge pull request #1451 from amtriathlon/master
Fixes ordering of time columns in Navigator
2015-07-15 20:19:14 +01:00
Alejandro Martinez
0992e54736 Fixes ordering of time columns in Navigator
Using a QTime for isTime metrics
2015-07-15 15:21:43 -03:00
Mark Liversedge
58aa68b427 Merge pull request #1450 from amtriathlon/master
Minor Translation Related Fixes
2015-07-15 15:30:32 +01:00
Alejandro Martinez
d4b222efac Minor Translation Related Fixes
"Metric Pace" translatable
Format for time columns in Navigator
2015-07-15 09:20:32 -03:00
Mark Liversedge
7c5a17a934 Merge pull request #1449 from amtriathlon/master
Added Distance Swim metric
2015-07-14 06:32:26 +01:00
Alejandro Martinez
a9bd516150 Added Distance Swim metric
To show distance in swimming units, useful for non-metric configurations
2015-07-13 22:07:29 -03:00
Mark Liversedge
fd652c506e Merge pull request #1447 from amtriathlon/master
Made WPrime metrics not relevant for runs and swims
2015-07-13 21:30:14 +01:00
Alejandro Martinez
4f2e5ed5f4 Made WPrime metrics not relevant for runs and swims 2015-07-13 15:14:50 -03:00
Mark Liversedge
9a6eefaf7e Merge pull request #1446 from amtriathlon/master
Extended Critical Power Estimator for Running and Swimming
2015-07-13 06:47:07 +01:00
Alejandro Martinez
6a02939ac6 Extended Critical Power Estimator for Running and Swimming
Also fixed some translation issues
2015-07-12 23:09:55 -03:00
Mark Liversedge
c3f89ff968 Last Month / Last Week Date Ranges
.. added as they are handy for quick compare of changes
   in the near term, without having to add temporary
   date ranges

.. we should think about an "easy" way to do this for all
   years and months for quick comparisons, in v4.0
2015-07-12 21:11:10 +01:00
Mark Liversedge
7eedd915b9 Merge pull request #1445 from Joern-R/Translation2
Translation DE
2015-07-12 17:34:40 +01:00
Joern
80f9eb6787 Translation DE
.. update and corrections
2015-07-12 17:00:56 +02:00
gcoco
d6a5323d0c Change 3.1.0 to 3.2.0 2015-07-11 20:57:35 -04:00
Mark Liversedge
148087ee27 Climb intervals discovery config
.. off by one error stopped user from enabling the
   climb interval discovery.
2015-07-11 22:18:59 +01:00
Mark Liversedge
498b2b3c4c RC3 versioning 2015-07-11 21:09:17 +01:00
Mark Liversedge
9b880e751a Fix compare allplot short distance
.. was using an int instead of a double for KM, so any interval
   less than a KM long was rounded to zero length.
2015-07-11 20:49:57 +01:00
grauser
a4df9014f0 JouleDevice: Changes for Joule GPS+ 2015-07-11 17:01:43 +02:00
Mark Liversedge
aa83502765 Activity list sort order hack
.. fixes 80% of the issues with sorting 'strings'

.. we cannot just return metric values since they
   need to be formatted to have the righ precision
   or conversion to pace/duration etc.
2015-07-11 08:39:38 +01:00
Mark Liversedge
3820845542 Fix PD model w/kg parameter save
.. was skipping 2p and 3p saves because it was agressively
   checking W', FTP and Pmax when they didn't apply or
   for values that were possibly correct (e.g. W'/kg > 100)
2015-07-11 07:45:35 +01:00
Mark Liversedge
dce6491f91 Fix absolute v per kg vo2max estimate
.. no need to pass across weight since we maintain two
   models; absolute and per kg already.

NOTE: this has highlighted a bug in the code related to
      estimated w/kg bests for 2 and 3 parameter models
      that will be fixed shortly.
2015-07-11 06:40:32 +01:00
Mark Liversedge
21db619f57 Merge pull request #1443 from amtriathlon/master
Override toString for AvgTemp and MaxTemp metrics
2015-07-11 06:17:27 +01:00
Alejandro Martinez
a293733efc Override isRelevantForRide for metrics not relevant for runs and swims 2015-07-10 21:36:45 -03:00
Alejandro Martinez
30da13e2e7 Override toString for AvgTemp and MaxTemp metrics
To show "-" when internal value is RideFile::NoTemp
2015-07-10 19:59:14 -03:00
Mark Liversedge
125ae8e261 Add Vo2max to Chart Library
.. and also fix up related code nits
2015-07-10 21:16:59 +01:00
Mark Liversedge
3211995df5 Vo2max Estimate from PD Model
.. to augment the existing vo2max estimate using peak 5m
   data in a ridefile, this now adds it as an estimate from
   the PD model estimate for 5m peak power.
2015-07-10 20:33:14 +01:00
Mark Liversedge
69b0296e4a Merge pull request #1442 from amtriathlon/master
Minor Fixes WPrime::summarize units and Spanish Translation
2015-07-10 15:45:41 +01:00
Alejandro Martinez
70454be78f Minor Fixes WPrime::summarize units and Spanish Translation 2015-07-10 11:15:03 -03:00
Mark Liversedge
d3233906e0 Withings Download Message
.. simpler and more user friendly

.. old message made little sense grammatically too !
2015-07-10 09:25:33 +01:00
Mark Liversedge
865d87d589 Merge pull request #1440 from amtriathlon/master
Updated Spanish Translation
2015-07-10 08:21:10 +01:00
Alejandro Martinez
7de96e0802 Updated Spanish Translation 2015-07-09 23:58:11 -03:00
Mark Liversedge
c2698de16c Merge pull request #1439 from Joern-R/Translation
Update Translation DE
2015-07-09 18:01:38 +01:00
Joern
49f529c37e Update Translation DE 2015-07-09 19:06:39 +02:00
Mark Liversedge
12e7554af9 Fixup WPrime.cpp translation snafu
.. use 'tr()' not missing 'QT_TRANSALATION_NOOP'
2015-07-08 23:24:16 +01:00
Mark Liversedge
e716319c6a Merge pull request #1437 from prokoudine/master
Fixes for user-visible messages and updated Russian translation, take two
2015-07-08 23:16:44 +01:00
Alexandre Prokoudine
4081d7707c Updated Russian translation 2015-07-09 01:04:27 +03:00
Alexandre Prokoudine
077cd11ea9 Refer to Bluetooth/BLE for pairing BLE devices rather than to ANT+ 2015-07-09 00:46:41 +03:00
Mark Liversedge
847623c67b Get wbalzone user-visible messages to show up in translation files 2015-07-09 00:45:42 +03:00
Alexandre Prokoudine
ab836d6f99 Rename rides to activities for multi-sport athletes 2015-07-09 00:38:37 +03:00
Alexandre Prokoudine
5d6dd1bf6b Fix a typo in a user-visible message 2015-07-09 00:35:50 +03:00
Mark Liversedge
9266cee05d Revert "Edit interval distance"
This reverts commit c4c15ada67.
2015-07-08 14:57:47 +01:00
Mark Liversedge
501b8fea06 Merge pull request #1435 from amtriathlon/master
Fixed default CV value when pace units change
2015-07-08 06:46:34 +01:00
Alejandro Martinez
30927e706f Edit interval distance
Implements #1432 as an option for Edit Interval, the user must
enable it via checkbox and confirm before it modifies speed and
distance for the underlying samples.
2015-07-07 23:14:50 -03:00
Alejandro Martinez
52ca9c4635 Fixed default CV value when pace units change 2015-07-07 19:06:37 -03:00
Mark Liversedge
4638af6cad Recognise Simon Brewer
.. in contributors
2015-07-07 09:08:53 +01:00
Simon Brewer
8b6cd2b3dd Fix SEGV in LTM PMC plot when no data
.. if there is no data available for the period slected
   the LTM plot crashed due to an uninitialised variable.
2015-07-07 09:08:52 +01:00
Mark Liversedge
9cec4855a3 Merge pull request #1434 from amtriathlon/master
Added some charts for multisport usage
2015-07-06 21:30:44 +01:00
Alejandro Martinez
266ff03fb4 CP Chart - set search intervals when changing to Ward-Smith model
Used the same defaults as CP3model (30'-60'), inline with PDModel.cpp,
although they seem rather odd, IMHO. Part of #1424.
2015-07-06 10:57:07 -03:00
Alejandro Martinez
c7fcba5160 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-07-05 17:57:02 -03:00
Alejandro Martinez
5292adee01 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-07-05 17:40:54 -03:00
Mark Liversedge
988a70aed3 Reduce MeanMax search space
.. to speed up extracting the mean maximals.

.. we still work at 1s intervals for very short durations
   but gradually increase to longer as the duration gets
   over an hour.

.. for almost all usage this will not make a difference to the
   values extracted since the actual values are largely rounded
   to integer values (and therefore the granularity was already
   being disposed after the search).

.. the exact durations are;

        Duration    Increment
        <120        1
        <600        2
        <1200       5
        <3600       20
        <7200       120
        >= 7200     300
2015-07-05 21:37:43 +01:00
Alejandro Martinez
2350141712 Added some charts for multisport usage
Activities: CV
Trends: CV and Speed histogram
Library: PMC (TriScore), Time in Pace Zones, Run and Swim Pace
2015-07-05 16:27:43 -03:00
Mark Liversedge
a19f67f586 Check Season Range after edit/load
.. to make sure the date range is not negative, since that
   causes SEGV all over the codebase, which assumes a date
   range is always positive.
2015-07-05 09:40:22 +01:00
Mark Liversedge
47d19d6f19 Revert "Add support for reading multi sport FIT files."
This reverts commit 7fdedf0bfe.

.. we will come back to look at multisport FIT files in v4.0
   The main problem is related to the position of the SESSION
   header within the file.
2015-07-04 18:15:01 +01:00
Jan de Visser
c49ec37db8 Link libdl.so for D2XX on Linux/BSD hosts
.. libdl enables dynamic linking, this is required when
   D2XX support is compiled in.
2015-07-03 15:16:54 +01:00
Mark Liversedge
b6f715bbde Support Moxy Firmware v1.0
.. fit file manu:76 identified as Moxy
.. support 7 field CSV, ignore session number

NOTE: support for UTC dates is not present since we
      have no way of checking what TZ the ride was
      recorded in !
2015-07-03 14:57:09 +01:00
Mark Liversedge
e28be2ff78 Add Ae/An TISS to peak power charts
.. show the An / Ae stress to provide context to the
   changes in peak power durations.

.. or "why my anaerobic power isn't getting any better
   despite spending all my time doing sweetspot"
2015-07-02 08:39:21 +01:00
Mark Liversedge
42274f87ae Interval Discovery config default no PEAKS
.. since interval discovery impacts load time (reading from backing
   store) and refresh time (computing metrics for intervals) we do
   not search for PEAK power/pace by default.

.. if the user wants that info (which is of limited value) then they
   can switch it on in preferences/options.

.. should help to reduce performance overhead for startup and refresh
   especially as an experience immediately after upgrading to v3.2
2015-07-02 07:45:27 +01:00
Mark Liversedge
10a85702f3 Merge pull request #1429 from amtriathlon/master
Metric to Imperial conversion applied twice in Trends->RideSummary
2015-07-01 06:41:26 +01:00
Alejandro Martinez
edf490b8d4 Metric to Imperial conversion applied twice in Trends->RideSummary
Now it is done by RideMetric::toString. Fixes #1424
2015-06-30 19:25:55 -03:00
Mark Liversedge
d0112d057b Merge pull request #1426 from Joern-R/translation
Update Translation DE - 2nd commit
2015-06-28 19:09:47 +01:00
Joern
92f957c1f8 Update Translation DE - 2nd commit
.. missed some parts
2015-06-28 20:15:05 +02:00
Joern
ecd6f36830 Update Translation DE
.. add missing translation
.. fix some texts
2015-06-28 20:06:55 +02:00
Mark Liversedge
f87d833578 Merge pull request #1425 from Joern-R/translation
Update Translation DE
2015-06-28 19:02:08 +01:00
Mark Liversedge
976d305388 V3.2 Release Candidate 2
.. updated build number
2015-06-28 15:19:41 +01:00
Mark Liversedge
e7b122360a Fix Mac QT4.8 showhideToolbar compile error 2015-06-28 14:55:07 +01:00
Mark Liversedge
20f93af2dc Fix SEGV on Mac QT4.8
.. referencing the QAction showhideToolbar that is not
   used if QT < 5.2.1 results in a crash.
2015-06-28 08:25:38 +01:00
Mark Liversedge
e94f3577c8 Fix SEGV with Power Phase on AllPlot
.. lots of scenarios to cause the SEGV but all related
   to the CurveColors::save/restore state functions that
   cast QwtPlotIntervalCurves to the wrong type and BOOM!

.. thanks to Simon Brewer for the ride file that had this data.
2015-06-27 19:03:49 +01:00
Mark Liversedge
1b916549d8 Fix tHb units
.. its grams per decilitre
2015-06-27 17:40:37 +01:00
Mark Liversedge
8ee944ab6e Add Moxy tHb metrics
.. to match the smO2 ones.
2015-06-27 17:22:31 +01:00
Mark Liversedge
7484045f4c TrainingPeaks download nits
.. window is too small by default
.. reinstate ^L shortcut
2015-06-27 16:48:12 +01:00
Mark Liversedge
56c79ed71d Fix SEGV on save config during refresh
.. by cancelling refresh before saving
2015-06-27 16:15:58 +01:00
Mark Liversedge
b7e9073d3b Merge pull request #1423 from amtriathlon/master
Setup pace zones for running and swimming in New Athlete
2015-06-27 15:48:38 +01:00
Alejandro Martinez
7c4f056f09 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-06-27 11:03:56 -03:00
Alejandro Martinez
7bb725ce20 Setup pace zones for running and swimming in New Athlete
Changed CV default according to sport
Part of #1298
2015-06-27 11:02:40 -03:00
Mark Liversedge
9151ae61ae Merge pull request #1422 from dresco/temptest
Small fix for C -> F temperature conversion
2015-06-27 13:00:17 +01:00
Jon Escombe
3062e273ca Small fix for C -> F temperature conversion 2015-06-27 12:50:09 +01:00
Mark Liversedge
e6f9c2e65f Don't skip user intervals for peaks etc
.. when the autodiscovery has been switched off.
2015-06-27 12:45:14 +01:00
Mark Liversedge
28b2a12bc3 Enable user to configure autodiscovery
.. select which kind of intervals we want

.. makes it faster and also reduces the size of
   the rideDB.json file quite dramatically which
   may be useful for some users.
2015-06-27 12:30:27 +01:00
Mark Liversedge
97eede8a03 Remove ColumnChooser "duplicates"
.. where metadata fields are actually for metric
   overrides we do not need to add to the list -
   since they are already there as metrics.
2015-06-27 08:58:07 +01:00
Mark Liversedge
89b4daf9ea "Calendar_Text" and Filtering
.. if you filter the ride list the reset will search for
   a heading "Calendar_Text" that will not exist since it
   is prettified to "Calendar Text" in the constructor.
2015-06-26 20:44:47 +01:00
Mark Liversedge
f71cf2cb4e Fix Column Chooser 'Z' fields
.. a throwback from the old SQL model days and not required
   any more. Also helps to explain issues with calendar text.
2015-06-26 20:33:54 +01:00
Mark Liversedge
cc281e6e7a Merge pull request #1421 from amtriathlon/master
Fixed interval alignment
2015-06-25 20:12:44 +01:00
Alejandro Martinez
7dd10d7c75 Fixed interval alignment
To be inline with the new interval structure
Problem was clearly visible in swim workouts (Manual, TCX and PWX).
2015-06-25 11:12:59 -03:00
Mark Liversedge
49d7ff7a7d Fix SEGV on time going backwards
.. as demonstrated in Günter Speckhofer file after
   some editing in the editor.
2015-06-23 22:18:58 +01:00
Mark Liversedge
06cf774867 Minor cosmetic tweaks for Core Temp
.. disappeared on plots for numerous reasons
.. now has its own color config
.. chart axis tweaked to be more appropriate
2015-06-21 15:25:09 +01:00
Mark Liversedge
63597dc82d Fix Core Temp SEGV
.. importing ride < 60s long

Fixes #1411
2015-06-21 12:57:11 +01:00
Mark Liversedge
187359a271 V3.2 RC1X
.. Release Candidate after some late commits
   before RC1 was issued.
2015-06-19 15:07:51 +01:00
Mark Liversedge
483f7fafa0 RideMetric::isLowerBetter()
.. seems redundant, but at least reflect the type() of
   metric when deciding; if the metric is defined as
   being of type RideMetric::Low then return true
   otherwise false.

.. the metric can override this method if needed if
   is is still only an average (e.g. weight ?)
2015-06-19 09:02:41 +01:00
Mark Liversedge
7bf1e73154 Merge pull request #1409 from amtriathlon/master
Added error message for unsupported Lap Swimming FIT files
2015-06-19 07:47:21 +01:00
Alejandro Martinez
132e8cd196 Added error message for unsupported Lap Swimming FIT files
Until proper handling is added better to give an error message,
otherwise an activity with no data is created causing confusion.
2015-06-18 20:26:25 -03:00
Mark Liversedge
40fdc66a1b Add Core Temperature
.. New derived data series representing an estimate of core temperature
   on the basis of HR changes.

   * shown on AllPlot and RideSummary
   * 2 new metrics; max and avg core temperature

.. This has been based upon "Estimation of human core temperature from
   sequential heart rate observations" Mark J Buller, William J Tharion,
   Samuel N Cheuvront, Scott J Montain, Robert W Kenefick, John
   Castellani, William A Latzka, Warren S Roberts, Mark Richter,
   Odest Chadwicke Jenkins and Reed W Hoyt. (2013). Physiological
   Measurement. IOP Publishing 34 (2013) 781–798.
2015-06-18 18:41:04 +01:00
Mark Liversedge
de146c3b24 Merge pull request #1408 from amtriathlon/master
Peak Pace metrics need to be RideMetric::Low
2015-06-18 13:48:36 +01:00
Alejandro Martinez
56fadcbd4b Peak Pace metrics need to be RideMetric::Low
For "Group By" to work properly in LTM charts
2015-06-18 09:38:53 -03:00
Mark Liversedge
855dc18a74 Merge pull request #1404 from amtriathlon/master
Fixed wrong caching when CPPlot is filtered by activity type
2015-06-17 17:11:22 +01:00
Alejandro Martinez
1be8e93356 Enable Efficiency Factor and Aerobic Decoupling metrics for Running
Fixes #1407
2015-06-17 11:28:58 -03:00
Mark Liversedge
55e8255154 V3.2 Release Candidate 1
.. all features now complete, bar a couple of minor
   pending changes.

.. upgrade process feature complete, bar some minor
   cosmetic nits for colors/metadata

.. time to validate the code changes since February
   with the user community and freeze new features
2015-06-17 12:39:48 +01:00
Mark Liversedge
749b6f00fc Add W'bal Time In Zone (3c of 3c)
.. add W'bal Zoned to Histogram
   - for a ride
   - for a date range
   - *NOT* for a compared ride
   - for a compared date range

This makes the last of the updates for W'bal
in zone, but highlights the issues related to
W'bal being held in a different structure to
the rest of the ride data.

Need to think on how that might work better
for intervals.
2015-06-17 12:22:00 +01:00
Alejandro Martinez
ab07ad7dcb Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-06-16 11:08:13 -03:00
Mark Liversedge
4b32b681aa Logic error in FIT reader
.. introduced with multi-session update
.. need to audit and thoroughly test that code
2015-06-16 13:44:49 +01:00
Mark Liversedge
3be61454db Reconise Alexandre Prokoudine
.. for Russian translation contribution
2015-06-16 08:04:09 +01:00
Mark Liversedge
6a3cd6b6a2 Merge pull request #1405 from prokoudine/master
Updated Russian translation
2015-06-16 08:01:32 +01:00
Alexandre Prokoudine
5d589af458 Updated Russian translation 2015-06-16 02:57:21 +03:00
Alejandro Martinez
c862e42162 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-06-15 19:46:49 -03:00
Mark Liversedge
d76cb9665c Fix SEGV in W'bal ridefilecache
.. when computing the distribution due to problems
   casting double to int for nan/inf values.
2015-06-15 22:00:01 +01:00
Alejandro Martinez
e7163cbb64 Fixed wrong caching when CPPlot is filtered by activity type 2015-06-15 16:05:14 -03:00
Mark Liversedge
1e3d7eeb56 Add W'bal Time In Zone (3b of 3c)
.. add W'bal Zoned to Histogram
   - for a ride
   - for a date range
   - for a compared ride
   - for a compared date range

.. still need to update ridesummary to show
   summary of w'bal zone distribution (3c)
2015-06-15 13:37:29 +01:00
Mark Liversedge
3047bb9d45 Add W'bal Time In Zone (3a of 3c)
.. add W'bal distribution to Histogram
   - for a ride
   - for a date range
   - for a compared ride
   - for a compared date range

.. still need to revisit to do in zones (3b)

.. still need to update ridesummary to show
   summary of w'bal zone distribution (3c)
2015-06-15 10:43:28 +01:00
Mark Liversedge
4f1ac967f1 Add W'bal Time In Zone (2 of 3)
.. add metrics and trends chart
2015-06-14 10:52:21 +01:00
Mark Liversedge
d9b81fd228 Add W'bal Time In Zone (1 of 3)
.. adding it to the CPX file
2015-06-14 09:32:01 +01:00
Mark Liversedge
62473866ab Route Intervals Colour
.. not gray !
2015-06-13 19:47:24 +01:00
Mark Liversedge
4325fea4ac Discard data with no time or distance
.. we need one or the other !
2015-06-13 17:33:04 +01:00
Mark Liversedge
8316a0b280 Merge pull request #1400 from amtriathlon/master
Set Pace Zone Shading and Pace units according to sport in CV chart
2015-06-13 07:18:53 +01:00
Alejandro Martinez
3f35f7878e Set Pace Zone Shading and Pace units according to sport in CV chart
In activities it depends on selected activity, bests are automatically filtered.
In range mode it can be set by sidebar or home filters for single sport
2015-06-12 21:38:21 -03:00
Mark Liversedge
d8eeb8090d Fix SEGV on zoom change when isolated in AllPlot
.. that code is horrible.
2015-06-12 17:12:05 +01:00
Joern
18a611dd02 Merge pull request #1399 from Joern-R/master
Update Translation DE
2015-06-12 18:03:48 +02:00
Joern
05232c90b7 Update Translation DE
... translation DE
2015-06-12 18:08:12 +02:00
Mark Liversedge
2dda2bfe9d Add Climb Rating metric
.. based upon Fiet-type formula elevation^2 / distance.
   From an idea on Dan Conelly's blog.

   Some examples:
      Mt Ventoux        - 121
      Alpe d'Huez climb - 83
      Galibier          - 81
      Glandon           - 66

.. so it's not perfect, but gives a good sense of hard
   versus easy !
2015-06-12 15:29:01 +01:00
Mark Liversedge
a5fa5fe17f Add qmake's '.qmake.stash' to .gitignore 2015-06-11 16:10:00 +01:00
Mark Liversedge
b092315a11 Recognise Alex Harsanyi 2015-06-09 19:58:32 +01:00
Mark Liversedge
479e0acfd8 Revert "RideFile::isRun() -- only use the "Run" tag to clasify a file as running" 2015-06-09 19:56:33 +01:00
Mark Liversedge
dfc8e9bae3 Merge pull request #1397 from alex-hhh/multisport-import-2
Import multisport FIT files
2015-06-09 19:54:25 +01:00
Mark Liversedge
c322623fde Tweak route drop dialog
.. titlebar and button layout.
2015-06-08 19:54:29 +01:00
Alex Harsanyi
834a11bd0f RideFile::isRun() -- only use the "Run" tag to clasify a file as running
For multi-sport files, the bike section might record vertical oscillation or
ground contact time from the HRM-RUN sensor when moving in and out of
transition.
2015-06-08 22:05:46 +08:00
Mark Liversedge
298bf545e5 Merge pull request #1396 from amtriathlon/master
Use sport specific metric for PMC in RideSummaryWindow
2015-06-08 13:09:06 +01:00
Alejandro Martinez
645f98dd34 Use sport specific metric for PMC in RideSummaryWindow
For single ride use sport specific base metric
For date range use sport specific base metric if filtered activity
list is homogeneous or combined otherwise.
2015-06-07 22:52:33 -03:00
Mark Liversedge
28a53a5249 Add Sustained in Zone to trend layout
.. new chart to plot sustained time in zone.
2015-06-07 16:51:18 +01:00
Claus Assmann
1d5755443d Fix comment typos 2015-06-07 16:31:56 +01:00
Mark Liversedge
3ada40c7ad errant copy paste in last commit
.. setting table rowCount when it shouldn't. It was a
   harmless line of code but would confuse people later
   on when editing this code
2015-06-07 12:16:48 +01:00
Mark Liversedge
3a39b771c5 Tweak drag/drop routes compare pane
.. sort so most recent first

.. if dropping less than 10 items then add checked
   otherwise add them unchecked.
2015-06-07 12:13:04 +01:00
grauser
840c0c05ac Add Color to Segment name 2015-06-06 22:38:26 +02:00
Mark Liversedge
6e1aef249a Add Date to Segment name
.. when matching on drop into compare pane as they all
   arrive with the same name !
2015-06-05 22:04:52 +01:00
Mark Liversedge
00be914a61 Add matched segments on drop into compare pane
.. pops up a dialog to ask if you want to just add this
   segment (the default) or add all intervals on this
   segment for a season (you can select a season).
2015-06-05 20:43:20 +01:00
Mark Liversedge
d932a1a8e9 Missed SustainMetric.cpp in last commit 2015-06-04 21:04:43 +01:00
Mark Liversedge
ddf6203c37 Sustained Time in Zone Metrics
.. how much time is spent on sustained efforts
   in each zone.
2015-06-04 21:00:09 +01:00
Mark Liversedge
5966052fcc Merge pull request #1394 from Joern-R/fit
FIT File Read - Exception not catched
2015-06-04 16:50:37 +01:00
Joern
0fac48d451 FIT File Read - Exception not catched
... exception "Truncated" for the "final" read call of the FIT file
reader was not catched, causing termination of the program (problem
reported with an example file being truncated at the end)
2015-06-04 17:18:11 +02:00
grauser
cbad81b846 Remove qDebug 2015-06-03 22:40:32 +02:00
Mark Liversedge
6dee248b0d Plot Sustained on CP plot in compare mode
.. compare seasons
2015-06-03 21:37:09 +01:00
Mark Liversedge
f7ad52d0b6 Less qDebug() 2015-06-03 21:05:10 +01:00
grauser
f8ef8ef737 RideFile: Don't use 0.0 as min or max for gps lat/lon 2015-06-03 19:52:45 +02:00
Mark Liversedge
7fb4ec5649 bool not BOOL 2015-06-03 16:41:05 +01:00
Mark Liversedge
1a4e53dd29 Merge pull request #1392 from amtriathlon/master
Discover Peak Pace intervals for running and swimming
2015-06-03 16:14:19 +01:00
Alejandro Martinez
fe4222d2c6 Discover Peak Pace intervals for running and swimming 2015-06-03 12:05:54 -03:00
Mark Liversedge
ff96eb7ba9 CP rangemode plot effort logic fix
.. to now consider the ride intervals when plotting
   for a date range!
2015-06-03 15:20:27 +01:00
Mark Liversedge
807859e26a Add Sustained Efforts to CP Chart
.. overlay all sustained efforts on the curve
2015-06-03 14:59:56 +01:00
Alex Harsanyi
d2c9178aab Add support for reading multi sport FIT files.
Multisport FIT files are imported as separate activities, one for each session
in the file.

The internal storage format for multisport files was also changed form TCX to
JSON, as the TCX file would not store advanced metrics, like the left-right
balance from the Garmin Vector power meter.
2015-06-03 20:47:24 +08:00
Mark Liversedge
c04d8b9370 Fix W' Power metric
.. use all seconds not just those above CP !
2015-06-02 16:22:22 +01:00
Mark Liversedge
9a029c7f91 Add W' Power metric
.. as W' work (joules from time spent above CP) divided by duration.
   This represents the W' contribution to Average Power.
2015-06-02 15:09:32 +01:00
Mark Liversedge
b8864b8516 Fix interval painting and lazy delete
.. the lazy delete was a horrible hack and memory leak.
   So, now the paint delegate no longer dereferences the
   IntervalItem * from the QTreeWidgetItem.

   Instead we use setData for UserRole+1 to store the interval
   color when constructing the trees. The paint function can
   get this directly and we avoid any contention when the
   intervals are deleted and created.

   The lazy delete can be removed and deleted once the changes
   have been notified via intervalsUpdate().
2015-06-02 10:56:28 +01:00
grauser
4c34e4e946 Correct GPS route search optimisation 2015-06-01 23:49:24 +02:00
grauser
fa71f9a600 SlfParser: Read start date in last format 2015-06-01 23:47:06 +02:00
Mark Liversedge
21ca33f798 Lazy Delete IntervalItems in RideItem
.. since they are deleted in threads and affect the gui

.. to avoid the overhead of cross-thread mutex we just
   delete intervals lazily; each time we refresh them
   the last lot are wiped away.
2015-06-01 18:51:55 +01:00
Mark Liversedge
6df17471d9 Fix paint SEGV on RideItem::updateIntervals()
.. zaps interval items whilst they are referenced in
   the interval tree etc.
2015-06-01 13:54:50 +01:00
Mark Liversedge
9374e95732 Set default chrome on Yosemite
.. to match the new UI.
2015-06-01 10:50:11 +01:00
Mark Liversedge
d775519453 Fix NewCyclistDialog bugs
1. Zones config was being written to wrong path
2. Pmax label and Edit were orphaned, not on a layout
3. Upgrade dialog popped up on open

Fixes #1380
2015-06-01 08:53:48 +01:00
Mark Liversedge
15b0211798 EFFORTS found using metadata only
.. if no zones are configured.
2015-05-31 23:52:02 +01:00
Mark Liversedge
6025444a68 Added "Pmax" override in metadata
.. only used in interval discovery
2015-05-31 23:21:59 +01:00
Mark Liversedge
69a45d0b21 TT analysis fixups
.. SEGV on setting CP when no zones configured. Since
   RideItem::updateIntervals() dereferenced a range
   when CP is set, but none existed.

.. fixup use of Metadata field "W'" to override settings
   in Metrics tab.
2015-05-31 22:18:17 +01:00
Mark Liversedge
ceca142ca9 Mark MATCHES that are To Exhaustion
.. name and also red color.
2015-05-31 13:34:22 +01:00
Mark Liversedge
6c5f3e2dcf Autodiscover MATCHES
.. and add them to the ride EFFORTS
2015-05-31 13:05:22 +01:00
Mark Liversedge
d902bb332c Merge pull request #1387 from Joern-R/pull1
Auto-Intervals - Translation Enablement
2015-05-30 08:29:51 +01:00
Mark Liversedge
0bff270d5d Fix interval offsets
.. when adjusting sample offsets to start from zero
2015-05-29 20:44:45 +01:00
Mark Liversedge
2c13186fc6 Revert GPS route search optimisation
.. it fails to find my segments !
2015-05-29 20:22:56 +01:00
Mark Liversedge
e30509c4b9 Interval List indicate high quality
.. with a sidebar indicator

.. we may need to change when we have planned workouts
   as the intervals will need to match the plan.

.. but we can use the same concept of 'quality' when
   comparing a full activity with what was planned.
2015-05-29 19:50:47 +01:00
Joern
563d94d2ca Auto-Intervals - Translation Enablement
... enable Translation for Text is auto-determined intervals
... adjust Translation DE for the changes
2015-05-29 19:53:11 +02:00
Joern
7e887a9669 Merge pull request #1382 from Joern-R/master
Update - Translation DE
2015-05-29 18:39:25 +02:00
Mark Liversedge
3ad16e01d9 LTM no span slider in tile view
.. too much going on !
2015-05-29 14:43:41 +01:00
Mark Liversedge
f8fd7752a8 Allow user to stop tracking a segment
.. in case you add one that isn't useful.
2015-05-29 12:42:41 +01:00
Mark Liversedge
e281f94135 Power Zone metric has 1 decimal
.. to indicate how far into the zone we got, so
   3.1 is 10% into zone 3, whilst 7.9 is seriously
   high Neuromuscular power, but below Pmax

.. we use Pmax to bound the upper value when calculating
   how deep we got into the very upper zone; so it is
   possible for the metric to be 8.x when only 7 zones
   are defined (when the power value is > Pmax)
2015-05-29 10:18:09 +01:00
Mark Liversedge
3b07d8997a W'bal y-axis consistency
.. in stack mode always start from min W'bal or 0, whichever
   is smaller. This makes it easier to identify when W'bal
   is (or is not) being consumed across rides.
2015-05-29 09:54:20 +01:00
Joern
f3dbb4e0f4 Update - Translation DE
... update Translation
2015-05-28 18:56:18 +02:00
grauser
19276db443 Route: QVariant add .toDouble() 2015-05-27 21:11:39 +02:00
Mark Liversedge
eb6e580079 Change the color of an interval
.. in the IntervalEditDialog
2015-05-27 16:04:15 +01:00
Mark Liversedge
62f937e6b2 Interval Sidebar show Interval Color
.. using same kind of decoration as the ride list
   with a small bar to indicate the chosen color
   for the interval.
2015-05-27 15:37:45 +01:00
Mark Liversedge
9484b9ea6e Interval Summary EXCLUDING selected intervals
.. when looking at a ride and working with intervals it
   is sometimes useful to look at the rest of the ride
   exluding the intervals selected.

.. we now show the metrics for the intervals selected,
   followed by for each interval then lastly for the
   rest of the activity i.e. excluding the intervals
   selected.
2015-05-27 06:18:53 +01:00
grauser
12b33f47a2 Remove last wrong commit 2015-05-26 23:45:35 +02:00
grauser
a68e87636f Route Search: Add comment 2015-05-26 23:29:15 +02:00
grauser
68742ba7a6 Route Search: verify Min-Max Lat-Lon before searching 2015-05-26 23:27:25 +02:00
grauser
38c957842d SlfParser: update for last vesions 2015-05-26 23:27:25 +02:00
Mark Liversedge
774ac155f9 Fix SEGV on drag/drop ride into compare pane
.. when moved to passing RideItem* from RideFile* we
   forgot to change for dropping entire ride !
2015-05-26 21:32:40 +01:00
Mark Liversedge
8abb2e123c Fix SEGV when delete last ride
.. currentRideItem() is NULL, and IntervalSummaryWindow
   was dereferencing the pointer before checking if it
   was NULL.
2015-05-26 21:08:35 +01:00
Mark Liversedge
1e1eafbbc9 Overlapping Sustained Efforts
.. we now filter sustained efforts by zone rather than picking
   the very best non-overlapping effort.

.. this means that a L7 sprint mid way through a L4 climb within
   a L3 ride will find find 3 sustained intervals rather than just
   the sprint.
2015-05-26 16:39:14 +01:00
Mark Liversedge
142685ef70 Fox off-by-one for Zone/Level
.. they start at 0, not 1 in class Zones but users
   think in terms of Zones 1-7 !
2015-05-26 09:25:59 +01:00
Mark Liversedge
92cee86e7c Simplify EFFORTS intervals
.. just place TTE, EFFORTS and SPRINTS under
   the EFFORTS interval type.

.. this is getting ready for handling overlapping
   efforts rather than just the very best.
2015-05-25 20:16:44 +01:00
Mark Liversedge
d6e54241ad Move W'bal plot next to Power
.. in AllPlot. So you can see how power/W'bal compares

.. it would be neat to let users move them around themselves
   but thats for another day
2015-05-25 18:25:18 +01:00
Mark Liversedge
3fc8e5abec Route finding skips on when found
.. to avoid finding the same segment twice if it
   is a shortish one that finishes nr a stop point
   like traffic lights or top of a hill.
2015-05-25 17:03:48 +01:00
Mark Liversedge
26350499ca Qt::ItemNeverHasChildren is from QT 5.1.1 not 5.0
.. fix compiler failure on QT5.0.x
2015-05-25 11:40:06 +01:00
Mark Liversedge
8b507781db Fix Withings URL trailing slash ('/')
.. when the URL for the webservice is created it places
   a slash between the host info from preferences and the
   service path:

   http://wbsapi.withings.net/measure?action=getmeas ..

   By default, the withings server configuration has a
   trailing slash, which results in a URL of the form:

   http://wbsapi.withings.net//measure?action=getmeas ..

   The double slash here ----^^ used to be accepted by
   the Withings servers but more recently it is rejected
   so this patch removes any trailing slash before
   constructing the full path.
2015-05-25 09:55:12 +01:00
Mark Liversedge
aada2ca316 Revert "Only look for first occurrence of segment"
.. if you do hill repeats or loops then this commit
   isn't at all helpful to you !. This reverts the
   commit b90c5c0894.
2015-05-24 08:40:51 +01:00
Mark Liversedge
a9d8b2a194 Only look for first occurrence of segment
.. to avoid duplicate entry for a 'small and
   partial' match in route search
2015-05-23 21:25:38 +01:00
Mark Liversedge
e01fbfc6b4 Route Search Refactor Part 2 of 2
.. Route segments are found during interval refresh

.. Config/routes.xml only holds config now

.. The fingerprint for a rideitem includes the route
   fingerprint now so it will refresh automatically
   when the routes config changes

.. if no routes are defined then no work is done, so the
   amount of work is really defined by the user

NOTE: RouteWindow, and now, RouteItem will need to
      be reworked and fixed up for v4.0
2015-05-23 18:40:10 +01:00
Mark Liversedge
5e005ad99e Reinstating Interval functions: MULTI-SUMMARY
.. summarising when >1 interval selected.
2015-05-23 15:52:04 +01:00
Mark Liversedge
c4b30b2d62 Route Search Refactor Part 1 of 2
.. clean code and get ready to add background
   scanning for routes

.. next update will add background scanning
2015-05-23 13:38:07 +01:00
Mark Liversedge
4779e1e982 No Zones or CP then don't search for TTE
.. pointless searching for a default value.
2015-05-23 10:37:16 +01:00
Mark Liversedge
ca6085f25e Fix AllPlotInterval SEGV on SAVE
.. it optimises out setRide when it is the same ride as currently
   being plotted, but the intervals will have changed since they
   were reloaded

.. so we always notify of intervals changed after intervalsUpdate()
   just in case other charts skip refresh when the selected ride is
   the same as the one they are already showing
2015-05-23 09:18:09 +01:00
grauser
fb511fe2a9 AnalysisSidebar: Reinstate interval SORT in list 2015-05-23 08:48:23 +02:00
grauser
e7936a29b5 AnalysisSidebar: Reinstate interval DRAG/DROP in list 3 2015-05-22 21:49:06 +02:00
Mark Liversedge
42b4f48f2a Reinstating Interval functions: ADD VIA FIND DIALOG
.. by click and drag
2015-05-22 19:17:39 +01:00
Mark Liversedge
8b0c37fd89 Refactor RideFile out of IntervalItem
.. and a few nits to get Routes to compile, but it
   needs to be aligned to the intervalsUpdate() method
   in RideItem.
2015-05-22 18:41:59 +01:00
Mark Liversedge
c9eee6ca53 Reinstating Interval functions: ADD ON GOOGLE MAP
.. by click and drag
2015-05-22 17:20:02 +01:00
Mark Liversedge
359606c3cd User Intervals Tree always at top
.. in sidebar
2015-05-22 15:13:21 +01:00
Mark Liversedge
9db6291034 Fixups Add Interval on AllPlot
.. fix by distance mode
.. remove findPeakPower from sidebar
2015-05-22 14:57:38 +01:00
Mark Liversedge
ddf3aac246 Reinstating Interval functions: ADD ON ALLPLOT
.. by click and drag
2015-05-22 14:47:43 +01:00
Mark Liversedge
60e2b6f28b Fix interval metric refresh after edit
.. when the start/stop is changed.
2015-05-22 12:15:35 +01:00
Mark Liversedge
2ae2c0c652 Reinstating Interval functions: RENAMING/RENUMBERING
.. rename a number of intervals in one go
2015-05-22 11:58:16 +01:00
Mark Liversedge
d6d41df95d Reinstating Interval functions: EDIT
.. not extending to include new members, just the old
   functionality reinstated for now.
2015-05-22 10:26:35 +01:00
Mark Liversedge
85387236ce Remove qDebug() erroneously committed 2015-05-22 08:47:19 +01:00
Mark Liversedge
15e5f54e40 Reinstating Interval functions: SELECT/DESELECT
.. from interval navigator or map marker
2015-05-22 08:41:26 +01:00
Mark Liversedge
6e18774fa7 Retain selection status when intervals updated
.. since we are called to refresh when intervals
   are updated within the RideItem
2015-05-22 07:31:24 +01:00
grauser
398f003a93 AnalysisSidebar: Reinstate interval DRAG/DROP in list 2
- Apply change to RideFile
2015-05-22 08:15:31 +02:00
Claus Assmann
5252ecf9a3 Fix QT4.8 drag/drop update compile error
.. Qt::NeverHasChildren is QT5 only
.. Calling signal instead of notifier in Context
2015-05-22 06:54:26 +01:00
grauser
8145cbd764 AnalysisSidebar: Reinstate interval DRAG/DROP in list (correction2)
Let Drag non User intervals for compare pane
2015-05-21 23:03:29 +02:00
grauser
3ef9bb5960 AnalysisSidebar: Reinstate interval DRAG/DROP in list (correction)
Last commit correction
2015-05-21 22:37:27 +02:00
grauser
4124290787 AnalysisSidebar: Reinstate interval DRAG/DROP in list 2015-05-21 22:36:05 +02:00
Mark Liversedge
5368ee6bfb Add SSL to versions list
.. so we can see if it is compiled in !
2015-05-21 14:38:13 +01:00
Mark Liversedge
9c001b66df Add Metric for Power Zone
.. so you can see what zone an interval was actually in. This is
   largely useful for sustained intervals but also for peaks.
2015-05-21 09:50:40 +01:00
Mark Liversedge
ab5a935d44 Fixup sidebar refresh after RideItem::updateIntervals()
.. by introducing a specific signal to trigger it.

.. its very specific, but its more flexible (and a lot less
   work) than adopting a model for the QTreeView that would
   be a better 'architecture'.
2015-05-20 05:55:55 +01:00
grauser
9bfa5cd06e Power Zones: Update existing HR range 2015-05-19 23:34:06 +02:00
grauser
b52197a94e Power Zones: Update existing range 2015-05-19 22:47:30 +02:00
Mark Liversedge
536866a9ce Fix IntervalSidebar SEGV on Save
Rebuilds the interval tree when a ride is saved and
refreshes intervals as a result.

There are a number of other scenarios that will also
need to call a sidebar refresh as a result of the
intervals being updated.

* edit ride data
* change metadata

There may be others lurking. This needs a review of
the code pathways leading to RideItem::updateIntervals()
and how we keep the sidebar in sync.
2015-05-19 21:17:12 +01:00
grauser
61d7aeeb7a Auto Interval Discovery : Update SPRINT detection 4 2015-05-19 21:13:00 +02:00
Mark Liversedge
d455f163ef Zone fingerprint include Pmax fixup
.. needed to change in two places in Zones.cpp !
2015-05-19 19:32:30 +01:00
grauser
ef4e908f06 Auto Interval Discovery : Update SPRINT detection 3
try with 3 components model
2015-05-19 19:01:51 +02:00
Mark Liversedge
1191e3a24f Fix syntax error in RideItem.cpp 2015-05-19 11:49:59 +01:00
Mark Liversedge
0578da8086 Fix off by on in the effort algorithm
.. subtraction in integrated series is for the period
   after the current point (i) not from the current point.
2015-05-19 11:43:28 +01:00
Mark Liversedge
2175806e30 Fix off-by-two effort/sprint discovery
.. the integrated joules and resampling to 1sec code
   was not taking into account the first sample is 0 seconds
   and was incrementing 1 sample early too.

   As a result the integrated series was 2seconds ahead of the
   recorded data, meaning the discovered efforts and sprints
   would have a start time 2 seconds ahead of where they
   should have been.
2015-05-19 10:55:56 +01:00
grauser
feb39a3942 Auto Interval Discovery : Update SPRINT detection 2 2015-05-18 23:18:27 +02:00
grauser
4fe02fe8f2 Auto Interval Discovery : SPRINT detection correction 2015-05-18 22:12:07 +02:00
grauser
8e24abced0 Auto Interval Discovery : Update SPRINT detection 2015-05-18 21:30:39 +02:00
grauser
6911c1e485 Auto Interval Discovery : SPRINT detection 2015-05-18 19:57:09 +02:00
Mark Liversedge
d92ad6fe0c Reinstating Interval functions: DELETE
.. you can now delete interval(s) via the hamburger menu
   or by right-clicking a specific interval.
2015-05-18 18:41:51 +01:00
Mark Liversedge
0fb15262f2 Establish runtime link for USER intervals
.. from IntervalItem to RideFileInterval when
   the ridefile is opened
2015-05-18 15:44:21 +01:00
Mark Liversedge
482ee11fbe Fixups For JsonRideFile.y
.. for intervals now as pointers
2015-05-18 14:21:50 +01:00
Mark Liversedge
0e11f9de11 RideFile::intervals_ now array of pointers
.. so we can keep a reference to the user interval
   in a ridefile from the rideitem and not worry about
   trying to match or handle index offsets into the array

.. this is required to fixup the relationship between
   an IntervalItem and a RideFileInterval in RideItem
   and RideFile respectively.
2015-05-18 13:57:21 +01:00
Mark Liversedge
bdeb4870a1 Reinstating Interval functions: ZOOM
.. you can now zoom out / zoom in for an interval.
.. the rest of the menus items are also shown but not active yet.
2015-05-18 12:25:32 +01:00
Mark Liversedge
f7eb53d169 Add Pmax to Zones::fingerprint()
.. and minor cosmetic on edit.
2015-05-17 21:00:53 +01:00
grauser
b439b0cd1f Power Zones: Add Pmax (with CP and W') 2015-05-17 21:14:08 +02:00
Mark Liversedge
708e118536 Computrainer Serial Protocol Docs
.. should have added this a long time ago!
2015-05-17 15:31:00 +01:00
Mark Liversedge
8cf97b96a8 WKO+ 3 File Format Documentation
.. should have added to the repo a long time ago.
2015-05-17 15:26:20 +01:00
grauser
91a1d6697f Auto Interval Discovery : Update CLIMB detection 4 2015-05-17 10:02:53 +02:00
grauser
2767de8b8b Auto Interval Discovery : Update CLIMB detection 3 2015-05-16 20:18:38 +02:00
Mark Liversedge
b2b6db0676 Add MMP % metric
.. good for intervals and shows the percentage of the
   PD model power duration you exercised at in the interval.
2015-05-16 16:33:59 +01:00
Mark Liversedge
2c5cc110bd Add Sustained Efforts
.. anything over 85% of the power for duration versus the configured
   CP and W' between 2mins and 1hr will be flagged as a sustained
   effort via the intervals for a ride.
2015-05-16 14:31:31 +01:00
Mark Liversedge
7abe0cfaed Auto interval TTE uses 'quality'
.. searches for highest interval rather than longest
.. fixed double refresh() caused by calls to ride()
2015-05-16 13:48:44 +01:00
Mark Liversedge
2410dd6dbc Search all interval names
.. not just user defined ones
2015-05-16 10:08:30 +01:00
Mark Liversedge
1a2bd09693 TTE time string not seconds
.. instead of 301s we now say 05:01
2015-05-15 23:52:19 +01:00
Mark Liversedge
d9fab25bb5 Fix SEGV on drag interval tree
.. reference IntervalItem* that is null for the
   interval type trees.
2015-05-15 13:17:33 +01:00
Mark Liversedge
617ff27bd4 Autodiscovery of TTE efforts
.. they're pretty rare, but this code will find
   any TTE efforts between 1hr and 2 minutes.

.. it will be extended to find sustained efforts
   but this is just to get the code started
2015-05-15 11:00:13 +01:00
Mark Liversedge
6066fec78a Fix SEGV in CriticalPowerWindow
.. during initial startup when myRideItem is null
2015-05-14 22:26:04 +01:00
Mark Liversedge
6eb9cbfa4f Don't use QVector::removeAt() !
.. its not available on Qt 4
2015-05-14 14:51:29 +01:00
grauser
3afd942b5d Auto Interval Discovery : Update CLIMB detection 2 2015-05-13 23:13:08 +02:00
grauser
84ee85b8ec Auto Interval Discovery : Update CLIMB detection 2015-05-12 21:41:23 +02:00
grauser
a4c11c065d Auto Interval Discovery : Add a ROUTE detection 2015-05-12 21:41:23 +02:00
grauser
bf21a80fb6 JouleDevice: Correct Joule GPS identification 2015-05-12 21:41:23 +02:00
Mark Liversedge
bc1a16fd17 Drag and Drop interval into compare pane
.. fixup mime type pack/unpack code using IntervalItem
   from QTreeWidgetItem::data().
2015-05-12 20:05:28 +01:00
Mark Liversedge
9b9cf099b5 Chart menu rename "Close" to "Remove Chart"
.. it was misleading to most users and reflected the
   code structure more than the user interaction model !
2015-05-12 06:27:29 +01:00
Mark Liversedge
599d136cb2 3D Chart use RideItem::intervalsSelected()
.. it missed out on the refactor for intervals.
2015-05-12 05:43:47 +01:00
Mark Liversedge
073a09cf3f Escape interval names in rideDB.json
.. to make sure intervals with quotes in them don't
   break the parser.
2015-05-11 21:59:25 +01:00
Mark Liversedge
0ee96ec6ce Fix color config update for Interval tree
.. it wasn't being reset when you changed the
   color config in options > appearance.
2015-05-11 21:34:53 +01:00
Mark Liversedge
2096bab2b7 Fix rideDB.json growing !
.. needed to clear metric array for intervals when
   load() at startup !

.. also don't seek power bests when power not available
2015-05-11 20:07:02 +01:00
Mark Liversedge
8873984ba7 Merge pull request #1367 from amtriathlon/master
Added Peak Pace metrics for running and swimming
2015-05-11 11:17:48 +01:00
Alejandro Martinez
90def71147 Added Peak Pace metrics for running and swimming
Durations are the same as for power except for 1 sec and 5 sec.
2015-05-10 20:15:22 -03:00
Mark Liversedge
2a00e9f634 Sidebar Interval Type Font Bold 2015-05-10 17:51:00 +01:00
Mark Liversedge
f109d10c78 Fix Scatterplot SEGV interval
.. lots of issues introduced by refactor
2015-05-10 14:32:53 +01:00
Mark Liversedge
483847875b Don't point hover on PEAK POWER
.. in allplot, its really distracting !
2015-05-10 13:33:29 +01:00
Mark Liversedge
7c2723c552 Interval Selected Fixups
.. GoogleMap wasn't working
.. CP ignored interval selection
2015-05-10 13:19:39 +01:00
Mark Liversedge
bc1b55317d Fix RideDB format error
.. wrote empty METRICS array when all metrics zero in an
   interval. Its pretty rare but breaks the parser

.. this means that metric were being refreshed on every run
2015-05-10 11:38:24 +01:00
Mark Liversedge
906e52bced Auto discover peak power
.. starting to get slow computing metrics for the
   longer duration intervals, need to think closely
   about the performance impact of this.
2015-05-10 10:52:47 +01:00
Mark Liversedge
f8821b9257 Fix SEGV allplot hover compare mode
.. tries to look at intervals for null rideitem
2015-05-10 09:47:51 +01:00
Mark Liversedge
6fce50c520 Fix startKM/stopKM in RideDB.json
.. was getting lost due to cut and paste error

NOTE: you will also need to delete RideDB.json to get
      the problem fixed. I didn't think it was worthwhile
      updating the version number since no dev releases
      are out, noone except developers will be affected.
2015-05-10 09:14:09 +01:00
Mark Liversedge
5ffdbec508 Fix SEGV in PfPv item select
.. replotting in intervalHover was broken during
   the refactor for interval discovery
2015-05-10 09:00:23 +01:00
Mark Liversedge
2bb2b4b152 Don't wipe interval summary
.. on hover when intervals are selected
2015-05-10 08:44:55 +01:00
Mark Liversedge
0f51c0d251 Auto Interval Discovery (Part 3a of 3)
In this part we have now reinstated the sidebar interval tree
but it is refactored out of athlete and into AnalysisSidebar
where it belongs.

* you can hover and select/deselect intervals in the sidebar

Left to do;

* All the interval operations like sort, drag and drop, find
  delete etc do not work at present and will require some work

* Add a color button to the tree to let the user change the color
  for USER defined intervals

* Add more types of intervals to the discovery; esp routes and
  sustained intervals
2015-05-10 08:30:13 +01:00
Mark Liversedge
f9405a0952 Auto Interval Discovery (Part 2 of 3)
In this part we have updated all the charts to reference
the RideItem::intervals() members instead of the TreeWidget
and RideFile::intervals().

The code to create/change/delete intervals is not included
so selecting and editing on charts/sidebar is disabled til
part 3 of the update, but hover should work properly.

Still left todo in future updates;

    * Updates to the interval sidebar to list intervals
      in a tree (by interval type) with a color selector

    * Code to create, edit, delete etc the intervals via
      the rideitem/intervalitem and see them reflected in
      the ridefile

    * Update to search for all the different types of
      IntervalItems including routes and sustained intervals
2015-05-09 18:56:42 +01:00
grauser
1f352f24f6 Auto Interval Discovery : Add a first (test) CLIMB detection 2015-05-04 23:05:42 +02:00
grauser
db97bd307e JouleDevice: add getJouleType method 2015-05-04 22:26:36 +02:00
grauser
24019ea1f9 JouleDevice: Add Joule GPS+ device type 2015-05-04 22:15:08 +02:00
Mark Liversedge
6932ef0229 Fix BEST Symbol clash
.. not sure why tbh, but lexer symbols clashed with
   enums.

.. so removed BEST interval type - we may just add them
   back as BESTPOWER, BESTHR etc later
2015-05-04 21:04:48 +01:00
Mark Liversedge
0202c334b9 Freetext search looks at interval names
.. now we have it available in the cache we can
   search interval names when performing a free text
   search.
2015-05-04 19:55:23 +01:00
Mark Liversedge
8e511def6d Deprecated and missed off commit 2015-05-04 18:20:05 +01:00
Mark Liversedge
daf0328498 IntervalItem::refresh()
Computes the metrics for an interval and creates a temporary
ridefile locally so you don't have to.

.. previous design should have pushed this into the
   class instead of performing it in RideItem

.. now there should be no reason to create a ridefile
   during interval discovery.
2015-05-04 18:17:33 +01:00
Mark Liversedge
a1bc30adf9 Auto Interval Discovery (Part 1 of 3)
In this part we have added Intervals to RideDB.json and
are refreshed within RideItem, including interval metrics.

At present the IntervalItems are loaded from the ride file
and we ignore peaks and entire laps in favour of creating
them in the discovery code.

Still left todo in future updates;

* Updates to the interval sidebar to list intervals
  in a tree (by interval type) with a color selector

* Update all the interval charts and dialogs to use IntervalItem
  and the updated sidebar

* Update to search for all the different types of
  IntervalItems including climbs and routes

NOTE: We will not be adding an Interval view until v4.0
2015-05-04 15:59:16 +01:00
Mark Liversedge
adf7a0bd00 Mac QT5 hide toolbar on fullscreen
.. to avoid glitch related to native widgets in toolbar and
   inability to switch back from fullscreen mode on a Mac.

.. see QTBUG https://bugreports.qt.io/browse/QTBUG-43299
   which doesn't look like it will be fixed any time soon.
2015-05-02 13:26:35 +01:00
Mark Liversedge
8419c01070 Code Spring Clean
.. compiler nits
2015-05-02 12:25:01 +01:00
Mark Liversedge
d208f27a11 Remove old Intervals View
.. we are taking a different approach for v3.2

.. the auto discovery will augment rides and maintain a cache
   of all intervals across all rides

.. the discovered intervals will be selectable alongside ride
   intervals in the sidebar

.. new interval views will be developed in v4.0
2015-05-01 14:03:40 +01:00
grauser
999a6de715 Interval: Add a temporary model for Interval view 2015-04-30 18:38:43 +02:00
grauser
28f9576359 Interval: Add interval type (Device, User, Peak, Route,...) 2015-04-30 18:20:22 +02:00
Mark Liversedge
01d5370200 Fix SEGV Mac with LTM spanslider style
.. applying to buttons before they had been created.
2015-04-25 15:18:22 +01:00
Mark Liversedge
b0ce0bb19a Add SpanSlider to LTM Chart
.. so we can zoom / span on charts.

.. have not applied to stack or compare mode
2015-04-25 13:49:23 +01:00
Mark Liversedge
edd89d9eeb Add another /10 for Workbeats
.. brings it back to same scale as BikeScore
2015-04-24 10:37:21 +01:00
Mark Liversedge
0d2bea605c Workbeat Stress
.. heartbeats x joules, when unfit you may generate low watts
   but with a high hr, as opposed to the other way around.

.. an attempt to combine central and peripheral stress, can be
   used to compare with power only stress metrics
2015-04-24 10:01:47 +01:00
grauser
a29472965f Model: Some tests 2015-04-14 08:00:58 +02:00
grauser
8ab318bcd4 Update French translation 2015-04-14 08:00:58 +02:00
Mark Liversedge
a09be906f2 Fix label isolation UI nit
.. kept showing labels that should be hidden when hovering
   over an axis.
2015-04-11 10:03:56 +01:00
Mark Liversedge
aa3add45ca Typo += instead of plain =
.. has same effect since sample.km is zero until we get to
   this line, but it is misleading to read.
2015-04-10 09:11:07 +01:00
Mark Liversedge
8787ffe0a7 Racermate fix to accumulate distance
.. not averaging it !
2015-04-10 09:04:16 +01:00
Mark Liversedge
580512cac9 Scatter connect dots when not framed
.. when selecting intervals the points on a scatter plot
   are joined when they are not being framed against the
   rest of the ride

.. this is to provide some context about the order the
   data was generated in.

.. would be nice if we could have arrows (vectors)
2015-04-10 08:36:07 +01:00
Mark Liversedge
e89041669e Better comments in TxtRideFile resampling code
.. not happy about distance handling, its not right, need
   to accumulate not average.
2015-04-09 22:08:23 +01:00
Mark Liversedge
2f701d48f3 Racermate Fixed 1s Samplerate
.. racermate format for VELOtron and Computrainer use
   a variable rate recording, mostly due to PC interrupts
   and workload (e.g. 620ms, 619ms, 624ms sample rates)

.. so we resample on import to 1s samples, the 1000ms sample
   rate can be changed in the code to 500ms or whatever

.. this is needed to enable resampling and merging with other
   data files, most notably from Moxy.

Fixes #1359
2015-04-09 20:23:55 +01:00
Mark Liversedge
f4fe10270c About Dialog - libsamplerate
.. show on the version dialog

.. fix up 'delete' -> 'free()' for malloc'ed
   memory used with libsamplerate
2015-04-08 20:59:52 +01:00
Mark Liversedge
c1f889d998 Add ability to export all csv
.. for batch export
2015-04-08 17:21:24 +01:00
Mark Liversedge
a9e32d3086 RideFile::resample() use libsamplerate
.. if it is available.
2015-04-08 14:03:11 +01:00
Mark Liversedge
2d2272e9af Merge pull request #1358 from aevanforeest/master
Added virtual power for Elite Arion Mag rollers
2015-04-08 11:19:37 +01:00
aevanforeest
52845ffd2a Added virtual power for Elite Arion Mag rollers 2015-04-08 12:15:00 +02:00
aevanforeest
1a93d243d4 Added virtual power for Elite Arion Mag roller 2015-04-08 12:13:43 +02:00
Mark Liversedge
7fcac6da94 Add RideFile::arePresent()
.. to get a list of all data series that are present in the ridefile
.. used when working with libsamplerate to pack/unpack data series
2015-04-08 10:51:39 +01:00
Mark Liversedge
11eaac4b09 New optional library libsamplerate
.. this has been added to support some data handling activity
   to support a blood glucose study and is not really for general
   usage.

.. the libsamplerate library is being used in ridefile::resample()
   which is only used by merge and export.

.. we may choose to formalise this library later but for now it
   is not required for any functionality and is not used in
   release builds.
2015-04-08 10:08:15 +01:00
Mark Liversedge
941ca37003 Add DPI Scaling Factor
.. set when on a Windows platform, but not used.

.. when testing on a QT 5.4 release the font metrics appear
   to take the scaling factor into account, but adding the code
   for compatibility in the future (if we need it)
2015-04-07 17:54:51 +01:00
Mark Liversedge
1956fadca2 Add support for vpower on CycleOps Magneto Pro
Fixes #688
2015-04-07 10:59:16 +01:00
Mark Liversedge
7d107585f1 Add Support for Elite Muin 2013
.. as provided by "muinuser" on github

Fixes #1075
2015-04-07 10:40:55 +01:00
Mark Liversedge
ed8a45f3db It's named after AJ Ward-Smith
.. not Ward/Smith or Ward Smith.
2015-04-06 20:10:54 +01:00
Mark Liversedge
86e44355ff Ward/Smith Fixup
.. LOL. Mike warned me to use wPmax not Pmax and I still
   went ahead and made that mistake.

D'Oh.
2015-04-06 12:06:23 +01:00
Mark Liversedge
579a91ce18 Add WardSmith to CP History
.. and little fixup for code (cut/paste error)
2015-04-06 12:00:58 +01:00
Mark Liversedge
6c3cf8c959 Add Ward/Smith Model 2015-04-06 11:47:06 +01:00
Mark Liversedge
48e6bdb82b Merge pull request #1356 from Deadolus/qwtindlabels
Adding Indended Plot Markers for AllPlot
2015-04-05 16:57:13 +01:00
Simon Egli (Silzo)
63fe5ad62c Adding Indended Plot Markers for AllPlot
I intentionally didn't add the IndendPlotMarkers to all markings,
but only to the interval markers at the top of the plot.

NOTE: the height of the spacing is actually what Qwt tells us
is the textheight.
I think this spacing is rather big.
We might want to reduce it somehow in the future.

Signed-off-by: Simon Egli (Silzo) <smn.egli@gmail.com>
2015-04-05 17:47:15 +02:00
Mark Liversedge
71f0567c44 Reset/set warn save on exit flag
.. in options/preferences, since if you uncheck it there is
   no way of setting it back on again (!)
2015-04-05 10:44:17 +01:00
Mark Liversedge
4a53912162 Merge pull request #1349 from kamilj/master
New Virtual Power device - Minoura V270/V150/V130/LR340/LR540 Trainer and bug fixes
2015-04-04 16:19:42 +01:00
Mark Liversedge
b771fd85ee Merge pull request #1355 from Deadolus/qwtindlabels
Adding a class that enables indending QwtPlotMarkers.
2015-04-04 16:17:21 +01:00
Simon Egli (Silzo)
a974970476 Adding a class that enables indending QwtPlotMarkers.
This commit is adding a new class QwtIndPlotMarker that will enable us
to indend Labels. The usage is pretty much the same,
please look at the changes in LTMPlot.cpp to see what will
change for using the new class.
So far the functionality is implemented for horizontally written labels only.

This solves the issue of all Labels (e.g. Seasons and events in LTMPlot case)
being on one line and thus being unreadable.

Signed-off-by: Simon Egli (Silzo) <smn.egli@gmail.com>
2015-04-04 13:56:21 +02:00
shmoo
ce782061b6 Order of operations for ELITE SUPERCRONO POWER MAG Trainer 2015-03-23 18:42:29 +01:00
shmoo
cf9928a70d Order of operations for SARIS POWERBEAM PRO Trainer 2015-03-23 18:36:04 +01:00
shmoo
da6af52f5e Order for operations for Minoura V100 Trainer 2015-03-22 16:17:12 +01:00
shmoo
934e36843a A more accurate calculation, typo 2015-03-22 16:06:18 +01:00
shmoo
f58ba07ac7 A more accurate calculation 2015-03-22 16:02:49 +01:00
shmoo
d4d93f71e7 New Virtual Power device - Minoura V270/V130/LR320/LR540 Trainer 2015-03-22 15:13:15 +01:00
grauser
abda720eab Translation: lupdate + some fr translation 2015-03-20 07:30:13 +01:00
Damien
2cfe4f5899 WithingsDownload: correct new and received measures numbers
We can receive 0 value without error.
In this case we don't want to display negativ value
and we don't want to update the cache.
2015-03-16 21:55:30 +01:00
Damien
d8a836938a CvsRideFile: Update CP Plot export importation 2015-03-16 21:50:22 +01:00
Damien
4240748df6 LTMPlot: Add event on last day 2015-03-16 21:50:22 +01:00
Mark Liversedge
85ac8b5ac4 Merge pull request #1335 from amtriathlon/master
Fixed distance from LapsEditor in Manual Workouts with imperial units
2015-03-16 19:22:19 +00:00
Mark Liversedge
c9ca244165 Merge pull request #1343 from cleeland/feature/add_zwift_device
Add FIT file device ID parsing for Zwift.
2015-03-16 19:21:48 +00:00
Mark Liversedge
897bac6109 Recognise Stephan Lips
.. in contributors
2015-03-16 17:21:00 +00:00
Stephan Lips
2e21cced40 SRM Powercontrol 8 FIT support
.. the PC8 uses FIT files (yay!) and this patch ensures we set the
   device type properly.
2015-03-16 17:19:42 +00:00
Chris Cleeland
e7ca201a97 Add FIT file device ID parsing for Zwift.
There is no official proclamation that ID 260:0 is officially assigned
to Zwift; it is simply the value observed in data files downloaded from
Zwift for the author. A support request opened with Zwift requesting
confirmation has gone unanswered.
2015-03-02 08:28:10 -06:00
Joern
96a9b3cdef Merge pull request #1341 from Joern-R/t1
Update Wiki
2015-02-28 09:34:54 +01:00
Joern
679ebfff85 Update Wiki
... 3.2 Screenshots
2015-02-28 09:35:39 +01:00
Alejandro Martinez
63e4472b58 Fixed distance from LapsEditor in Manual Workouts with imperial units 2015-02-24 11:13:38 -03:00
Mark Liversedge
1460e4ca58 Merge pull request #1333 from amtriathlon/pwx
Added support for smart recording and lap swimming in pwx files
2015-02-24 06:55:04 +00:00
Alejandro Martinez
129ee0e264 Added support for smart recording and lap swimming in pwx files
Smart recording interpolation fills the gaps in pwx files present
when the original .fit or .tcx files had them.
Test files for running: 1 activity in .fit, .tcx and .pwx formats
Lap swimming expands the sample-per-length and pause to 1-sec sampling.
Test files for lap swimming: 2 activities in .pwx format,
one from Garmin 910xt other from Finis SwimSense.
2015-02-23 21:09:36 -03:00
Mark Liversedge
7121bb8084 Added heartbeats metric
.. count of heartbeats per interval
2015-02-23 16:10:43 +00:00
Mark Liversedge
9fe586eec3 Merge pull request #1331 from Joern-R/tree
TreeMap - UI nits/improvements
2015-02-23 15:14:15 +00:00
Joern
c62a50312a Merge pull request #1332 from Joern-R/de
Update Translation DE
2015-02-22 13:30:41 +01:00
Joern
b64f64f847 Update Translation DE
... new terms and corrections
2015-02-22 13:30:36 +01:00
Joern
5221e4eb2a TreeMap/LTM Popup - Variable not filled
... counter variable not filled after moving from rides to activities
2015-02-22 13:07:17 +01:00
Joern
0b3d6be461 TreeMap - UI nits/improvements
... draw Level 1 text at the end to have full contrast (not overlapped
by level 2 brush)
... dynamically choose font size for Level 2 texts from 4 options (based
on available space in rectangle) - easier readable on big screen - still
usable on small screen
2015-02-22 12:32:54 +01:00
Mark Liversedge
f2415448a9 Robot sets tHb and SmO2
.. to help with testing
2015-02-22 09:42:31 +00:00
Joern
e3b0dc0ce0 Merge pull request #1329 from Joern-R/xml2
Missed to remove old "file.open"  code line
2015-02-21 19:18:38 +01:00
Joern
d0042b4e48 Missed to remove old "file.open" code line
... need to be removed
2015-02-21 19:11:17 +01:00
Mark Liversedge
eaad1440c2 Merge pull request #1328 from Joern-R/xml2
Report- File "Open for Write" errors
2015-02-21 18:07:39 +00:00
Joern
1b921725d9 Report- File "Open for Write" errors
... for all config files, which need to be written, show error Popup, if
file cannot be openend in "Write" mode
2015-02-21 19:03:23 +01:00
Mark Liversedge
29bf621fc1 Merge pull request #1327 from Joern-R/xml
Error handling - if XML file is "write-protected"
2015-02-21 11:52:22 +00:00
Joern
954cae87b3 Error handling - if XML file is "write-protected"
... report error when any of the "*-layout.xml" files cannot be written
to (e.g. due to write protection
2015-02-21 11:50:55 +01:00
Mark Liversedge
0e19472fa8 Merge pull request #1326 from Joern-R/test
Upgrade - Folder - verify upgrade demand
2015-02-20 16:39:54 +00:00
Joern
32347dc29e Upgrade - Folder - verify upgrade demand
... check if the  "folder-upgrade" has really taken place - if not
reset, Upgrade Flag to force the new folder structure upgrade
... (allows to revert to the pre-upgrade backup of a folder structure -
which during test already had be successfully upgraded and therefore
marked as being ok).
2015-02-20 17:39:44 +01:00
Mark Liversedge
4d4ccb5532 Merge pull request #1325 from amtriathlon/master
Disabled pause expansion in lap swimming .tcx files when Smart Recording...
2015-02-20 15:40:08 +00:00
Alejandro Martinez
4831ea63d6 Disabled pause expansion in lap swimming .tcx files when Smart Recording is disabled
To be consistent and allow the user to load de file without modifications if desired
2015-02-20 12:36:01 -03:00
Mark Liversedge
bc0a0e1133 Merge pull request #1324 from dresco/ANT
ANT: Opening incorrect device
2015-02-19 22:23:47 +00:00
Mark Liversedge
dfe828a628 Merge pull request #1322 from amtriathlon/tcx
Add support for pool swimming tcx files from Garmin Connect
2015-02-19 22:22:51 +00:00
Jon Escombe
d45d7efec8 ANT: Opening incorrect device
Train view can display invalid data after opening the
wrong ANT sensor.
2015-02-19 15:19:53 +00:00
Alejandro Martinez
75f505a3c3 Add support for pool swimming tcx files from Garmin Connect
When Sport="Other", there is no GPS data but there is distance information
it is assumed the file cames from lap swimming.
They have one Trackpoint per length, which are expanded to one point per second
in similar way to Smart Recording and laps without Trackpoints to signal pauses
which are expanded to one point per second up to 10x Smart Recording HWM.
Added contributed Garmin FR910xt pool swim file to test/rides folder
2015-02-19 12:01:12 -03:00
Mark Liversedge
5e614aadb4 Merge pull request #1321 from Joern-R/ramp
Manual Ride Dialog - some nits
2015-02-18 19:19:35 +00:00
Mark Liversedge
2b91fbef04 Merge pull request #1320 from amtriathlon/master
Fixed conversion errors in pace units
2015-02-18 19:18:20 +00:00
Joern
a441887b17 Manual Ride Dialog - some nits
... allow resizing of Dialog Window (if using bigger fonts/translation)
to see all texts
... allow entry of Average Speed with precision (1) - like the metric is
defined
2015-02-18 20:11:32 +01:00
Alejandro Martinez
4e49417ee5 Fixed problem with cached Pace metrics when using imperial units
Added a non-virtual value method to retrieve the value to be stored in caches,
independent of metric settings.
2015-02-18 15:55:49 -03:00
Alejandro Martinez
378038c5c1 Fixed conversion error in swim pace units 2015-02-18 15:06:08 -03:00
Alejandro Martinez
386421fccf Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-02-17 18:12:21 -03:00
Mark Liversedge
4890135e9a Improve Charting of tHb
.. more decimal places and truncate y axis to narrow range
   it falls between.

.. still gets blown by zero values, but thats a data issue
2015-02-16 16:51:38 +00:00
Mark Liversedge
6ff987be5e Merge pull request #1317 from Joern-R/t1
Estimates Plot - some fixes
2015-02-15 15:29:20 +00:00
Joern
f7ac784e7f Estimates Plot - some fixes
... shift plot if start date is earlier than any Power Estimates exist
... enhance grouping (calculation of averages for month/years/all
grouping)
... adjust estimates calculation
... to calculate non-overlapping weeks data
... to not create any "infinite" data for weeks before the first Power
based actitivity exists
2015-02-15 16:11:58 +01:00
Mark Liversedge
7995106a76 Merge pull request #1316 from Joern-R/column
Dump/QVector Assert - when date range does not match data
2015-02-15 09:40:44 +00:00
Joern
34e03da7da Dump/QVector Assert - when date range does not match data
... e.g. when having a data range 2015 - where the data is only
available 2013 to mid 2014
2015-02-14 16:56:07 +01:00
Alejandro Martinez
aa68d56ef5 Adjust decimals for distance metric and max rows in LapsEditor 2015-02-13 22:31:03 -03:00
Alejandro Martinez
d6be8c4c93 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-02-13 15:58:39 -03:00
Mark Liversedge
2e895bcb43 Fix Veloclinic model t=0 bug 2015-02-13 14:09:57 +00:00
Alejandro Martinez
4431b8015d Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-02-13 09:42:39 -03:00
Mark Liversedge
2713000f5e Add Veloclinic CP slider
.. to adjust when seeking estimate for CP
2015-02-13 11:51:33 +00:00
Alejandro Martinez
83e755c4bc Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-02-10 09:14:40 -03:00
Mark Liversedge
7be349e5f8 Merge pull request #1314 from amtriathlon/master
Enabled edition of Pace zones lows in pace units
2015-02-10 07:01:57 +00:00
Alejandro Martinez
c8c7a14ee0 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-02-09 20:17:53 -03:00
Alejandro Martinez
741510cfaf ManualRideDialong Override time_riding to duration
For backward compatibility, but only if we don't have better information
2015-02-09 19:41:20 -03:00
Alejandro Martinez
9fa73927cf Enable edition of Pace zones lows in pace units
Display and edition in Pace units, according to sport preferrences
Pace 00:00 is used to represent 0 kph
Fixed PaceZones::read to allow non-integer limits
2015-02-09 19:30:36 -03:00
Mark Liversedge
d6257f5b58 Revert RideMetric::imperialPrecision()
.. introduced within bae36e6b
2015-02-09 22:07:29 +00:00
Mark Liversedge
c65cbe2585 Less Spacing in AllPlot settings
.. makes the dialog smaller for those running on a
   small screen.
2015-02-09 18:42:40 +00:00
Alejandro Martinez
de1e36d1fd AllPlotWindow - add average power to the end of the selection name only if not zero
It's annoying when there is no power
2015-02-09 14:30:06 -03:00
Mark Liversedge
cb92a1cc52 Column Chooser scrollable
.. it was too difficult to use as a big matrix
2015-02-09 15:03:33 +00:00
Mark Liversedge
16c6c06466 Merge pull request #1313 from amtriathlon/master
Reset metric value and count before to call compute on update
2015-02-09 14:38:26 +00:00
Alejandro Martinez
378ab8ef1d Reset metric value and count before to call compute on update
Follow up from #1310, to contemplate other metrics where compute method doesn't set them
2015-02-09 11:25:49 -03:00
Mark Liversedge
920e50c4e9 Merge pull request #1312 from amtriathlon/master
Ensured compute method call setValue for Run/Swim metrics
2015-02-09 08:48:58 +00:00
Alejandro Martinez
4f6695379a Ensured compute method call setValue for Run/Swim metrics
Fixes #1310
Also for BikeScore and prevents division by zero in XPower when recIntSecs == 0
2015-02-08 23:24:19 -03:00
Joern
4e6c4a07df Merge pull request #1311 from Joern-R/wiki2
Update Wiki
2015-02-08 18:24:48 +01:00
Joern
44183a0247 Update Wiki
... some screenshots
2015-02-08 18:24:53 +01:00
Mark Liversedge
9f8a61fddd Merge pull request #1309 from Joern-R/upgrade3
Upgrade - enforce root() clean-up
2015-02-08 14:19:18 +00:00
Joern
ef05f0f133 Upgrade - enforce root() clean-up
... problems on deleting the source files (even they have have been
successfully copied to /target) are now reported as error (which require
to be cleaned up before Upgrade is marked as "successful")

... reason is that such "orphan" files may cause problems - e.g. if the
"upgrade-successful" indicator get's lost and we want to start 3.2 with
a fully cleaned file structure.
2015-02-08 12:46:30 +01:00
Mark Liversedge
9754d3a149 Merge pull request #1307 from amtriathlon/master
Fixed lack of reset for paceZoneSelectedArray in PowerHIst
2015-02-07 23:37:04 +00:00
Alejandro Martinez
f09e0b9129 Fixed lack of reset for paceZoneSelectedArray in PowerHIst 2015-02-07 20:26:01 -03:00
Mark Liversedge
2d0d380cf1 Merge pull request #1306 from Joern-R/c
Calendar Text not shown if language <> "en"
2015-02-05 18:11:53 +00:00
Joern
139bb3ef47 Calendar Text not shown if language <> "en"
... column "Calendar Text" must not be translated in GcCalendarModel.h
(since it's also not translated in "SpecialFields" any more)
2015-02-05 19:03:06 +01:00
Mark Liversedge
5b9902860e Diary Layout for v3.2
.. more of a 'dashboard' than calendar view

.. the calendar will be updated in v4.0
2015-02-05 17:45:01 +00:00
Mark Liversedge
d14eff1ced Merge pull request #1304 from Joern-R/upgrade
Upgrade - More checks/messages
2015-02-05 16:35:49 +00:00
Joern
4d97012911 Upgrade - More checks/messages
... check for valid Activity Filename format "YY_MM_DD_HH_MM_SS" (for
non-JSON files before conversion)
... check if the  Activity filename contains a valid date/time
... report if File is not readable - not just "skip" it
2015-02-05 17:31:18 +01:00
Mark Liversedge
08fb7376e0 Add aPower versions of Skiba Metrics
.. aBikeScore, axPower etc.
2015-02-05 14:42:56 +00:00
Mark Liversedge
7dfc2a6e4f Add Coggan metrics from aPower
.. so can adjust stress for altitude, which is useful for
   those that train at altitude regularly (e.g. training camps).
2015-02-05 14:32:04 +00:00
Mark Liversedge
adc44b95ef Increment DBSchema for last commit
.. to force a recompute of the metrics
2015-02-05 13:47:39 +00:00
Mark Liversedge
e2aa42c418 Merge pull request #1303 from amtriathlon/master
Use Duration when Time Moving is zero in Session RPE and Daniels EqP
2015-02-05 13:43:31 +00:00
Alejandro Martinez
491cccb2b3 Use Duration when Time Moving is zero in Session RPE and Daniels EqP
Similar to TRIMP points, Fixes #1265
2015-02-05 10:35:53 -03:00
Mark Liversedge
85213c80c3 Merge pull request #1301 from amtriathlon/master
Simplified IntervalSummaryWindow removing Pace special cases
2015-02-05 07:31:47 +00:00
Alejandro Martinez
270f47c446 Removed special case for Pace in RideSummary
Used RideItem::getStringForSymbol
Modified RideCache::getAggregate to use RideMetric::toString
2015-02-04 21:30:47 -03:00
Alejandro Martinez
3d85ecf9cf Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-02-04 17:56:07 -03:00
Mark Liversedge
3722f95ed4 Fix RideNavigator::cursorRide()
.. new ridecache model and proxy interaction needed
   fixing up -- cursorRide() was not working at all !

Fixes #1300
2015-02-04 20:34:54 +00:00
Alejandro Martinez
5d20e9c44a Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-02-04 09:32:02 -03:00
Mark Liversedge
f1523c571e Merge pull request #1299 from amtriathlon/master
Several fixes related to run and swim metrics based on errors reported by users
2015-02-04 06:59:51 +00:00
Alejandro Martinez
c3f510fce1 Simplified IntervalSummaryWindow removing Pace special cases 2015-02-03 23:35:45 -03:00
Alejandro Martinez
2be7f495bf Fixed GOVSS and SwimScore estimation when there is no speed channel but distance is overriden
Distance/Duration is a better approximation for Avg Speed than 0.0
and Duration is better than Time Moving in GOVSS/SwimScore estimation
for these cases.
2015-02-03 21:32:16 -03:00
Alejandro Martinez
d82b5f9904 Simplified RideSummaryWindow removing some Pace special cases
Using the overriden methods.
The aggregation special case remains.
2015-02-03 20:49:09 -03:00
Alejandro Martinez
b7dd06aeae Fixed Pace and Swim Pace units setting
Pace and xPace metrics use GC_PACE units setting
Pace Swim and xPace Swim metrics use Swim GC_SWIMPACE units setting
2015-02-03 20:19:08 -03:00
Alejandro Martinez
679089f67c Fixed lower-is-best for Pace metrics
Also removed isTime since time formatting assumes seconds and they are in minutes,
it remains pending to change formating to mm:ss.
2015-02-03 15:06:10 -03:00
Mark Liversedge
d78fb92ad2 Merge pull request #1291 from amtriathlon/LapsEditor
LapsEditor - Initial Version for swimming and running
2015-02-03 16:21:36 +00:00
Mark Liversedge
1909ec3e56 Scatter Plot Garmin PS shows TE
.. cut and paste error.
2015-02-02 22:32:05 +00:00
Mark Liversedge
ecadae4d66 Yosemite Scope Bar Button Sizes
.. made them slightly wider on Yosemite
2015-02-02 20:53:56 +00:00
Mark Liversedge
6b0650a054 Fix RideMetadata Flush and Focus SAVE bug
.. metadata only flushed when ride marked dirty, but
   ride won't be marked dirty until metadata focus/edit
   ends.

.. because opening a menu doesn't change focus we need to
   use the flush event to trigger the focus/edit end function
2015-02-02 19:28:35 +00:00
Mark Liversedge
f7b970b9e3 Merge pull request #1297 from Joern-R/rename
Combined Pull request (with different topic commits)
2015-02-02 16:40:35 +00:00
Mark Liversedge
a049db70ea Merge pull request #1295 from amtriathlon/master
Updated Spanish Translation
2015-02-02 16:39:58 +00:00
Mark Liversedge
522447f4db Merge pull request #1245 from stschake/tacxvortex-refresh-load
Periodically refresh Tacx Vortex load setpoint to avoid dropouts
2015-02-02 16:39:29 +00:00
Mark Liversedge
809be4a560 Config Changes on keywords field changes
.. if you changed the field that was being used to color
   the ride list it wouldn't spot it and refresh.
2015-02-02 16:08:27 +00:00
Mark Liversedge
bd21e21f37 Refresh RideFileCache when Weight changes
.. was not refreshed previously (!)

.. need to optimise this to only recompute w/kg stuff
   rather than the entire cache for the ride when its
   just because the athlete weight changed.
2015-02-02 13:38:52 +00:00
Joern
808141675f Update Translation DE
... corrections/completion
2015-01-31 19:26:54 +01:00
Joern
0c39be86e8 Translation Enablement
... ErgDB Download - enable Translation
... fix double count for succesful downloads
2015-01-31 19:24:52 +01:00
Joern
b406cf8727 HelpWhatsThis - Rename "Ride" by "Activity
... adjus the Wiki pathes to new names
2015-01-31 19:13:38 +01:00
Alejandro Martinez
289fc8d9c0 Updated Spanish Translation 2015-01-30 18:58:56 -03:00
Joern
5cf58d15e6 Merge pull request #1294 from Joern-R/de
Update Translation DE
2015-01-30 19:49:58 +01:00
Joern
b35bc5b244 Update Translation DE
... rename "Rides" to "Aktivity"
2015-01-30 19:49:05 +01:00
Mark Liversedge
d7f3bc8137 Time Riding renamed to Moving
.. to reflect multsport use
2015-01-30 16:51:29 +00:00
Joern
65fc51d731 Merge pull request #1293 from Joern-R/wike
Wiki: Terminology: Rename Ride->Activity
2015-01-30 17:44:50 +01:00
Joern
bca3723106 Wiki: Terminology:Ride->Activities -
... update filenames so that fit to the updated Wiki documents
2015-01-30 17:44:23 +01:00
Mark Liversedge
d9eb2aec8c Rename Ride to Activity
.. across the code, except where it clearly is a ride
   e.g. importing PowerTap or SRM
2015-01-30 10:59:56 +00:00
Mark Liversedge
2a0b477cfb Merge pull request #1292 from Joern-R/smart
Fit-File Format - Smart Recording
2015-01-30 09:35:05 +00:00
Alejandro Martinez
b5f41f650b LapsEditor - Initial Version for swimming and running
Allows to generate data points for manual activities from series of
work/rest intervas with distance/duration information and reps count.
It is enabled once sport is entered as Swim or Run and distance units
follows pace preferences for the selected sport.
Duration and Distance for the activity are calculated from laps information,
but it can be overridden by the user.
If LapsEditor is reactivated the lap information is preserved to allow corrections,
provided the sport is not changed.
Input method for duration is selected for simplicity and easy of input using
numeric pad, tab and enter.
2015-01-29 20:47:19 -03:00
Joern
836f3054ab Fit-File Format - Smart Recording
... fix .FIT format Smart Recording (similar logic like for .TCX)
... use the GC-Preferences Settings to determine if Gaps shall be filled
(and which Gap size)
2015-01-29 19:02:50 +01:00
Mark Liversedge
461ae43f3e Recognise Jan de Visser
.. in contributors on about dialog
2015-01-28 22:39:10 +00:00
Jan de Visser
f7c8024632 Use the FIT 'sport' field and it's associated enum. Populate the RideFile 'Sport' tag and switch between cycling and running cadence.
Swim files are recognized and the 'Sport' tag is properly filled, but nothing else particularly useful is read. Not even date/time.
2015-01-28 22:37:16 +00:00
Mark Liversedge
547b427106 Merge pull request #1290 from amtriathlon/master
Updated Spanish Translation
2015-01-27 14:53:54 +00:00
Alejandro Martinez
26c269ed8a Updated Spanish Translation 2015-01-27 11:49:02 -03:00
Mark Liversedge
abee301fe5 Merge pull request #1289 from amtriathlon/master
Fixed minor interval alignment issue
2015-01-27 13:32:57 +00:00
Alejandro Martinez
721c76f062 Fixed minor interval alignment issue
The problem is barely noticeable in cycling activities but
annoying for run and swim intervals.
Added synthetic .csv for testing.
2015-01-27 09:52:41 -03:00
Joern
72df7ff20b Merge pull request #1287 from Joern-R/wiki
Wiki Update
2015-01-26 18:44:56 +01:00
Joern
048a6e76cc Wiki Update
... corrected pictures
2015-01-26 18:44:22 +01:00
Mark Liversedge
276c712dee Add Sigma to FIT manufacturers
Fixes #1286
2015-01-26 09:40:57 +00:00
Damien
ea8b0ae36a ANT: use QDateTime for lastCadenceMessage 2015-01-26 08:16:41 +01:00
Damien
931df37257 Update Translation FR (1/2) 2015-01-26 08:16:41 +01:00
Mark Liversedge
75111d70e4 Merge pull request #1283 from Joern-R/workout
Workout Creator - Show Ride Time / Translation Enablement
2015-01-25 14:28:53 +00:00
Joern
717dce05d5 Workout Creator - Show Ride Time / Translation Enablement
... show summary time_riding in workout wizard
... add translation enablment tr() to Workout Wizard
2015-01-25 12:26:12 +01:00
Mark Liversedge
c1976d5b47 Merge pull request #1282 from amtriathlon/master
Added completers to Sport and Workout Code fields in ManualRideDialog
2015-01-25 09:29:03 +00:00
Alejandro Martinez
4ebd1c0464 Added completers to Sport and Workout Code fields in ManualRideDialog
So input method is the same as in RideMetadata
2015-01-24 21:55:40 -03:00
Joern
ccd7c7ef57 Merge pull request #1281 from Joern-R/de
Update Translation DE
2015-01-24 16:32:34 +01:00
Joern
0fe65ae22b Update Translation DE
... Translation DE
2015-01-24 16:32:10 +01:00
Mark Liversedge
ab1042ed72 Merge pull request #1280 from Joern-R/rename
Folder Upgrade adjust to 3.2 Version naming
2015-01-24 13:50:57 +00:00
Joern
87939821b0 Folder Upgrade adjust to 3.2 Version
... make Upgrade Marker release independent
... adjust the texts from 3.11 to 3.2 verson id

... this will just make the Upgrade procedure run ONCE again for
Athletes which have been converted by a DEV build - but just to
check/report sucess
2015-01-24 14:22:37 +01:00
Mark Liversedge
f848e56af1 Merge pull request #1279 from amtriathlon/master
Fixed GOVSS & SwimScore for manual workouts
2015-01-24 11:59:44 +00:00
Alejandro Martinez
f438817e66 Fixed GOVSS & SwimScore for manual workouts
Forgot to include relative intensity
2015-01-24 08:49:14 -03:00
Alejandro Martinez
0ab086d41b Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-01-23 20:36:05 -03:00
Mark Liversedge
8c96812a72 Merge pull request #1274 from amtriathlon/master
Fixed Pace units in IntervalSummaryWindow
2015-01-23 23:33:04 +00:00
Alejandro Martinez
a2e19afd56 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-01-23 20:32:06 -03:00
Alejandro Martinez
9782807b13 Fixed Pace units in IntervalSummaryWindow
Run and Swim Pace/xPace follow pace unit preferences
2015-01-23 20:27:42 -03:00
Damien
be567c85db ANT: Priority for cadence from cadence or speed/cadence sensor
fixes #502
2015-01-23 23:36:40 +01:00
Alejandro Martinez
e809204a10 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-01-23 17:09:58 -03:00
Mark Liversedge
7748704448 Merge pull request #1273 from amtriathlon/master
Fixed Speed units in manual workouts and Pace units in Ride Summary
2015-01-23 20:08:33 +00:00
Alejandro Martinez
1861fdd427 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-01-23 17:02:10 -03:00
Alejandro Martinez
1dda134898 Fixed Pace units in RideSummary
Pace values and unit names now follow preferences, the code is ugly
it should use toString method, probably with a context parameter.
2015-01-23 16:59:18 -03:00
Mark Liversedge
42d7e02c16 Tile mode honour color config changes
.. as background didn't change on color config
2015-01-23 19:22:54 +00:00
Alejandro Martinez
a3dc0c1cdb Fixed average speed units in manual workout
It is edited according to preferences and stored in kph
2015-01-23 15:42:27 -03:00
Mark Liversedge
c085e10688 Oops. css() color logic wrong way round 2015-01-23 17:57:58 +00:00
Mark Liversedge
8a1d737adb Diary Sidebar highlight current month
.. signpost what we've selected
2015-01-23 17:46:25 +00:00
Mark Liversedge
4d8bfc857e Fix train chart refreshing
.. when config changes
2015-01-23 16:22:54 +00:00
Mark Liversedge
feef39981c Fix Apply themes for Trend background color
.. will still need to set to sensible default as
   part of the upgrade process.
2015-01-23 16:00:52 +00:00
Mark Liversedge
de83bb6504 Merge pull request #1272 from amtriathlon/master
Added GOVSS/SwimScore for manual workouts
2015-01-23 15:34:39 +00:00
Alejandro Martinez
38b2bdad9c Add Estimated SwimScore for manual workouts
Based on average speed and duration
2015-01-23 12:25:51 -03:00
Alejandro Martinez
0579892b0b Add Estimated GOVSS for manual workouts
Based on average speed and duration
2015-01-23 12:22:36 -03:00
Mark Liversedge
413f8c71fc More QSslSocket.h 2015-01-23 14:36:29 +00:00
Alejandro Martinez
61d1e4307e Calculated avg Speed in Manual workout Dialog
Useful to deverive metrics for running and swimming activities
By default is dist/time, but it can be overriden for backward compatibility.
2015-01-23 10:19:57 -03:00
Mark Liversedge
d82e933e5a Aesthetic Tweaks
.. tile mode highlights on mouse over for a more
   fluid feel, and better feedback

.. can customise the trend view charts background

.. fixed a SEGV on apply preset in chart setup

.. this is part of a set of updates to update the
   standard setup to be more complete so the user
   can pretty much run off a standard config.
2015-01-23 12:06:03 +00:00
Mark Liversedge
a2759b368e OAuthDialog compile error QSslSocket.h
.. which is not included if you don't use KQOAuth.
2015-01-23 09:39:44 +00:00
Mark Liversedge
23f47cf371 Merge pull request #1271 from amtriathlon/master
Fixed sport tag on TCX file export
2015-01-22 19:15:58 +00:00
Alejandro Martinez
1438ebbc48 Fixed sport tag on TCX file export
Enabled translation and restricted output values to
("Biking", "Running", "Other")
2015-01-22 15:04:05 -03:00
Mark Liversedge
4c28926f24 Merge pull request #1270 from amtriathlon/master
Set Sport Tag for TCX files
2015-01-22 15:19:37 +00:00
Alejandro Martinez
e82cfdd04d Set Sport Tag for TCX files
According to http://www8.garmin.com/xmlschemas/TrainingCenterDatabasev2.xsd
Sport can be ("Biking", "Running", "Other"), it is mapped to "Bike", "Run" or nothing.
2015-01-22 12:09:23 -03:00
Mark Liversedge
59bf313ce4 Fix CalDAV SSL connect() 2015-01-21 18:57:30 +00:00
Mark Liversedge
29979e6067 Merge pull request #1266 from Joern-R/dav
CalDAV - add error handling
2015-01-21 18:30:00 +00:00
Joern
fe54cd98a8 CalDAV - add error handling
... if configuration for requested feature is missing (but not in
MainWindow - initial download)
... any network errors coming back

... to simplify error analysis - since the API call may have multiple
reasons to fail (configuration, network, proxy,ssl,...)
2015-01-21 19:27:23 +01:00
Mark Liversedge
57ad62036a Reset isolation in LTM
.. it was getting out of sync when switching tabs
   or athletes and further issues when events occurred
   possibly causing a SEGV
2015-01-21 10:29:45 +00:00
Mark Liversedge
7afb0ecc1f Let user disable hovering on allplot
.. it irks some people.
2015-01-21 08:13:51 +00:00
Mark Liversedge
d829a3548b Show CP on ErgFilePlot
.. makes interpreting W'bal curve a bit easier
2015-01-20 21:32:35 +00:00
Mark Liversedge
6112b6c4a9 Fix CP SEGV tile mode create interval
.. fencepost in create interval data
2015-01-20 20:39:44 +00:00
Mark Liversedge
883b2bc043 Merge pull request #1263 from Joern-R/interv
De-activate "Route" related feature (if not selected)
2015-01-20 19:24:44 +00:00
Mark Liversedge
1886f109e1 Merge pull request #1262 from Joern-R/ssl
OAuth - check for SSL
2015-01-20 19:24:21 +00:00
Joern
826270136d Merge pull request #1264 from Joern-R/wiki1
Wiki 3.11 Update
2015-01-20 18:48:44 +01:00
Joern
1fb4ed0335 Wiki 3.11 Update
... Preferences / Athlete
2015-01-20 18:47:05 +01:00
Joern
14642ad394 De-activate "Route" related feature (if not selected)
... deactivate "create route from interval" menu entries in SideBar
2015-01-20 18:43:35 +01:00
Joern
b7258deb63 OAuth - check for SSL
... since QT does not come with SSL by default - check if SSL is
available on the system
2015-01-20 18:17:04 +01:00
Mark Liversedge
fec9e73d37 Import Workout from Wizard
.. Fixes #663
2015-01-19 20:16:56 +00:00
Mark Liversedge
d34e4eda0d Fix AllPlot Reference Line SEGV
Fixes #996
2015-01-19 19:47:04 +00:00
Damien
39ed9f5821 GoogleMap: Select interval : keep first selected point 2015-01-19 20:14:40 +01:00
Mark Liversedge
af5c8a6626 Fix Device Config and Wizard Interaction
.. when you add a device using the wizard from preferences
   it resets the model to reflect the changes made.

Fixes #785
2015-01-18 21:25:54 +00:00
Mark Liversedge
8c3eb526e6 Merge pull request #1260 from Joern-R/caldav
Calendar - Refresh and Upload - Google CalDAV
2015-01-18 18:20:47 +00:00
Joern
3115ef446e Calendar - Refresh and Upload - Google CalDAV
... adds authorization required for new Google CalDAV interface
... adds CalDAV configuration variant (Generic vs. Google)
... corrects Refresh from Google to GC (as they a using a non-complient
XML-tag prefix)

... comment unused CalDAV features - which are not enhanced for Google
CalDAV as they are not used yet
2015-01-18 16:28:06 +01:00
Mark Liversedge
6297c7fb2c Fix duplicate stress curve bug
.. LTM stress curves had the same symbol name and
   so some were not deleted when the date range changed
   leaving curves on the plot

.. we now set the best symbol for stress curves so we
   have a unique name for each curve
2015-01-18 12:17:56 +00:00
Mark Liversedge
2f27c830cd Summarise Intervals Selected First
.. show the summary of all selected intervals first
   not last in the interval summary window
2015-01-17 10:19:16 +00:00
Mark Liversedge
c1ee2b612f Best Intervals are Yellow
.. on interval navigator etc

.. so you don't get lots of labels on the plot
2015-01-17 10:05:29 +00:00
Mark Liversedge
83edac90d3 Add ToolTip to IntervalNavigator
.. just the interval name
2015-01-17 09:51:53 +00:00
Mark Liversedge
584e139892 Merge pull request #1252 from Joern-R/intervals
Add "GC_HAS_INTERVALS" for Route Window
2015-01-16 17:56:25 +00:00
Joern
0f651f7a9f Merge pull request #1253 from Joern-R/wiki
Wiki - Update 3.11
2015-01-16 18:54:10 +01:00
Joern
44a23212ce Wiki - Update 3.11
... new and updated Screenshots for 3.11
2015-01-16 18:52:05 +01:00
Joern
01dd44b109 Add "GC_HAS_INTERVALS" for Route Window
... do not allow Route Window if not demanded
2015-01-16 18:35:18 +01:00
Mark Liversedge
cc435c495d Merge pull request #1251 from Joern-R/qwt
QWT Build
2015-01-15 17:46:14 +00:00
Joern
f20c2b5389 QWT Build
... remove $$replace and use the latest src.pro code from QWT lib (which
allows in-source and out-of-source/shadow build)

($$replace - for unknown reasons - creates an empty string/fails if the
input string contains mixed Upper and Lower case characters - which it
happening in many file systems)
2015-01-15 18:03:15 +01:00
Damien
e5bcc5edee Metrics: Add Calories based on average HR
fixes #1249
2015-01-14 22:37:20 +01:00
Damien
1620b9d0ea GoogleMap: Add a searchPoint method 2015-01-14 22:37:19 +01:00
Mark Liversedge
f6b4424537 Fix SEGV in LTMPlot on negative date range
.. time should, in theory, always fly forwards, no quarks here.
2015-01-14 16:03:40 +00:00
Mark Liversedge
f6dcc1711f Revert qwt/src/src.pro
.. will break out of source builds in QT Creator

.. means everyone else's builds will still work

.. happy to apply change if it doesn't break builds for others

Fixes #1247
2015-01-14 14:11:05 +00:00
Mark Liversedge
3f7b07d27c Fix Moxy Tool for Speed/Cadence recording
.. tool to shift data from the speed and cadence data series
   into the tHB and SmO2 series respectively.
2015-01-14 10:57:39 +00:00
Mark Liversedge
809021537b Remove reference to Lucene 2015-01-14 10:32:50 +00:00
Mark Liversedge
dcb1cd8efb Improved Search Text Parsing
.. splits into words but will allow user to escape using the quote
   character (") or the backslash (\).

.. so <"hello world" \"this\" t\est> will result in three strings
   <hello world> <"this"> and <test>
2015-01-14 10:26:47 +00:00
Mark Liversedge
1f9c96f7f3 Deprecate Lucene
.. use a simple free text search against the ridecache now we
   have all the texts available and in memory

.. no need to maintain an index, no dependency on a horrid lib
   with nasty dependencies and its faster too

.. the free text search is very simple, will need to bolster it
   over time e.g. it matches text not words
2015-01-13 20:52:01 +00:00
Stefan Schake
59ffa7b8f1 Periodically refresh Tacx Vortex load setpoint to avoid dropouts
Signed-off-by: Stefan Schake <schake@embedded.rwth-aachen.de>
2015-01-13 21:21:14 +01:00
Mark Liversedge
e8f731d453 Merge pull request #1244 from Joern-R/curves
LTM - Curves Settings - Add Resorting of Curves
2015-01-13 19:28:57 +00:00
Joern
6458d935bd LTM - Curves Settings - Add Resorting of Curves
... add "Up" - "Down" function for Curves Table Items in LTM Settings

(particular useful when add a curve in Stacked View and wanting to have
that curve shown at first position)
2015-01-13 19:17:03 +01:00
Mark Liversedge
52f0c02ad2 Merge pull request #1243 from Joern-R/test
UI Nit - Time Display - change to 24h format
2015-01-13 16:19:37 +00:00
Joern
5880240c3b UI Nit - Time Display - change to 24h format
... A/P format does not work properly in QT 5.x.x in non-UK installation
locale of OS
... so adjusted here to hh:mm format
2015-01-13 17:16:11 +01:00
Damien
3524cc4bd2 Pages: Correct index in defaults processor 2015-01-12 22:59:58 +01:00
Damien
03a902186a RideSummary: Remove unused variables 2015-01-12 22:36:59 +01:00
Damien
54026c1e9f GoogleMap: Add a first Interval Selection feature
Need to resolve how to handle when the ride is on the same position twice or more
2015-01-12 22:29:04 +01:00
Damien
a22779e024 CPPlot: Some model testing 2015-01-12 22:27:11 +01:00
Mark Liversedge
0980c05e0c Fix Lucene full refresh SEGV
.. on windows especially, there were issues with the call to
   IndexWriter::addDocument() resulting in an exception.

.. the introduction of a QMutexLocker to manage the mutex locking
   seems to have fixed things, but they only seemed to manifest
   on Windows.
2015-01-12 21:10:20 +00:00
Mark Liversedge
ead354ef83 Merge pull request #1242 from Joern-R/averages
TE/PS - Average Calculation
2015-01-12 19:06:05 +00:00
Joern
a2d1455eee TE/PS - Average Calculation
... change calcuation of Averages for TE/PS by using the delivered
samples with valid values (> 0) and the number of delivered data samples
> 0 as the basis
2015-01-12 19:46:40 +01:00
Mark Liversedge
c39a8615cb Ignore points not in zone not add to Z7
.. by returning -1 from whichZone if the value doesn't
   match any zone definition.
2015-01-12 08:23:49 +00:00
Mark Liversedge
b05b6bb486 Metadata changing recursion
.. this should fix 'hangs' when edit finished.
2015-01-12 07:52:28 +00:00
Mark Liversedge
ee3ac8b4cb Merge pull request #1241 from amtriathlon/master
Hide irrelevant interval metrics
2015-01-12 07:25:22 +00:00
Alejandro Martinez
f690f6424e Hide irrelevant interval metrics
In Ride Summary
2015-01-11 22:00:38 -03:00
Alejandro Martinez
c2c4b8e673 Make Pace not relevant only for swims
Since Pace Swim conveys the same information in units more usual for swimming
For backward compatibility it is kept relevant for any other sport
2015-01-11 21:56:59 -03:00
Mark Liversedge
ce50cabca9 Correct use of beginRemoveRows()
.. last update didn't fix the indexes.
2015-01-11 22:13:30 +00:00
Mark Liversedge
785cb5f651 Add HHb and O2Hb to Scatterplot
.. they were forgotten previously.
2015-01-11 22:08:36 +00:00
Mark Liversedge
e1de007313 Fix beginRemoveRows() SEGV
.. on delete ride
2015-01-11 22:08:08 +00:00
Mark Liversedge
ecad3177b7 Merge pull request #1239 from Joern-R/fix
Fix - .JSON not updated with man.l changes directly after Import or Download
2015-01-11 17:31:51 +00:00
Joern
eb61d18086 Fix - .JSON not updated with manual changes immediately after Import or Download
... correct the path in RideItem after updating RideCache to the final
path (since RideItem has a local buffer for the path - which is e.g.
used at "Save Ride") any manual changes after the import will create a
new .JSON in /tmpActivities and not update the original .JSON in
/activities

(Problem only occurs when using the in-memory data after an Import or
Downlaod)
2015-01-11 18:33:54 +01:00
Mark Liversedge
eac558e6d5 Recognise Yves Arrouye and Philip Willoughby 2015-01-11 16:47:35 +00:00
Mark Liversedge
57ced9a25b Merge pull request #1238 from WillerZ/master
Changes to build on OS X with spaces in path
2015-01-11 16:44:42 +00:00
Philip Graham Willoughby
7c0c3fc3d6 Revert erroneous translation deletion
This partially reverts commit dd57141184.
2015-01-11 16:42:09 +00:00
Philip Graham Willoughby
ba339b978a Changes to build on OS X with spaces in path 2015-01-11 16:25:24 +00:00
Joern
1921584f44 Merge pull request #1236 from Joern-R/master
Translation DE
2015-01-11 15:14:08 +01:00
Joern
04900bb640 Translation DE
... update/correct Translation
2015-01-11 15:17:41 +01:00
Mark Liversedge
deb0703469 Merge pull request #1235 from Joern-R/ride
Introducing /quarantine for acvitities cause RideCache to crash/dump
2015-01-11 12:47:48 +00:00
Joern
126d08c9a1 Introducing /quarantine for acvitities cause RideCache to crash/dump
... for RideImport and RideDownload the created .JSON files are firstly
stored in /tempActivities and only moved to /activities after
successfull updating RideCache (with this files with "bad data" cause
RideCache calculations to crash can be identified when starting GC again

... in GC CrashDialog the /tempActivities are documented in the Crash
Log and moved to /quarantine for further analysis

... small addition - the existence of the new directory structure is
verified when opening an Athlete - missing directories are added to
ensure a consistent structure being in place at all times
2015-01-11 13:22:47 +01:00
Mark Liversedge
e8c70091e2 Color Code PMC Metrics on Summary
.. but to avoid being too 'opinionated' about the users
   training we limit to the really obvious things and
   don't offer any opinion on middling values.

.. LTS > 80 is green > 100 is blue
.. SB < 40 is red -- overtraining
.. RR < -4 or > 8 is red -- detraining or overextending

.. it borders on bollocks given each athlete is different
   and training is about managing the overreaching and recovery
   to push at those boundaries

.. might end up removing this altogether .. but might flag
   stuff up for newbies
2015-01-11 10:56:26 +00:00
Mark Liversedge
0b198dd481 Hide irrelevant interval metrics
.. in the interval sidebar
2015-01-11 09:43:14 +00:00
Mark Liversedge
b025f5b878 RR on Summary
.. after reinstating ramp rate now putting back onto summary
2015-01-11 09:32:11 +00:00
Mark Liversedge
658bb4e030 Merge pull request #1232 from amtriathlon/master
Fixed NaN in xPower when there are no samples
2015-01-10 22:57:12 +00:00
Mark Liversedge
9ef20793a3 Fix bad Skiba PMC and nan/inf metric values
.. value that result in nan/inf values need to be cleansed
   to ensure the metric array in the rideitem is clean

.. because we load values from json we clean anyway in
   PMC data since it seriously breaks the skiba PMC and
   development users will have bad data.
2015-01-10 22:54:08 +00:00
Alejandro Martinez
7fe54a9622 Fixed NaN in xPower when there are no samples
It propagates to Bike/SwimScore and plays havoc with PMC
2015-01-10 19:46:06 -03:00
Mark Liversedge
bcfd7456f2 Increment Build ID post ridecache
.. as need to reflect that before new development
   builds go out.

.. does not have any impact on processing or upgrade
2015-01-10 20:23:07 +00:00
Mark Liversedge
99dc9839ba RideMetadata QTextEdit signals
.. was updating as you typed which created a nasty lag
   but updated the metadata and metrics constantly

.. on one hand it was reassuring to see things change as
   you typed, but on the other hand it was pretty tedious

.. we now catch focus change on text edits, see if they've
   been changed and then trigger an update if that is the case
2015-01-10 19:26:27 +00:00
Mark Liversedge
0cf3ec5f03 Set metacrc on RideItem::refresh()
.. even if not using Lucene, its used to spot meta
   changes including things like CP et al.
2015-01-10 18:14:21 +00:00
Damien
28eb72002c CVSRideFile: Add import for CPPlot export 2015-01-10 19:04:25 +01:00
Mark Liversedge
abd89f6477 Scale Tooltip for W'bal 2015-01-10 14:51:40 +00:00
Mark Liversedge
aa9af315ee Increment DBSchemaVersion for TriScore et al 2015-01-10 08:37:33 +00:00
Mark Liversedge
73d5efe17a Merge pull request #1229 from amtriathlon/master
Added Swim Metrics
2015-01-10 08:09:03 +00:00
Alejandro Martinez
cbe098dcf1 Added Swim Metrics
SwimScore, xPace and Pace for Swimming
TriScore for combined PMC
2015-01-09 21:59:27 -03:00
Mark Liversedge
3296c2264e isRelevantForRide for Coggan/Skiba metrics
.. so not shown on runs and swims
2015-01-09 18:26:17 +00:00
Mark Liversedge
534e79eed5 Merge pull request #1228 from amtriathlon/master
Add isRelevantForRide to metrics in GOVSS.cpp
2015-01-09 15:00:46 +00:00
Mark Liversedge
72ed656b6d Overlay title bar nit
.. frame needed over title esp when in white.
2015-01-09 14:58:27 +00:00
Alejandro Martinez
3a2cf04f7c Add isRelevantForRide to metrics in GOVSS.cpp 2015-01-09 11:10:13 -03:00
Mark Liversedge
979315db16 Turn off tooltip on RideNavigator
.. could have sworn i did this before.
2015-01-09 10:36:39 +00:00
Mark Liversedge
9113427686 Merge pull request #1227 from amtriathlon/master
Enabled Pace Zone shading and bining for swimming in speed histogram
2015-01-09 09:30:04 +00:00
Alejandro Martinez
c37359b161 AllPlot tooltip shows speed in pace units according to sport 2015-01-08 20:41:05 -03:00
Alejandro Martinez
e39bcf1b3a Enabled Pace Zone shading and bining for swimming in speed histogram 2015-01-08 19:31:11 -03:00
Mark Liversedge
7903019e99 Merge pull request #1226 from Joern-R/links
Help - What's this
2015-01-08 19:37:19 +00:00
Joern
98f2061786 Help - What's this
... add missing links for some widgets
... correct/enhance URL's to Wiki
2015-01-08 20:40:55 +01:00
Mark Liversedge
ca8bc63760 Tooltip Padding
.. looks a tiny bit better.
2015-01-08 19:05:46 +00:00
Mark Liversedge
bb947a4d3d Fix CP Estimates
.. we filtered out the CP2 and CP3 estimates by checking
   for non-zero values for PMax and FTP that neither of
   these models provide estimates for !
2015-01-08 15:39:55 +00:00
Mark Liversedge
4b9c7d7587 Fix underMouse for LTM legend curve toggle
.. underMouse() seems to be dependant upon enter/leave events
   and is unreliable as a result.
2015-01-08 14:43:32 +00:00
Mark Liversedge
6e9b10968b Improved LTM legend click to toggle curve
.. does all labels etc and integrates in with the rest
   of the LTM chart and CurveColors classes.

.. underMouse() seems weird when legend is updated, might need
   to find a better way to work out if/which legend was clicked.
2015-01-08 13:23:48 +00:00
Mark Liversedge
aea64a29e0 LTM Toggle Curves clicking on Legend
.. but need to integrate with curve isolation
2015-01-07 23:18:24 +00:00
Mark Liversedge
2b87a0d899 Fix LTM library SEGV
.. didn't set the specification when updating the
   LTMSettings when using a sidebar preset
2015-01-07 22:59:42 +00:00
Damien
858efd5866 RideMetrics: add isRelevantForRide for HR and cadence (avg and max) 2015-01-07 22:32:22 +01:00
Damien
724b282f90 RideMetrics: add isRelevant for Aerobic Decoupling and SmO2 metrics 2015-01-07 19:36:34 +01:00
Damien
981d58393f LeftRightBalance: isRelevantForRide use DataFlag 2015-01-07 19:10:35 +01:00
Mark Liversedge
8e76db307a Ratios are averages not peaks
.. for Power/HR and NP/HR ratio metric aggregation
2015-01-07 17:31:38 +00:00
Mark Liversedge
1e21759f36 Merge pull request #1225 from amtriathlon/master
Separate Swims in Trends Summary
2015-01-07 16:07:50 +00:00
Alejandro Martinez
4d1677c09b Separate Swims in Trends Summary
Update spanish translation
2015-01-07 13:01:27 -03:00
Alejandro Martinez
ba18e77a7f Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-01-07 12:59:28 -03:00
Mark Liversedge
b4ff0b5d87 Delete Rides during refresh
.. place on a delete list and clear them once
   the ridecache refresh completes.
2015-01-07 15:32:05 +00:00
Mark Liversedge
267f3cd1cb Restart RideCache refresh on Config changes
.. need to restart any in-progress refresh if you change
   config that affects it whilst it is running !
2015-01-07 15:08:41 +00:00
Mark Liversedge
f129d96f9c Withings download + RideCache
.. if we get measures whilst the ridecache is being refreshed
   it can cause a problem - and the refresh needs to be restarted
   anyway.

.. download now stops and restarts any refresh.
2015-01-07 15:03:45 +00:00
Alejandro Martinez
bfa271be95 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-01-07 09:24:46 -03:00
Mark Liversedge
a7051e2bff ToolTip honour Appearances Config
.. it was hardcoded !

.. still looks fugly, we should do something about that ...
2015-01-07 11:51:10 +00:00
Mark Liversedge
836e07d287 Added isSwim
.. to RideItem and DataFilter
2015-01-07 10:14:53 +00:00
Mark Liversedge
ed6fd9a009 Merge pull request #1224 from amtriathlon/master
Time in pace zone metrics for swim activities
2015-01-07 07:29:43 +00:00
Damien
ca664c1d6e RideSummaryWindow: Only test relevant in ridesummary 2015-01-07 07:58:23 +01:00
Alejandro Martinez
10de4cb2e8 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2015-01-06 22:24:54 -03:00
Alejandro Martinez
92c57ae64b Spanish translation update 2015-01-06 21:23:16 -03:00
Damien
6c4e302f3a RideSummaryWindow: Only add Left/Right Balance if relevant 2015-01-07 00:07:32 +01:00
Alejandro Martinez
f44472e953 Time in pace zone metrics for swim activities
Shown in activity summary
computed if there are swim pace zones defined and the activity isSwim
isSwim() looks just at Sport="Swim" for now
2015-01-06 19:55:40 -03:00
Damien
e12ce4c654 BasicRideMetrics: Add Power Phase length 2015-01-06 22:39:04 +01:00
Damien
3a0da792ff BasicRideMetrics: Avg for Power Phase only when we have a phase end 2015-01-06 21:45:25 +01:00
Damien
e2c6b31045 RideEditor: Change column order 2015-01-06 21:39:12 +01:00
Damien
749829ce7d RideEditor: Correct column label 2015-01-06 21:25:55 +01:00
Damien
5b1c58d362 BasicRideMetrics: Correct copy-paste error 2015-01-06 21:21:48 +01:00
Damien
fb7f6d70d5 Garmin Cycling Dynamics : Switch on Power Phase 2015-01-06 18:44:27 +01:00
Mark Liversedge
8bf7d5399c Increment DBSchemaVersion
.. for new Garmin Cycling Dynamics metric averages
2015-01-06 09:31:19 +00:00
Damien
e64aad87aa Garmin Cycling Dynamics : Switch off Power Phase 2015-01-06 00:15:08 +01:00
Damien
9f756b86cb BasicRideMetrics: Add metrics for Garmin Cycling Dynamics - part 1 (Avg) 2015-01-05 23:00:44 +01:00
Mark Liversedge
53ae8ddeaf Model Reset on addRide
.. headings are already adjusted in the ridecachemodel so
   need to look for new name for CalendarText

.. this is a bit of a hack, but then so is the CalendarText
   metadata field - it should be a first class RideItem class
   member and be maintained alongside date etc
2015-01-05 20:27:46 +00:00
Mark Liversedge
6c0ad54ced Fix SEGV when adding/deleting metadata fields
.. model header data updates need to trigger a reset
   of the views and internal state e.g. index of the
   calendar text and the headings_ string list.
2015-01-05 20:10:42 +00:00
Mark Liversedge
fd6c01160d Import TrainingPeaks Manual entries
.. hr, spd, power and work are all missing from the
   data they provide, but things like duration and TSS work
2015-01-05 17:51:36 +00:00
Joern
6188040b40 Merge pull request #1222 from Joern-R/de
Translation DE
2015-01-05 18:30:18 +01:00
Joern
0a55161567 Translation DE
... update
2015-01-05 18:34:52 +01:00
Mark Liversedge
b71aa7c2bf For PMC metrics best should highlight Peaks
.. we now highlight peak values when highlighting topN
   or bottomN values on the LTM plot
2015-01-05 14:20:12 +00:00
Mark Liversedge
48b9bdd8e6 Tiny nit, positioning of sport selector.
.. just to make it super obvious to users.
2015-01-05 13:46:34 +00:00
Mark Liversedge
b311b8ebdf Merge pull request #1221 from amtriathlon/master
Added Swim Pace Zones to Config
2015-01-05 13:34:26 +00:00
Alejandro Martinez
e64e5829d4 Added Swim Pace Zones to Config
Pace zones available for Run and Swim using Skiba's guidelines
file pace.zones was renamed to run-pace.zones and swim-pace.zones added
2015-01-05 10:08:20 -03:00
Mark Liversedge
d851651369 Merge pull request #1220 from Joern-R/train1
Train View - add TE/PS/LR Balance - Real Time Metrics
2015-01-05 12:42:20 +00:00
Joern
c8535d9706 Train View - add TE/PS/LR Balance - Real Time Metrics
... Torque Effectiveness
... Pedal Smoothness
... L/R Balance
(mainly for Vector - but implemented following standard ANT+ message
rules
2015-01-05 13:39:18 +01:00
Mark Liversedge
a8ba7843cd Climb intervals in Green
.. and also tidy up use of isPeak() etc

.. starting to wonder if we need to a) auto find intervals on import
   and then b) list them in a tree c) allow user to select a 'class'
   of intervals to show (i.e. select all climbs)
2015-01-05 12:08:37 +00:00
Mark Liversedge
38a431ef98 Interval Navigator colors config
.. update when the config changes
2015-01-05 10:49:01 +00:00
Damien
b24ee97278 FitRideFile: Add new FIT fields
Especially for Vectors new metrics
	- Left and Righ Platform Center Offset - eg: -8mm and -11mm
	- Left and Right Top dead Center  - eg: 10° and 11°
	- Left and Right Bottom dead Center  - eg: 203° and 210°
	- Left and Right Peak Power Phase Start - eg: 83° and 76°
	- Left and Right Peak Power Phase End - eg: 115° and 125°
2015-01-05 08:01:33 +01:00
Mark Liversedge
ac5c905b10 Fix TrainingPeaks.com GPS data precision
.. it wasbeing lost when uploading via PWX file format because
   the data was not being stored with enough precision.
2015-01-04 20:09:10 +00:00
Mark Liversedge
5991341e5f Add Peripedal CSV support
.. and a test ride too.
2015-01-03 11:02:23 +00:00
Alejandro Martinez
0fe87165c5 Pace Zones tidy up
Previous to support run&swim pace zones
2015-01-02 16:26:36 -03:00
Mark Liversedge
794b43c32b Reinstate Ramp Rate (RR)
.. on LTM plots

.. and rr(metric) function in datafilter
2015-01-02 12:05:41 +00:00
Mark Liversedge
a0a1b2d6e2 LTMTool nit
.. describing a stress metric as type 'metric'
   instead of 'stress' in the curves list
2015-01-02 10:49:03 +00:00
Mark Liversedge
43ef7ada91 Use ANY metric as LTS/STS/SB input
.. so now you can use the PMC for any load/stress measure.
2015-01-02 10:23:49 +00:00
Mark Liversedge
bf1e2b3f07 Merge pull request #1218 from Joern-R/flow
TCX - consider XML namespace prefix for extension fields
2015-01-02 10:05:30 +00:00
Joern
55d503d21f TCX - consider XML namespace prefix for extension fields
... consider XML namespace prefix generically
... specifically required to also support for Polar Flow TCX and others
2015-01-02 11:05:16 +01:00
Mark Liversedge
5f0405e78b Don't fill curves on FullPlot
.. even if its selected in options.
2015-01-02 08:03:49 +00:00
Mark Liversedge
22beffa12b DataFilter Dynamic Bug
.. leaf traversal returned parent dynamic not ours.
2015-01-01 20:04:27 +00:00
Mark Liversedge
a8856f94d2 Leaf::isDynamic SEGV
.. traversing null branches.
2015-01-01 19:30:34 +00:00
Mark Liversedge
0e94bb8520 Dynamic DataFilter Query
.. will rerun as ride selection changes.

.. but will never stop until cleared so use at your
   own risk, as will run EVERY time you select a
   different ride.
2015-01-01 17:57:36 +00:00
Mark Liversedge
e5f91f097e Datafilter date 'current' to complement 'today'
.. but need to think how we can refresh when current ride changes.
2015-01-01 16:40:40 +00:00
Mark Liversedge
9b72d8b7c3 Merge pull request #1215 from Joern-R/de
Update Translation DE
2015-01-01 16:34:36 +00:00
Mark Liversedge
6cbaed374e LTM refresh on Ride Save
.. in case the peak powers have changed in the
   ridefilecache.
2015-01-01 15:58:17 +00:00
Mark Liversedge
9a0386884c Histogram refresh on Ride Save
.. when cache needs to be refreshed.
2015-01-01 15:55:01 +00:00
Mark Liversedge
667e1d7234 CP Plot Refresh Saved Data
.. remove a missed XXXREFRESH marker to get the CP bests
   curve refreshed when a ride is saved in the period of
   the bests curve.

.. would be nice if we showed the current in-memory version
   rather than insisting on the on-disk .. need to adjust
   ridefilecache to traverse the ridecache for that !
2015-01-01 15:27:49 +00:00
Claus Assmann
8654421095 Backup Rename error message
.. the "bak" directory was added during the development cycle
   and will not be present for users that worked with an early
   development build

.. when deleting rides the "bak" rename will fail due to the missing
   directory

.. the error message has been changed to provide the details of the
   directory where the failure is occurring to help signpost users
   to the problem
2015-01-01 13:13:32 +00:00
Mark Liversedge
6a06941e25 Errant qDebug 2015-01-01 11:48:49 +00:00
Mark Liversedge
dc0cee7c59 W'bal and Derived refresh
.. during mass update, not just on data change.
2015-01-01 11:28:01 +00:00
Mark Liversedge
a5b1058145 Fix delete/add ride bugs
.. fix a few SEGV!
2015-01-01 09:58:11 +00:00
Mark Liversedge
d55d75cfcf HelpWindow Size
.. just a minor nit to make the window a more
   appropriate size given the content.
2015-01-01 09:05:35 +00:00
Mark Liversedge
60ac85f9c0 RideNavigator Clear Zero and NaN values
.. tidy up the output
2014-12-31 23:15:07 +00:00
Mark Liversedge
645ea3045e Fix double imperial/metric conversion
.. RideNavigator doesn't need to do metric converson anymore
   because the RideCacheModel handled conversion to a string!
2014-12-31 22:50:58 +00:00
Mark Liversedge
377e85d3a3 RideCache TODO Documentation
.. need to think about the remaining (existing)
   problems related to refresh and not ridecache.
2014-12-31 19:55:09 +00:00
Mark Liversedge
e8a0e4c1e0 Revert Ride cache refresh and notify
.. fixup ride revert to saved version so all the charts
   refresh properly after the metrics etc are recomputed.
2014-12-31 19:50:24 +00:00
Mark Liversedge
17ae2cdc2c Discard Cache on Exit Discard Changes
.. we don't save the currently cached metrics etc
   for rides that we discard on exit (i.e. don't save)

.. the metrics etc will then get recomputed when you
   restart GoldenCheetah.
2014-12-31 19:33:10 +00:00
Mark Liversedge
188573b3cd Refresh done, remove qDebug
.. refresh is complete pending a couple of tricky
   scenarios to resolve in the next week or so.
2014-12-31 17:48:10 +00:00
Mark Liversedge
c4e1257774 Fixup Appearances check on Mac
.. where we don't have config for scrollbars and headings.
2014-12-31 16:16:20 +00:00
Mark Liversedge
8c54a0aac4 Refresh Metrics on Metadata values changing
.. in case things like Weight, CP or W' metadata was changed
2014-12-31 15:35:02 +00:00
Mark Liversedge
378b7ec99c RideItem recompute NP etal when data changes
.. just before signalling plots to redraw
2014-12-31 15:30:06 +00:00
Mark Liversedge
b13cc61609 Refresh AllPlot when WBAL config changes
.. extracted out CONFIG_WBAL to support this
2014-12-31 15:22:55 +00:00
Damien
1bf9600668 CvsRideFile: don't use msecsSinceStartOfDay 2014-12-31 16:08:41 +01:00
Mark Liversedge
82bb264f3f Honour PMC constants
.. and refresh when they change.
2014-12-31 14:52:54 +00:00
Mark Liversedge
6faaec503a Update Note coloring during RideItem::checkStale()
.. it takes as long to check if its out of date
   as it does to just change it !

.. would be pointless to kick of a refresh just for this.
2014-12-31 14:06:21 +00:00
Mark Liversedge
f19f6696d9 Fix AllPlotInterval SEGV
.. trying to reference context->ride in constructor (!)
2014-12-31 13:58:27 +00:00
Mark Liversedge
0976369ab7 FreeBSD #include "time.h"
.. needed in Fit and Bin ridefiles for time_t, which for
   some other reason compiles cleanly on Linux.
2014-12-31 13:52:23 +00:00
Mark Liversedge
1ca31ad7c8 Merge pull request #1216 from Joern-R/auth
Adding "Help Overview" Window
2014-12-31 13:44:20 +00:00
Joern
aada4f4341 Adding "Help Overview" Window
... Help Overview Window added to MainWindow - containing
.. Info on new "Shift"+"F1" Context specific Help
.. Links to Golden Cheetah Tutorials, Science, User's Guide, FAQ
2014-12-31 14:35:15 +01:00
Mark Liversedge
575857d29e Notify config changed - NOTECOLOR, FIELDS
.. notify if the metadata configuration has been changed

.. also snuck in a change to take hysteresis out of the
   power zones fingerprint - it should not have been there
2014-12-31 13:18:34 +00:00
Mark Liversedge
2ce5718d0e Notify config changed - APPEARANCE
.. Needed to move about some of the color config
   methods and remove the unneeded object from
   mainwindow and initialise global color settings
   in main() instead.
2014-12-31 12:36:18 +00:00
Joern
08cae251a9 Update Translation DE
... update Translation DE
... correct Help Text/Links
2014-12-31 11:29:10 +01:00
Mark Liversedge
9aef569c1b Notify config changed - UNITS, GENERAL, PMC
.. Weight changes when units change which is a bit
   crappy, should fix that somehow.
2014-12-31 10:26:28 +00:00
Mark Liversedge
433d0c1df7 Notify config changed - ATHLETE
.. notify if Athlete weight or height were changed by
   the user during the config dialog

.. no longer included in zones fingerprint

.. ridecache now picks up on specific config changes
2014-12-31 09:32:47 +00:00
Mark Liversedge
14e786cc85 Notify config changed - ZONES
.. notify if Pace, HR or Power zones were changed by
   the user during the config dialog
2014-12-31 09:07:02 +00:00
Damien
7dc284399c CvsRideFile: Add Freemotion Bike cvs
fixes #1168
2014-12-30 22:15:18 +01:00
Mark Liversedge
d0b6a8a749 Recognise Stefan Schake
.. for Tacx Vortex support in v3.11
2014-12-30 19:37:14 +00:00
Mark Liversedge
2489a130a7 Merge pull request #1214 from Joern-R/help
KML File Creation - enhancements
2014-12-30 19:04:18 +00:00
Joern
ddb10e856f KML File Creation - enhancements
... fix problem of not visible track (Windows,...)
... use "run" data series if track isRun()
... add "start" and "end" placemark
... enable translation of texts
2014-12-30 20:07:10 +01:00
Mark Liversedge
b6971891dc Merge pull request #1213 from stschake/tacxvortex
Basic support for Tacx Vortex trainers
2014-12-30 18:29:18 +00:00
Mark Liversedge
f0066a6861 Refresh Summary every 5 seconds
.. not constantly (!)
2014-12-30 15:59:45 +00:00
Mark Liversedge
9c14ddbcf8 Histogram refresh during background refresh
.. just forces a replot if in range.
2014-12-30 15:51:01 +00:00
Mark Liversedge
90d0365018 RideSummary refresh during background refresh
.. but only if plotting a date range
2014-12-30 13:40:20 +00:00
Mark Liversedge
aaa2698404 CP replot during background refresh
.. ridefilecaches return incomplete flag if data not available
   when aggregating (plotting during a refresh).

.. CP plot will refresh as the background update takes place.

.. this occurs even during a comparison.
2014-12-30 13:25:39 +00:00
Mark Liversedge
401cc8081f RideNavigator XXXREFRESH cleanse
.. no need to uplift this from the old metricDB as the model
   now spots changes at an individual ride item basis AND
   will refresh during a background refresh too.
2014-12-30 11:07:31 +00:00
Mark Liversedge
8a17db3635 RideImportWizard XXXREFRESH cleanse
.. no need to uplift the code that used to call for a metric
   refresh after rides were imported since the addRide function
   will now refresh for individual rides.
2014-12-30 11:05:32 +00:00
Mark Liversedge
a80a8e7ac4 Diary Sidebar refresh during background update
.. colors change on sidebar calendar as the rides
   are processed.
2014-12-30 10:39:59 +00:00
Mark Liversedge
e5cda3cd93 Developer slow refresh
.. add DEFINES += SLOW_REFRESH to slow down the
   background refresh on hosts with good performance
   when testing refresh code !
2014-12-30 10:39:07 +00:00
Mark Liversedge
b959bb7d03 Histogram refresh on rideChanged()
.. just force replot using existing method.
2014-12-30 10:23:46 +00:00
Mark Liversedge
3d003fe000 Aerolab refresh on rideChanged()
.. just replot, no optimisation.

.. Aerolab needs some love .. maybe allow
   overlaying intervals and autofind them too.
2014-12-30 10:12:12 +00:00
Mark Liversedge
e295ecd0c5 HrPw refresh on rideChanged()
.. just forces a replot
2014-12-30 09:46:11 +00:00
Mark Liversedge
cf921a7e9e PfPv Plot (QA) refresh on rideChanged()
.. just forces a replot
2014-12-30 09:38:40 +00:00
Stefan Schake
0df233ad58 Integrate Tacx Vortex with ANT device logic
Signed-off-by: Stefan Schake <schake@embedded.rwth-aachen.de>
2014-12-30 03:55:53 +01:00
Stefan Schake
d198499ed4 Keep track which data page a Tacx Vortex ANTMessage refers to
This ensures we only access initialized fields in the message

Signed-off-by: Stefan Schake <schake@embedded.rwth-aachen.de>
2014-12-30 03:55:52 +01:00
Stefan Schake
bfeffaac9a Split Tacx Vortex requests from client to more closely match Tacx behavior
Signed-off-by: Stefan Schake <schake@embedded.rwth-aachen.de>
2014-12-30 03:55:52 +01:00
Stefan Schake
8c3f12a50d Add Tacx Vortex ANT message decoding/encoding
Signed-off-by: Stefan Schake <schake@embedded.rwth-aachen.de>
2014-12-30 03:55:51 +01:00
Stefan Schake
61512b95b7 Add Tacx Vortex ANT channel type
Signed-off-by: Stefan Schake <schake@embedded.rwth-aachen.de>
2014-12-30 03:55:50 +01:00
Mark Liversedge
dedd3e0274 Withings, Summary + Cache refresh update
.. when downloading withings data the cache is refreshed

.. when the cache refreshes it notifies the *current* ride
   changes if it is refreshed

.. ridesummary has been updated to process rideChanged() signals.
2014-12-29 22:41:08 +00:00
Mark Liversedge
2cfdb68ada Google Map refresh on rideChanged()
.. just forces a replot
2014-12-29 22:04:25 +00:00
Mark Liversedge
3d0d747534 GcWindowResgistry compile nit 2014-12-29 21:49:09 +00:00
Mark Liversedge
385755109a Disable interval ranking
.. it is too slow. Need to think about how to implement
   this with good performance.

.. if you really want it then add
   DEFINES += GC_HAVE_RANKING
   to gcconfig.pri
2014-12-29 21:25:03 +00:00
Claus Assmann
5ef2593db6 Another configChanged() script error
.. sed s/configChanged()/configChanged(qint32)/g
   messed up calls. This is probably the last.
2014-12-29 20:06:55 +00:00
Mark Liversedge
0297d3d71c Fix ModelPlot compile error
.. configChanged(qint32) was introduced by a refactoring
   script that I was using for mass updates.
2014-12-29 19:39:20 +00:00
Claus Assmann
3c0fc7d948 Clucene is optional ! 2014-12-29 19:37:04 +00:00
Mark Liversedge
c9cd48d5c5 Interval Season Ranking
.. how does this interval rank for the season it
   belongs to ?

.. if out of season then rank for all time.
2014-12-29 19:30:30 +00:00
Mark Liversedge
e58a6efc90 Merge pull request #1211 from Joern-R/fullplot
Fullplot - Alt/Slope de-activated
2014-12-29 16:59:33 +00:00
Mark Liversedge
0672ab7e31 Merge pull request #1207 from Joern-R/help
Update "WhatsThis" - help
2014-12-29 16:59:20 +00:00
Joern
5f46aaf134 Fullplot - Alt/Slope de-activated
... correct Alt/Slope behavriour in FullPlot (default = inactive)
... handle Alt/Slope status properly when switching back/forth between
Compare Mode and normal Plot view
2014-12-29 17:54:29 +01:00
Mark Liversedge
ac7ba01cff Scatter refresh on rideChanged()
.. just forces a replot
2014-12-29 16:46:56 +00:00
Mark Liversedge
423569eaea Remove qDebug
.. can uncomment during development
2014-12-29 16:29:29 +00:00
Mark Liversedge
c87be4831c AllPlot refresh on rideChanged()
.. just needs to force a replot
2014-12-29 16:23:47 +00:00
Mark Liversedge
a2255fefb9 Default Sport values
.. of Bike, Run, Swim
2014-12-29 16:10:19 +00:00
Mark Liversedge
82ee4a5827 Introduce Context::rideChanged() signal
.. to let charts etc know that the *current* ride has
   changed and will need to be replotted

.. the editor / dataprocessor functions have also been
   integrated into the RideItem to notify the change

.. there is a qDebug() in RideCache in lieu of updating
   all the charts to refresh on this signal.
2014-12-29 16:03:02 +00:00
Mark Liversedge
aff18fec80 Fix RideFileCache refresh bugs
.. didn't update mean max array

.. always ignored very first data point (!) which was usually
   unnoticed since first point usually lots of zeroes.
2014-12-29 15:54:52 +00:00
Mark Liversedge
255f69c1ad ConfigChanged Part 1 of 3
.. introduce concept of configChanged(what) to
   pass details of what config has been changed

.. fixed zones changes to re-read after write
   to correct the save twice to get changes to
   zones bug.

.. next parts need to spot changes (part 2) and
   then action appropriately (part 3)
2014-12-29 13:41:50 +00:00
Mark Liversedge
1e7a26ee1f Lucene empty index optimisation
.. rather than check if lucene index contains every ride
   upon startup just force a rebuild of the index is missing.

.. if the index gets out of sync its because people are copying
   data and so they should delete the index when they do so
   to make sure it stays in sync
2014-12-29 10:24:10 +00:00
Damien
365df56dca RideFileInterval: QMap use < to differentiate keys (2) 2014-12-28 23:42:27 +01:00
Damien
837d0f8977 IntervalPlot: Hide in Compare mode 2014-12-28 23:42:27 +01:00
Damien
18591a1216 IntervalPlot: set by distance 2014-12-28 23:42:27 +01:00
Damien
20e36784e8 IntervalPlot: Clear interval hover 2014-12-28 23:42:27 +01:00
Mark Liversedge
ff0c96c3d4 Refresh Events Documentation
.. start to document the events that wil require
   a refresh, but doesn't describe the 'refresh'
   that is needed (e.g. data, metric, cache, chart)
2014-12-28 22:09:26 +00:00
Damien
2039829321 IntervalPlot: Add Double-Click interval to Zoom 2014-12-28 18:27:08 +01:00
Mark Liversedge
f41052ba33 Selected Intervals Summary
.. in sidebar, we summarise for all the selected intervals.

.. we take into account if they overlap, so two intervals
   of 10 and 5 mins where the 5 min interval is wholly
   contained within the 10 minute interval will be summarised
   as 10 minutes not 15 minutes duration.
2014-12-28 13:34:55 +00:00
Mark Liversedge
c11b55b5be Add Double-Click interval to Zoom
.. in the interval sidebar
2014-12-28 12:18:34 +00:00
Mark Liversedge
ba4e7d8696 Fix Lucene 'Lock timeout' / thread issues
.. the lucene index writing during RideCache updates needed
   to avoid conflicts between multiple threads writing at
   the same time.

.. just added a QMutex around write operations - reading is
   still thread safe and can occur in parallel.
2014-12-28 10:42:15 +00:00
Damien
2de5d3e8ac RideFileInterval: QMap use < to differentiate keys 2014-12-28 09:48:16 +01:00
Damien
90031f82fa IntervalPlot: don't group Matches 2014-12-27 16:49:21 +01:00
Damien
a3505a375f IntervalPlot: color for Match 2014-12-27 16:12:46 +01:00
Mark Liversedge
26811f2576 RideDB ::save() after ::refresh()
.. rather than waiting for close, since if there is a
   crash etc after the refresh it needs to run again.
2014-12-27 14:20:55 +00:00
Damien
47f8bc4ca8 IntervalPlot: thinner lines 2014-12-27 00:11:02 +01:00
Damien
8caf2cbd25 IntervalPlot: correct IntervalsChanged() 2014-12-26 23:46:05 +01:00
Damien
eafe0b873f IntervalPlot: recalc only if open 2014-12-26 22:48:59 +01:00
Mark Liversedge
029a288051 Fix Initialiser for Interval Plot
.. need to initialise in constructor.
2014-12-26 21:47:18 +00:00
Damien
4fc53a7010 IntervalPlot: recalc after interval changed 2014-12-26 22:35:40 +01:00
Damien
c4a26d6da0 IntervalPlot: change height 2014-12-26 22:25:05 +01:00
Damien
132e6b0a31 Interval: Correct multiple overlap 2014-12-26 21:37:23 +01:00
Damien
c7b230f989 AllPlotWindow: Add interval plot 2014-12-26 21:20:33 +01:00
Mark Liversedge
1601eddeeb No more WANT_RIDECACHE
.. its not optional !
2014-12-26 19:24:36 +00:00
Mark Liversedge
124f5fe5bc Fix Meta Autocomplete ranking
.. when using '*' for values we autocomplete based upon
   previously entered values for the field, but we didn't
   take into account ranking.

.. now the autocomplete list is ranked to most popular values
   complete first.
2014-12-26 10:56:33 +00:00
Mark Liversedge
2816e6a432 Remove obsolete filter code
.. from RideSummaryWindow as it is no longer needed since
   we moved to using a specification object to manage the
   filter sets and date ranges to filter on.
2014-12-26 10:11:56 +00:00
Mark Liversedge
7862b991c7 Fix Ride Selection Bug
.. was using the wrong index for filename when searching
   for the ride in the navigator.

.. should now highlight the current ride properly.
2014-12-26 09:51:53 +00:00
Mark Liversedge
fb5cbaa39d Support Magellan GPX extensions
.. using the GPX format they add extensions to record
   power, heartrate and cadence using element names
   power, heartrate and cadence ! (way to simple!)

.. thanks to Wenqi Zhang for the sample.
2014-12-26 09:22:52 +00:00
Mark Liversedge
dc7cc4e461 RideSummary list recent rides first
.. iterate from most recent rides first.
2014-12-26 09:11:06 +00:00
Mark Liversedge
a3c7bc41be Use C++ <cmath> not C <math.h>
.. it clashes, and also its deprecated for C++ sources
2014-12-25 20:38:18 +00:00
Mark Liversedge
894cb6fe23 Add Lucene Index if missing
.. as well as checking the metaCRC RideItem will add the
   ride to the lucene index if it is missing.
2014-12-25 19:43:50 +00:00
Mark Liversedge
cf04968dd4 Lucene search index migrate to RideItem
.. now when we refresh a ride item it will also
   update the lucene index, but only if the texts
   have changed since we last updated it.
2014-12-25 16:37:42 +00:00
Mark Liversedge
196ea3cdb4 Fix fencepost in LTM data table
.. seems wrong but is right.
2014-12-25 14:10:12 +00:00
Mark Liversedge
cf951eabc9 RideFileCache now refreshed in RideItem
.. and fixed sort order problem
2014-12-25 13:59:38 +00:00
Mark Liversedge
a7c2a73a00 CP overlay title nit
.. xxx/yyy is bad UX
2014-12-25 10:26:07 +00:00
Mark Liversedge
b854043971 Add Date strings to datafilter
.. to enable queries such as;

   Date > "2014/02/28"
   for rides since 28th February 2014

.. might be useful to allow localised dates
   but using this makes it easier to document !

.. a query like today > "1900/01/01" will pass
   on all rides, but user being an idiot.
2014-12-25 09:49:42 +00:00
Mark Liversedge
c7dc29fab6 Add Date arithmetic to DataFilter
.. use "Date" and "Today" which evaluate to the number
   of days since 1st Jan 1900.

.. so a filter for the last 90 days would be:
   (Today - Date) < 30

.. will add date strings next.
2014-12-25 09:12:34 +00:00
Mark Liversedge
9cf024f946 Deprecate SQL metricDB
.. removes across the code base

.. need to fixup RideFileCache and Lucene refresh
   within the RideItem/RideCache framework, they will
   NOT be refreshed at present

.. need to look at how charts get refreshed on data
   changes now RideItem provides a more granular
   mechanism (look for XXXREFRESH in code)

.. New Intervals code will definitely NOT compile
   and needs to be redesigned/reimplemented to fit
   in with the ride cache
2014-12-24 20:24:34 +00:00
Mark Liversedge
3c56c9c557 RideCacheModel Part 2 of 3
.. add/remove ride now works

.. fixed metric value in data()

.. need to test (especially with the diary
   window and new athlete with zero rides and
   then import, add, delete, change, sort
   merge, split etc and push update to
   fix such bugs in Part 3
2014-12-24 19:05:52 +00:00
Mark Liversedge
4cde5b44b7 RideCacheModel Part 1 of 3
.. getting the model in and integrated with the
   ride list and diary

.. next steps to connect up to ridecache methods
   ::addRide and ::removeCurrentRide.

.. then fix up nits/bugs with diary view etc
2014-12-24 17:36:46 +00:00
Joern
2314a9ed7d Update "WhatsThis" - help
.. add short texts and make translatable
.. first 3.11 Wiki .jpg changes
2014-12-24 14:06:08 +01:00
Mark Liversedge
c7402703d6 KQOAuth lib in src.pro
.. use -l and let the linker decide which lib to link in
   rather than specifying.
2014-12-24 08:57:13 +00:00
Joern
cbbd160b9e Switch to kQOAuth
.. this removes the dependencies on liboauth and friends
   and replaces it with a single lib.

.. the library is available from http://github.com/kypeli/kQOAuth

.. the only current feature that requires OAuth is tweet
   your ride, but this lib will provide the services for
   future oauth services.
2014-12-23 20:25:25 +00:00
Mark Liversedge
f351c80313 Minor nits 2014-12-23 15:01:09 +00:00
Mark Liversedge
4db41a662d CTL/ATL/TSB Min, Max and Avg on Summary
.. when looking at month by month you can see where you
   are peaking, building, tapering or detraining.
2014-12-23 12:04:34 +00:00
Mark Liversedge
140c37cb9c Show CTL et al on date range summary
.. not sure about how we show range and today value but we
   can fix the cosmetics later on.
2014-12-23 09:51:39 +00:00
Mark Liversedge
b25feb0d23 Clean unneeded refs to metricDB
.. starting to sunset the code now. Need to sort the sqlModel
   for the ridecache and then it can be retired completely.
2014-12-22 22:39:36 +00:00
Mark Liversedge
de80d9d37a Default to Sync tab on TP dialog
.. its where you usually switch to.
2014-12-22 22:03:16 +00:00
Mark Liversedge
db8ad8414c TP Download Dialog use Date Range
.. was broken to ignore date ranges when migrating
   to use the RideCache.
2014-12-22 19:14:05 +00:00
Mark Liversedge
2bbc503304 Fencepost PMC data bug
.. caused 0 values to show for first day/week/month
2014-12-22 18:22:03 +00:00
Mark Liversedge
70cbe30458 Fix Filter PMC bug
.. if a filter was being applied we created a local PMC
   but also filtered on dates, this caused the PMC data
   that was generated to only represent the activities in
   the period selected !

.. thanks to Ale Martinez for pointing this out.
2014-12-22 17:54:26 +00:00
Mark Liversedge
133aa6e6de Migrate LTM DataTable to use RideCache
.. and actually uses the LTMPlot functions to aggregate
   data so should be easier to maintain and also match the
   charts.
2014-12-22 12:03:21 +00:00
Mark Liversedge
efb30d970f LTMPopup now fully migrated to RideCache
.. now when called by the LTM chart it uses the ride cache
   and not the SQL data.
2014-12-22 10:37:01 +00:00
Mark Liversedge
89eaf26a45 Less Spacing for Bests / Intervals
.. now they show PMC data too, needs more space.
2014-12-22 09:47:35 +00:00
Mark Liversedge
5bf1cf141c Erroneous qDebug() in FitRideFile
.. was working on an interval problem and left a
   qDebug() in by accident on last commit
2014-12-21 22:10:50 +00:00
Mark Liversedge
250a64edcc RideItem destructor
.. no memory leaks here !
2014-12-21 22:03:36 +00:00
Mark Liversedge
22a34a5428 Fix SEGV on delete ride in AllPlot hover
.. tries to traverse the ride data after its been deleted.
2014-12-21 21:53:30 +00:00
Mark Liversedge
39d5fb7a96 Fix SEGV in PMCData on Import ride
.. when refreshing summary window PMC metrics.
2014-12-21 21:15:03 +00:00
Mark Liversedge
01a6499fb0 Add ATL, CTL, TSB aliases to DataFilter
.. for sts(TSS), lts(TSS) and sb(TSS)
2014-12-21 19:01:02 +00:00
Mark Liversedge
b272ee63d8 Add PMC data filter functions
lts(metric), sts(metric), sb(metric) all return the PMC
value for the metric in question for the date of the ride
and therefore allow you to select rides based upon PMC data.

e.g. sb(TSS) > -5

could be considered a way of looking for rides when you were
in a well tapered state, or at least, when you should be able
to perform well.

or, e.g. lts(TSS) > 100

could be a way of looking for rides at peak form (if 100 is
a peak CTL for you).
2014-12-21 17:34:21 +00:00
Mark Liversedge
e4acf344c6 TP Dialog Size
.. needs to be bigger, always end up resizing it !
2014-12-21 15:06:31 +00:00
Mark Liversedge
5e7e581a4d Get withings weight on same day as ride
.. should have checked for date <= not < ride date.
2014-12-20 21:00:45 +00:00
Mark Liversedge
a4966d23a4 Don't show model range for ride summary 2014-12-20 20:46:44 +00:00
Mark Liversedge
1c68cb8054 Merge pull request #1205 from Joern-R/creator
Allow "Out-Of-Source" Build (Original patch by yarrouye)
2014-12-20 20:30:30 +00:00
Joern
3b546b71d6 Allow "Out-Of-Source" Build (Original patch by yarrouye)
... separated the "out-of-source" patch from yves from original pull
request
... the patch allows to use e.g. QTCreators "Shadow-Build" feature so
that GC is build not in source, but in a different directory
.. this is useful when using QTCreator and switch between different QT
versions / 32/64 bit builds - since every build resides in a separate
directory from GC source

-- since the original commit (at least from GitHub view) is shown in a
mixed pull request with other commits - this is a seperated version of
the single commit
2014-12-20 17:38:14 +01:00
Mark Liversedge
92da82e922 Show TSB add time of athlete best
.. on ridesummary
2014-12-19 22:35:54 +00:00
Mark Liversedge
ea3dbd1026 Add PMC metrics to ride summary
.. bit of a hack, will make it configurable, but quite
   useful to see what the state of TSB was for the day
   of the ride being summarised.
2014-12-19 21:26:59 +00:00
Damien
e60edb92d3 Interval: Correct overlap of highlighted intervals 2014-12-19 21:32:05 +01:00
Mark Liversedge
26d23edd2e Remove GoldenCheetah Racing Credentials
.. its not going to happen and begs the question.
2014-12-19 19:56:02 +00:00
Mark Liversedge
e4c11c846c Migrate CRC from DBAccess to RideFile
.. and wipe a few more SummaryMetric references
2014-12-19 19:30:18 +00:00
Mark Liversedge
fdf9ad75fa Summary redraw bug
.. moved check for isVisible() in dateRangeChanged() and
   it stopped refresh on startup.
2014-12-19 17:53:18 +00:00
Mark Liversedge
1f9df00d08 RideCache update invalidate PMC
.. so it is recalculated when chart refreshes.
2014-12-19 17:26:38 +00:00
Mark Liversedge
9a403939df Fix two-a-days on PMC
.. only kept stress for first ride on two-a-days when
   calculating daily stress.

.. I think I've made this mistake a few times before !
2014-12-19 16:50:04 +00:00
Mark Liversedge
6f7145db7d Migrate PMC data to Athlete
.. so it is shared across charts when no filtering
   is applied.

.. when filtering is applied then LTMPlot manages
   the PMC data itself.

.. now we use the ridecache the PMC update is really
   fast anyway.
2014-12-19 16:35:24 +00:00
Mark Liversedge
b0c29f9696 Remove old references to SummaryMetrics
.. cleaning up from last few commits.
2014-12-18 19:10:47 +00:00
Mark Liversedge
d1a339db17 Migrate LTM Compare and Bests to use RideCache
.. still PMC fixups to remove SummaryMetrics left

.. Data Table now broken, needs fixing too.
2014-12-18 18:45:35 +00:00
Mark Liversedge
6ee2a8f59e Migrate LTM Metric/Meta curve to use RideCache
.. seems ok, now need to address bests and compare
2014-12-18 16:28:30 +00:00
Mark Liversedge
ce579a9365 Merge pull request #1202 from Joern-R/translate
Update Translation DE
2014-12-18 15:43:19 +00:00
Mark Liversedge
211263519d Migrate LTM TimeofDay Curve to use RideCache
.. picking off the LTM charts piece by piece !
2014-12-18 15:41:12 +00:00
Mark Liversedge
8a205e414b Rename SummaryBest to AthleteBest
.. and move to RideCache.h
2014-12-18 14:59:18 +00:00
Mark Liversedge
3e095af720 Retire getAggregated + getBests
.. from SummaryMetrics
2014-12-18 14:22:36 +00:00
Joern
d8039b6c53 Update Translation DE
.. update DE
2014-12-18 15:15:14 +01:00
Mark Liversedge
9851b299f3 RideCache::refreshUpdate(QDate)
.. updated to now pass the date at which the update has
   got to. So charts on need to refresh if the data they
   need is prior.
2014-12-18 13:57:06 +00:00
Mark Liversedge
a0d729e86a Fix reverse sorting of RideItem*
.. qSort needed a greaterThan function that worked
   with pointers not objects, so now we really do
   refresh in reverse.
2014-12-18 12:27:15 +00:00
Mark Liversedge
1517da1f96 RideCache refresh in reverse
.. also uses a copy to avoid delete/insert issues when adding
   and deleting rides during a refresh

.. but still need to consider the delete operation and marking
   items as in process or something
2014-12-18 11:35:18 +00:00
Mark Liversedge
4a789f002e LTM refresh during update
.. just playing with the concept, not neccessarily how
   things will pan out.

.. If you delete rideDB.json and start GC then switch
   to a PMC whilst the cache is being computed and look
   at all dates you will see the chart refresh as data
   arrives.
2014-12-17 23:45:07 +00:00
Mark Liversedge
fd8a4714d6 CLucene is optional !
.. oops
2014-12-17 20:46:27 +00:00
Mark Liversedge
eebb8d2a55 Migrate RideSummary (Compare) to use RideCache
.. ride summary window is now free of metricDB

PHEW!
2014-12-17 18:36:49 +00:00
Mark Liversedge
c14cfab98f Migrate RideSummary (DateRange) to use RideCache
.. but compare mode still uses metricDB

.. and the code is still in need of tidy up
2014-12-17 17:03:45 +00:00
Mark Liversedge
9ebcb9b579 Migrate DiarySidebar to use RideCache
.. in the month/week summary.
2014-12-17 15:53:01 +00:00
Mark Liversedge
2fa498a82d Migrate LTMSidebar to use RideCache
.. just the summary widget basically.
2014-12-17 15:45:40 +00:00
Mark Liversedge
1104e97259 Migrate TreeMap LTMPopup to use RideCache
.. the other half, LTMWindow using LTMPopup is now commented
   out and will need to be fixed when LTMWindow migrates to RideCache
2014-12-17 14:36:21 +00:00
Mark Liversedge
f313f7f637 Histogram no longer slow
.. so we don't need a lag betweem metric selection
   and re-plotting.

.. this was/is only relevant to plotting metrics
2014-12-17 12:05:40 +00:00
Mark Liversedge
31ddcafabf Migrate Histogram to use RideCache
.. and specification, but only when plotting a metric
   over a date range.
2014-12-17 11:58:58 +00:00
Mark Liversedge
065e337ef2 Migrate TreeMap to use RideCache
.. and therefore also using the Specification approach.
2014-12-17 11:25:35 +00:00
Mark Liversedge
f111994d60 Introduce Specification class
.. used to create a 'specification' against which we match
   a rideitem when plotting etc.

.. so rather than passing an array/vector/list of data when
   calling a plot, we pass the 'specification' to use instead.

.. the plots themselves should now iterate across the shared
   ride cache only plotting the items that pass the specification.

.. this should reduce memory usage and increase performance.
2014-12-17 10:57:57 +00:00
Mark Liversedge
d6b1489011 Migrate AutoFilter to use RideCache
.. in LTMSidebar
2014-12-17 10:13:05 +00:00
Damien
43b8ed720e MetaData: Add default values 2014-12-17 08:17:11 +01:00
Mark Liversedge
bc451469a2 FilterSet::pass() and DateRange::pass()
.. moving away from passing data when working with groups of
   rides to passing constraints instead.

.. so FilterSet allows us to pass a collection of filters
   that can then be applied to data.

.. in this way the plots can iterate over cached data selecting
   rideitems based upon constraints applied by the user.

.. these need to be embedded into LTM, TreeMap, Histogram etc
2014-12-16 20:47:17 +00:00
Mark Liversedge
d17a3b892e Migrate StressCalculator to use RideCache
.. still a bit funky with the filtering, there is probably
   some scope to simplify that, but at least now its only
   a list of pointers not objects on the stack.
2014-12-16 13:53:16 +00:00
Mark Liversedge
6f339ec6e6 Migrate RideMetadata to use RideCache
.. for distinct values -- still does NOT update the
   in memory store in rideitem when metadata changes
2014-12-16 12:39:07 +00:00
Mark Liversedge
f53a22140b Migrate TP Download Dialog to use RideCache
.. stop using the metric db
2014-12-16 11:59:55 +00:00
Mark Liversedge
8e347312d5 Migrate ManualRideDialog to use RideCache
.. for metric estimation
2014-12-16 11:37:35 +00:00
Mark Liversedge
12a69f8024 Removing unneeded MetricDB references
.. in RideFile and TwitterDialog
2014-12-16 11:15:25 +00:00
Mark Liversedge
43b7e83a28 Migrate DataFilter to use RideCache
.. no longer uses metricDB but traverses in memory cache
   and should be a lot faster.

NOTE: the line endings for DataFilter.{cpp,h} have been
     changed from dos to unix format which has resulted in
     the entire file being changed, apologies but needed to
     clean that up anyway.
2014-12-16 10:57:22 +00:00
Mark Liversedge
3d933ebe9a Migrate listRideFiles()
.. from RideFileFactory to RideCache

.. to enforce/encourage developers to use the ridecache
   to access rides/data rather than going to disk for it.
2014-12-16 10:23:03 +00:00
Mark Liversedge
b54ce441b4 Fix Qt4 build of WhatsThis? 2014-12-15 16:47:10 +00:00
Mark Liversedge
f727c4bbaf PD Estimates use 12 week rolling window
.. the clunky old way of using a 2 month rolling window has
   been reworked to use a 12 week rolling window making the
   code less susceptible to jumping around esp. on 1st of the month!
2014-12-15 15:05:18 +00:00
Mark Liversedge
68b60088f1 Merge pull request #1200 from Joern-R/help2
Enable Context Help (Shift+F1) using "QT's - What's This"
2014-12-14 18:12:38 +00:00
Joern
dfb7b8fc36 Enable Context Help (Shift+F1) using "QT's - What's This"
... adds "What's this" to (hopefully) most of the widgets (please report
on missing ones)
... defines draft "Whats' this" texts including a
context specific WikiLink

.. Help Key for all platforms is <Shift>+<F1> + in some widgets
"RightMouse - Click"

... Tested on Win and Mac (On Mac QtMacButton seems not supporting
"What's this") - so here <Shift>+<F1> has no result.

... ToDo: Create final texts and links based on the to be updated 3.11
Wiki
2014-12-14 18:55:42 +01:00
Mark Liversedge
9a486ae9c8 Add RideFileCache to RideItem
.. so available for current ride

.. and refreshed() when notifyDataChanged() is called

.. but not many classes call it!

.. we are moving to having the filecache read from the
   RideCache rather than straight from disk so we have an
   in-memory and persisted version.
2014-12-14 15:35:53 +00:00
Damien
df5fc26ac0 ScatterPlot: ignore zero in one function 2014-12-13 16:33:30 +01:00
Damien
b9aa123674 ScatterPlot: ignore zeros in compare mode 2014-12-13 15:52:53 +01:00
Mark Liversedge
804c2ed197 Fix Navigator coloring
.. if isRun the logic was wrong when user has selected coloring
   the background not just a smaller accent to the right.
2014-12-13 09:49:16 +00:00
Mark Liversedge
8c15ff9f9e Refresh cache when version changes
.. so ONLY change version number of a refresh is going
   to be needed !!!

.. I updated rideDB version to 1.1 to ensure present gets
   refreshed as it is used by the PD model estimate code
2014-12-13 09:26:59 +00:00
Mark Liversedge
dc7597d17d Fix SEGV on array overrun
.. in scatterplot smoothing.
2014-12-12 22:21:30 +00:00
Damien
18f7c02f9d ScatterPlot: Add smoothing 2014-12-12 22:09:04 +01:00
Mark Liversedge
c98d80621c Merge pull request #1199 from amtriathlon/master
GOVSS and xPace
2014-12-12 21:00:38 +00:00
Alejandro Martinez
c1435277c9 Refined Aero and KE contributions to running power
Added comments and references
2014-12-12 16:12:49 -03:00
Mark Liversedge
6c8318afe6 Progress line show()
.. called when progressUpdate() too as it may well
   miss the first signal (e.g. switch view during a
   refresh).
2014-12-12 18:13:53 +00:00
Mark Liversedge
2e5dc84188 Fix TwitterDialog
.. for getRideMetric migration

.. also simplified the code that generated the message since
   it was hideous; cut-paste lazy code.
2014-12-12 16:01:15 +00:00
Mark Liversedge
7077c3d223 Migrate refreshPDEstimates
.. from MetricAggregator to RideCache

.. will need to wipe out your rideDB.json before
   running to ensure present is set correctly.
2014-12-12 14:56:48 +00:00
Mark Liversedge
c25e91d5d8 Add RideItem ::color, ::isRun and ::present
.. as primary fields, and also load/save to cache.
2014-12-12 14:08:11 +00:00
Mark Liversedge
995a417554 Isolating Intervals code
.. it will almost certainly break when metricDB is retired
   so isolating it a little further, we can fix it up once
   the ridecache code is done.
2014-12-12 13:18:59 +00:00
Mark Liversedge
294ed0d4d9 More Header Nits
.. MetricAggregator declared getFirstLast() that basically
   doesn't exist (and no idea what it was for!)
2014-12-12 13:02:58 +00:00
Mark Liversedge
c87b9963ea Migrate getRideMetrics() and friends
.. from DBAccess to RideCache

.. and also SummaryMetrics::getForSymbol() now available in
   RideItem to access the precomputed metrics for a single
   ride.
2014-12-12 12:53:40 +00:00
Mark Liversedge
944d612fd9 MetricAggregator header nit
.. still declared getAllMeasures()
2014-12-12 11:32:25 +00:00
Mark Liversedge
cf289b31f7 Migrate getDistinctValues(field)
.. from DBAccess to RideCache.
2014-12-12 11:28:04 +00:00
Mark Liversedge
7dbb2f8da1 Measures code cleanup
.. removing any remaining references to measures in the
   code. We now use withings only and that is handled
   in a non-generic manner.

.. measures and equipment are likely to get put into
   v3.3 once we've done planning.
2014-12-12 10:59:45 +00:00
Mark Liversedge
5ecb26e728 Migrate getAllFilenames()
.. from MetricAggregator to RideCache
2014-12-12 10:40:32 +00:00
Mark Liversedge
7f103ac59b Migrate getAllDates()
.. from DBAccess to RideCache
2014-12-12 10:24:15 +00:00
Mark Liversedge
26d7e79cd6 Migrate Export Metrics as CSV
.. from MetricDB to RideCache
2014-12-12 10:15:26 +00:00
Alejandro Martinez
6145b69b06 Minor fix in spanish translation and xPace format 2014-12-11 14:20:55 -03:00
Damien
dae0276b0a ScatterPlot: Add ignore zero special case for LR Balance 2014-12-10 23:14:02 +01:00
Damien
c663b2ec85 ScatterPlot: Add NoTemp special case 2014-12-10 22:44:47 +01:00
Damien
9837d6d0cc Device: Correct last commit 2014-12-10 21:35:59 +01:00
Mark Liversedge
8d78aeaaf9 Merge pull request #1177 from chet0xhenry/feature/translation
Androidify App
2014-12-10 20:27:23 +00:00
Damien
b282eb70f5 Device: modify wheel size configuration
fixes #986
2014-12-10 20:59:02 +01:00
Mark Liversedge
9c2e820335 RideCache::load()
.. loads the cache/rideDB.json back on startup to avoid
   any refresh of metrics etc

.. uses a lex/bison JSON parser, not because of performance
   since its only run one at startup, but because;

   * QtJSON support is only available in QT5
   * mvjson uses a DOM model that creates a memory overhead
   * the existing bison/lex parser works well and is easy to
     use as a template for this

We now have a good mechanism for metrics and metadata refresh,
cache and recovery so can look at using it in the charts and
the ride navigator next !
2014-12-10 19:34:09 +00:00
Mark Liversedge
9ae44f8a96 Stray connect() in ScatterWindow 2014-12-10 13:53:55 +00:00
Damien
77847f08ac Config: modify wheel size configuration 2014-12-10 00:10:42 +01:00
Damien
03e94f4844 ScatterPlot: Add trend line 2014-12-09 22:35:12 +01:00
Mark Liversedge
dbe44a40b5 Merge pull request #1194 from amtriathlon/master
Update Spanish Translation
2014-12-09 19:12:55 +00:00
Alejandro Martinez
1699312f10 Update Spanish Translation 2014-12-09 16:11:03 -03:00
Mark Liversedge
db40fb733f Simplify Lucene Method
.. it ignored most of the parameters so lets simplify
   and make it just look at ride() -- this may simplify
   even further to the tags in future.
2014-12-09 15:15:49 +00:00
Mark Liversedge
7d218382a7 Only save Withings on SUCCESS
.. moved the overwrite of the withings cached response
   to when we know we got something successfully.

.. previously we overwrote regardless of what we received
   which means that when we have firewall/network type issues
   the cache was overwritten with blank data !
2014-12-09 14:34:04 +00:00
Mark Liversedge
1cf988a550 RideCache refresh on addRide
.. but only refreshes the ride added rather than looking everywhere.
   So, when we are importing large numbers of activities it won't
   repeatedly run a full refresh (which was bonkers).
2014-12-09 13:59:10 +00:00
Mark Liversedge
0c0987e99b RideCache Exit gracefully
.. if we close GC during a background refresh operation
   then the refresh is cancelled and cache saved in whatever
   state it is in now .. the user clearly didn't want to wait !
2014-12-09 11:29:50 +00:00
Mark Liversedge
a94bda9403 RideCache::save() UTF-8 with a BOM
.. same as the ridefile.json
2014-12-08 22:52:26 +00:00
Mark Liversedge
e8105ce23e rideDB.json Indentation nit
.. yeah, I'm a bit OCD.
2014-12-08 22:35:08 +00:00
Mark Liversedge
170c38467a RideCache::save()
.. dumps the ridecache to cache/rideDB.json
2014-12-08 22:12:06 +00:00
Claus Assmann
93393246d7 Fixup RideCache on QT < 5
.. QtConcurrent header names changed.
2014-12-08 20:02:34 +00:00
Mark Liversedge
8f2fc62cac RideCache compute metrics
.. when refresh() is called for a rideitem it will
   now compute the metrics for the entire ride

.. when a ride is opened the cache is also updated
   at the same time.
2014-12-08 19:38:01 +00:00
Mark Liversedge
c0d63dbdf3 Temporary Fixup
.. refresh metricDB when new withings data downloaded

.. but refreshes for all dates that have data for now, this
   will be resolved shortly.
2014-12-08 17:59:59 +00:00
Mark Liversedge
79748ecb3d Remove RideCache refresh sleep!
.. added to slow things down on my developer PC as its
   to fast to notice when I'm testing.

.. also left in an erroneous line clearing RideItem::isstale
   which is also wrong as breaks separation of concerns
2014-12-08 17:24:50 +00:00
Mark Liversedge
bf78eeaec7 Ridecace Measures deprecated from SQLite
This is quite a big patch with lots of nasty interdependencies
all collected together but essentially it deprecates;

* Measures are no longer stored in SQL tables
* Zeo support has been dropped (they went bust)

To achieve this there are a large number of updates;

* Withings json is now cached in /cache and in the Athlete
  class. So can be traversed in memory rather than SQL

* All "measures" on LTM have been removed and the only metric
  left is "Athlete Weight" that cascades from withings to ride
  "Weight" metadata value to athlete settings to a 80kg default

* RideCache is now refreshed, but only for metadata. This is needed
  to cache the "Weight" metadata from rides when calculating weight.

* JsonRideFile parser is now re-entrant since it will run in parallel
  during RideCache refreshes (using the QtConcurrent::map()
  framework).

BUT NOTE

* This is about deprecating the Measures table more than anything
  else. Functionally we are in pretty much the same place; just that
  data is stored in a different place.

  e.g. metric/imperial handling of weight is not fixed yet, no
  metrics are in the cache yet, load/save of the cache is not done
  so startup is slow etc.
2014-12-08 16:48:58 +00:00
Chet Henry
32d80b524a Fix inital screen load value format bug 2014-12-07 07:24:56 -07:00
Chet Henry
36f8b36df5 Even though ridelogger doen't use fit the ant+ plugin does 2014-12-07 07:24:56 -07:00
Chet Henry
69fbec9061 Syncronize values, keys and keylables
Also don't wait for unpaired ant devices forever
2014-12-07 07:24:56 -07:00
Chet Henry
dcb78aff9e Fix but with prefence update and screen. 2014-12-07 07:24:55 -07:00
Chet Henry
d899584d4b Lighter Ant+ connections 2014-12-07 07:24:55 -07:00
Chet Henry
1acd2304cf More ant code clean up 2014-12-07 07:24:55 -07:00
Chet Henry
18159ed113 Clean up ant code 2014-12-07 07:24:55 -07:00
Chet Henry
04d0042df7 Add classes to proguard keep 2014-12-07 07:24:55 -07:00
Chet Henry
b1f72ce77a Adding Proguard 2014-12-07 07:24:55 -07:00
Chet Henry
1efecf1705 Extendable File Format
All file formats to be extended

Also fixed a bug in the display of values
2014-12-07 07:24:55 -07:00
Chet Henry
54c4cd6daa Clean up code, reduce memory and make the world a better place 2014-12-07 07:24:55 -07:00
Chet Henry
1823e202ff Fix textview overflow in display 2014-12-07 07:24:55 -07:00
Chet Henry
3764b0b7ca Update view on sensor list change 2014-12-07 07:24:55 -07:00
Chet Henry
c63104f612 Clean up currenValues view and better style of dashboard 2014-12-07 07:24:55 -07:00
Chet Henry
0acce7538f Replace default diamater with circumference and increase it to 2.096 2014-12-07 07:24:55 -07:00
Chet Henry
204135fc20 Better frount screen layout 2014-12-07 07:24:55 -07:00
Chet Henry
58694d51b6 Change gzip extention to gz for bash completion 2014-12-07 07:24:55 -07:00
Chet Henry
cc31b093f8 Fix wheel size bug 2014-12-07 07:24:55 -07:00
Chet Henry
796a1d6a4e Comment out unimplemented message 2014-12-07 07:24:55 -07:00
Chet Henry
4000453d03 Add wheel diamater configuration 2014-12-07 07:24:55 -07:00
Chet Henry
f00c2deb1f Allow user to display imperial units 2014-12-07 07:24:55 -07:00
Chet Henry
842f334ff6 Fix ant+ ui flow 2014-12-07 07:24:55 -07:00
Chet Henry
f64acd3d68 Better theme and style 2014-12-07 07:24:55 -07:00
Chet Henry
f1bf65e60d Light theme and better sample view 2014-12-07 07:24:55 -07:00
Chet Henry
04ffb9f371 Fixup Settings
Add configurable display of sensors
Add configurable text size
Disable preferences if ride is logging
2014-12-07 07:24:55 -07:00
Chet Henry
1433c6d1a4 Reduce memory footprint and improve service performance 2014-12-07 07:24:55 -07:00
Chet Henry
f37d9e8516 Fix problems and wait a bit for ant+ pairing 2014-12-07 07:24:55 -07:00
Chet Henry
3f3bbf521c better grid view of data 2014-12-07 07:24:55 -07:00
Chet Henry
8278bcb5cf Better api version support 2014-12-07 07:24:55 -07:00
Chet Henry
7d9c596ceb Make app more android like
Changed preferences to use android stype prefs
Allowed values to be passed to main screen
Start and stop ride in main menu
2014-12-07 07:24:54 -07:00
Chet Henry
7b84ea2355 Adding view of current data 2014-12-07 07:24:54 -07:00
Chet Henry
470441671f Add a lot more string to strings.xml also add reset settings wf 2014-12-07 07:24:54 -07:00
Chet Henry
eb00126c42 Allows strings to be translated
Moved all string to strings.xml
Also removed WorkoutRepeatSteps.fit because it was unneeded
2014-12-07 07:24:54 -07:00
Mark Liversedge
98a15ed4fb RideWindow copy/paste error
.. surprised it works !
2014-12-07 09:51:56 +00:00
Mark Liversedge
51f25cb1f7 Minor logic error 2014-12-07 00:20:17 +00:00
Mark Liversedge
259b739bf6 Merge pull request #1191 from amtriathlon/master
Enabled CP Models for Speed series
2014-12-07 00:15:23 +00:00
Mark Liversedge
760f1870a7 RideCache / RideItem fixups
.. fingerprint for range should not take into account the
   start/end date as its irrelevant and will change

.. RideItem now responsible for refresh and status updating
   on the rideitem

.. framework seems good now; only rides that need to be refreshed
   will get asked for a refresh -- but need to look more closely
   at how we derive 'Weight' for each rideitem now...
2014-12-07 00:11:44 +00:00
Alejandro Martinez
96ee321852 Enabled CP Models for Speed series
Results are shown in metric units for speed/distance and pace units according to user preferences
2014-12-06 20:48:31 -03:00
Mark Liversedge
a1e95d0880 RideItem separation of concerns
.. instead of making the caller keep rideitem up to date etc
   we are going to move to it looking after itself.

.. the first part of this is to make it responsible for checking
   if it is stale and computing fingerprints etc

.. the next part will be making it responsible for refreshing
   the cached values.

One big thing too:

.. the fingerprint is now based upon the zone config that applies
   for the date of the ride -- not all zone config. So if the config
   changes but not for the date of this ride (e.g. set a new CP starting
   from today) then the old data does not get marked as stale.
2014-12-06 08:48:34 +00:00
Mark Liversedge
23ebb0542c RideCache Framework Update
.. needed to clean RideItem a touch

.. needed to isolate intervals code as it has some
   problems and breaks metricaggregator for normal
   use.

.. found a bit of Context code in MainWindow.cpp (!!)
2014-12-05 23:06:28 +00:00
Mark Liversedge
b597a2dafc RideCache Background Refresh Framework
.. subtle, thin progress bar on tabview to notify
   when background updates are in progress

.. background updating code created but does not
   perform a refresh yet, just sleeps for 0.2s

.. to enable 'visibility' of the code use WANT_RIDECACHE
   to the defines in gcconfig.pri
2014-12-05 20:08:32 +00:00
Mark Liversedge
97baee2256 Merge pull request #1189 from Joern-R/fix2
Athlete Subdirs - improvements
2014-12-05 17:48:54 +00:00
Joern
076a6e86ec Athlete Subdirs - improvements
.. added /BAK subdir where all actvities .BAK files are stored
.. do not delete any original files in /imports /downloads when deleting
activity
.. copy deleted activity .JSON as .BAK into /BAK subfolder
.. adjust upgrade procedure to copy .BAK files to /BAK
2014-12-05 18:44:11 +01:00
Mark Liversedge
0b7f6e22d4 Merge pull request #1188 from mtbkeith/master
code cleanup of build warnings
2014-12-05 16:13:46 +00:00
Mark Liversedge
27df106889 Merge pull request #1187 from Joern-R/fix1
GC Upgrade 3.11 - adjustment
2014-12-05 16:09:05 +00:00
Joern
c9dabc5d00 GC Upgrade
.. do not force User to scroll down to proceed
.. change "proceed" text to be more clear
2014-12-05 17:11:09 +01:00
Reynolds
53d4834e3a Merge branch 'master' of https://github.com/mtbkeith/GoldenCheetah
# By Mark Liversedge
# Via Mark Liversedge
* 'master' of https://github.com/mtbkeith/GoldenCheetah:
  Added RideCache
  Introduce the RideCache
  Turn off interval hover on leave
2014-12-05 10:59:43 -05:00
Mark Liversedge
45550c0f28 Added RideCache
.. source files missed off last commit
2014-12-05 15:33:19 +00:00
Mark Liversedge
0b5da213da Introduce the RideCache
.. just a refactor of ridelist out of Athlete for now
   but will shortly be refreshing in background and
   loading and saving to rideDB.json
2014-12-05 15:30:54 +00:00
Mark Liversedge
9b92ad6605 Turn off interval hover on leave
.. so you get hover notifications only when
   hovering, as soon as the mouse leaves the chart
   the hover goes away.
2014-12-05 11:57:02 +00:00
Keith Reynolds
d02909660c Remove unused local method 'unquote'
Fix virtual function to proper signature for QXmlAttributes reference and prevent hiding.
2014-12-04 18:04:08 -05:00
Mark Liversedge
f70bf3080f Added RideMetric::index()
.. each metric now has an index (identifier) that can is numeric
   starting at 0 and going up.

.. it can be used to offset into an array when we add a cache for
   storing precomputed metrics.
2014-12-04 13:54:42 +00:00
Mark Liversedge
f91aa20464 Tidy up RideItem.h
.. the cache code can start now !
2014-12-03 20:38:08 +00:00
Mark Liversedge
48e437ddf5 Fixup 3D plot for RideItem zones
.. missed in last commit.
2014-12-03 20:21:30 +00:00
Mark Liversedge
973281317d Remove Zones from RideItem
.. they are in Athlete::zones() et al now

.. this refactor was missed in the 3.0 mainwindow
   refactoring and is part of the prep to use RideItem
   as an in memory cache instead of the old metricDB
2014-12-03 19:06:07 +00:00
Mark Liversedge
bfaa317d22 QVector::removeAt(int) is new
.. so use ::remove() instead for QT4 compatibility.
2014-12-03 15:30:40 +00:00
Mark Liversedge
d04fb74458 Merge pull request #1186 from amtriathlon/master
Fixed copy and paste error
2014-12-03 15:28:18 +00:00
Alejandro Martinez
45ea8ed7ce Fixed copy and paste error 2014-12-03 12:23:38 -03:00
Mark Liversedge
0447489ea4 Merge pull request #1185 from amtriathlon/master
Added xPace metric
2014-12-03 15:12:45 +00:00
Alejandro Martinez
8f06039451 Added xPace metric
Computed as the constant pace on flat surface with the same LNP
2014-12-03 10:48:13 -03:00
Mark Liversedge
2ef71f6df3 Add RideMetric::toString(bool useMetricUnits)
.. so we can now call that instead of doing the conversion
   and formatting all over the code !

NOTE: it still needs to be /called/ in the code, that change
      will need to be applied everywhere a metric is displayed
      to the user.
2014-12-03 12:36:40 +00:00
Mark Liversedge
37a496ac38 Save Command flushed Metadata first
.. to fix long standing bug with saving whilst editing
   a field. But still leaves a problem if exiting whilst
   editing a field (which is a bit weird tbh).
2014-12-03 10:57:07 +00:00
Mark Liversedge
1c7edb30b4 Finally remove Old Ride list QTreeWidget !
.. its been there since the beginning at the heart of the code
   as a registry of the rides (RideItem) and controlling the
   selection of rides.

.. in v3.0 we stopped showing it, but it was still created and
   then hidden immediately. But removing the 'spine' of the code
   was seen as a step too far.

.. this is the first part of moving from SQL to a NoSQL cache
   for ride metrics, metadata and measures -- RideItem is now
   no longer inheriting from QTreeWidgetItem with all the issues
   that brings.

.. since its right at the heart there are likely to be unforeseen
   bugs as we go, especially since it affects the ride navigator.

.. add/delete has been tested a fair amount and should be reliable.
2014-12-03 10:33:50 +00:00
Alejandro Martinez
ec11bb4005 Ignored /release to keep git quiet on windows 2014-12-02 13:52:51 -03:00
Mark Liversedge
994b4f71b8 Merge pull request #1183 from amtriathlon/master
Spanish Translation Update
2014-12-01 19:29:23 +00:00
Alejandro Martinez
5ea9957867 Spanish Translation Update 2014-12-01 14:34:01 -03:00
Damien
c11d8b0fcc ScatterWindow: Add Compare mode for 2D Plot 2014-11-30 23:21:30 +01:00
Mark Liversedge
ece98610f0 Merge Activity recalc derived series
.. e.g. so O2Hb and HHb are done for Moxy
2014-11-30 21:57:42 +00:00
Damien
790bbe8603 JouleDevice: Remove BETA label 2014-11-28 07:12:29 +01:00
Damien
deb110fca1 CsvRideFile: Parse Powertap Imperial CSV (if exists?) 2014-11-27 23:54:37 +01:00
Damien
3dbb32cb3b CsvRideFile: Parse time in generic CSV 2014-11-27 23:05:23 +01:00
Damien
6cbce57b8b CSVRideFile: Add new series 2014-11-27 21:36:32 +01:00
Mark Liversedge
fe9ea06b9f More decimals for tHb tooltip
.. on AllPlot
2014-11-27 11:50:26 +00:00
Damien
0d802af6a8 CsvRideFile: Correct GC parser 2014-11-27 08:42:15 +01:00
Mark Liversedge
19e12b813d Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2014-11-26 22:02:37 +00:00
Mark Liversedge
f14a276ece Add Min, Max, Average SMO2
.. and add to summary
2014-11-26 22:01:46 +00:00
Damien
8b944f37a1 TrainView: Record in GC CVS format 2014-11-26 22:22:08 +01:00
Mark Liversedge
e9bcad0a8d Remove errant qDebug() 2014-11-26 20:17:54 +00:00
Mark Liversedge
50845a3bfb Add SmO2 to Histogram
.. from Moxy
2014-11-26 19:23:47 +00:00
Mark Liversedge
0d63293e2a Merge pull request #1173 from Joern-R/import
Autoimport - do not process if no files determined
2014-11-26 18:18:16 +00:00
Joern
b5d1597fe5 Autoimport - do not process if no files determined
... do not process the popup if no files with the correct extensions
were found / the directories were empty
... (this does not address to skip files which were already imported !)
2014-11-26 19:20:16 +01:00
Mark Liversedge
7ebe5faeb6 Merge pull request #1172 from Joern-R/ugrade
Upgrade v3.11 - Folder Conversion - troubleshooting
2014-11-26 17:35:00 +00:00
Joern
8036a06882 Upgrade v3.11 - Folder Conversion - troubleshooting
... add Link to Wiki Troubleshooting guide to Upgrade Log in case errors
have occured
2014-11-26 18:36:37 +01:00
Mark Liversedge
433b46e6a9 Merge pull request #1171 from chet0xhenry/feature/enable_sdcard
Make app relocatable to sdcard and make files readable by default
2014-11-26 10:58:40 +01:00
Chet Henry
1947387537 Make app relocatable to sdcard and make files readable by default 2014-11-25 17:59:45 -07:00
Mark Liversedge
9bed3d69d3 Merge pull request #1169 from Joern-R/translation
Translation DE - Correction
2014-11-25 20:11:01 +01:00
Joern
0108980e16 Translation DE - Correction
... Text for "Upgrade" typos,...
2014-11-25 20:10:16 +01:00
Mark Liversedge
f19ac356e8 Fix Merge Wizard Saving Bug
.. RideItem() is horrible
.. but it kinda works so just work around it
2014-11-25 15:53:41 +00:00
Claus Assmann
9e4a9ffdd7 More spelling errors
.. Mark cannot spell for tofu.
2014-11-25 11:42:08 +00:00
Mark Liversedge
e4760ed6d1 MU import
.. to keep code safe, but not activated.
2014-11-24 22:21:50 +00:00
Claus Assmann
a001ffef4f Fix comment spelling errors
.. lots of them !
2014-11-24 15:37:56 +00:00
Mark Liversedge
7b22d21050 Merge pull request #1166 from amtriathlon/master
Added pace to tooltip for speed curve in AllPlot
2014-11-23 21:28:42 +01:00
Alejandro Martinez
d42b7b332d Added pace to tooltip for speed curve in AllPlot
Only when the activity is a run
2014-11-23 17:18:40 -03:00
Mark Liversedge
114809929d More Moxy delimeters
.. ignore blank lines too.
2014-11-23 19:39:34 +00:00
Mark Liversedge
02828b6b0f Merge pull request #1163 from Joern-R/upgrade1
GC Upgrade 3.11 - Log Autoscroll
2014-11-23 18:30:20 +01:00
Joern
7db0ecd358 GC Upgrade 3.11 - Log Autoscroll
... Log automatically scrolls when it's created - so no extra check if
end of log was reached required to process
2014-11-23 18:22:48 +01:00
Mark Liversedge
59eb73bb58 Merge pull request #1162 from Joern-R/upgrade
GC Upgrade 3.11 enhancements
2014-11-23 17:49:10 +01:00
Joern
f55b76683e GC Upgrade 3.11 enhancements
... make Upgrade Check Window smaller (with scrollable Text)
... only allow to proceed if Text is scrolled down to end (full read)
... in Upgrade Log, only allow to proceed to athlete if Log has been
scrolled down to the end
2014-11-23 17:24:05 +01:00
Mark Liversedge
afd2907a8b Merge pull request #1161 from Joern-R/translate
Translation DE - 3.11 - First Update
2014-11-23 15:37:46 +01:00
Joern
d19883ba09 Translation DE - 3.11 - First Update
... Update Translation for DE
... Correct text for GC Upgrade
2014-11-23 14:58:55 +01:00
Mark Liversedge
99c044ff88 Merge pull request #1159 from chet0xhenry/feature/call_home
Add Crash Detection SMS and Gzip Compression
2014-11-23 09:05:55 +01:00
Chet Henry
f9edb3c43c Increase crash magnitude to 3g 2014-11-22 20:29:52 -07:00
Chet Henry
3357ce5c3c Add better crash detection and clean up dialog message title mix up 2014-11-22 20:19:31 -07:00
Chet Henry
f37760370a Add gzip compresion and emergency contact
The ride files will now be .json.gzip
Users will also now be able to add an emergency contact phone number.
Ride logger will use that number to update the contact on the riders current
location.  It will also notify them if the acceleration is above 15 or m/s^2.
If so the emergency contact will get an sms with the current location.

TODO:  15m/s^2 is easy to trip.  I need to research a way to minimize false positives.
2014-11-22 17:16:55 -07:00
Mark Liversedge
a0ca1d169a Revert "Fix CyclingAnalytics upload"
This reverts commit ca3ee9cef6.
2014-11-22 18:07:36 +00:00
Mark Liversedge
6ef21005d6 Merge pull request #1154 from chet0xhenry/feature/crc
Feature/crc
2014-11-21 23:12:02 +01:00
Mark Liversedge
6acafac0f6 Merge pull request #1152 from chet0xhenry/feature/allow_extra_data_in_imported_json
Allow for extra data in the array of series
2014-11-21 23:03:21 +01:00
Chet Henry
8d84f5000a Add methods to help write data 2014-11-21 14:42:27 -07:00
Chet Henry
88cddb1f2f Fix null exception from clean up 2014-11-21 14:40:10 -07:00
Chet Henry
213c3a6608 A bit more clean up 2014-11-21 14:40:10 -07:00
Chet Henry
84f394f766 More comments and more cleaning 2014-11-21 14:40:10 -07:00
Chet Henry
a222df1a40 CRC
Clean up, Refactor and Comment
2014-11-21 14:40:10 -07:00
Chet Henry
baa4dfc9e9 Fix json format for GC
Change month format in ride headder
Make sure numbers are formatted correctly ie not scientific notation
Log all current values:
  Perviously it only logged values that were measured.
  However, if GC doesn't see the other values it assumes they are zero.
2014-11-21 14:40:10 -07:00
Chet Henry
eed715de59 Fix wrong date format on json ride file. 2014-11-21 14:40:10 -07:00
Mark Liversedge
c329cd403d Added Watts:RPE ratio
.. compare average power to the rpe rating.
2014-11-21 19:33:41 +00:00
Mark Liversedge
5c72cc1091 Merge pull request #1153 from amtriathlon/master
Added pace zone shading to CPPlot
2014-11-21 19:40:42 +01:00
Alejandro Martinez
c73c33872b Added pace zone shading to CPPlot
When enabled it is convenient to set a filter for running activities in the chart since this is not done automatically yet
2014-11-21 15:25:26 -03:00
Chet Henry
412e3a36f6 Remove reference_list change 2014-11-21 08:54:39 -07:00
Mark Liversedge
cbf20ce5fc Deprecate kickr command channel
.. Wahoo don't do that anymore.

.. now use the same channel as the device and just send plain old
   ANT+ messages to set slope etc (why they didn't do that in the
   first place is absolutely beyond me)

.. getting ready to implement Kickr for the THIRD time !!!
2014-11-21 14:58:14 +00:00
Chet Henry
c4b05e6de4 Allow for extra data in the array of series 2014-11-20 16:02:45 -07:00
Mark Liversedge
e619253c5b Merge pull request #1151 from amtriathlon/master
Fixed pace histogram shading when there is no Pace Zones defined
2014-11-20 22:06:16 +01:00
Alejandro Martinez
583054850c Fixed pace histogram shading when there is no Pace Zones defined 2014-11-20 17:41:09 -03:00
Mark Liversedge
9188c3d288 Fix PaceZone crash in PowerHist
.. cut and paste error
2014-11-20 20:01:53 +00:00
Mark Liversedge
e5976a17a6 Moxy sleep wait for clear to complete
.. give it a chance to clear before trying to exit
   engineering mode.
2014-11-20 14:16:35 +00:00
Mark Liversedge
1ec63ef424 More CP tooltip
.. model curve is null when not shown, so better
   check before ignoring the tooltip update
2014-11-20 13:59:16 +00:00
Mark Liversedge
c302dcd73b Ignore Moxy 'delimeters'
.. the Moxy device sends blank lines to delimit recordings
   that we try and parse; so now we just ignore them.
2014-11-20 11:37:22 +00:00
Mark Liversedge
1affe2e14a Add .qmake.stash to .gitignore
.. just to keep git status honest
2014-11-20 11:11:01 +00:00
Mark Liversedge
b903e592d9 Hide tooltip in CPPlot
.. when not hovering over a curve, this worked ok for power
   but not for anything else. Because the signal was ignored
   when not showing power in pointHover.
2014-11-20 11:09:08 +00:00
Mark Liversedge
f232b0bc21 Merge pull request #1150 from amtriathlon/master
Add pace to tooltip in CV chart
2014-11-20 07:49:58 +01:00
Alejandro Martinez
5ba1cbb97b Add pace to tooltip in CV chart
Fixed units selection in histogram tooltip, it is independent of pace units
NB: CV chart currently doesn't obey units setting for speed, it is fixed to kph
2014-11-19 21:34:29 -03:00
Mark Liversedge
698d546e5b Merge pull request #1137 from Joern-R/conversion
Fix Metric/Imperial - conversion issues
2014-11-19 16:30:30 +01:00
Mark Liversedge
cd05928126 Merge pull request #1149 from jonbev/separate-run-summary-table
Split summary table into rides and runs
2014-11-19 15:20:13 +01:00
Jon Beverley
8739a508a2 Split summary table into rides and runs
Might be nice to have a different metric set for rides and runs but a
bit beyond me at the moment.
2014-11-19 13:54:42 +00:00
Mark Liversedge
0d5579dd4d Merge pull request #1148 from jonbev/fix-pace-units-in-tooltip
Fix pace units in tool tip for non metric units
2014-11-19 13:06:41 +01:00
Jon Beverley
0c615c5d37 Fix pace units in tool tip for non metric units 2014-11-19 12:03:16 +00:00
Mark Liversedge
1b9d7a37b9 Merge pull request #1146 from amtriathlon/master
Added pace to tooltip for speed histogram
2014-11-19 08:12:21 +01:00
Alejandro Martinez
6b76f8e5d9 Added pace to tooltip for speed histogram
Except when we know the activity is not a Run
2014-11-19 00:10:10 -03:00
Mark Liversedge
47bf2f3901 Fix CyclingAnalytics upload
.. bit of a hacky fix, but practical enough.
2014-11-18 21:25:17 +00:00
Mark Liversedge
35ac05b4a7 Merge pull request #1145 from chet0xhenry/master
Synchronize Writes to JSON file in Ride Logger
2014-11-18 22:16:29 +01:00
Chet Henry
dec682346e Clean up white space 2014-11-18 14:05:25 -07:00
Chet Henry
c00ea899f2 Syncronize writes to build valid json 2014-11-18 14:05:24 -07:00
Mark Liversedge
5cefa6a238 Fix merge resampling rounding
.. I know its a lazy method but at least use the right
   numeric format. LOL. What a twit.
2014-11-18 20:54:16 +00:00
Mark Liversedge
de68f7528e Merge pull request #1142 from chet0xhenry/master
Add a Ride Logger App for Android
2014-11-18 10:50:10 +01:00
Mark Liversedge
5f03ae8eaf Merge pull request #1144 from amtriathlon/master
Added Polarized Zones to HR and Speed histograms
2014-11-18 07:50:34 +01:00
Alejandro Martinez
34b513c969 Added Polarized Zones to HR and Speed histograms 2014-11-17 21:50:57 -03:00
Chet Henry
3fad5f296a Initial commit of contrib Ride Logger for Android
Logs rides to json files in Documents/Rides
Supports Ant and most internal sensors on Android:
Power, Heart Rate, GPS, Pressure, Temp, Acceleration...
2014-11-17 16:05:29 -07:00
Mark Liversedge
d802cccd3c Merge pull request #1141 from amtriathlon/master
Fixed time in polarized pace zones should be computed only for running a...
2014-11-17 22:57:46 +01:00
Alejandro Martinez
f0eecc254f Fixed time in polarized pace zones should be computed only for running activities 2014-11-17 18:52:54 -03:00
Mark Liversedge
eefd1a1048 Merge pull request #1140 from amtriathlon/master
Added Polarized Zones distributions for hr and kph series to cache
2014-11-17 22:02:18 +01:00
Alejandro Martinez
c700b7b7ec Added Polarized Zones distributions for hr and kph series to cache 2014-11-17 17:13:08 -03:00
Damien
170bc3d99a Aerolab: Correct dVE for imperial units
fixes #1025
2014-11-16 22:53:29 +01:00
Mark Liversedge
fdd8cabf24 Merge pull request #1138 from amtriathlon/master
Fixed scaling for pace zone shading in speed histogram with imperial units
2014-11-16 22:00:33 +01:00
Damien
9db8c214d0 DBSchemaVersion: 91 after TimeInZone and HRTimeInZone fix in last commit 2014-11-16 21:58:10 +01:00
Damien
19670b9fba TimeInZone: no time is data is not present
fixes #1126
2014-11-16 21:45:48 +01:00
Alejandro Martinez
09b983e56a Fixed scaling for pace zone shading in speed histogram with imperial units 2014-11-16 17:42:24 -03:00
Alejandro Martinez
b28cd97f7e Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2014-11-16 17:05:04 -03:00
Damien
72fd123c25 CVSRideFile: Use ibike headwind even without dfpm power 2014-11-16 20:56:07 +01:00
Joern
7bca928a2a Fix Metric/Imperial - conversion issues
In LTM Plot and on Summary Windows conversion
... data already converted for the curves was converted again
... for "Best" Summary the conversion was missing

Referring to issues #1067 #1071 (see also comments on issue #1069
2014-11-16 19:20:25 +01:00
Mark Liversedge
3766dceb62 Merge pull request #1136 from Joern-R/best
Fix - Best xxTime y-Axis bug #1086
2014-11-16 16:55:20 +01:00
Joern
635703c273 Best xxTime y-Axis bug #1086
... rideCache access in getAllBestsFor did not honour series-decimals
2014-11-16 15:24:44 +01:00
Mark Liversedge
84ec76d44b Merge pull request #1135 from Joern-R/cpvamscale
VAM CP x-axis bug #1085
2014-11-16 14:16:28 +01:00
Joern
598a1943f2 VAM CP x-axis bug #1085
... fixed by
...... not considering Y-Axis values in the 0 to 4.993 minutes range
which are not shown for VAM anyway
... both in standard view and in compare view / intervals and date
ranges
... handle intervals below 4.993 minutes properly (since they are not
shown in CP VAM)
2014-11-16 12:58:39 +01:00
Damien
e3c23999e8 IntervalSidebar: Add bests navigator 2014-11-16 12:33:44 +01:00
Mark Liversedge
90f5b94a87 Recognise Keith Reynolds 2014-11-16 08:27:41 +00:00
Keith Reynolds
5542b03b37 In CriticalPowerWindow add a Percent of Best to the hover message for the current ride when not in "Percent of Best" mode. 2014-11-16 08:24:10 +00:00
Mark Liversedge
ee7f103b51 Merge pull request #1134 from rclasen/sharedialog
always include ShareDialog
2014-11-15 23:58:24 +01:00
Rainer Clasen
2f1cf28fe6 always include ShareDialog
... but limit what individual services are build/offered based on oauth
availability (Strava, CyclingAnalytics). Load's of ifdef... making me
think about alternative solutions - especially now that the common
uploader base class allows to stuff them in a List/map/vector/whatever.
2014-11-15 23:22:07 +01:00
Alejandro Martinez
62a44458bf Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2014-11-15 17:07:34 -03:00
Mark Liversedge
85da6b1743 Merge pull request #1133 from amtriathlon/master
Pace zone shading and binning for running activities in speed histogram
2014-11-15 21:05:08 +01:00
Alejandro Martinez
fd0a8176b9 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2014-11-15 16:58:17 -03:00
Mark Liversedge
6f9a54b449 Restructure Menus
.. added Edit for all ride data processors now we
   have quite a few to select from

.. shifted a few things around to make important
   options more prominent (e.g. Share) and less important
   ones less prominent (e.g. Heat Map)
2014-11-15 19:41:15 +00:00
Alejandro Martinez
dee917ca11 Pace zone shading and binning for running activities in speed histogram 2014-11-15 15:49:38 -03:00
Mark Liversedge
ca7a951b8e Merge pull request #1132 from rclasen/sharedialog
use Sharedialog for Trainingstagebuch + VeloHero, further improvements
2014-11-15 19:04:28 +01:00
Rainer Clasen
42fc68fd99 ShareDialog optimizations
introduced a base clase for the individual uploaders to reduce code
duplication.

This made it possible to
- default to download a ride to a service if it wasn't uploaded, yet.
- grey out checkboxes for services without credentials
2014-11-15 17:04:45 +01:00
Rainer Clasen
a25cf3aaf2 use ShareDialog for VeloHero and Trainingstagebuch
adjusted velohero + Trainingstagebuch upload to use new ShareDialog
2014-11-15 17:04:37 +01:00
Rainer Clasen
a446d5c9e7 fix tab order for password settings
tab order defaults to the order widgets are created - and not the order
they're added to the grid widget.

Reordered code to bring creation + adding of Widgets in sync.
2014-11-15 17:04:29 +01:00
Mark Liversedge
2a19e4d423 Merge pull request #1131 from Joern-R/auto
Auto-Import - "no files selected" UI improved
2014-11-15 11:26:44 +01:00
Joern
924f0edf84 Auto-Import - "no files selected" UI improved
... do not show "files table" and progress bar
... only provided "Finish" button to close the window
2014-11-15 11:28:26 +01:00
Mark Liversedge
b2b9416d0d MergeAdjust give user more rope ..
.. and they will hang themselves !

.. seriously, the limits to the merge offsets
   added no real value but would annoy a user
   where the rides needed to be aligned to a
   greater proportion.

.. adjust can shift the offset for the entire
   length of the ride
2014-11-15 09:53:27 +00:00
Mark Liversedge
b375e34d0d Tweak Merge Adjust Code
.. logic error mean't the merge adjust only applied
   in one direction and also when ride got longer
   or shorter it was not reflected on the plot.
2014-11-15 09:34:15 +00:00
Mark Liversedge
2795a5d2a1 HACK: AllPlot SEGV Fix
.. line 1289 of AllPlotWindow was updated to rebuild the
   plots when the ride was dirty, but it looks like there is
   a strange interaction when rideItem doesn't change and
   rideItem->ride() does.

NOTE: rides will not be refreshed after merge wizard completes
      until this is fixed up in AllPlotWindow.
2014-11-15 09:06:34 +00:00
Mark Liversedge
3ea6deaa05 Fix AllPlot Fill setting
.. was not always set, lost when removing the reference
   to parent->paintbrush in recent update.
2014-11-14 22:10:51 +00:00
Mark Liversedge
4332f7dd49 Merge pull request #1129 from rclasen/vhero
Upload to Velo Hero
2014-11-14 21:55:27 +01:00
Mark Liversedge
231f919aac Merge Wizard Mac Tweaks
.. a few tidy ups to make it look right
   when running on Mac OSX
2014-11-14 20:44:36 +00:00
Mark Liversedge
1f9a49f82d Merge pull request #1130 from Joern-R/gear1
Fix Gear Ratio SEGV - addition to Hack Fix
2014-11-14 19:47:27 +01:00
Mark Liversedge
baeee89f2e Updated Merge Tool Part 2c (last part)
.. UX to adjust now complete.

We may need to tidy a few things up, but this
is now good for working with the Moxy at the
very least.
2014-11-14 18:45:40 +00:00
Joern
60f437cd83 Fix Gear Ratio SEGV - addition to Hack Fix
... handle Gear Ratio as part of the existing logic - just without
smoothing
... solves SEGV problem in Compare Mode (and probably other areas of
AllPlot)
2014-11-14 19:42:53 +01:00
Cyclenerd
8ae0a6bef9 Upload to Velo Hero
Upload workouts (PWX export) to Velo Hero (http://www.velohero.com).

Author: Nils Knieling
Reviewed: Rainer Clasen
2014-11-14 17:54:25 +01:00
Mark Liversedge
26af23f4a1 Updated Merge Tool Part 2b of 2abc
.. need to save away with analyse() and combine()
   now complete, and working pretty well on my data

.. now to work on the last piece, the 'adjust' page
   to shift data-series left and right manually (for
   cases where the calculated offsets are wrong or
   need to be tweaked by the user)
2014-11-14 11:26:20 +00:00
Mark Liversedge
786cb60fdf Updated Merge Tool Part 2a of 2a/b
.. page flow and join sorted

.. committing before resolving the merging code
   - analyse() to identify offsets
   - combine() to merge into a working copy
   - ux for sliding offsets on a fullplot

.. next commit will complete this update to the
   merge tool

NOTE: MERGE IS NOT CURRENTLY WORKING SO PLEASE
      DO NOT USE IT !!!!
2014-11-13 20:02:25 +00:00
Mark Liversedge
4249bdece9 Gear Ratio SEGV Hack Fix
.. need to check if this hack fixes SEGV before raising
   with Joern.
2014-11-13 19:56:15 +00:00
Mark Liversedge
255a7901a9 Make Intervals view optional till v3.2
.. we will develop over the next few months but it will
   not be ready for v3.11 so making it optional.
2014-11-13 08:05:04 +00:00
Damien
ea007f91ec IntervalNavigator: Add the interval 2014-11-12 23:39:17 +01:00
Damien
5ae5ad3405 IntervalNavigator: Remove intervals from SubRide 2014-11-12 23:33:29 +01:00
Damien
8c6d0a9a69 IntervalNavigator: Add new files 2014-11-12 23:02:56 +01:00
Damien
534ef98a01 IntervalView: Add a new intervals View 2014-11-12 22:29:40 +01:00
Damien
b05e5048f2 RouteSegment: Add a new sidebar 2014-11-12 22:29:40 +01:00
Mark Liversedge
1f21434f1f Updated Merge Tool Part 1 of 2
.. data can be sourced from file, download or list

.. next to update the mode (join or merge) and the
   merge strategy and parameters.

.. will also need to update the download dialog to
   allow you to specify which downloaded rides to
   process -- at present the merge tool assumes that
   the download dialog will only return 1 result

.. pleased with the way the download dialog is embedded
   within the wizard, will use that for other things!
2014-11-12 12:55:35 +00:00
Mark Liversedge
1e29ff0465 JSON Strings and GC Tokens
.. fix json writing so that user metadata no longer conflicts
   with the tokens used by GoldenCheetah, e.g. a user entered
   "NM" in the workout code and that conflicted with the
   token used to delimit a torque value.

.. all user strings are now saved with a space " " appended to
   the value and when read, if there is a trailing space it is
   removed.
2014-11-12 06:28:31 +00:00
Mark Liversedge
29f7583d05 Add ride resampling method
.. to convert from one recording interval to another
   when merging files.

.. this is a utility function that will be used by the
   merge rides wizard
2014-11-11 16:38:18 +00:00
Mark Liversedge
83715ead91 Qwt support QT 5.4
.. we should think about removing our local version
   of QWT since we no longer need it.
2014-11-09 15:13:26 +00:00
Mark Liversedge
3ac9e560a0 Merge pull request #1124 from Joern-R/query
Namedsearches - Escape for XML special chars
2014-11-09 15:11:13 +01:00
Joern
c0b386be04 Namedsearches - Escape for XML special chars
... in the escape &, ' and " as special XML chars where missing
....... causing that a rule for cLucene with "&&" could be stored, but
got lost on reading
2014-11-09 15:06:46 +01:00
Mark Liversedge
d5dbac86e3 Merge pull request #1123 from amtriathlon/master
Fixed stored height setting to be in meters instead of cm
2014-11-09 15:02:33 +01:00
Alejandro Martinez
2f18d4e5ff Fixed stored height setting to be in meters instead of cm 2014-11-09 10:51:11 -03:00
Mark Liversedge
165684d999 Merge pull request #1122 from Joern-R/dir2
AthleteDirectory - Folder Structure - small fixes
2014-11-09 14:08:04 +01:00
Mark Liversedge
fdd9286367 Merge pull request #1121 from Joern-R/autoimport
AutoImport - 2nd version
2014-11-09 14:07:40 +01:00
Joern
8dbca72d46 AthleteDirectory - Folder Structure - small fixes
... New Athlete -> Unnecessary "Upgrade Popup" - removed
... Typo in Upgrade Popup Text fixed
2014-11-09 11:30:21 +01:00
Joern
1098848f1d AutoImport - 2nd version
... multiple pathes per Athlete (on Athlete-Preferences - AutoImport
TAB) - option per Path if Import shall be done or not (e.g. for
temporary de-activation without removig a path)
... configuration stored in XML file in /config subdir
... no "stealth" mode any more - but full log of Rides to be imported
with option to "Abort" the import process at any time
2014-11-09 10:58:23 +01:00
Mark Liversedge
a88316c9c5 Fix Spline resampling
.. should be periodic not natural

.. should apply to sub-second samples too !
2014-11-09 09:48:59 +00:00
Mark Liversedge
108c26ef3c Merge pull request #1120 from amtriathlon/master
Add heigth to athlete's data to use in GOVSS metric
2014-11-09 09:19:33 +01:00
Alejandro Martinez
c9e7b09bc9 Add heigth to athlete's data to use in GOVSS metric
Defaults to Stillman average based on weigth, allows per ride override.
2014-11-08 21:44:07 -03:00
Mark Liversedge
8a85c331be Data flags O (Moxy) and R (Running Dynamics)
.. for filtering.
2014-11-08 19:54:40 +00:00
Mark Liversedge
39a5695b58 Fix Merge Wizard Infinite Loop
.. before working on UX and Moxy support
2014-11-08 16:38:21 +00:00
Mark Liversedge
cce437f221 Fixup Moxy Download for circular data
.. the download has data in a circular buffer - when you overrun
   the buffer it starts back at the beginning and then downloads
   that data as-is.

.. we now sort the downloaded data before extracting it into rides
   and ignoring rides < 1 minute long.
2014-11-07 19:41:48 +00:00
Mark Liversedge
2692fe310c Update DB version for GOVSS
.. for Ale Martinez recent update
2014-11-07 06:48:28 +00:00
Mark Liversedge
d130cdd34a Merge pull request #1114 from amtriathlon/master
Initial GOVSS implementation
2014-11-07 07:45:05 +01:00
Alejandro Martinez
3a220af8f5 Initial GOVSS implementation
Includes LTP, RTP, IWF and GOVSS metrics with PMC integration
2014-11-06 22:09:35 -03:00
Mark Liversedge
cbce06c011 Moxy Download CSV
.. header missing CR at eol.
2014-11-06 22:14:58 +00:00
Mark Liversedge
a95a721f5e Tidy up Moxy download logging
.. more to the point and clean.

.. also gives update as data downloading to
   ressure user something is happening.
2014-11-06 19:44:04 +00:00
Mark Liversedge
0b23404ee7 Slightly Improved Moxy Download
.. split into separate rides when gap is greater
   than 30 minutes between samples

.. discard subsequent rides that are less than a
   minute long

BUT: Does not help resolve merge challenge and really
     should let the user select which rides to import
     regardless of how much data they contain.
2014-11-05 21:03:19 +00:00
Mark Liversedge
fb9c09234d Moxy Fit tHb
.. divide by 100 not 10
2014-11-04 22:00:59 +00:00
Mark Liversedge
8880c478c4 Basic Moxy Download 2 of 2
.. works for download and clear

.. is pretty basic as the downloaded data
   is treated as a single ride

.. need to think about how we can split into rides
   and refactor the tool to create multiple rides
   with the user selecting which to download.
2014-11-04 21:59:32 +00:00
Mark Liversedge
d5d51869b4 Added Moxy file for testing 2014-11-04 20:36:11 +00:00
Mark Liversedge
5eceef6dda Moxy FIT file support
.. type 54/57 in .fit file for thb and smO2
2014-11-04 14:31:17 +00:00
Mark Liversedge
4138bde7e9 Fix Moxy header copyright and ifdef 2014-11-03 20:34:00 +00:00
Mark Liversedge
ff6b90f8aa Basic Moxy Download 1 of 2
.. device IO is working ok

.. need to add in processing and creation
   of a ridefile in part 2
2014-11-03 20:30:35 +00:00
Mark Liversedge
3fd41860b1 Merge pull request #1111 from Joern-R/files1
AthleteDirectory - Folder Structure Part 2 of 2 + Always create .JSON
2014-11-02 19:55:47 +01:00
Joern
1011271269 AthleteDirectory - Folder Structure Part 2 of 2 + Always create .JSON
... create folder structure for existing and new athletes
... upgrade existing athlete to new structure when opening / incl.
logging and error handling
... convert any "Downloaded" file to .JSON directly - store source file
in /downloads
... convert any "Imported" file to .JSON directly - store source file in
/imports
2014-11-02 19:55:01 +01:00
Mark Liversedge
2266dcbfa9 Merge pull request #1109 from rclasen/timeriding
fix "Time Riding" for rides without kph
2014-11-02 17:26:08 +01:00
Mark Liversedge
d711b3a708 Merge pull request #1108 from rclasen/ltmcurves
LTM curves: edit metric on double click
2014-11-02 17:25:08 +01:00
Rainer Clasen
df830b9938 LTM curves: edit metric on double click
more comfortable alternative to select + click edit button: allow double
clicking on a row in the metric list to edit it's settings.
2014-11-02 16:27:18 +01:00
Rainer Clasen
213e9f7083 fix "Time Riding" for rides without kph
"Time Riding" was only calculated when the ride had kph values - although
it's then also including time without kph but cadence. This caused it to
skip all time spent on the trainer (... if there's no sensor on the rear
wheel).

This patch makes it consistently calculate "Time Riding" if there's kph or
cad... might be worth to count time with pwr or similar running metrics,
too.
2014-11-02 16:26:43 +01:00
Mark Liversedge
4e131cef20 Accidentally left a debug() in CsvRideFile
.. so deleting it !
2014-11-01 18:12:53 +00:00
Mark Liversedge
e9f130c136 Fix Help URLs
.. and add link to the forum
2014-11-01 17:25:23 +00:00
Mark Liversedge
3707725d7b More Moxy TimeStamps
.. x:x:x format without zero padding (!?) causes
   the QT fromString functions to fail.
2014-11-01 15:20:07 +00:00
Mark Liversedge
b1da921856 Always show span slider on ride plot
.. the left/right scrolling is useful and takes very little
   screen estate so always enable it

.. the full plot can still be show/hidden with the chart
   controls
2014-11-01 09:42:02 +00:00
Mark Liversedge
57fe05ac6d Realtime Moxy Part 2b of 3
.. added moxy to the realtime plots.

last piece is to update the realtime file format to
include moxy data -- moving away from powertap csv
2014-11-01 09:27:07 +00:00
Mark Liversedge
bb00268770 Realtime Moxy Part 2a of 3
.. telemetry is plotted in dialwindow

.. need to do a part b which is the realtime plot
   of thb, smo2, o2hb and hhb to complete part 2
2014-10-31 22:26:02 +00:00
Mark Liversedge
3dd2f2e99b Realtime Moxy Part 1 of 3
.. added config and page decoding for Moxy

Next steps are (2) add telemetry to realtime data structure
                   and display on the realtime chart and telemetry

               (3) add SmO2 and tHb to file format which means moving
                   away from powertap csv format (!)
2014-10-31 21:15:06 +00:00
Mark Liversedge
8ff99aca3c Moxy Reader update
.. get timestamp from file not line number (to make sure
   drops in recordings are not lost as they are numerous)

.. duplicate each line to get 1s recording that makes it
   easier to merge manually (until the merge function is
   fixed to handle these kinds of issues)
2014-10-31 15:25:26 +00:00
Mark Liversedge
99895d4a43 MIO GPX file support
.. power incorrectly stored as xml element named "power"
   and not "gpxdata:power"
2014-10-30 19:17:31 +00:00
Damien
fff1933eac RouteSegment: Small changes before bigger ones 2014-10-28 23:14:45 +01:00
Mark Liversedge
684aee0899 Better Ride View Setup
.. especially when in tiled mode
2014-10-26 08:28:29 +00:00
Mark Liversedge
5b5f9791a9 Merge pull request #1103 from Joern-R/files
AthleteDirectory - Introduce Folder Structure Part 1
2014-10-25 21:38:22 +02:00
Joern
6bd11c4290 AthleteDirectory - Folder Structure Part 1
... introduce new "home" Folder structure object representing the
previous flat-folder
... adjust relevant QDir home - access to use the sub-folder method of
the new object

Note: the new structure is not yet active ! - everything is written to
the main folder still

To Do:
... add upgrade procedure for existing folder content to merge to the
new folders
2014-10-25 19:08:27 +02:00
Mark Liversedge
00cf37c078 Expand to use space in Options/Prefs
.. when it is resized instead of just adding
   or removing space between close/save buttons
   and the config widgets
2014-10-25 11:43:54 +01:00
Mark Liversedge
920d844e06 Fix Avatar selection and make menu icon
.. when opening a new athlete
2014-10-25 11:14:11 +01:00
Mark Liversedge
01a411e65b Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2014-10-25 09:52:16 +01:00
Mark Liversedge
8da31441e5 Train View closer to original
.. 'felt' upside down !
2014-10-25 09:51:40 +01:00
Mark Liversedge
fe8b278e61 Merge pull request #1102 from Joern-R/master
Wiki - Correction - Help About
2014-10-24 18:32:39 +02:00
Joern
55aa00f2c4 Wiki - Correction - Help About
... New Picture "Help-About" to document the Athlete Library Path
2014-10-24 18:30:58 +02:00
Joern
3a83068178 Gear Ratio - Coloring in PvPV plot
... option to show the datapoints depending on a gear ratio intervall
... gear-ratio 0 to 1 -> Red
... gear ratio 1.01 to 2.49 -> Yellow
... gear ratio 2.5 to 3.99 -> Green
... gear ratio 4 to max (7.00) -> Blue
2014-10-24 16:37:15 +02:00
Mark Liversedge
1138831ac7 Merge pull request #1101 from Joern-R/gear2
Gear Ratio - Coloring in PvPV plot
2014-10-24 16:36:56 +02:00
Mark Liversedge
e6ebf3a78b Train View Layout Update
.. show TSS and W' bal
.. reorganise to show realtime and performance plot
2014-10-24 14:44:51 +01:00
Mark Liversedge
682b6e8a61 Add HHb and O2Hb to Allplot
.. so you can now look at oxy v deoxy as a time
   series against hr and power.
2014-10-23 21:52:31 +01:00
Mark Liversedge
a6033b7e5e O2Hb and HHb added to AllPlot Controls
.. now for the slog to add to the charts !
2014-10-23 20:36:57 +01:00
Mark Liversedge
09225d7331 Add HHb and O2Hb derived series
.. to split oxy/deoxy haemoglobin
.. need to add to ride chart too
2014-10-23 20:14:27 +01:00
Mark Liversedge
ff20fd527f Placeholder for Moxy SandC cuckoo
.. the Moxy can be configured as a SandC sensor, so in
   readiness for ANT+ support in GC just adding code to
   spot it.

.. will also need to update this for when it is paired
   as a muscle oxygen monitor

.. will need to add SmO2 and tHb realtime data telemetry

.. will also need to add code to device config to notify
   when SandC is spotted as a moxy
2014-10-23 19:02:45 +01:00
Mark Liversedge
3757241456 Add W'bal TAU Config
.. it is only used in realtime mode
2014-10-23 13:26:51 +01:00
Mark Liversedge
1c2527bea2 Plot W'bal on the fly in train mode
.. uses a fixed TAU of 300s so need to add some
   way of configuring it for on the fly calculations
2014-10-23 12:12:23 +01:00
Mark Liversedge
ca49c8948f Fix W'bal in Train Performance Plot
.. code still needs to be refactored !
2014-10-23 09:15:10 +01:00
Mark Liversedge
e8f190b274 Merge pull request #1100 from Joern-R/gear1
Add Gear Ratio related functions in multiple areas
2014-10-22 17:19:14 +02:00
Joern
ec5c02432c Add Gear Ratio related functions in multiple areas
.. RideFile - add rounding approach for gear values (different roundings
depending on value) - leading to discrete GearRatio values
.. AllPlot - exclude Gear Ratio from Smoothing (to keep the discrete
value) - and change curve type to "Steps"
.. ScatterPlot - specific handling for GearRatio since values between
0.01 and 1 are relevant for GearRatio and must not be filtered out
.. RideFileChache - add Distribution Data for Gear Ratio and fix
Distribution Cache for DataSeries with > 0 decimalsFor
.. Histogram - add GearRatio to Histograms (both Rides and Trends)
2014-10-22 17:14:18 +02:00
Mark Liversedge
f1c545f119 Put SmO2 and tHb on more appropriate axis
.. as the scales were too high when shared with things like
   power and torque and made them difficult to see

.. also now color shared axis according to what are selected;
   so if only one series selected it will get that color rather
   than e.g. yLeft,0 always being red
2014-10-22 11:48:06 +01:00
Mark Liversedge
060c0dba90 Comment for pace zones
.. just to explain how they were derived
2014-10-21 09:12:26 +01:00
Mark Liversedge
0c86d94fee Merge pull request #1098 from amtriathlon/master
Changed default pace zone scheme
2014-10-20 18:56:36 +02:00
Alejandro Martinez
80d9478455 Changed default pace zone scheme to match the guidelines in Dr Skiba's book "The triathletes Guide to Training with Power" 2014-10-20 13:39:28 -03:00
Mark Liversedge
bc58d78479 Honor Pace units prefs in Summary/Interval Summary
.. for the original "Pace" metric
2014-10-17 21:59:29 +01:00
Mark Liversedge
3f37952dfc Quadratic Trend on LTM fencepost 2014-10-17 14:29:01 +01:00
Mark Liversedge
8eca2e74b4 Limit Gear Ratio
.. to whatever the maximumFor value is as dodgy data can
   yield really high values; anything over 6 is probably
   wrong for most high gears (53x10 = 5.3)
2014-10-16 22:38:48 +01:00
Mark Liversedge
72a7fd1dc0 3d plot new series
.. but there is a fidelity issue; need to take into
   account series with decimal places
2014-10-16 21:19:30 +01:00
Mark Liversedge
bfac86aab0 Scatterplot SmO2, tHB, Running, Gear ratio
.. bit of a catch up to add those series to the 2d plot
2014-10-16 20:54:16 +01:00
Mark Liversedge
338fbe17b2 Fix SEGV on Match labels isolation
.. needed an extra saveState() after labels have been
   added to the chart to reflect they have been wiped
2014-10-16 19:16:46 +01:00
Mark Liversedge
4a0674e204 Customise Colors for New Series
.. Moxy smo2 and thb
.. Garmin Running Dynamics
.. Gear Ratio
2014-10-16 18:33:25 +01:00
Mark Liversedge
0c93d5771d Ride Plot Running Dynamics and Moxy (2 of 2)
.. added to the ride plot, but now need to think
   about customising and setting a default color
   for the six (!) data series.
2014-10-16 17:23:35 +01:00
Mark Liversedge
5f46059638 AllPlotWindow Settings
.. still too big !
2014-10-16 11:54:53 +01:00
Mark Liversedge
0a88553192 Gear Ratio Derived Data Series
.. added to code but not displayed on allplot etc

.. will add to allplot when doing running dynamics and moxy
   data series (next couple of days)
2014-10-16 11:26:01 +01:00
Mark Liversedge
fd68d3df24 Ride Plot Running Dynamics and Moxy (1 of 2)
.. plotting the new running dynamics data series;
   ground contact time, vertical oscillation and cadence

.. plotting the moxy data;
   muscle oxygen (absolute) and haemoglobin mass (relative)

.. just added to the controls (AllPlotWindow)

.. part 2 is the slog to add to the plots (ugh)
2014-10-16 10:15:43 +01:00
Mark Liversedge
d6df536589 Ride Plot Settings
.. restructure to make some space for running dynamics
   and moxy muscle oxygen and haemoglobin mass
2014-10-16 09:51:25 +01:00
Damien
05581b3980 RouteSegment: Search routes in new ride 2014-10-15 23:22:51 +02:00
Mark Liversedge
cad84b1d0b Fix SEGV on webBridgeForRoute
.. same fix as applied to GoogleMapControl
2014-10-15 21:20:33 +01:00
Damien
a383de172b RouteSegment: Search route in interval 2014-10-15 21:08:09 +02:00
Mark Liversedge
63ac580f43 Add Running Pace Zones (2 of 3)
.. metrics for time in zone
.. summary on ride summary

Still need to add to cache, histograms and allow editing
of custom zones in a sensible manner (currently edited in kph/mph)
2014-10-14 12:13:08 +01:00
Mark Liversedge
7b3db94592 Copyright messages in PaceZones
.. in truth the code is largely a copy of Zones.{cpp,h}
   written by Sean, but it seemed a bit odd to not show
   that I introduced the file and the changes.

.. recognising that it doesn't /really/ matter much at all !
2014-10-12 22:15:12 +01:00
Mark Liversedge
c1791a9fe4 Add Running Pace Zones (1 of 3)
.. in this first part we just add the pace.zones file
   and basic configuration of critical velocity history
   in the configuration pane.

.. in part 2 we need to fixup custom zones and consider
   how they might be adjusted for VDOT/Daniels etc etc

.. in part 3 we need to add pace zones to the ridefile
   cache and then histogram and summary charts.
2014-10-12 22:06:05 +01:00
Mark Liversedge
d84ce64860 Merge pull request #1094 from Joern-R/autoimport
Auto/Stealth Ride Import when opening an Athlete
2014-10-12 21:02:35 +02:00
Joern
863cab2ddc Auto/Stealth Ride Import when opening an Athlete
...  import Ride Files automatically from a defined Directory per
Athlete
...  runs silently/without "Import Rides" Widget if the files can be
imported/copied/... without error or warning
...  Preferences->Athlete- defines
... the directory - per Athlete and- if the function is active at all
(default is OFF)
... the error handling
... report back ALL errors and warnings by opening the RideImportWizard
popup
... report back Errors and Warnings - but ignore the "File exists"
warning (so that the import directory can be continously supplied with
new files, without the need to remove the already imported ones)
2014-10-12 19:28:16 +02:00
Mark Liversedge
ba0666a0ee Fast W'bal integration
Dave Waterworth has fixed my implementation of W'bal to
remove my "optimisations" and fix the math.

The W'bal is now computed in a single pass and is just
as fast as the differential form from Andy Froncioni but
has the benefit that is still uses Tau.

Many thanks to Dave, and I'll write this up shortly.
2014-10-11 12:40:05 +01:00
Mark Liversedge
70e12e9075 Add Labels on Matches in Ride Plot
.. makes it easier to scan and see where it got to without
   having to mouse over the points one by one
2014-10-11 11:28:14 +01:00
Mark Liversedge
070492e208 Merge pull request #1079 from Joern-R/pull1
AllPlotWindow - Alt/Slope - improve texts
2014-10-10 21:33:01 +02:00
Mark Liversedge
3e36ffe4e5 Merge pull request #1089 from Joern-R/pull2
AllPlot: Some Curves missing - when "Stacked View" = "X" / "By Series" = " "
2014-10-10 20:20:31 +02:00
Joern
33c897ac04 AllPlot: in Stacked View = yes / By Series = no - Curves missing
... NP, AP, XP and TE, PS curve are not shown as indicated by "Checked"

when changing between rides, "Checked" settings are ignored
2014-10-10 19:38:17 +02:00
Damien
174735c7f4 AllPlot: show balance in stack view only if checked 2014-10-10 16:42:11 +02:00
Mark Liversedge
2e3e177fcf Google Map Overlay
.. and interval hover on marker

.. need to also show interval on hover as gray path
   but find a way of doing it without duping the code
   in the webpage js.
2014-10-09 22:20:15 +01:00
Mark Liversedge
7e78a25bdd Merge pull request #1082 from Joern-R/columns
Ride Navigator - Table View - Columns resizing improved
2014-10-08 21:04:03 +02:00
Joern
aa712fb4d6 Ride Navigator - Table View - Columns resizing improved
... improved resizing by not changing other column sizes in "resizing"
... considering keeping a minimum column size of 20
... consideringkeeping all columns within the visible widget space
2014-10-08 20:03:56 +02:00
Mark Liversedge
d71b9b6669 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2014-10-03 22:09:35 +01:00
Damien
2228a401d3 Bin2RideFile: Correct invalid ride time after pause+interval 2014-10-03 22:09:14 +01:00
Mark Liversedge
747423d3b6 Slope/Alt Color Scheme
.. changed to match typical col profile color schemes
2014-10-03 22:08:22 +01:00
Damien
c55bac66ff Bin2RideFile: Correct invalid ride time after pause+interval 2014-10-03 17:55:42 +02:00
Damien
6efc3ad8f1 RouteSegment: Manage RouteSegment (alpha version) 2014-10-02 22:55:54 +02:00
Joern
f5ecbd33d9 AllPlotWindow - Alt/Slope - improve texts
... improve texts for Imperial unit setting
2014-10-02 12:53:26 +02:00
Mark Liversedge
85bcc60456 Add Garmin FR620 Device Type
.. to FitRideFile
2014-09-30 18:36:03 +01:00
Mark Liversedge
8d1945a9d7 Merge pull request #1078 from Joern-R/pull2
AllPlot - Alt/Slope - sync. setting when switching between views
2014-09-30 19:03:48 +02:00
Joern
2778fdd296 AllPlot - Alt/Slope - switching between views
... the Alt/Plot settings were not in sync between standard anc compare
view (changes in compare view had not impact on standard view - when
de-activating compare)
... Alt/Plot is now also visible in "fullPlot" as this helps to find
sections to zoom in (by checking the color coding)
2014-09-30 17:33:48 +02:00
Mark Liversedge
3743d0eb46 Code Nit Fixups
.. compile time errors and warnings for recent commits
   on slope / altitude.
2014-09-30 12:32:15 +01:00
Mark Liversedge
5ff35cefcd Merge pull request #1077 from jonbev/Move-Slope-to-Derived
Move slope to derived
2014-09-30 13:23:10 +02:00
Jon Beverley
7a4e8e6273 Move slope to derived in RideFile 2014-09-30 12:18:08 +01:00
Mark Liversedge
8b923af8de Merge pull request #1076 from Joern-R/pull_allplot
All-Plot - Add "Slope" and "Alt/Slope" curves
2014-09-30 13:12:54 +02:00
Joern
a6bb2360e2 All-Plot - Add "Slope" and "Alt/Slope" curves
... add "Slope" curve based on Slope Data in Ride Files (with separate
new color)
... add "Alt/Slope" curve based on "Altitude" data series
... sections on "Alt/Slope" have 3 options -  1min/100 m OR 5min/500 m
OR 10min/1000 m
... color / slope assignments are defined in AllPlotSlopeCurve (to look
it up)
... if a plotted section is wide enough the slope % (distance) / VAM
(time) value is shown above
2014-09-30 12:41:06 +02:00
Mark Liversedge
819ee2ed10 Fix UUID for Season
.. must be unique as used to select even when
   name is changed or translated.

.. Thanks to Claus Assmann for the fix.
2014-09-27 10:09:14 +01:00
Mark Liversedge
1e658af11d Don't summarise power zones on runs
.. will need to show pace when its ready
2014-09-26 14:45:20 +01:00
Mark Liversedge
43a9e12e15 Allow isRun in Filter
.. isRun is a bool, so isRun = 0 or isRun = 1
   will filter for runs.

.. note isRun does more than just look at sport
   it also checks if there are running data series
   in the file and may extend to more over time
2014-09-26 14:33:26 +01:00
Mark Liversedge
6c31a8c476 Metadata Completer Wildcard
.. if you set the values list to '*' in the metadata
   configuration it will inline expand to any previously
   entered value.
2014-09-26 12:02:12 +01:00
Mark Liversedge
f2634728fc Differentiate between Runs and Rides
.. isRun() and associated logic
.. ride list darkens runs so they stand out
2014-09-26 11:09:07 +01:00
Mark Liversedge
fa8f6d5326 Fix Copy/Paste Precision
.. Copy in the ride editor lost some precision for the
   lat/lon fields which made it unusable for copying gps
   data into spreadsheets etc.

Fixes #1074
2014-09-26 09:30:47 +01:00
Mark Liversedge
b383dcc6b1 Matches tidy
.. no need for 1 dp
.. no need for unit description
2014-09-25 22:37:10 +01:00
Mark Liversedge
fc064abe3f OOps. Colors for last commit
.. used wrong version, this is more in keeping with the
   color approach and stock colors; darkGray and PLOTMARKER.
2014-09-25 19:22:48 +01:00
Mark Liversedge
7f93ed2761 Highlight best if today !
.. on the trend summary, if the best is for today then
   lets highlight it so it jumps out :)
2014-09-25 19:17:24 +01:00
Mark Liversedge
b1bc12d853 Add Garmin Running Dynamics Data
.. read from FIT/TCX
.. write to JSON
.. view in Editor

NOTE: They are not on any of the charts yet.
2014-09-25 14:31:06 +01:00
Mark Liversedge
b7be0c762f Merge pull request #1065 from Joern-R/pull1
Last Opened Athlete stored
2014-09-19 16:01:51 +02:00
Mark Liversedge
3d2b66f9d8 Initialise Record count WKO+ file reader
.. don't accept an empty wko+ file.

Fixes #1064
2014-09-19 13:40:10 +01:00
Mark Liversedge
d220606eac Fix RideNavigator No Focus text color
.. was gray on gray which didn't work well !
2014-09-19 11:04:01 +01:00
Joern
9df18020fe Last Opened Athlete stored
... last opened was not stored any more in 3.1 final build
2014-09-17 18:50:30 +02:00
Mark Liversedge
be06e4f5d2 Merge pull request #1059 from Joern-R/pull2
AllPlot - Smoothing also for "Left Border"
2014-09-14 16:43:05 +02:00
Joern
f9163a091f AllPlot - Smoothing also for "Left Border"
Problem:
... data points of "Smoothing" settings are set to Zero in result
... this cause e.g. Zero Altitude Values when Plot Smoothing is active
Solution:
... also most left values are "smoothed" now (using only the datapoint
left of them to create the average)
2014-09-14 16:05:43 +02:00
Mark Liversedge
54f23bbab4 TP.com fixups
.. title metadata

.. title of dialog
2014-09-12 13:18:38 +01:00
Jon Beverley
17a17b0c70 Ignore src/debug/ folder 2014-09-11 15:20:55 +01:00
Damien
ab7d624c18 CPPlot: Power zone shading for watts/kg 2014-09-09 22:42:52 +02:00
Damien
c0de924272 CPPlot: correct xBttom axis ticks 2014-09-09 22:29:31 +02:00
Mark Liversedge
83a5f74c3c Add HrNp Ratio
.. to echo HrPw
2014-09-09 16:11:02 +01:00
Mark Liversedge
84f373dda5 Add HrPw Metric
.. as a ratio of Average Power to Average Heartrate
   hrpw = ap / ahr
2014-09-07 22:15:12 +01:00
Mark Liversedge
51155007bd Add Last 2 Months to Seasons
.. jump from 38 days to 3 months is a bit much
2014-09-07 17:36:48 +01:00
Mark Liversedge
56be3d2fb1 Make no video the default
.. in gcconfig.pri

Fixes #1052
2014-09-06 11:46:40 +01:00
Mark Liversedge
fa1b3a73ac Merge pull request #1050 from Joern-R/pull3
New Metrics for MTB(mainly) - Bike - Time Carrying / Elevation Gain Carrying
2014-09-05 13:52:46 +02:00
Joern
b2bab736fe New Metrics for MTB - Bike Carrying Time/Elevation Gain
... 2 new metrics (estimates) mainly relevant for MTB or Race bike steep
passes
... a) Time Carrying = moving < 8kph, gaining height, no power, no
cadence
... b) Elevation Gain carring = same criteria, but adding up the
elevation gain

Since there is a certain level of error, the metrics is named as "Est".
2014-09-05 13:31:21 +02:00
Mark Liversedge
1e53d14d7b Merge pull request #1049 from Joern-R/master
JSON char > 127 codepage problem (Issue #1028)
2014-09-04 22:00:55 +02:00
Joern
77ba548d6a Revert "Revert "JSON char > 127 codepage problem""
This reverts commit 91397851a10739350339743d89467cfa5a38fc24.
2014-09-04 19:50:24 +02:00
Mark Liversedge
2dfe65a714 Merge pull request #1048 from jonbev/HeatMap
Typo correction on maxLat
2014-09-04 14:42:44 +02:00
Jonathan Beverley
85b94f7eb1 Typo correction on maxLat 2014-09-04 13:36:47 +01:00
Mark Liversedge
8733a34e50 Merge pull request #1047 from jonbev/HeatMap
Heat map
2014-09-04 13:59:40 +02:00
Jon Beverley
ad014b12ba Change Heatmap to use google maps 2014-09-04 12:50:57 +01:00
Jon Beverley
15629dc58e Add Heat Map 2014-09-04 12:50:57 +01:00
Damien
459c5d5c51 CPPlot: Correct crash after switching between Veloclinic and Power plot 2014-09-04 07:31:11 +02:00
Damien
75d801287a CPPlot: Correct time for wprime 2014-09-03 23:06:52 +02:00
Damien
5379728496 CPPlot: Add ride plot for veloclinic plot 2014-09-01 22:18:34 +02:00
Damien
9f4c225ee4 CPPlot: Place shade mode labels for veloclinic plot 2014-09-01 21:54:32 +02:00
Damien
8f88918ca6 CPPlot: Standard ScaleDraw (not time) for velocliniplot 2014-09-01 21:37:16 +02:00
Damien
4292a24290 CPPlot: Add Veloclinic plot
TODO :
  no percentage or heat in this plot
  compare mode
  cp adjustment if no model
  ...
2014-08-31 22:09:28 +02:00
Mark Liversedge
f3313e7fa1 Missing from last commit 2014-08-29 19:30:57 +01:00
Mark Liversedge
1714e2fbc8 Apply fix tools early
.. when opening a file and they are 'auto' so the results can
   be used by the derived tool (does NP etc)
2014-08-29 16:29:53 +01:00
Mark Liversedge
0730f467be Add a tool to derive Torque
.. will be useful to look id out of saddle efforts in
   conjunction with delta torque
2014-08-29 14:49:38 +01:00
Mark Liversedge
1c1fe58587 Show ride count in ride summary
.. when doing a date range, not just in compare mode
2014-08-29 13:25:32 +01:00
Mark Liversedge
9dc98ac314 W'bal calc optimise
.. use exp() not pow()
2014-08-28 22:59:23 +01:00
Mark Liversedge
872e6c4006 Fix Derive Power fixup for auto run
.. if power is already present, or alt or speed are missing
   then the fix derive power postProcess won't try and derive
   power for the ride

.. this is so you can add it as an 'auto' tool and derive power
   values for rides that don't have power but do have speed and
   altitude.
2014-08-28 22:05:07 +01:00
Mark Liversedge
12f4a8ac6e Merge pull request #1039 from jonbev/PercentagePowerAdjustTool
Add power adjustment tool
2014-08-28 17:58:55 +02:00
Jon Beverley
414589b36c Add power adjustment tool 2014-08-28 16:57:12 +01:00
Mark Liversedge
aab1b2f936 Fixup Derive Power Tool
.. don't set cadence to 85, use 85 as default if cadence absent
.. some small code nits to shutup compiler
2014-08-28 16:38:59 +01:00
Mark Liversedge
3701f65a2d Fixup src.pro
.. FixElevation listed with Qxt src files
2014-08-28 16:24:10 +01:00
Mark Liversedge
684a3f3ad2 Merge pull request #1014 from jonbev/FixElevation
Fix elevation
2014-08-28 17:22:19 +02:00
Jon Beverley
64860d9547 Merge remote-tracking branch 'origin/FixElevation' into FixElevation 2014-08-28 16:19:08 +01:00
Jon Beverley
d029f2cc26 Fix line endings in src.pro 2014-08-28 16:18:51 +01:00
Jon Beverley
490d35236e Add fix elevation
Added useFilter=true onto the mapquest call and added a bit of smoothing
2014-08-28 16:13:32 +01:00
Mark Liversedge
20d3cb9a1d Merge pull request #1038 from jonbev/DerivePowerInFixTool
Derive power in fix tool
2014-08-28 17:05:04 +02:00
Jon Beverley
86bd5338cf Merge remote-tracking branch 'origin/DerivePowerInFixTool' into DerivePowerInFixTool 2014-08-28 15:46:01 +01:00
Jon Beverley
b7039d49a6 Add acceleration adjustments
Cap power at 1000w
2014-08-28 15:45:26 +01:00
Jon Beverley
7c074da9d2 Move Derive power to own fix tool 2014-08-28 15:45:25 +01:00
Jon Beverley
9e555b0896 Add acceleration adjustments
Cap power at 1000w
2014-08-28 15:33:59 +01:00
Jon Beverley
9ca4b8d8e9 Move Derive power to own fix tool 2014-08-28 10:07:41 +01:00
Mark Liversedge
323486badc Added Motor Units to the science doc 2014-08-25 15:16:49 +01:00
Mark Liversedge
d625a58eb5 Matches metric
.. how many >2kj matches did you burn ?

.. also taken out the power/slope derived data series
   since Jon is migrating it to a fix tool
2014-08-23 20:08:46 +01:00
Mark Liversedge
008506cc67 Less qDebug on ANT+
.. it seems to be working ok

.. it provides too much output, even for debugging purposes

.. it isn't relavent for 99% of users now its in the master
   repository and being compiled up and used
2014-08-23 12:49:03 +01:00
Mark Liversedge
b5a4791923 Fix Crash on Clear during LTM compare seasons
.. initialising settings too late.
2014-08-22 19:09:41 +01:00
Mark Liversedge
25b260a078 Merge pull request #1033 from dresco/cadence_fix
Fix for cadence only sensor
2014-08-22 19:09:43 +02:00
Mark Liversedge
9150290a0d Recognise Omar Torres 2014-08-22 16:44:55 +01:00
Mark Liversedge
70b864d79f Merge pull request #1032 from amtriathlon/master
Spanish translation fixes contributed by Omar Torres
2014-08-22 17:42:27 +02:00
Alejandro Martinez
895182a0dd Spanish translation fixes contributed by Omar Torres (omar.torres@gmail.com) 2014-08-22 12:10:44 -03:00
Jon Escombe
5b3ff1aaea Fix for cadence only sensor
Was not detecting that pedalling had stopped, therefore the previous
cadence rate was displayed indefinitely.
2014-08-22 14:13:33 +01:00
Mark Liversedge
f6c7f1e06a Science Doc Updates
.. remove references to aerobic and anaerobic threshold as they
   are not really used in the literature anymore

.. remove talk of training interventions and just point out that
   power at LT2 (CP/FTP) is a good indicator of endurance performance

.. we should add a section on MU recruitment and fatigue and
   training interventions with the new features in v3.2
2014-08-22 10:03:22 +01:00
Mark Liversedge
67ec20d000 Merge pull request #1031 from amtriathlon/master
Fixes translation error found by spanish users
2014-08-21 19:21:59 +02:00
Alejandro Martinez
cb2a8a8870 Fixed spanish translation error reported by 3.1 user 2014-08-21 14:00:23 -03:00
Mark Liversedge
a5e5f77190 Merge pull request #1023 from Joern-R/pull1
Add new metric - Elevation Loss
2014-08-20 19:46:22 +02:00
Joern
8b20da0f7c Add new metric - Elevation Loss
... for rides having different start/end points (e.g. stage races) this
metric adds information
2014-08-20 19:42:47 +02:00
Mark Liversedge
9f4a2646fb Fix Constant Alt Initialisation Bug
.. now inits the bool.
2014-08-20 08:39:26 +01:00
Mark Liversedge
d6b0598b7e Set start time/km to zero
.. when opening a ride file.
2014-08-19 18:50:14 +01:00
Mark Liversedge
97bdd039a9 Charette not Charete 2014-08-18 21:51:02 +01:00
Mark Liversedge
1c11cb6841 QVector::length() is QT5 only
.. so changed to count() which does the same.
2014-08-18 17:39:58 +01:00
Mark Liversedge
80316ae81b Recognise Christian Charete
.. in the contributors
2014-08-18 16:08:28 +01:00
Christian Charete
9a58968b2f Mac compile error on no libusb 2014-08-18 16:07:06 +01:00
Jon Beverley
3e679e5c19 Fix line endings in src.pro 2014-08-18 12:27:40 +01:00
Mark Liversedge
7de5ce30cf Update build id for 3.11 development 2014-08-18 10:18:17 +01:00
Mark Liversedge
f97338d37b Default for "Title" when uploading
.. via "Chris C" on the developer list.
2014-08-18 10:08:51 +01:00
Mark Liversedge
4ab6cb1aed Merge pull request #995 from jonbev/upstream
Add Derived Data (slope & power so far)
2014-08-18 10:56:45 +02:00
Mark Liversedge
aa7152e303 KICKR ANT+ Initial Support
.. the code has been updated to support the Wahoo Kickr
   via an ANT+ USB stick.

.. this requires the Kickr to be running a beta firmware
   of version v1.3.15. This can only be loaded via the
   Wahoo utility.

.. for those that have access to the beta firmware this
   patch will work, for all others they will need to wait
   for the formal release by Wahoo.

.. the code contains *lots* of debug and does not yet support
   calibration and slope mode is largely untested.
2014-08-18 09:46:04 +01:00
Mark Liversedge
13e635590d Template announcement
.. for posts to the usual websites

   * bikeradar
   * weight weenies
   * wattage google group
   * timetriallingforum.co.uk
   * golden cheetah announce, users, developers

Will require formatting into the markup each site requires
but will take the effort out of formulating text
2014-08-18 08:58:42 +01:00
Mark Liversedge
bec97631ce Merge pull request #1019 from jonbev/WikiConvertor
Fix links in FAQ index page
2014-08-18 09:19:27 +02:00
Jon Beverley
18a2422e3c Fix links in FAQ index page 2014-08-18 08:18:26 +01:00
Mark Liversedge
fbdf1c1315 Merge pull request #1018 from jonbev/WikiConvertor
Wiki convertor
2014-08-17 22:55:03 +02:00
Jon Beverley
a889dd7d1f Add Wiki Convertor
Will run on linux with mono installed. Haven't tried Mac's.
2014-08-17 21:48:17 +01:00
Mark Liversedge
b766d3c425 Version 3.1 Release
.. update of build and upgrade processing for
   release 3.1 final update.
2014-08-17 20:26:10 +01:00
Mark Liversedge
c0058a69e0 Merge pull request #1017 from Joern-R/pullwiki1
Wiki Update
2014-08-17 10:38:22 +02:00
Mark Liversedge
31fe5cdff0 Merge pull request #1016 from Joern-R/pull7
Fix - AllPlot - Smoothing
2014-08-17 10:37:52 +02:00
Mark Liversedge
9a752917b3 Merge pull request #1015 from Joern-R/pull5
Fix - Compare Rides-Summary Page: AvgHR, AvgPw,... = 0
2014-08-17 10:36:34 +02:00
Joern
28be3d9252 Wiki Update
... Zoom Feature in All Plot
2014-08-16 19:05:58 +02:00
Joern
cd6ae4b0eb Fix - AllPlot - Smoothing
... values in the ride plot deviate from the ride data since smoothing
takes place even if the sample time is equal to the smoothing interval
(for which the expectation is that the original samples are plotted)
2014-08-16 17:03:03 +02:00
Joern
0f10bcec0f Fix - Compare Rides-Summary Page: AvgHR, AvgPw,... = 0
... if a metric occurs in more than section (total, avg, maxima,
metrics) the value on the Ride Summary Chart in CompareRides mode
displays "0"
2014-08-16 12:28:01 +02:00
Jon Beverley
00befa4703 Add fix elevation
Added useFilter=true onto the mapquest call and added a bit of smoothing
2014-08-15 10:55:35 +01:00
Jon Beverley
d081aa78e6 Ignore 2014-08-15 09:04:14 +01:00
Mark Liversedge
5b5c83247e Merge pull request #1012 from Joern-R/pull4
Fix - .JSON import of chars > 127 on QT5 problem (leading to ? in text fields)
2014-08-14 21:27:10 +01:00
Joern
4f02298be1 Fix - .JSON import of chars > 127 on QT5 problem (leading to ??? in texts)
... on QT5 the conversion of chars > 127 did not work (ending with ???)
when loading a .JSON ride file
... by this change the implicite type cast (char to QString) when
calling "unprotect" does not take place any more, so the lexer string
must be 'Local8Bit' to what is has been converted when reading the file
... again QT has changed behavior of locale related processing in QT5
(all this worked fine in QT4)
2014-08-14 16:00:00 +02:00
Mark Liversedge
8f64dfd922 "Fix" some cppcheck warnings
.. these are trivial changes that are mostly to adjust syntax
   used in the code so cppcheck doesn't get confused.

   Thanks to Bart Coddens for pointing these out.

   CppCheck is available from:
   https://www.icts.uiowa.edu/confluence/display/BRAINSPUBLIC/Using+Cppcheck+To+Produce+Better+Code
2014-08-13 09:14:44 +01:00
Mark Liversedge
093a2c9083 Science doc update from review
.. LT1/LT2 definitions
2014-08-10 22:09:40 +01:00
Mark Liversedge
87a748e133 Minor fixup to FAQ 2014-08-10 21:30:50 +01:00
Mark Liversedge
013e2b51a0 3.1 FAQ Updates
.. minor changes to reflect how things now work in 3.1
2014-08-10 21:17:18 +01:00
Mark Liversedge
b00b7921af 3.1 Release Notes 2014-08-10 20:41:26 +01:00
Mark Liversedge
f9552f280a Avoid saveState() warning on object name
.. by setting it for the unified toolbar on a Mac.
2014-08-10 16:16:09 +01:00
Mark Liversedge
fff6d51306 Add Lactate Threshold section to Science Doc
.. inspired by Prof Seilers layman's document on Lactate Threshold.
   [may still be available here: https://www.dropbox.com/s/vgxjbo32i0o94nt/The%20Lactate%20Threshold_Seiler.pdf]
2014-08-10 13:58:58 +01:00
Mark Liversedge
181aad1205 Merge pull request #1010 from Joern-R/pull3
Small-Plot - wrong Axis Scaling and Labels
2014-08-10 13:33:13 +01:00
Joern
f53700ec84 Small-Plot - wrong Axis Scaling and Labels
... wrong Axis IDs causing the following problems
... X-Axis - not considered time, but high (wrong label/wrong scale)
... Y-Axis - altitude curve not properly scaled
... use similar minimum scale for altitude like AllPlot
... attach Alt-curve first (to be in background)

(used/tested at HrPw window, Split Activity Wizard, Merge Activity
Wizard)
2014-08-10 14:22:49 +02:00
Mark Liversedge
625b6b5c95 Don't blank CP chart in trends
.. when there is no ride selected / manual entry because
   we plot a date range not a single ride !
2014-08-10 10:11:51 +01:00
Mark Liversedge
14fa483fcf Merge pull request #1008 from Joern-R/pull2
Wiki - HR-vs-Power
2014-08-09 18:34:42 +01:00
Joern
47749be4de Wiki - HR-vs-Power
... added HR vs Power chart explanation to Wiki
2014-08-09 18:07:06 +02:00
Mark Liversedge
a45cb70ca6 Merge pull request #1002 from jonbev/WindowsWindowState
Reopen window in maximised state (windows)
2014-08-08 21:17:11 +01:00
Jon Beverley
50e7237c27 Change to use Qt saveState & restoreState
Should work on Win, Mac & Linux.
2014-08-08 11:16:04 +01:00
Jon Beverley
d1aa091392 Revert "Ignore"
This reverts commit 7e3d8dcaaf.
2014-08-08 11:13:48 +01:00
Mark Liversedge
c9bc417635 remove global QApplication *application
.. it is available from the macro qApp anyway.
2014-08-07 22:25:03 +01:00
Jon Beverley
734842214c Ignore 2014-08-07 14:51:27 +01:00
Mark Liversedge
512eab3aea Merge pull request #1003 from Joern-R/pull1
Translation DE
2014-08-06 14:14:17 +01:00
Joern
f2dbca1988 Translation DE
...  small corrections
...  adding final texts
2014-08-06 15:11:10 +02:00
Mark Liversedge
8ca1f34fe4 Hr:Pw marker color nit 2014-08-06 11:01:15 +01:00
Jon Beverley
93ecbcb044 Reopen window in maximised state (windows) 2014-08-06 09:49:22 +01:00
Mark Liversedge
b8176af083 Merge pull request #999 from Joern-R/pullwiki
Wiki - Pictures - Initial delivery
2014-08-05 18:35:59 +01:00
Joern
1daae0deee Wiki - Pictures - Initial delivery
... Screenshots and
... Animated GIF
for the GoldenCheetah wiki
2014-08-05 17:09:35 +02:00
Damien
08fab4e5d8 Translation FR (2/2) 2014-08-05 00:34:13 +02:00
Mark Liversedge
b36cb7de53 Merge pull request #998 from Joern-R/pull1
Translation Enablement
2014-08-04 19:27:57 +01:00
Joern
4f5208bcfd Translation Enablement
... 2 more small enhancements
2014-08-04 20:10:28 +02:00
Damien
49d6da6d80 Translation FR (1/2) 2014-08-03 23:56:44 +02:00
Damien
0c6b78a7ec Small typo 2014-08-03 23:48:45 +02:00
Damien
3a64b2f71c Bin2RideFile : increase seconds after invalid entry 2014-08-03 22:28:35 +02:00
Mark Liversedge
eec5dd280c Version 3.1 RELEASE CANDIDATE 4
.. updated versioning
2014-08-03 16:07:47 +01:00
Mark Liversedge
43cdbe7d07 ShareDialog Fixup
.. Strava now works on Windows, avoiding the QScriptEngine crash

.. the same approach has been applied to RideWithGPS, Cycling Analytics
   Selfloops

.. commented out Garmin as its not supported yet
2014-08-03 15:57:51 +01:00
Mark Liversedge
266552d42e STRAVA USE SIMPLE JSON PARSER
.. if this works ok on Windows then we will need to
   apply the same approach for all the 'share' types
2014-08-03 10:18:27 +01:00
Mark Liversedge
3a3ca75074 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2014-08-03 09:43:54 +01:00
Joern
af518fda3d Translation DE
... some translation bugs
2014-08-03 09:43:33 +01:00
gcoco
f6639d4ff1 Add Fenix2 to Garmin Devices
Submitted by: Jon Beverley <jon@carltonsoftware.co.uk>
From Pull Request #995.
2014-08-03 09:43:33 +01:00
Mark Liversedge
a23a1752fa Lightweight JSON Parser
.. because QScriptEngine crashes

.. because QJsonDocument isn't available till QT5 and
   we still make windows builds with QT4

.. because we're just processing small response documents
   from Strava (and maybe others) that are NOT complex

This code has been snaffled up from Victor Laskin's blog
and is 100% Copyright (C) 2013 Victor Laskin (victor.laskin@gmail.com)
details available here: http://vitiy.info/?p=102

The code is slightly modified to fit in with GC and also to fix
some compiler nits; no namespaces, replace() removed as caused an
unneccessary stdlib exception and size_t used in a number of places
instead of int.
2014-08-03 09:39:12 +01:00
Mark Liversedge
ac8d54ede4 Merge pull request #997 from Joern-R/pull5
Translation DE
2014-08-03 09:22:31 +01:00
Joern
b00ee8cff7 Translation DE
... some translation bugs
2014-08-02 17:39:26 +02:00
Jon Beverley
e7484d561e Add power estimation
Need to be able to add parameters for users to adjust their drag factors
numbers currently work out not too bad for me but needs testing with
more ride files. I have tried it with Mark's Marmotte file and it
doesn't do too bad.

Please feel free to rip it apart and tell me it is wrong - its a good
start hopefully.
2014-08-02 12:51:31 +01:00
Jon Beverley
13a88d254a Revert "Add Fenix2 to Garmin Devices"
This reverts commit c6112bd13c.
2014-08-01 08:00:14 +01:00
gcoco
7e61da58e7 Add Fenix2 to Garmin Devices
Submitted by: Jon Beverley <jon@carltonsoftware.co.uk>
From Pull Request #995.
2014-07-31 16:15:34 -04:00
Mark Liversedge
34ae4bcc16 Strava upload Use "id" not "upload_id"
.. still contains debug though!
2014-07-30 22:47:14 +01:00
Mark Liversedge
033693a508 STRAVA UPLOAD DEBUG 2014-07-30 22:19:52 +01:00
Jon Beverley
949cd43c19 Add Fenix2 to Garmin Devices 2014-07-30 16:52:07 +01:00
Jon Beverley
48db053704 Derive Slope Data
- If Alt data present then calculate slope
- Smooth the slope data after calculation
2014-07-30 16:42:45 +01:00
Mark Liversedge
bda1ad5cb4 Review of Science docs
.. better grammar and flow and also changed some of the
   text to better explain things like hydration and gels etc
2014-07-30 12:26:53 +01:00
Mark Liversedge
70768dfe74 Merge pull request #994 from amtriathlon/master
Spanish translation update
2014-07-30 08:04:56 +01:00
Alejandro Martinez
323035fa26 Spanish translation update 2014-07-29 20:57:30 -03:00
Mark Liversedge
98f25553cb Fix Column Widths Nit
.. in ride navigator for new athlete
2014-07-29 23:24:28 +01:00
Mark Liversedge
7292d94279 Merge pull request #993 from Joern-R/pull4
Fix context menu in ride editor (QT5 problem only)
2014-07-29 19:45:24 +01:00
Joern
0fd5cf4c27 Fix context menu in ride editor (QT5 only)
... same problem as in 'Ride Navigator'  (only QT 5.3.1) (fixed on June
20th)
... tested both 4.8.6 and 5.3.1 now
...
88e1dc5745
2014-07-29 20:46:41 +02:00
Mark Liversedge
415d7c8564 Merge pull request #992 from Joern-R/pull3
Ride-Details - 'Extra' Tab - Text Fields 'Read Only' only
2014-07-28 21:10:42 +01:00
Joern
46962a6139 Ride-Details - 'Extra' Tab - Text Field 'Read Only' only
... be less restrictive for 'TextEdit' and 'LineEdit' field, jus set
'Read Only' to still allow mainly scrolling (which is otherwise blocked)

... mainly for 'Change Log'  and 'Calendar Text'
2014-07-28 20:12:30 +02:00
Mark Liversedge
eb26393f93 Updated GC Science Doc
.. to include Bioenergetics and the PD Model
2014-07-28 17:21:57 +01:00
Mark Liversedge
71afe25b5f RELEASE CANDIDATE 3X
.. re-issue of RC3 without Fix Elevation
2014-07-28 12:50:01 +01:00
Mark Liversedge
daa726b18b Defer "Fix Elevation" tool to 3.2
.. pulling out of v3.1 due to problems better fixed outside
   of the release window
2014-07-28 12:45:05 +01:00
Mark Liversedge
a571a1bb55 Refresh Series Stack when ByDistance changes
.. Fixes #990
2014-07-28 07:55:39 +01:00
Mark Liversedge
7250dac232 Version 3.1 RELEASE CANDIDATE 3
.. updated version number
2014-07-27 21:38:10 +01:00
Mark Liversedge
e216b6ba8c Fatal Dialog not QDebug
.. if we cannot start due to permissions / create library folder
   we now output a dialog rather than a qDebug -- this is better
   for Windows or those that start from a menu etc
2014-07-27 21:16:42 +01:00
Mark Liversedge
b8f55f4387 Honour MapQuest terms of service
.. with an attribution and link to the MapQuest website.

.. the terms of service, for free usage, are detailed
   here: http://developer.mapquest.com/web/products/open/elevation-service
2014-07-27 20:10:36 +01:00
Mark Liversedge
bb9c760b6c REMOVE OAUTH DEBUG 2014-07-27 19:41:00 +01:00
Mark Liversedge
a9bff8fe18 Merge pull request #989 from Joern-R/pull2
Histogram - parameter changes
2014-07-27 17:53:47 +01:00
Joern
63bb7774b9 Histogram - parameter changes
... changes in some of the parameter do not take immediate effect on
change, some do - adjusted to unique handling of config. changes
2014-07-27 18:55:51 +02:00
Mark Liversedge
ef70b67efe Estimated vo2max should be a peak
.. Fixes #988
2014-07-27 15:39:43 +01:00
Mark Liversedge
abda948b19 Fix Elevation Warn Internet Required
.. some folks won't realise !
2014-07-27 11:55:07 +01:00
Mark Liversedge
a89018f0df Fix Elevation LUW/Command Fixup
.. needed to only use commands when adjusting
   elevation so that undo/redo works afterwards
2014-07-27 11:50:55 +01:00
Mark Liversedge
73a976c412 Fix Tools Visual Feedback
.. when busy disable buttons and show busy cursor
2014-07-27 11:17:33 +01:00
Mark Liversedge
7c4f009d13 Add Jon Beverley to Contributors
.. and add his Fix Elevation to the feature list for 3.1
2014-07-26 22:41:38 +01:00
Jon Beverley
12ef3869db Fix Elevation Data
.. will add elevation or correct elevation data when GPS data
   is available to perform a lookup

.. uses MapQuest data via  their public API

Fixes #305
2014-07-26 21:38:14 +01:00
Mark Liversedge
4ad3ce5f8f MORE OAUTH DEBUG 2014-07-26 14:21:47 +01:00
Mark Liversedge
f83611066b Default Weight Refresh
.. if the default athlete weight is changed then all ride
   metrics need to be recalculated to reflect the new default

.. any cached values need to be invalidated so interval metrics
   reflect the new weight (if needed)

It would be better for users to maintain weight either against the
ride in the "Weight" field, or via Withings !
2014-07-26 11:38:00 +01:00
Mark Liversedge
d538cb6807 OAUTH DEBUG TEMPORARY WHILST DEBUGGING 2014-07-26 10:41:49 +01:00
Mark Liversedge
0e08dbbda2 Strava Upload Fix Candidate
.. attempting to fix the strava upload problems, this is
   a set of changes to look at that, but not able to test
   if it fixes the problem

.. also fixed the vomitlist of compiler warning messages
2014-07-26 10:28:03 +01:00
Mark Liversedge
70809b9d01 Altitude Ticks Nit 2014-07-25 19:33:35 +01:00
Mark Liversedge
92ec8feac4 Altitude on a fullplot scaling
.. by making it fill the screen it suggests rides have more ascent
   than they actually do. So default to a minimum of 0-500m for the
   altitude scale.
2014-07-25 15:42:52 +01:00
Mark Liversedge
62993b26aa Joule GPS static member compile nit
.. initialising members in declaration ist verboten.
2014-07-25 09:29:58 +01:00
Damien
182fc58042 Bin2RideFile: Read downloaded bin2 files form Joule (not GPS) unit 2014-07-24 22:17:45 +02:00
Mark Liversedge
2fb872dc8e AllPlot Calibration Markers Tweak
.. only show them on power plots

.. don't show text

.. make them /really/ faint

NOTE: This is because crank based powermeters (e.g. SRM) will send
      calibration messages every time you freewheel for 3 secs or more and
      modern headunits (e.g. Nav2Coach) will record and adopt them.

      As you can guess, I have an N2C + SRMs and get > 20 or 30 calibrations
     every ride with the latest N2C firmware, so this one is for me.
2014-07-24 09:29:53 +01:00
Mark Liversedge
0bf597cb3d Merge pull request #983 from Joern-R/pull1
Translation DE
2014-07-23 18:52:41 +01:00
Joern
0a45d545b6 Translation DE
... small adjustments
2014-07-23 19:56:04 +02:00
Mark Liversedge
dd128a7e26 Merge pull request #982 from Joern-R/pull5
Translation Enablement
2014-07-21 20:10:40 +01:00
Joern
6bb7ef66b0 Translation Enablement
... some last tr()s
... translation for new "Chart Titles"
... translation for new "Default Charts"
2014-07-21 21:09:07 +02:00
Mark Liversedge
ff6e0011e3 Merge pull request #979 from Joern-R/pull3
Translate ":/Charts.XML" during import
2014-07-21 19:08:34 +01:00
Mark Liversedge
6d7a178b4d Merge pull request #981 from Joern-R/pull4
ColumnChooser - Drag&Drop problem with special Characters and QT 4.6.8
2014-07-21 18:17:25 +01:00
Joern
1010ce3903 ColumnChooser - Drag&Drop problem with special Characters and QT 4.6.8
... the .toUTF8() conversion used with QT5.3.x to handle special
characters (e.g. german Umlaute) in column chooser does not work for QT
4.8.6 (at least not for the Windows) - as a result (Drag&Drop from those
fields into Columns or Search Field is not working)
... following the approach other places, changed approach to
"serialization" of the info for "Drag&Drop" - so work independent on any
QT conversions (which seem to depend on other conditions - change over
time)
2014-07-21 19:13:06 +02:00
Joern
c283fc2cbb Translate ":/-Layout.XML" metrics charts
... second part: 2nd part ("-Layout.XML") translation
... "Mapping Table generation" provided as a new LTMTool routine (to
avoid duplicate code)
... mapping to HomeWindow::restoreState(bool useDefault) for the LTM
Window type charts added
... metricUnit considered in getting the mapping texts for "unit"
2014-07-21 17:56:18 +02:00
Joern
77e39ec759 Translate ":/Charts.XML" during import
... translate the names and units for Metrics and PMmetrics to the
locale of GC-preferences
... translate ONLY once if the default-chart is imported
2014-07-19 18:25:43 +02:00
Mark Liversedge
c8da8e1114 Merge pull request #978 from Joern-R/pull2
Error in "tiz" - Filter for 'hr' series
2014-07-18 18:13:18 +01:00
Joern
cc69c9742b Error in "tiz" - Filter for 'hr' series
... offset for hr-series wrong in CPX (after adding CPZone)
2014-07-18 17:55:55 +02:00
Mark Liversedge
127af49268 Merge pull request #977 from Joern-R/pull1
Update Translation DE
2014-07-17 19:54:28 +01:00
Joern
1e59888e92 Update Translation DE
... update of file (LUPDATE) / sync with sources
2014-07-17 14:43:48 +02:00
Mark Liversedge
985b27edaf Kickr Constants 2014-07-16 10:24:42 +01:00
Mark Liversedge
5f3e1f3149 Distinguish Kickr ANT+ Power Device
.. just set a bool on the channel, but will need to setup
   a separate channel for commands in executive classes
2014-07-15 19:46:52 +01:00
Mark Liversedge
3069c7e38b Unzoom fails on CP Plot
Fixes #972
2014-07-15 00:50:51 +01:00
Mark Liversedge
d66b93e842 Merge pull request #971 from Joern-R/pull2
Translation Enablement / Corrections
2014-07-14 18:07:23 +01:00
Joern
9e658ad287 Translation Enablement / Corrections
... some more tr() (LTMTool, LTMSetting)
... for Lx/Hx in Time and unit "seconds" translation not working in
constructor, therefore moved to "initialization" for both HR and Power
(similar to the translated metric names) (HrTimeInZone, TimeInZone)
... in RC2 - Windows (name with "umlaut") not displayed in official
build (adjusted to be handled like the one name with umlauts already
defined)
2014-07-14 19:01:14 +02:00
Mark Liversedge
c78ab1922b Fix SEGV on Y-axis Widget in Trend Chart
Fixes #970
2014-07-14 15:10:15 +01:00
Mark Liversedge
cc4f2b5d10 Added error checking to Twitter OAuth
.. but cannot test, so please check it !
2014-07-14 12:07:22 +01:00
Mark Liversedge
8e64e4f8db Merge pull request #969 from Joern-R/pull1
Update Translation DE
2014-07-14 10:58:26 +01:00
Joern
8e4f5a57c1 Update Translation DE
... translation DE update (based on RC2 commits) - but not included in
RC2
2014-07-14 11:17:58 +02:00
Mark Liversedge
708b9d5b4d Below CP Work + W' Work = Total Work
.. previously we have computed below cp work as only that
   work when power was at or below CP

.. since we want to track energy from CP and W' it makes more
   sense to make below CP work include all work not from W' stores.
2014-07-13 09:38:15 +01:00
Mark Liversedge
a8124e4922 Version 3.1 RELEASE CANDIDATE 2
.. updated version number and re-activated upgrade processing
2014-07-12 11:30:56 +01:00
Mark Liversedge
06553fe998 W'bal integral calculation speed up
.. by stopping decay calculation when its incrementing by
   less than 10 joules, thats almost nothing.
2014-07-12 10:55:19 +01:00
Mark Liversedge
a2e3bbd4ac Limit W' bal integral exp Decay to TAU * 3
.. when computing W'bal decay -- since we know the half-life
   for the decay we might as well use it rather than a pretty
   big constant of 1 hour !

.. it saves about 35% of time to compute metrics
2014-07-11 10:40:05 +01:00
Mark Liversedge
6bc43e7732 Set the title when adding a chart
Fixes #967
2014-07-10 20:13:45 +01:00
Mark Liversedge
a8b5e2bc0b W'bal invalidate and recompute
.. when formula selection changes
2014-07-10 17:31:17 +01:00
Mark Liversedge
c841b64dfb Enable selection of W'bal formula
.. Differential - uses the Clarke/Froncioni fast differential eqn

.. Integral - uses the original Skiba et al 'slow' equation
2014-07-10 17:14:01 +01:00
Mark Liversedge
94bd427399 Only hide model estimates when W' < 1kJ
.. instead of 10kJ
2014-07-09 13:58:41 +01:00
Mark Liversedge
6c987de797 GC Science Docs
.. fix grammar, spelling and style
2014-07-08 13:10:14 +01:00
Mark Liversedge
dae7a55e84 GProgressDialog Move and no ESC to close !
.. we can now drag and move the GProgressDialog around

.. if user hits ESC we trap and ignore it (otherwise it would
   triggers a close event that causes a crash)
2014-07-08 11:32:56 +01:00
Mark Liversedge
b598f8c8c2 Add Support for PWX "title" field
.. it is read/written to metadata field called
   "Workout Title"
2014-07-08 09:50:34 +01:00
Mark Liversedge
5271279787 Merge pull request #964 from rclasen/srm-overflow
SrmRideFile fixes
2014-07-08 09:43:36 +01:00
Rainer Clasen
1447b85ea6 SrmRideFile: handle datacnt overflow
datacnt is 16bits so it overflows easily for large files (9 hours with
0.5sec recint).

I've also seen datacnt and block sum to be inconsistent in other cases.

To handle this more graceful, we're now taking the max of both counts and
let the EOF detection do it's job when one of them is wrong.

We do have to use one of these limits as some SRM files have junk after
their last chunk (so, just reading chunks till we get EOF retunrs this
junk, too).
2014-07-08 09:29:25 +02:00
Rainer Clasen
8683ac5f42 SrmRideFile: handle EOF while reading chunks
code was blindly trusting datacnt... and kept reading past EOF. That's bad
as datacnt occasionally isn't matching the available data (overflow,
corruption, ...)
2014-07-08 09:29:25 +02:00
Rainer Clasen
300c51f944 SrmRideFile: don't assert() on bad file version
replaced assert() of file version with graceful error handling.
2014-07-08 09:29:25 +02:00
Mark Liversedge
cb152da395 First Draft of Content for New 3.1 Website
.. outlining the basic science in GoldenCheetah
2014-07-07 20:58:21 +01:00
Mark Liversedge
42f1f3b7e0 PfPv Plot Quadrant Markers Colors
.. when in compare mode
2014-07-06 12:01:30 +01:00
Mark Liversedge
3cc885fd46 Export LTM Chart Data Option
.. forgot to commit before RC1
2014-07-06 10:37:58 +01:00
Damien
b2e5a8b76b Strava: correct Strava OAuth process 2014-07-06 10:34:12 +02:00
Mark Liversedge
d461d9840d Fix Compare Histogram Zone labels
.. don't show when not checked for compare
2014-07-05 11:38:21 +01:00
Mark Liversedge
16623eaba0 Ride Plot Refresh Bug
.. when compare switched off when not visible we need to
   refresh when we become visible
2014-07-05 11:18:05 +01:00
Mark Liversedge
8488f46807 Version 3.1 RELEASE CANDIDATE
.. updated version number and activated upgrade processing
2014-07-04 11:53:01 +01:00
Mark Liversedge
0e532886bf Fix Estimates on LTM Data Table
Fixes #867
2014-07-04 10:53:15 +01:00
Mark Liversedge
2796827a6e Add Video support in version string
.. so you can tell what support has been compiled in
   to the binary from a crash report.
2014-07-04 08:53:25 +01:00
Mark Liversedge
9712de07a1 Add Sidebar to Release Notes 2014-07-04 07:32:33 +01:00
gcoco
6ccd30887d Document Global Message 104 - battery
But who knows what it actually has in it.
2014-07-03 15:28:32 -04:00
Mark Liversedge
5428f429a4 Fix delta compare intervals x-axis
.. was fixed for compare date ranges but somehow got
   overlooked for comparing rides and intervals
2014-07-03 13:59:55 +01:00
Mark Liversedge
86576895c9 W'bal on ErgPlot always starts at 0
.. so you can see quickly how 'deep' a workout will
   take you as you scroll through them.
2014-07-02 23:42:10 +01:00
Mark Liversedge
1d2dc7e1c9 Fix W'bal on Erg Plot
.. it got broken when we moved to the 2nd variation W'bal formula
2014-07-02 23:27:38 +01:00
Mark Liversedge
b7576750be w/kg even in imperial !
Fixes #869
2014-07-02 20:34:18 +01:00
Mark Liversedge
6480f699e8 Fixup Ride Editor icon text color 2014-07-02 20:17:22 +01:00
Mark Liversedge
9fdf672693 Fixup trend line migration
.. now a combo and not a checkbox

.. default to no trend line
2014-07-02 19:58:06 +01:00
Mark Liversedge
504730a366 Fixup CP chart
.. remove inverse time (but add support to Model for future reference)

.. fix x labelling for plotting Work

.. remove options for best shading, its now on or off

Fixes #924
2014-07-02 19:45:21 +01:00
Mark Liversedge
ee98c904ce Zoom AllPlot a bit bigger 2014-07-02 15:48:20 +01:00
Mark Liversedge
f25112108f Add Ralf Spenneberg to contributors 2014-07-02 15:48:01 +01:00
Mark Liversedge
60766ed4f3 Merge pull request #959 from spenneb/master
Edge 1000 added
2014-07-02 15:45:04 +01:00
Ralf Spenneberg
8e8cc647f2 Edge 1000 added 2014-07-02 16:41:33 +02:00
Mark Liversedge
d7f5d5039e Fix W'bal compare mode
.. it was accidentally omitted and somehow got lost and
   never added back.

.. we now show w'bal in compare mode and its probably one of
   the most interesting comparisons !!!!

Fixes #958
2014-07-02 13:57:52 +01:00
Mark Liversedge
d801fb5177 Classic theme accent color
.. made Fuschia to be a little more vibrant
2014-06-30 22:47:24 +01:00
Mark Liversedge
6bcb54ccf0 Change 'Classic' theme
.. it needed color selections that worked better on
   a light background
2014-06-30 20:08:32 +01:00
Mark Liversedge
97aac8ea3e GProgressDialog Mac QT 5.3.1 fixups
.. being more careful with modality and mainwindow
2014-06-30 18:03:44 +01:00
Mark Liversedge
cb8a7edec3 GProgressBar honour Theme Flat/Mac 2014-06-30 17:04:58 +01:00
Mark Liversedge
5c174a1cf9 GProgressDialog
.. in an attempt to avoid the QT 5.3.1 QProgressSialog
   bug and also put a bit of our own styling onto this
   a GC implementation of QProgressDialog

.. it has no abort button DELIBERATELY

.. not tested on OS X .. yet
2014-06-30 16:38:03 +01:00
Mark Liversedge
82b1678b0a Merge pull request #955 from Joern-R/pull3
Translation DE - Update
2014-06-30 13:28:22 +01:00
Joern
2205d7db2a Translation DE - Update
... translation updates to latest Commit Level
2014-06-30 14:29:03 +02:00
Mark Liversedge
fd34285fa4 Merge pull request #954 from Joern-R/pull2
Some more AM/PM adjustments
2014-06-30 13:20:05 +01:00
Joern
8a3a9ae5df Some more AM/APs
... some more AP/AM changes (hopefulyl the last ones)
... Setttings.h - the GC_DATETIMEFORMAT constant is not used anywhere
(old usages are de-activated)
2014-06-30 14:21:19 +02:00
Mark Liversedge
d3cef756aa Merge pull request #953 from Joern-R/pull1
Compare Pane - treatment of duration & problem when adding new metrics
2014-06-30 12:49:41 +01:00
Joern
d0136652ff Compare Pane - treatment of duration & problem when adding new metrics
... treat both Time & Duration equally (don't use QTime->toString), but
convert into seconds (since duration can be above 23:59:59 - especially
in Trends view
... table widget looses columns when dynamically adding columns in
Options->Metrics (fixed by setting columnCount to (0) first before
defining the new number of columns)
2014-06-30 12:56:03 +02:00
Mark Liversedge
aef6e54131 Merge pull request #952 from Joern-R/pull6
Compare Pane - sorting improvements / fix SEGV
2014-06-29 20:07:39 +01:00
Joern
efa6d4b4c7 Compare Pane - sorting improvements
... when sorting first and adding new items, table data is partly empty
and when you next click on item GC dumps (fixed by de-activating the
sorting while refreshing the QTableWidget)
... date fields did not sort due to different formats strings used in
"toString" and "fromString" conversion / added info to translators
... duration and time fields did sometimes not sort (dependent on
time/duration having hours or not)
2014-06-29 18:48:41 +02:00
Mark Liversedge
7e42f43be3 Merge pull request #951 from Joern-R/pull5
Details - Metrics Tab (UI Nit)
2014-06-29 14:13:54 +01:00
Mark Liversedge
68c9adbdbe Merge pull request #950 from Joern-R/pull4
Consistent handling of "seconds" and tr('seconds')
2014-06-29 14:13:18 +01:00
Mark Liversedge
b6d77342a5 Merge pull request #949 from Joern-R/pull3
Remove AM/PM from time formatting (to be Locale neutral)
2014-06-29 14:12:37 +01:00
Joern
9f0dd44fbd Details - Metrics Tab (UI Nit)
... for metrics / time fields ("seconds") don't show units, since the
field is QTimeEdit (in hours)
2014-06-29 12:36:02 +02:00
Joern
43d7521c83 Consistent handling of "seconds" and tr('seconds')
... check both for original text and translation when settings precision
for plot
... consistent handling of 'seconds' in GC
2014-06-29 12:34:14 +02:00
Joern
3556499c54 Remove AM/PM from time formatting (to be Locale neutral)
... sync all format strings for time input/output to 'hh:mm:ss'
... remove any 'AM/PM' time formats
... remove tr() commands from time formats (since 'hh:mm:ss' is
reasonable around the globe)

... main reason: QT5 does not follow the pure formatting rules any more
(like QT4), but considers the system.locale in formatting as well (so
for system which have no AM/PM, even if the format string is set, the QT
routines ignore that - having some side effect on GC)
2014-06-29 11:24:56 +02:00
gcoco
5ddc96b15b Add missing semicolon 2014-06-29 04:20:35 -04:00
gcoco
064e8927d8 Add #DEFINES to GC_HAVE_DWM 2014-06-28 20:50:03 -04:00
gcoco
7e901d4721 Fix case for dwmapi.h 2014-06-28 20:49:19 -04:00
Mark Liversedge
af367717f8 GC_VIDEO_XXX Configuration (mac)
.. works on Mac too, added ability to disable video altogether
   on Mac with GC_VIDEO_NONE even though it uses native libs so
   pretty pointless !
2014-06-28 15:58:52 +01:00
Mark Liversedge
14fd9af98c Enable Drag/Drop on QT 5 > 5.3.1 on Ride List
.. they fixed the bug in QT at 5.3.1

.. see https://bugreports.qt-project.org/browse/QTBUG-37813
2014-06-28 15:27:39 +01:00
Mark Liversedge
416f82b93d GC_VIDEO_XXX Configuration (windows)
.. now tested on Qt4 and Qt5 with VLC and NONE without issues.

.. but did notice a double include in GcWindowRegistry that has been removed.

NOTE: Still needs testing on Mac OS X
2014-06-28 15:22:20 +01:00
Mark Liversedge
c6f8bf3c2d GC_VIDEO_XXX Configuration
.. you can now select what kind of video widget you
   want to build.

   GC_VIDEO_NONE       - No media support compiled in
   GC_VIDEO_VLC        - Use VLC (only on Win/Linux)
   GC_VIDEO_QUICKTIME  - Use Apple QuickTime (only on OS X)
   GC_VIDEO_QT5        - QT5 video and associated backends (O/S dependent)

NOTE: This needs testing on non-Linux platforms.
2014-06-28 14:49:33 +01:00
Mark Liversedge
597887c43f Merge pull request #948 from Joern-R/pull2
Options - CP and LT Zones (UI nit)
2014-06-28 14:13:01 +01:00
Joern
0481c9d5eb Options - CP and LT Zones (UI nit)
... some columns  not included in bold/normal switching of "Def" button
2014-06-28 14:46:49 +02:00
Mark Liversedge
dc09414119 Merge pull request #947 from Joern-R/pull1
LTM Popup - cosmetics
2014-06-28 12:48:33 +01:00
Joern
ddb4a82499 LTM Popup - cosmetics
... Font-Size for Header Texts increased to 10px (since the 8px font is
very ugly - at least on Windows 7) - since the Screen can be resized,
bigger header texts can still be read after resizing.
2014-06-28 13:47:59 +02:00
Mark Liversedge
820573b8f6 Merge pull request #946 from Walibu/master
Fix error about missing qtsolutions/config.pri with Qt 5
2014-06-28 12:40:08 +01:00
Walter
56c6f7e8e7 Fix error about missing qtsolutions/config.pri with Qt 5 2014-06-28 13:27:23 +02:00
Mark Liversedge
11be4f23a9 Fix SEGV when old charts.xml present
.. because there will be ZERO presets !
2014-06-28 10:46:45 +01:00
Mark Liversedge
4f06a640dc TRUE/FALSE are case sensitive
.. change to true/false
2014-06-27 19:45:46 +01:00
Mark Liversedge
f4d86efdd8 Merge pull request #944 from Joern-R/pull2
Translation DE - update
2014-06-27 19:44:25 +01:00
Mark Liversedge
891ce7e929 Merge pull request #943 from Joern-R/pull1
LTM Popup - a few more improvements
2014-06-27 19:43:42 +01:00
Joern
22175348a2 Translation DE - update
... updated translations for DE
2014-06-27 20:01:53 +02:00
Joern
131c85a6b0 LTM Popup - last changes
... show also METRIC_BEST if such a curve is available
... ignore METRICs which are not ride related (Estimates, Measures) in
the Ride Table
... add Text if such a Metric was ignored (so that User do not assume
this to be a bug)
2014-06-27 19:54:15 +02:00
Mark Liversedge
afa1b9bbf4 Add TRIMP based PMC to charts.xml 2014-06-27 07:01:52 +01:00
Mark Liversedge
fc7c11e640 A bit of transparency on reveal controls
.. sometimes they obscure chart content and its easy enough to
   make them slightly transparent.
2014-06-25 17:52:40 +01:00
Mark Liversedge
dc24072f80 Fix 2secs ride plot fencepost errors
.. multiple off-by-one errors working together to truncate the
   ride plot by 2 seconds.

Fixes #935
2014-06-25 15:13:57 +01:00
Mark Liversedge
2805aa6f51 Fix SEGV and more when athlete home changed
.. segv removed caused by signalling configChanged when context has been
   deleted due to all the mainwindows being closed

.. check for path being reset to blank as well as being set to a different
   place.
2014-06-25 12:30:52 +01:00
Mark Liversedge
f5bfb0a3d5 Fix up Library/GoldenCheetah and GC_HOMEDIR
.. fix the prior fix. ugh.
2014-06-25 11:47:30 +01:00
Mark Liversedge
6dfc533fd5 Fixup a few string literal from QVariant issues
.. bug related to appsettings and "0" string occurred in a
   few places -- this fixes and post fixes that.
2014-06-24 19:29:56 +01:00
Mark Liversedge
f28fd25e1e Fix Library/GoldenCheetah bug
.. its complicated .. basically, if a local directory exists it will
   *always* be used for application settings.

.. when you run GC for the first time with a local Library/GoldenCheetah
   then the HOMEDIR_GC will not be set as there is no config in there

.. the code checks this setting for blanks (but that fails because the
   value actually returned is "0") and so the local library is set to the
   value returned "0"

.. but the local library doesn't exist so it falls back to opening from
   the default location but using config from Library/GoldenCheetah !

.. the next time you launch all this gets resolved and you use
   Library/GoldenCheetah with the settings you set the last time.

Fixes #936
2014-06-24 19:13:09 +01:00
Mark Liversedge
26bc3a6593 For Pete and his Son
.. smaller cranks for the next Jack Bobridge !
2014-06-24 11:49:22 +01:00
Mark Liversedge
535b063083 Remove qDebug from NullController
.. only used in testing but still irritating !
2014-06-23 17:03:27 +01:00
Mark Liversedge
d0f6c91e71 Use QT 5 Video Playback
.. If you build with QT 5 then we now use the QT video widgets
   instead of VLC for Windows and Linux

.. We still use QuickTime for Mac OS X

NOTE: On linux Gstreamer is used and therefore all the right
      codecs and backends need to be setup for this to work.
      On windows its more complicated as it depends how Qt
      was compiled, see:

         http://qt-project.org/wiki/Qt_Multimedia_Backends
2014-06-23 16:23:45 +01:00
Mark Liversedge
2f36383df5 Default linewidth smaller
.. was 2.0px now 0.5

.. no longer looks like it was drawn with a crayon by default !
2014-06-23 10:06:03 +01:00
Mark Liversedge
902210a183 Antialias is now on BY DEFAULT 2014-06-23 10:03:20 +01:00
Mark Liversedge
75b42b8e9d Clear Web caches between restarts
.. stops lots of LEAK warnings that are related to the
   javascript garbage collector (QT5).
2014-06-23 09:52:59 +01:00
Mark Liversedge
beeedc4d64 Disable Drag/Drop Ride on Windows QT 5
.. it crashes !

.. we need to wait for QT 5.3.1 when this bug is
   fixed: https://bugreports.qt-project.org/browse/QTBUG-37813
2014-06-23 09:32:08 +01:00
Mark Liversedge
1603d62769 Fix redefinition of signal in RideNavigator
.. introduced when refactoring AnalysisSidebar
2014-06-23 09:14:09 +01:00
Mark Liversedge
378e5ae0b1 Fix SEGV on QuarqRideFile Windows QT5
.. delete the process later in the event loop.
2014-06-23 09:11:07 +01:00
Mark Liversedge
121cd36dae Windows Libusb / UsbXpress should be optional
.. ANT.cpp now happily compiles with no USB support
   present on Windows -- which means ANT will obviously
   no longer work, but that may be intended.
2014-06-22 22:01:52 +01:00
Mark Liversedge
55cc1357bf Fix Windows QT5 Paths
.. no longer need to append 'GoldenCheetah' to the location
   since on QT 5 the executable name is used, which is GoldenCheetah

.. by sticking with this we can rename the binary to use a different
   location, which may be useful for testing
2014-06-22 22:01:52 +01:00
Mark Liversedge
8d92adfcb2 Tidy up warnings (Linux) 2014-06-22 16:34:28 +01:00
Mark Liversedge
83dcb7a2b5 Add TISS to default metadata.xml 2014-06-22 16:28:59 +01:00
Mark Liversedge
cc96155748 3.1 Upgrade Processing Part 3 of 3
.. PM chart is deprecated, so when loading an LTM chart
   with skiba curves is implemented instead.

.. we cannot easily add charts to the layout without refactoring
   HomeWindow so have moved that out of scope

NOTE: The upgrade processing has not been activated -- but can
      be once we build and issue our first 3.1 RC.
2014-06-22 16:25:17 +01:00
Mark Liversedge
076b037201 Merge pull request #933 from Joern-R/pull1
LTM Popup - further enhancements
2014-06-22 15:28:37 +01:00
Mark Liversedge
c8d1e3fddc 3.1 Upgrade Processing Part 2 of 3
.. update RideMetadata to remove 'Default' color
   if it exists and add 'Reverse' color

.. will also add 'TSS', 'Aerobic TISS' and 'Anaerobic
   TISS' to the metric tab if needed to avoid FAQ #1.
2014-06-22 14:52:15 +01:00
Mark Liversedge
2d3bef85b2 3.1 Upgrade Processing Part 1 of 3
.. getting the upgrade code going, this just adds new functions
   for changing colors and themes and doesn't perform an upgrade

.. Part 2 will deal with W' and power.zones changes

.. Part 3 will deal with chart setup changes
2014-06-22 13:08:27 +01:00
Joern
92fe2a7c48 LTM Popup - further enhancements
... make window "minimumSize" - so that resize in case of many columns
works
... handle LTM_TOD when called from LTM-Chart (list the rides in the
hour, considering DateRange)
... consider HomeFilter and Search/Filter in result list
... also show Rides of only 1 ride is selected (since Rides contain
Date/Time) and the Metrics (which mostly are not part of the Summary
HTML)
... do not allow MouseSelection of only 1 Ride is shown
... some more tr()
2014-06-22 13:08:44 +02:00
Mark Liversedge
39642ade32 Add 3d back to default layout
.. now the phantom widget glitch is fixed
2014-06-22 09:34:04 +01:00
Mark Liversedge
9b1460e043 Remove Orphaned Widget in HomeWindow !
.. wow, this has been there for at least 3 or 4 years and
   never bitten us.

.. for some strange reason it bites when you have a 3d plot
   in one of the layouts.
2014-06-22 09:31:26 +01:00
gcoco
3fa2f69cdb Blank Summary subtitle 2014-06-21 21:50:11 -04:00
Mark Liversedge
53f520d9f2 Remove 3d from default layout
.. until we sort the phantom widget issue.
2014-06-21 23:00:01 +01:00
Mark Liversedge
67fce67482 3d plot code update
.. to reflect current code requirements

NOTE: there is a 'phantom' widget with the 3d window that
      covers the left side of the chart bar and makes it
      impossible to click on the summary button.
2014-06-21 22:58:20 +01:00
Mark Liversedge
0b155fdcbb Add 3d plot to standard layout 2014-06-21 20:50:33 +01:00
Mark Liversedge
7159908a29 3d plot honor CPLOTMARKER
.. for axis colors
2014-06-21 20:47:20 +01:00
Mark Liversedge
d1a880bcc9 Fix V Alignment for Stack Series
.. using setMinimumExtent()
2014-06-21 11:58:21 +01:00
Mark Liversedge
387fedf5e5 W'bal use kJ not J on AllPlot Axis
.. uses less space !
2014-06-21 11:24:53 +01:00
Mark Liversedge
731d975037 Fix W'bal series plot pan zooming
.. when series stack plotting in AllPlot the W'bal series
   doesn't pan/zoom along with the other plots
2014-06-21 10:42:14 +01:00
Mark Liversedge
0be0f08afa Fix LTMCanvasPicker SEGV on delete tab
.. not always, but sometimes !
2014-06-20 17:24:41 +01:00
Mark Liversedge
c8614b1abb Tooltip Color
.. changed from yellow to light gray to be more theme
   neutral and align with the colors across the rest
   of the base gc colors.
2014-06-20 16:21:00 +01:00
Mark Liversedge
f51ef3c3d8 Add Temperature to Season Summary
.. if it is available, like we do for ride summary
2014-06-20 16:04:07 +01:00
Mark Liversedge
1cdaf04f78 Merge pull request #932 from Joern-R/pull-l1
Translation DE - Update
2014-06-20 14:59:29 +01:00
Joern
6fb6a24402 Translation DE - Update
... more translations / following latest code changes
2014-06-20 16:00:41 +02:00
Mark Liversedge
fa77709f9f Fix column chooser in activity log 2014-06-20 14:00:26 +01:00
Mark Liversedge
727d214dbb Forgot to set aggregateZero() to true for Temperature ! 2014-06-20 13:14:10 +01:00
Mark Liversedge
2f0aa21263 Merge pull request #931 from Joern-R/pullpopup
LTM Popup - HTML generation
2014-06-20 13:05:59 +01:00
Mark Liversedge
a084ec96e6 Fix Average Temperature Issues
.. Don't include -255 in average

.. Don't show -255 in ride navigator

.. Don't show a value on summary if not preset
2014-06-20 12:59:03 +01:00
Joern
6182806dbb LTM Popup - HTML generation
... generating HTML instead of Template File (to allow translation)
... considering the same Fields, incl. User Defined Metrics as Summary
Page HTML
... aligning Vertical Scroll bars + adding a little space between the
widgest so that Scroll Bars do not touch each other
2014-06-20 13:24:08 +02:00
Mark Liversedge
7c0ec54155 Metric Aggregation ::aggregateZero() method
.. when aggregating metrics across rides we were being inconsistent
   with regards how we handled zero values; we sometimes included them
   and sometimes didn't.

.. now added a metric method bool aggregateZero() that returns true
   if aggregates need to include zero values

.. this has been implemented where averages are aggregated.
2014-06-20 11:19:55 +01:00
Mark Liversedge
81de41633a Remove unneeded #define
.. it caused a compile error for some strange reason
   on mingw64 !? (#define DEVICE_TYPE 0)
2014-06-20 08:34:09 +01:00
Mark Liversedge
68fa31750d Merge pull request #930 from Joern-R/pull1
Translation Enablement
2014-06-20 08:30:20 +01:00
Joern
1b34c8428a Translation Enablement
... just 2 tr()s
2014-06-20 09:10:52 +02:00
Mark Liversedge
2ce9433a0f DataFilter handle metadata numerics
.. code assumed numeric fields always metrics when they
   could also be metadata.

.. this also fixes checkbox tests too
2014-06-19 21:25:58 +01:00
Mark Liversedge
3fdf44620d Sidebar summary honor color changes
.. was not being redrawn when the color preferences changed.
2014-06-19 13:17:05 +01:00
Mark Liversedge
dec191eb75 Add Group By ALL to LTM
.. can see the total / average or bests for the date range selected

NOTE: Data Table mode is currently a bit broken .. need to revisit it
      and fix it up, not just for ALL mode but also for Estimates
2014-06-19 10:40:48 +01:00
Mark Liversedge
9f59a8f816 Pedalling metrics, ignore zeroes in Average
.. when averaging lr balance, pedal smoothness etc we now
   ignore values when cadence is zero.

.. the zero values are not meaningful and skew the average to
   render them almost useless !
2014-06-19 10:08:12 +01:00
Mark Liversedge
0b7061af4f Add TSS per hour metric
.. on request from Massarob.
2014-06-18 21:18:17 +01:00
Mark Liversedge
ebd13a5b05 Fix SEGV on CP export with no model 2014-06-18 19:16:43 +01:00
Mark Liversedge
069a89432d Fix SEGV in LTMtool add curve
.. when switching from best to estimate and back again.
2014-06-18 07:18:11 +01:00
gcoco
1583a5def3 Remove subtitle data
Where is Mole Street?
2014-06-18 00:48:46 -04:00
Mark Liversedge
e791359274 Add Endurance Index to CP overlay
.. for power and w/kg
2014-06-17 21:41:59 +01:00
Damien
e7ad1fdeff Translation: update ts files 2014-06-17 21:45:12 +02:00
Damien
10cd223b1a Tranlation: Update french 2014-06-17 21:44:05 +02:00
Mark Liversedge
a57f838df7 Add Cheetah icon back to About box
.. not sure how it got removed !
2014-06-17 19:54:05 +01:00
Mark Liversedge
cf78e1a869 Filter unreasonable model estimates
.. basically where data is sketchy or doesn't have enough
   representative efforts the model will produce lowball numbers
   which are not meaningful and should be discarded.
2014-06-17 19:36:55 +01:00
Mark Liversedge
7b531ea980 Revert "Filter out estimates"
This reverts commit 2fdc18b2c3.

Because we should correct at source (i.e. where the PD estimates
are being computed) and the fix breaks w/kg display because it
doesn't apply different limits for absolute vs w/kg values.
2014-06-17 19:28:29 +01:00
Mark Liversedge
e9be95d4ff Merge pull request #929 from Joern-R/pull2
Translation Enablement
2014-06-17 19:19:58 +01:00
Joern
a9e451949d Translation Enablement
... more enablement in HTML area by isolating the tr() relevant part in
long HTML Strings
2014-06-17 20:08:06 +02:00
Mark Liversedge
4ee3fc6dbc Filter out estimates
.. in ridesummary where they are out of bounds
2014-06-17 18:11:32 +01:00
Mark Liversedge
35ad7b77e3 Added Endurance Index to PD Model
.. and also added to the default setup
2014-06-17 16:33:46 +01:00
Mark Liversedge
b227c863cb Add metric count to about box 2014-06-17 14:55:56 +01:00
Mark Liversedge
3c40273c4b Fix LTM curve config nits
.. setting the radio button and the text for the metric/best
   or estimate when it is selected.
2014-06-17 10:13:25 +01:00
Mark Liversedge
705b85a483 Fix W' glitch of distance jumps to 0
.. pointed out by Claus Assmann on the list, when he should have
   been celebrating Germany 4 - Portugal 0 ;)
2014-06-16 19:20:59 +01:00
Mark Liversedge
4fda701260 Add dummy PD estimate if none computed
.. to stop endless refreshes of the estimates !
2014-06-16 16:06:33 +01:00
Mark Liversedge
c739d2e3d9 Merge pull request #928 from Joern-R/pull1
TreeMap - multi-language enablement
2014-06-16 15:54:53 +01:00
Joern
328b1de2b7 TreeMap - multi-language enablement
... use translated Metadata terms for Tree Dimensions (via Special
Fields)
... store the Metadaten information in Home-Layout.XML in "EN/Original
Language" and convert back/forth as needed
... fixed an issue, that Rides for a Cell are not selected in case the
resp. Metadata field is empty
2014-06-16 16:39:09 +02:00
Mark Liversedge
14b0bd80ae CP clean up
.. use J/kg not Kj/Kg on overlay

.. bounds check the ranking to make sure it is in bounds
2014-06-16 11:37:54 +01:00
Mark Liversedge
305e47b4b7 Merge pull request #927 from olympum/master
Add virtual power profile for Elite Qubo Power Fluid
2014-06-16 05:36:53 +01:00
Bruno Fernandez-Ruiz
cefd7ac38b Add virtual power profile for Elite Qubo Power Fluid 2014-06-15 21:44:30 +01:00
Mark Liversedge
5a88a7b74c Fixup QTextEdit stylesheet
.. different on metadata to everywhere else !
2014-06-15 15:04:32 +01:00
Mark Liversedge
e858af7aeb CPLOTGRID used for Metadata Borders
.. starting to see a pattern now of which colors are
   meaningful .. should look at rationalising this
   in v3.2
2014-06-15 12:19:55 +01:00
Mark Liversedge
cdb6bff8f8 Merge pull request #926 from Joern-R/pull2
Show Heat - sometimes wrong scale
2014-06-15 12:11:32 +01:00
Mark Liversedge
5ca1451fd7 Merge pull request #925 from Joern-R/pull1
Translation Enablement
2014-06-15 12:10:36 +01:00
Joern
053e89284a Show Heat - sometimes wrong scale
... set YAxis scale
... set more specific YAxis texts (Percent of Best / Heat)
... Adjust Unit in Heat Hover
2014-06-15 13:00:25 +02:00
Joern
a182a453ac Translation Enablement
... tr()
... Adding to Special Fields (allow translation of "Details->Extra"
fields
2014-06-15 12:56:55 +02:00
Mark Liversedge
6173f5dac7 Apply stylesheet to ride metadata
.. and tidy up a few nits here and there
2014-06-15 11:49:43 +01:00
Mark Liversedge
98b8bc23aa Use w/kg units always, not wpk
.. and also allow lrbalance in data filter
2014-06-15 09:26:45 +01:00
Mark Liversedge
a916c5e587 Model Estimate Fixups
.. don't rely upon ZDATA metadata, instead we add
   a new 'present' field that contains the Data meta value

.. navigator defaults columns when they're all messed up

.. summary isn't so noisy when providing progress updates
2014-06-14 20:24:06 +01:00
Mark Liversedge
02f376f2e5 Less Obtrusive Update on Estimate Task
.. less jarring !
2014-06-13 23:40:17 +01:00
Mark Liversedge
b984f7dafb Confirm popup on reset layout
.. user might not have mean't it.
2014-06-13 23:09:22 +01:00
Mark Liversedge
0aa623d325 HrPw color prefs and style
.. to match current look and feel across other main charts
2014-06-13 22:54:53 +01:00
Mark Liversedge
50f31bb9a6 Add HrPw to the default layout 2014-06-13 22:22:41 +01:00
Mark Liversedge
3091eab1b5 Allow Fullscreen Startup
.. thanks to Claus Assman for pointing this out.
2014-06-13 21:21:54 +01:00
Mark Liversedge
8cb607c2cd Model Estimate Progress
.. might remove it, but good to help debug issues !
2014-06-13 21:11:38 +01:00
Mark Liversedge
94d372ed2f Merge pull request #917 from Joern-R/pull1
Translation Enablement
2014-06-13 19:45:36 +01:00
Joern
30d411a635 Translation Enablement
... and nothing else
2014-06-13 20:45:04 +02:00
Mark Liversedge
a459ccad1e Mac Web Fonts 2014-06-13 18:53:29 +01:00
Mark Liversedge
fdaea82899 Fix font selection
.. should update when saved not restarted.
2014-06-13 18:10:48 +01:00
Mark Liversedge
671d7d05b0 Don't wait - cancel - the pd estimate thread
.. it might take ages and we don't care about the results !
2014-06-13 16:26:11 +01:00
Mark Liversedge
07bea46ce2 Fixup initial geometry and positioning
.. some regressions in there (setting only saved on move)

.. will check the positioning and geometry are sensible regardless
   of whether they come from appsettings or defaults.
2014-06-13 16:15:35 +01:00
Mark Liversedge
3b48d0403c LTM Marker colors
.. dash lines and red, makes it a bit more like
   the styling on allplot

.. might be interesting to add 'hover' on seasons.
2014-06-13 13:58:56 +01:00
Mark Liversedge
884c4e8c94 Isolate Curve Labels but not Vertical Markers
.. as they represent intervals and events and are therefore
   related to the x-axis (time/distance) rather than any
   y-axis we may be showing / hiding.
2014-06-13 12:44:12 +01:00
Mark Liversedge
a3496f6e94 Show/Hide Labels on Curve Isolate
.. as LTMplot uses them a lot to mark values that
   are topN or lowN
2014-06-13 11:16:54 +01:00
Mark Liversedge
13317cd624 Enable Curve Isolation on Trends chart
.. isolation used on AllPlot when hover on axes is
   equally useful on the LTM trends chart.
2014-06-13 09:31:33 +01:00
Mark Liversedge
69941ca3b1 Merge pull request #914 from Joern-R/pull2
Windows - Menu bar - Mac / Style problem
2014-06-12 20:12:11 +01:00
Joern
603dbf246b Windows - Menu bar - Mac / Style problem
... in Windows - Mac / Metallic style did not work any more, only flat
style color was shown
2014-06-12 19:09:22 +02:00
Mark Liversedge
d731334b52 Updates to Trends stress chart
.. shows short and long term values
2014-06-12 14:01:27 +01:00
Mark Liversedge
9e8780d7c9 Fix ChartBar Button Sizes on Mac
.. was using the wrong font metrics
2014-06-12 11:54:25 +01:00
Mark Liversedge
f8d0c89d70 Remove Chart sidebar menu indicator
.. reinstate when that menu popup exists !
2014-06-12 09:52:34 +01:00
Mark Liversedge
9c8804fa98 New Default Trends Layout
.. now includes the Library chart to exploit the new
   sidebar chart selection.
2014-06-11 19:24:52 +01:00
Mark Liversedge
eae44f5e06 Merge pull request #913 from Joern-R/pull-l1
Translation DE 3.1 (initial delivery)
2014-06-11 18:38:36 +01:00
Joern
5c5e5cf37f Translation DE 3.1 (initial delivery)
... initial delivery for German translation of 3.1
2014-06-11 19:17:26 +02:00
Mark Liversedge
1c1d4f11c4 Merge pull request #912 from Joern-R/pull1
Bikescore (TM) unique Handling (Part 2)
2014-06-11 17:57:27 +01:00
Joern
af074d3e91 Bikescore (TM) unique Handling (Part 2)
... have the same consistent handling for (TM) at all visible places
... do not allow Translation of BikeScore (since it's a TM and might
cause unexpected behavior)
... Have (TM) sign everwhere visible - only in Searches just use
"BikeScore" as Symbol
2014-06-11 18:55:23 +02:00
Mark Liversedge
94ae9738ad Chart Library Part 2 of 3
.. LTM chart now has a 'use sidebar settings' checkbox
   and will display the chart that is selected in the sidebar

.. as the sidebar selection changes the window will plot it
   using data for the current date range configured / selected

.. part 3 will now come later to let you manage the charts from
   the sidebar menu (it is already in the LTM tool).
2014-06-11 17:55:07 +01:00
Mark Liversedge
9c74394fa3 Charts Icon 2014-06-11 16:16:02 +01:00
Mark Liversedge
894419c9e3 Chart Library Part 1 of 3
Add preset charts to the LTM sidebar, and allow LTM charts
to refer to sidebar for config instead of the local config.

In this way we can have a chart that changes as we select different
charts in the sidebar and remove the need to have lots and lots of
different charts on the tabs.

But it still allows for the old way of doing things -- just adds
another type of flexibility -- for instance a user could add
charts with set date ranges but no specific curve setup so they
could havethis year, this month, last month charts that change as
charts are selected in the sidebar.

This first commit just adds the sidebar item, next we will update
the LTM chart to refer to it in part 2 and then in part 3 we
will add functions on the sidebar to manage the chart presets in
the same way as in LTMTool.
2014-06-11 16:12:37 +01:00
Mark Liversedge
1009173949 Less precsision on W' J/KG
.. missed off for ranges on RideSummary
2014-06-10 21:43:30 +01:00
Mark Liversedge
297e0390a1 Fixup interval select in Maps
.. deleting things removed signal/slot connections !
2014-06-10 21:20:40 +01:00
Mark Liversedge
7b1f0f8bf6 Fix Map redisplay QT4.8 and Windows
.. webbridge gets stuck and we delete and recreate
   it to reset for a new map display.

   Seems to be a bug in webkit ...
2014-06-10 20:07:42 +01:00
Mark Liversedge
49ffd484df Merge pull request #911 from Joern-R/pull1
Bikescore (TM) unique handling all languages & Translation Enablement
2014-06-10 19:56:22 +01:00
Joern
0c0ca57e45 Bikescore (TM) unique handling all languages & Translation Enablement
... sync handling of (TM) in all places and Do Not allow translation for
these terms any more, since it's a fixed term anyway - and there are
many dependencies (which outside EN create unexpected results). - in all
Texts/Fields use (TM) in HTML use the TM (special characters).

-- more testing in language other then EN still required - but so far
working fine

... and more tr()
2014-06-10 20:55:41 +02:00
Mark Liversedge
d0272bb316 Reinstate show() for new charts in tile mode
.. was removed due to a crash on beta versions of QT5
   but appears to work fine with QT 5.3.0, so reinstated!

Fixes #910
2014-06-10 15:58:50 +01:00
Mark Liversedge
0fda71c1c6 Updated Metadata.xml
Now by default we include;
- Weight
- TSS
- CP

Colors now have;
- Reverse
- Colors that look good in dark / light
2014-06-10 15:11:11 +01:00
Mark Liversedge
4db519c42b Move editor to end of charts
.. on ride view
2014-06-10 15:00:51 +01:00
Mark Liversedge
f171db43e3 Undo accidental push of Upgrade WIP
.. pushed untested and unfinished changes for the
   3.1 upgrade process, this push undoes that.
2014-06-10 14:53:54 +01:00
Mark Liversedge
8526e8e2bb Fix crash on apply preset with BESTS data
.. settings.bestresults was not being set
2014-06-10 14:47:14 +01:00
Mark Liversedge
6ccf00aeab Added CP History and PMC to default charts
.. in charts.xml
2014-06-10 14:31:37 +01:00
Mark Liversedge
2f08b99255 Fixed LTM charts.xml read/write
.. but now a new format and the old ones will need to be
   removed from the athlete directory on upgrade.

.. the new default charts.xml is exactly the same as the
   old one, but in the new format.
2014-06-10 13:58:17 +01:00
Mark Liversedge
85a33c31fc Fix Preset maintenance in LTM tool
.. but the read and write functions are so far out
   of date that applying a saved chart causes a crash

.. so we need to fix the read/write functions for charts.xml
2014-06-10 12:59:47 +01:00
Mark Liversedge
82d48d0731 Fix quickfire exit crash
.. as getPDEstimates is still running in the background and
   we need to wait for it to finish in RideSummaryWindow.
2014-06-10 11:59:19 +01:00
Mark Liversedge
96e2416334 Move LTM Preset charts to Athlete class
.. lots of work to do to clean this up, especially
   keeping the presets updated when renaming is done.

.. also need to save away after changes.

.. also need to create a much better default set of
   presets taking into account the more recent additions
   such as Estimates amd Bests and new metrics
2014-06-10 11:45:56 +01:00
Mark Liversedge
cebea0efc1 Fix ComparePane quickfire drag and drop crash 2014-06-09 21:42:50 +01:00
Mark Liversedge
3cfbf6aa49 Searchbox rounded corners
.. gone in flat mode.
2014-06-09 20:39:59 +01:00
Mark Liversedge
74484fc70a Merge pull request #907 from Joern-R/pull1
Data Filter - Internal Field Names + Multiple tr()
2014-06-09 19:43:37 +01:00
Joern
1d366df734 Data Filter - Internal Field Names + Multiple tr()
... allow/use only internal field names (delivered by Column Chooser) in
Data Filter expressions
... multipe tr()

(cherry picked from commit bc4164adab74dd82c0a0307d7d0fbb736f95ef0d)
2014-06-09 20:26:43 +02:00
Mark Liversedge
40705ddbd3 Add Estimates /kg to LTMPlot 2014-06-09 18:19:42 +01:00
Mark Liversedge
2cdbf42574 Show w/kg J/kg estimates on Ride Summary
.. and fixes up the calculation too.
.. still need to fix up the LTM plot
2014-06-09 17:33:56 +01:00
Mark Liversedge
a1ad374c6c Add WPK estimates to PDEStimates
.. but not plotted in LTM or shown o the
   summary chart yet
2014-06-09 12:40:48 +01:00
Mark Liversedge
8fd4c6834c Clear Interval Summary on Ride Selection
.. otherwise its left with summary from previous ride.
2014-06-09 11:27:43 +01:00
Mark Liversedge
2f90276eec Move wpk array next to watts array in cache
.. so we can read them both in with a single
   read -- this is to support an update where
   pd estimates support wpk and absolute watts.
2014-06-09 09:10:40 +01:00
Mark Liversedge
74e53a9101 Merge pull request #906 from Joern-R/pull1
Support Metric Names with "special characters" for Column Chooser Drag&D...
2014-06-08 19:58:56 +01:00
Joern
dac1dbe6b1 Support Metric Names with "special characters" for Column Chooser Drag&Drop
!!! please check if this right way to do it.
... column names containing special characters (here greek "average"
sign) did not work in Drag&Drop (even though they should be part of
Latin-1 (after changing in Mime to UTF-8) not only the greek characters,
but also "TM" works without special treatment)
!!! is this valid for all platforms ?!!!

(cherry picked from commit b4d1a7d3041beec686c7262cfa65bac8cf6e2179)
2014-06-08 20:51:32 +02:00
Mark Liversedge
66eb4789b7 Compare Pane Table better color support
.. headings color and remove frame
2014-06-08 19:22:31 +01:00
Mark Liversedge
70f8e6d32d Merge pull request #905 from Joern-R/pull1
Translation Enablement & "seconds"
2014-06-08 18:45:13 +01:00
Mark Liversedge
df48f9fbc1 Fix Date Range Drag and Drop
.. internal move
.. that was hard!
2014-06-08 18:05:45 +01:00
Joern
018cff3baa Translation Enablement & "seconds"
... more tr() changes
... added comparison for  both "seconds" OR tr("seconds") to all other
occurences found
... added "Lap" text for Intervalls imported in Garmin FIT format (this
is what Garmin delivers)

(cherry picked from commit ad790f05a386e3ae5c5b9dc129a216ac451b8cfc)
2014-06-08 17:55:24 +02:00
Mark Liversedge
9494f8d071 Fix Overlay Widget colors
.. and along the way discuovered context is not initialised
   correctly in GcChartWindow !
2014-06-08 16:10:37 +01:00
Mark Liversedge
999e599d22 Darker flat chrome Linux/Win
.. makes for a better match to the chartbar and sidebar
   items when in flat mode and not on a Mac.
2014-06-08 15:51:27 +01:00
Mark Liversedge
03df2516fa Fix new CP chart show bests
.. didn't show bests and model till date range changed
   in settings or GC was restarted.
2014-06-08 15:12:00 +01:00
Mark Liversedge
f3d2070d8c Fix color or red wavy line text
.. in the ride editor
2014-06-08 14:54:06 +01:00
Mark Liversedge
840b828329 Fix useMetric in Scatter plot
.. was broken when we moved useMetricUnits to the
   Athlete class and a local bool remained.
2014-06-08 14:19:36 +01:00
Mark Liversedge
f39f9c03ce Fix time tooltip on AllPlot 2014-06-08 13:53:48 +01:00
Mark Liversedge
631c65205e Merge pull request #903 from Joern-R/pull1
Translation Enablement & consider "seconds" translation
2014-06-08 12:19:33 +01:00
Mark Liversedge
f6c889577b Don't allow 0 smoothing in compare mode
.. we need all intervals to have a common smoothing
   applied or it breaks the charts
2014-06-08 11:58:43 +01:00
Mark Liversedge
0b96eb33a1 Turn smoothing OFF if smooth < recIntSecs
.. i.e. don't do ANY smoothing

.. last commit fixed performance but really adds
   no value to smooth data to the interval it was
   recorded at !!
2014-06-08 11:53:00 +01:00
Mark Liversedge
adb2e05245 No smoothing applied when smooth < recIntSecs
.. its pointless

.. it is a big performance overhead

Fixes #753.
2014-06-08 11:49:09 +01:00
Mark Liversedge
ff918167b5 Calendar Chart now honours colour preferences
.. think that is the last of all the charts now done.
2014-06-08 11:40:13 +01:00
Joern
57238b12b6 Translation for Filter/Autofilter
... Filter/Autofilter did not consider Translation of the Filter
Criteria - using Special Fields (to translate from internal to external
names is working for me - but do special fields cover all variants?)

(cherry picked from commit 5cc4218a2a0877a1f8ff4f36d1367bee37c34d2d)
2014-06-07 20:37:09 +02:00
Joern
8ec11437ac Translation Enablement & consider "seconds" translation
... multiple tr() added for Intervals. Compare Pane
... in Compare Pane - in time metrics check for both "seconds" and
translated tr(seconds) (following the concept for time as at most other
places where units == "seconds" are checked

(cherry picked from commit 6c78b00b65a1d794eb99038f21d6e705d119d29e)
2014-06-07 19:52:24 +02:00
gcoco
eedfc24b9e Correct/consistent use of #include <windows.h> 2014-06-06 23:44:49 -04:00
Mark Liversedge
d38384fe54 Remove errant qDebug 2014-06-06 22:32:03 +01:00
Mark Liversedge
2beb929cf6 Fix RideNavigator right click
.. always used 0,0 as pos.
2014-06-06 22:29:13 +01:00
Mark Liversedge
03a5535f34 Athlete Tabs Background honour config
.. colour config is starting to get boring!
2014-06-06 21:31:08 +01:00
Mark Liversedge
141dc48389 Only need to wait on exit in QT 5.3
.. which is convenient because QThread::sleep is only
   public in QT 5.2.1 or higher.
2014-06-06 18:42:04 +01:00
Mark Liversedge
e1d9d3658a Fix QtConcurrent on QT < 5 2014-06-06 17:35:55 +01:00
Mark Liversedge
14137b668d Fix calendar colors
.. broke in last commit
2014-06-06 16:26:27 +01:00
Mark Liversedge
e5ee0c75a8 Better handling of dark chrome
.. if you have flat style and choose a dark color the
   chartbar and sidebars now use colors that make it
   possible to actually read the text
2014-06-06 15:43:59 +01:00
Mark Liversedge
c064a5f7a5 Wait 10s for threads to finish when closing 2014-06-06 14:17:11 +01:00
Mark Liversedge
7e97bf0781 Invert Color by Luminance
.. just added a GCColor::luminance() method ready for automatically
   selecting foregground colors in the application chrome.
2014-06-06 14:16:17 +01:00
Mark Liversedge
2c578ce99c Just use FTP not FTP / MMP60
.. its too wordy, and whatever Coggan says thats the
   value he's using but too obstinate to admit it.
2014-06-06 01:10:42 +01:00
Mark Liversedge
1541d3cdef Show model parameters on a ride summary
.. arguably more useful and also sets the cache up early too
   which is useful !
2014-06-06 01:08:37 +01:00
Mark Liversedge
ae99079076 Show Model Estimates on Summary
.. they get refreshed in background so everyone wins !
2014-06-06 00:18:00 +01:00
gcoco
d084f1a040 Merge pull request #900 from dawedawe/master
fix wording: "executage" -> "executable"
2014-06-04 22:03:47 -04:00
dawedawe
0bfc353d64 fix wording: "executage" -> "executable" 2014-06-04 13:07:26 +02:00
Mark Liversedge
cff7c0d33c Merge pull request #898 from Joern-R/pull
Translation Enablement
2014-06-03 18:34:21 +01:00
Mark Liversedge
2d5a83446b Flat Titlebar not supported on QT < 5 on Mac 2014-06-03 18:33:11 +01:00
Mark Liversedge
ca59a53a09 Fix compile error on Mac < QT 5 2014-06-03 17:55:48 +01:00
Joern
524abfcb58 Translation Enablement
(cherry picked from commit 67be090de9cbc4772147a2ab0b08e28b96d67d12)
2014-06-03 17:08:36 +02:00
Mark Liversedge
a39c47430d Fixup Mac compile on QT < 5
.. blackline doesn't exist compile error.
2014-06-03 08:26:37 +01:00
Mark Liversedge
ca6204d89e Fix tooltip for Compare Delta Percent 2014-06-02 17:41:55 +01:00
Mark Liversedge
9d0d0a0478 CP Plot Delta as Percent
.. delta plot but with percentage rather than absolute differences

.. particularly useful for plotting PD curve by seasons and looking
   at the gains/losses in percentage terms per season

.. also the differences in short and long durations in absolute terms
   often look quite different, in percentage terms there is often not
   a huge difference over seasons.

NOTE: Needs to be fixed up to do percentage differences by model.
2014-06-02 14:03:33 +01:00
Mark Liversedge
0a79597d83 Mac now honours flat theme
.. but not sure its gonna be very popular !
2014-06-02 12:43:34 +01:00
Mark Liversedge
9dc9a68753 Slightly wider scrollbars
.. 4px is too small.
2014-06-01 20:47:39 +01:00
Mark Liversedge
bafeb42b97 Scrollbar hover highlight
.. on Non-Mac.
2014-06-01 20:38:43 +01:00
Mark Liversedge
6391110ccb Fix Overlay Widget Title Glitch
.. it wasn't centered on the titlebar.
2014-06-01 20:23:16 +01:00
Mark Liversedge
d1048afe81 Fix RideNvigator coloring
.. first one goes invisible
.. hover didn't highlight
2014-06-01 19:30:10 +01:00
Mark Liversedge
dd7cae9c2b Fix Overlay Widget
.. easier to grab and resize
.. move when it goes off screen
2014-06-01 18:48:16 +01:00
Mark Liversedge
55eb6ebf8a Fix QStringSpinBox Style
.. on Linux and Windows
2014-06-01 16:58:38 +01:00
Mark Liversedge
18b1c6e056 Windows Style Part 3 of 3
.. flat colors based upon windows prefrences if on
   windows -- BUT ONLY if Dsmapi.h is available.
2014-06-01 15:33:23 +01:00
Mark Liversedge
5c479e6539 Window Style Part 2 of 3
.. apply Flat styling across all the widget painting

.. only use WHITE as the flat color for now, in part 3
   we will look at user customisation and updating the
   toolbar and sidebar buttons to also be flat.
2014-06-01 13:18:30 +01:00
Mark Liversedge
18ee7c8841 Window Style Part 1 of 3
.. refactor linear gradients out of the widgets
   such as toolbar, chartbar, sidebaritem etc

.. GCColor::linearGradient() now returns a gradient
   that is reused across the codebase

.. in Part 2 we will add a colour and flat style
   for the linearGradient

.. in Part 3 we will tidy up the styling for buttons
   and toolbuttons to adopt flat or metal styling too
2014-06-01 11:33:05 +01:00
Mark Liversedge
72c4c9fe4a RideEditor Cosmetics
.. scrollbars tidied up
.. ugly grid lines removed altogether
2014-06-01 10:04:31 +01:00
Mark Liversedge
aedb9344bd Merge pull request #896 from Joern-R/pull
Translation Enablement + Check on temporary Seasons
2014-05-31 23:23:47 +01:00
Joern
d1dbf23716 Translation Enablement + Check on temporary Seasons
... Translation for Season Types
... Do not allow Temporary Seasons to be edited or deleted through the
main seasons menu (in right click Popup this was already blocked by not
offering the function)

(cherry picked from commit cc7a0a7f8d0b74ca4b9d64d61291206ea58d3f94)
2014-05-31 19:21:30 +02:00
Mark Liversedge
b65b6fe3ec Fixup Metadata Styling on Linux
.. by using the Fusion style on the widgets
2014-05-30 23:40:37 +01:00
Damien
8c9b7cb9e6 Translation: Update for 3.1 2014-05-30 23:19:13 +02:00
Damien
920a2e61d2 2 2014-05-30 23:01:34 +02:00
Mark Liversedge
fa2f7f75b7 Another Scrollbar ..
.. AllPlot IntervalSummary overlay needs its
   scrollbar styled.
2014-05-30 21:14:37 +01:00
Mark Liversedge
683f1294fc Remove unneeded bool in MergeWizard
.. use the pointer to the loaded ride instead
.. but also make sure it gets initialised too !
2014-05-30 10:37:34 +01:00
Mark Liversedge
0acbe9e726 Fixup Fix for MergeActivityWizard crash
.. TRUE/FALSE are case sensitive on Mac
.. ride2Loaded renamed ridesLoaded
.. ridesLoaded initialisation moved to constructor

Thanks to Jorn for the fix to a P0 bug !
2014-05-30 10:24:24 +01:00
Mark Liversedge
45995e6a7f Merge pull request #893 from Joern-R/pull
Avoid Dump in Merge Activity Wizard
2014-05-30 10:20:11 +01:00
Joern
59a93736f5 Avoid Dump in Merge Activity Wizard
... Only allow "Next" if 2nd file is loaded (otherwise a dump occurs)

(cherry picked from commit 88b8479cbb90c8306ca32c0d193199ed895db95c)
2014-05-30 10:29:16 +02:00
Mark Liversedge
101952196b Merge pull request #892 from Joern-R/pull
Translation Enablement
2014-05-29 18:37:13 +01:00
Joern
d75746f013 Translation Enablement
... some tr(...) missing - nothing else

(cherry picked from commit 12056261bc04269bbd723d7f0049cf193d950847)
2014-05-29 19:25:35 +02:00
Damien
df839e4f4d Bin2RideFile: Correct Left-Right balance values in JouleGPS 2014-05-28 21:57:38 +02:00
Damien
ff20e67365 Translation: Update french 2014-05-28 21:57:20 +02:00
Mark Liversedge
cdbfeb4f36 More css scrollbar nonsense
.. making scrollbars less obtrusive in webkit.
   because? well, reasons.
2014-05-28 16:21:29 +01:00
Mark Liversedge
0cfbc6bbf5 Fixup scrollbar width on Mac
.. in ridenavigator when system preferences are set to have
   a scrollbar always visible.
2014-05-28 11:32:17 +01:00
Mark Liversedge
0b8f3311e4 Bit more space in Prefs
.. on a Mac the HR/Power athlete config pages
   are a little too spaced -- just turned it
   down a notch.
2014-05-28 09:48:57 +01:00
Mark Liversedge
e77f5a112a Make Preferences/Options Resizable
.. when using other languages e.g German it may be
   useful to make it wider if needed.

.. the pane still appears using a minimum size that
   we calculate, so should affect users.
2014-05-28 09:23:32 +01:00
Damien
07e20fd675 Translation: Update for 3.1 2014-05-27 23:10:54 +02:00
Mark Liversedge
3f22ed3a36 Sidebar RideNavigator show/hide glitch
.. we needed to manually tell it to adjust columns
   since we turned off adjusting on window resize
2014-05-27 21:40:09 +01:00
Mark Liversedge
669088169d Trap WindowStateChange in MainWindow
.. but just to resize the toolbar when on a Mac
2014-05-27 21:21:17 +01:00
Mark Liversedge
fe8ea9bdf7 Fix ScrollBar in HomeWindow
.. for tile mode.
2014-05-27 19:15:09 +01:00
Mark Liversedge
cfab16ec62 Keep the box on ride list for Mac
.. introduced a bit of a glitch.
2014-05-27 17:03:03 +01:00
Mark Liversedge
0a31a8d42e Mac ride list nit
.. got rid of unneccessary line
2014-05-27 13:12:11 +01:00
Mark Liversedge
fd571ddba5 Mac CSS Scrollbar fix
.. is invisible on a black background, so added an inset box shadow
2014-05-27 12:34:50 +01:00
Mark Liversedge
3178cf4cc2 Fix stylesheet/palette gotcha on AllPlot
.. mucked up the reset of the palettes for all
   the widgets when setting the stylesheet for
   the scrollareas.
2014-05-26 20:50:31 +01:00
Mark Liversedge
f77fee2e9b More default font fixup
.. looks like 12 was the default -- which is
   totally inappropriate.
2014-05-26 20:42:34 +01:00
Mark Liversedge
15192e40ab Default font size should be 10 not 12
.. Thanks to Jörn Rischmüller for highlighting
   this issue.
2014-05-26 20:37:54 +01:00
Mark Liversedge
f9318ff389 Activity Log Scrollbar
.. aka RideNavigator when not in mainwindow mode
2014-05-26 20:20:20 +01:00
Mark Liversedge
7fdd292a6f Scrollbars on LTM
.. think that is the last of them.
2014-05-26 20:16:48 +01:00
Mark Liversedge
0fe109efe4 Scrollbars on AllPlotWindow
.. made to look the same as everywhere else
   i.e. not clunky and ugly.
2014-05-26 20:05:04 +01:00
Mark Liversedge
bdd2f6897f Webkit scrollbar Mac styling
.. to match the Mac scrollbars in QT5
2014-05-26 19:32:05 +01:00
Mark Liversedge
dad6bef290 Tidy WebKit Scrollbars
.. to match the rest of the widgets
2014-05-26 19:18:44 +01:00
Mark Liversedge
77c1be7b63 Settings.h typo
.. should have been QT_VERSION not QT_VER
2014-05-26 17:52:27 +01:00
Mark Liversedge
32fe7e09cd Fixup Ride List Background Scroller
.. when change colors
2014-05-26 15:13:19 +01:00
Mark Liversedge
bda2490eb3 CP settings nit 2014-05-26 14:58:17 +01:00
Mark Liversedge
d49c401259 Fix compare all plot smoothing of 0
.. always make it non-zero to get the arrays initialised
2014-05-26 14:47:37 +01:00
Mark Liversedge
9072cf345c Fixup RideNavigator heading glitch
.. the headings get resized as the mainwindow is
   resized, when they shouldn't -- the sidebar is
   getting resized twice - once on mainwindow
   being resized and then our code fixing it back.

.. we now only set those widths on the mainwindow
   when we are told to by TabView::splitterMoved()
2014-05-26 12:52:39 +01:00
Mark Liversedge
cb953b348f Fix Sidebar width resize
.. a regression from the mainwindow refactoring
   earlier this year.

.. when the mainwindow resizes the splitter should
   stay at the same size on the left.
2014-05-26 12:00:43 +01:00
Mark Liversedge
9fa4e74694 Ridelist green text now uses accent color
.. not sure why I hardcoded that in the first place !
2014-05-26 11:27:06 +01:00
Mark Liversedge
6fafb922df More modest scrollbar handles
.. and making it easier to apply globally with a new
   static member of TabView to return the style sheet.

.. we may extend this to cover the application more
   broadly.
2014-05-26 11:01:49 +01:00
Mark Liversedge
203062047a Ride list header style
.. not on Mac, but made same colors as list.
2014-05-26 00:07:32 +01:00
Mark Liversedge
ab3e73fb79 W' Work Calculation
.. should only include joules from W' ie. power above
   CP is accumulated.
2014-05-25 23:19:53 +01:00
Mark Liversedge
601033689f Centile plot honour color config 2014-05-25 21:32:18 +01:00
Mark Liversedge
973dba6bd4 Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2014-05-25 20:21:03 +01:00
Mark Liversedge
27f71c35c7 Disable QProgressDialog on QT5.3 Mac
.. until they fix QTBUG-39038
   see: https://bugreports.qt-project.org/browse/QTBUG-39038
2014-05-25 20:19:58 +01:00
Mark Liversedge
c6230ba93a Fixup Windows Scrollbars on QT5
.. includes to compile

.. plastique deprecated so use fusion style instead
2014-05-25 19:43:30 +01:00
Mark Liversedge
0d7a708672 Comment on QTBUG-38685
.. crash with QT5.3 RC1
2014-05-25 18:50:44 +01:00
Mark Liversedge
4dbd06eaec Accidentally changed index offset in last commit
.. i starts from 1 not 0
2014-05-25 18:37:15 +01:00
Mark Liversedge
44d9cdf8e4 Fix Autofilter duplicates
.. dodgy logic when clearing state on refresh of the menu
   after config change caused tree widgets to be duplicated
   every time config was saved.
2014-05-25 17:35:54 +01:00
Mark Liversedge
40f0cc6cc3 Fix LTM Zone display
.. when no data.
2014-05-25 16:50:56 +01:00
Mark Liversedge
9432c012d2 Prettify Scrollbars for Windows
.. as well as for Linux as done earlier today.
2014-05-25 15:54:00 +01:00
Mark Liversedge
aeb507dd7c RideNavigator::configChanged()
.. instead of doing it every time we refresh
2014-05-25 14:41:42 +01:00
Mark Liversedge
16926d2a01 More messing with ride list scrollbar
.. on Linux only too !
2014-05-25 11:20:42 +01:00
Mark Liversedge
bd49753d1c Fix x axis on CP plot compare
.. when changing ride series from e.g Power to W/KG
2014-05-25 10:07:16 +01:00
Mark Liversedge
6b1d63b338 Fix HrPw marker colors 2014-05-24 15:25:40 +01:00
Mark Liversedge
b811160a5b Allow Heading to be hidden in ride list
.. cleaning up the ride list.
2014-05-24 14:47:37 +01:00
Mark Liversedge
739baf024a Oh. Only Linux for Scrollbars
.. Windows looks HORRIBLE.
2014-05-24 14:16:08 +01:00
Mark Liversedge
e6f933b431 Less Intrusive Sidebar Scrollers
.. but still want an 'on hover' scrollbar
   for the ride list.
2014-05-24 13:55:19 +01:00
Mark Liversedge
2a43aae0a0 Style the ridelist scrollbar on non-mac
.. to be less obtrusive.

.. lets see if we can improve on this ?
2014-05-24 13:33:30 +01:00
Mark Liversedge
a7707ec39f Appearances config to hide ride scrollbar
.. on Non-Mac platforms. It might be just me but the scrollbar
   just looks horrible.

.. should look at a custom scrollbar that 'appears' when it
   is needed (when scrolling or on hover?)
2014-05-24 13:07:29 +01:00
Mark Liversedge
e0a6b84880 Add ScatterPlot to the default ride layout
.. its ready for prime time

.. but needs the metric/imperial bugs fixed !
2014-05-24 11:04:12 +01:00
Mark Liversedge
8f751e0b34 Add Ae-An Stress Chart to default layout
.. using An and Ae TISS
2014-05-24 10:53:37 +01:00
Mark Liversedge
9f255d5201 Set Default W' in Athlete Zones
.. of 20kJ

Fixes #882
2014-05-24 10:10:20 +01:00
Mark Liversedge
9fedfd330a Fix LTM Plot Legend Colors in Compare
.. they were always black which wasn't good on a
   dark background !
2014-05-24 09:20:05 +01:00
Mark Liversedge
371eea0f20 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2014-05-23 21:12:17 +01:00
Mark Liversedge
32e14f1ab1 Fix Veloclinic Model Variant Selection
.. it was broken in the PDModel refactor.

.. you can now select variants for the aerobic
   (slowtwtich) component.
2014-05-23 21:11:09 +01:00
gcoco
3cbe56a127 Add missing ) 2014-05-23 16:05:10 -04:00
Mark Liversedge
2e5b7984eb Merge pull request #886 from Joern-R/pull
Translation enablement + some typos
2014-05-23 19:29:18 +01:00
Joern
2fca7de0c6 Translation enablement + some typos
... Further enablement for translation

... some typo in EN (seen during translation)

(cherry picked from commit 50b78cec0f2fae40f9a5974d98e145d9d9d55535)
2014-05-23 20:26:48 +02:00
Mark Liversedge
033ac9c9d2 CP Delta Compare Part 2b of 2a/b
.. now completed to allow model comparisons too.
2014-05-23 10:38:31 +01:00
Mark Liversedge
41a52a8c2f CP Delta Compare Part 2a of 2a/b
.. just quickly commit the changes for delta compare for
   comparing rides and intervals.

.. still need to fix up the model delta compare.
2014-05-22 22:43:35 +01:00
Mark Liversedge
d8e70bc937 CP Delta Compare Part 1 of 2
.. delta compare to use first date range as a baseline to
   compare other date ranges to.

.. only works for the bests curve in date range mode

.. in part 2 will add the model and also rides/intervals.
2014-05-22 21:54:11 +01:00
Mark Liversedge
9180d53ca0 Tweak ride list accent bar
.. 2px wider at 7px .. better proportions

.. am slowly turning into Steve Jobs .. can
   someone pass the orange juice please.
2014-05-21 20:48:55 +01:00
Mark Liversedge
f8c03776ac Compare mode CP plots model
.. so you can compare models for different date ranges
2014-05-21 18:49:58 +01:00
Mark Liversedge
085ce83bf5 CPPlot Show Best Option
.. sometimes its useful just to see the model and not the bests
   curve. So added an option to get rid of the bests curve and
   show the model on its own.
2014-05-21 14:18:57 +01:00
Mark Liversedge
f577a343ec Fixup Compare to Use RideFile(Ride*)
.. to get CP and Weight tags etc
2014-05-21 13:17:03 +01:00
Mark Liversedge
e037dcf6fc Lactate not Lactic Threshold
.. just being picky now.
2014-05-21 13:16:44 +01:00
Mark Liversedge
c94f93e9fd RideFile(RideFile*) can set context too
.. so no need to do it everywhere we create a temporary
   ridefile for computing metrics.
2014-05-20 21:05:18 +01:00
Mark Liversedge
40fdacdd7a WPK metrics need 2 decimals not 1 2014-05-20 21:05:03 +01:00
Mark Liversedge
5a462b2588 Fix interval metrics that use CP and Weight
.. by making sure the temporary RideFile used to calculate the
   interval metrics contains the tags from the main Ridefile.
2014-05-20 18:47:37 +01:00
Mark Liversedge
b7eafd7b40 Add Athlete Weight Metric
.. and add to summary window

.. uses getWeight() so therefore uses;
   1. 'Weight' metadata
   2. last withings weight
   3. global athlete weight
2014-05-20 09:15:47 +01:00
Mark Liversedge
d2410bf262 Speed up Withings Download
.. it was poorly coded to query the db on every new
   measure and didn't use transactions for the updates
2014-05-20 08:23:50 +01:00
Mark Liversedge
a8167130b0 Update Trends Default
.. PMC tidy up
2014-05-20 06:27:48 +01:00
Mark Liversedge
790ae5b146 Deprecate the old PMC
.. its too far out of date;

   the UX is terrible and flickery
   its a cpu hog (deletes all objects on each replot !? wtf)
   it doesn't honour colour config
   it doesn't integrate with the sidebar date selection
   the metric selection should be via a reveal control
   can't hide the legend / set grid / use chart settings
   should use a tooltip
   doesn't work with compare

.. all these issues are resolved using an LTM based PMC

Fixes #880
2014-05-20 06:06:16 +01:00
Mark Liversedge
6cfd023500 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2014-05-19 20:12:33 +01:00
Mark Liversedge
033d704e48 Add Model Data to CP export
.. if a model is active we can get the model values now
   using PDModel::y() which is kinda neat !
2014-05-19 20:11:45 +01:00
Mark Liversedge
19c6e4e462 Make ConfigDialog bigger on Mac too 2014-05-19 19:15:45 +01:00
Mark Liversedge
f1589e6d5d Center the Preferences Icons
.. now the config dialog is a bit wider (to accomodate longer
   texts in other languages, e.g. Deutsche).
2014-05-19 18:59:49 +01:00
Mark Liversedge
653fbe715a Merge pull request #879 from Joern-R/pull
Translation Enablement + some small changes
2014-05-19 18:49:20 +01:00
Joern
5bf273ea4d Translation Enablement + some small changes
...ConfigDialog.cpp
- -Increase overall size of window (for NON Mac only so far) - this
eases the translation as in non EN languages

... Pages.CCP
- Changed 2 fixed button sizes (to allow proper translation)
- Correction: if Directoy Browsing was Aborted without selection - the
previous value was deleted
- Chooses the 2nd column to search for "New" text in case of 2 text
colums (short and long)
- All the rest Translation enablement

...DiarySidebar.cpp
- enable translation of date formats

(cherry picked from commit 3bbc68a277e743e610630795bb60dc515ced0355)
2014-05-19 19:42:14 +02:00
Mark Liversedge
282c228c1e Release notes update
.. to reflect recent changes.
2014-05-19 17:55:18 +01:00
Mark Liversedge
15dc113ae4 CP w/kg fixups
.. all the recent work on the CP chart has focused on absolute
   watts and not taken into account w/kg !

.. this fixes that up, but still need to look at w/kg on the
   model parameters stuff for the CP history chart
2014-05-19 17:16:19 +01:00
Mark Liversedge
2ac428b363 Fix RideFile::getWeight() Withings bug
.. the update in commit 53871e9 inadvertently broke
   withings weight being used.
2014-05-19 16:12:48 +01:00
Mark Liversedge
a1a6475d72 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2014-05-19 11:39:09 +01:00
Mark Liversedge
ea52f12747 Notes keyword "Reverse" to set fg color
.. when color is used for background -- since they are independent
   of the plot colors etc in this case.
2014-05-19 11:38:14 +01:00
Mark Liversedge
194aceab58 Mustang theme highlight
.. was invisible, now made more obvious
2014-05-18 22:08:57 +01:00
Mark Liversedge
df3d096d4b Refactor CPPlot to use new PDModel
.. the last piece of the jigsaw for the CP chart refactoring was
   to use the new model class and remove the calculation in CPPlot.

.. we have now removed the ridefilecache out of CP, the model calculation
   and refactored to support multiple models.
2014-05-18 20:58:32 +01:00
Mark Liversedge
1a75f41aa5 Be consistent - 'Overlay' not 'Show Overlay' 2014-05-18 13:17:39 +01:00
Mark Liversedge
aacc080fa9 Add Overlay to AllPlot
.. show interval details when hovering over them on the ride
   plot using the new overlay widget
2014-05-18 13:11:51 +01:00
Mark Liversedge
485ac4ed8a Tweak Alt default to light gray 2014-05-18 11:15:41 +01:00
Mark Liversedge
dabfe2bb68 Added Schoberer Color Scheme
.. mimic colors used by SRMWin and the scheme is named after
   the founder of SRM Ulrich Schoberer
2014-05-18 11:11:53 +01:00
Mark Liversedge
2bf4bf53fd Extend Theme color coverage
.. to include power, cadence etc

.. this is particularly relevant for colors that need to change
   if we have a light background (e.g. power in yellow on white
   is almost impossible to see for some people)
2014-05-18 10:44:47 +01:00
Mark Liversedge
a8b3a5abac Add recent contributors
.. Dr Phil Skiba for TISS etc
.. Michael Puchowicz for the Veloclinic PD Model
.. Jörn Rischmüller for supporting German translation
2014-05-18 09:35:15 +01:00
Mark Liversedge
d83f37a171 Recompute Metrics on W' change
.. and also fix CRC code that stops recompute if the ride file
   hasn't changed since it may be recomputed for other reasons !
2014-05-18 09:24:45 +01:00
Mark Liversedge
95e8e3ee44 Accent sidebar on ridelist right height
.. needs to account for font metrics and not just default
   to 50 high. Only notice this if the user has larger fonts
   which can be common on high DPI screens.
2014-05-17 10:00:08 +01:00
Mark Liversedge
0fe739cb50 Merge pull request #875 from Joern-R/pull
Enable Translation
2014-05-17 09:40:06 +01:00
Joern
d0e1ee8674 Enable Translation (1)
... enable translation

(cherry picked from commit d4deb2fd981d601a1378172e24a20b61a7b3c4ec)
2014-05-17 10:25:37 +02:00
Mark Liversedge
533a578653 Fix CP heat age cosmetic glitch 2014-05-17 09:16:01 +01:00
Mark Liversedge
0ea3da8171 Ride list accent bar on Mac Qt<5 or Non-Mac
.. the code needed to account for scrollbars on Macs running
   Qt < 5 and on all other OSes.
2014-05-15 12:46:04 +01:00
Mark Liversedge
ff28190ede If W' is configured in KJ convert to Joules
.. if user enters W' < 1000 then multiply it up
.. if old config remains with W' < 1000 multiply it up
2014-05-14 21:45:38 +01:00
Mark Liversedge
8c6980fbc7 Ride list colour subtly
.. if you have user defined colors for the ride list but don't
   choose to set as background (ITS UGLY!) then we put an accent
   bar on the rhs .. which looks much nicer.

.. I guess its a matter of taste .. some don't have any ;)
2014-05-14 20:31:57 +01:00
Mark Liversedge
4e12e6e435 Plot Model Estimates on LTM
.. as well as W', CP etc we now support plotting any
   duration model estimate.
2014-05-14 18:34:27 +01:00
Mark Liversedge
4707161580 Fix gcc compile time warnings
.. in preparation for 3.1 release
.. but still need to fixup for Mac clang too
2014-05-12 09:07:07 +01:00
Mark Liversedge
6944de0629 Only refresh model estimates when needed
.. since its really only the CP history chart that
   uses them, it can refresh them when needed.
2014-05-11 22:03:22 +01:00
Mark Liversedge
3ceaff049c Ignore dates before 1990 in Model Estimation
.. they're probably bogus or negative or zero and will
   create huge amounts of work !
2014-05-11 21:15:21 +01:00
Mark Liversedge
16d84a798a Get around '-' button size on a Mac
.. by making the text Add and Delete rather than '+' and '-'.

   I /really/ hate the way Qt enforces such an arbitrary rule
   for button size and styles, when Apple doesn't.
2014-05-11 20:20:08 +01:00
Mark Liversedge
baf4e8692e Fix SEGV on empty HomeWindow
.. if there are no charts homewindow crashes. oops.
2014-05-11 18:33:12 +01:00
Mark Liversedge
08f7e7f1cf Update 3.1 release notes
.. to reflect recent updates and remove 'deferred' items.
2014-05-11 17:10:30 +01:00
Mark Liversedge
a2b128519b Notes colors background -or- foreground
.. user can specify what it colors.
2014-05-11 16:10:14 +01:00
Mark Liversedge
5888d0ae07 Fixup ExtendedModel
.. to new PDModel api.
2014-05-11 14:25:13 +01:00
Mark Liversedge
1b3ad2d234 Hide CP helper in compare mode 2014-05-11 14:12:00 +01:00
Mark Liversedge
7d74422319 Skip zero estimates
.. in LTM plot for model estimates
2014-05-11 13:24:20 +01:00
Mark Liversedge
b44c442f48 Added ExtendedModel to the Metric Estimate
.. aggregator will collect estimates
.. LTM will plot

.. but the model needs to be updated to reflect the intervals
   are in seconds not minutes and the y() function is passed
   seconds not minutes.
2014-05-11 12:32:17 +01:00
Mark Liversedge
c3a689aef5 CP history fixups
.. use a rolling 2 month bests window not 3 month (too long)
.. use 2P W' on default chart as it povides a better estimate.
2014-05-11 12:19:48 +01:00
Mark Liversedge
a58055a417 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2014-05-11 11:45:43 +01:00
Mark Liversedge
d58a19e303 Fixup default color to use theme colors
.. in the ride list, calendar and mini calendar we now
   use the default color from the theme when there is no
   match on the keyword.
2014-05-11 11:44:35 +01:00
Damien
c48af1f05e MetricAggregator Model Refresh (add ExtendedModel) 2014-05-11 12:01:16 +02:00
Mark Liversedge
6483e8a507 Fix QProgressDialog centering
.. top left was ugly.
2014-05-11 10:39:57 +01:00
Mark Liversedge
c47939954b Temp FIX for SEGV on data table for estimates
.. needs to be fixed pronto.
2014-05-10 23:26:28 +01:00
Mark Liversedge
46f3b639cb Fix SEGV on bounds check LTMPlot
.. in createEstimateCurve()
2014-05-10 23:19:43 +01:00
Mark Liversedge
ca3fa17c62 Metric Aggregator Model Refresh (Part 3b of 3abc)
.. added to LTM and updated the default layout on trends view
   to include a new 'CP History' chart with W', CP and p-Max
   on it.

.. part 3c needs to update to include Damien's model and also
   once thats done we need to refactor CPPlot to use the new
   PD model classes instead of the code embedded in the class.
2014-05-10 22:05:31 +01:00
Mark Liversedge
b87137343f Metric Aggregator Model Refresh (Part 3a of 3abc)
.. Now refreshing the model parameters is done and
   stored in the athlete class.

.. added the selection of a model estimate to the
   LTM chart

.. in part b and c we need to update the LTM chart
   to plot the estimates (createCurveData).
2014-05-10 20:13:43 +01:00
gcoco
6ac0e4ec05 Update missing file in Makefile 2014-05-10 11:11:45 -04:00
Mark Liversedge
de839c3845 MetricAggregator Model Refresh (Part 2 of 3)
.. the critical power models are now refactored to have a
   base class PDModel.

.. I have implemented the 2 and 3 parameter models as well as
   the veloclinic models

.. the ExtendedModel needs to be aligned

.. next steps are to put these values into a store and allow
   them to be plotted on the LTM charts.
2014-05-10 12:00:26 +01:00
Mark Liversedge
e9ecc02bff MetricAggregator Model Refresh (Part 1 of 3)
.. added the code to aggregate power data when deriving
   model parameter history over time.

.. need to get a class that applies the various models to
   generate the parameters we need (so we can reuse) in
   part 2.

.. then need to store and turn into a metric of some kind
   in part 3.

.. this is largely a checkpoint commit to enable cross platform
   testing with Mac and Windows.
2014-05-09 19:48:25 +01:00
Mark Liversedge
e834a92630 Fix comments in RideFileCache::meanMaxPowerFor() 2014-05-09 16:52:35 +01:00
Mark Liversedge
62b208ffc8 Merge pull request #865 from Walibu/master
Power value from Suunto .gpx file and fix with unvalid 0m Altitude in .tcx
2014-05-09 16:49:50 +01:00
Walter
c4778399a7 added power value from Suunto .gpx file and minor fix with 0 Altitude values if importing .tcx files 2014-05-09 15:30:31 +02:00
Mark Liversedge
0e92fb4778 RideFileCache::meanMaxPowerFor()
.. to extract just the meanmax power data from a ridefile cache
   so we can aggregate and derive model parameters for new metrics
   to track W', CP, FTP, max-Power.
2014-05-09 12:46:25 +01:00
Damien
a2ca136a0e Joule GPS download issue with Windows
fix #817
2014-05-08 23:37:29 +02:00
Mark Liversedge
2dca3589f5 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2014-05-06 21:26:49 +01:00
Mark Liversedge
a4fd105968 Fix scatter reveal controls sync with settings 2014-05-06 21:26:11 +01:00
Mark Liversedge
143129007b Add build info on Mac
.. see src/mac/Info.plist.app, based upon the default for
   Mac with clang found in mkspecs/default/Info.plist.app
   from the Qt installation directories.

.. we make our own to add build version information, which
   should be placed there via the qmake 'VERSION' macro but
   its not supported -- you have to edit the plist file instead.

Fixes #796
2014-05-06 20:17:30 +01:00
Mark Liversedge
c37f9eac89 Aggregating ignore zeroes
.. when aggregating metrics we ignore zeroes since when
   they apply to an entire ride they typically mean no value
   is present.

Fixes #523
Fixes #430
2014-05-06 15:13:16 +01:00
Mark Liversedge
79d188ab2b Highlight lowest and highest on LTM plot
.. good for weight or TSB / LTS where actually we're more
   interested in the lower values than the higher ones.

Fixes #673
2014-05-06 14:58:06 +01:00
Mark Liversedge
83d1832a32 Don't enforce Z1 start at zero
.. if users want alternative ranges, it is not for us
   to enforce -- e.g. ignore zero for HR is sensible since
   0 suggests loss of signal, not your heart stopped !

Fixes #815
2014-05-06 12:42:12 +01:00
Mark Liversedge
529ccdb273 Fix W bal plotting by distance
.. since we only smoothed time

Fixes #803
2014-05-06 11:22:48 +01:00
Mark Liversedge
79c59bf640 Fix Pace Format in Interval Summary
Fixes #841
2014-05-05 21:57:05 +01:00
Mark Liversedge
32dbd850f9 Fix Measures Plotting in LTM
.. needed symbol name to be unique as 'Weight' clashed with the
   normal ride metadata field.

.. we now add _m to the fieldname to generate a symbol name for
   measures.

Fixes #862
2014-05-05 21:07:01 +01:00
Mark Liversedge
bc76472828 Fix DBAccess QT5 Measures Bug
.. there was no prepare statement for the select statement
   in getAllMeasuresFor()
2014-05-05 11:05:29 +01:00
Mark Liversedge
863f2a582b Multicomponent model, default alpha to 0
.. looking at the briefing from Mike on Youtube it looks
   like an alpha value of 0 is a compromise between -0.1
   and 0.1.

.. see the video here: http://www.youtube.com/watch?v=v57NRQ-pHps
2014-05-04 20:35:07 +01:00
Mark Liversedge
6e66eb3707 Merge pull request #861 from rclasen/issue-582
fix timestamps after gaps in SRM files
2014-05-04 16:03:26 +01:00
Rainer Clasen
1dc2e8a65d fix timestamps after gaps in SRM files
"secs" is miscalculated for gaps between blocks: It takes the delta
between last chunks *END*time and next chunks start time - and thereby is
off by RecInt. This error adds up for each block/gap - so, the n'th block
will by off by n seconds.

fixes issue #582.
2014-05-04 10:20:57 +02:00
Mark Liversedge
74431deeea Revert "Fix Allplot Axis Labels"
This reverts commit 80fee9d.

Since actually using showAlt, showBalance to determine if an axis
should be drawn is incorrect, since although the user has selected
it to be plotted, it might not actually be in the ride !

The real fix for this axis labels was fixed in commit 18bf28.
2014-05-04 08:47:46 +01:00
Mark Liversedge
2b1e2d3462 CP Chart can now export bests data
.. via a custom menu option on the chart menu (More...)

.. which means we also now have a mechanism for each chart
   to add their own menu options to the More... menu

.. will no doubt need to add this to the LTM chart
2014-05-03 20:39:46 +01:00
Mark Liversedge
2f3abfa122 Basic Themes Support
.. no doubt we will extend and refine this but at least you
   can select some basic prebuilt themes.

.. will need to add more as its a limited list but the basics
   are in place for now.

Fixes #855.
2014-05-03 18:18:42 +01:00
Mark Liversedge
683124506f Tidy up 'Variant' label in CP settings
.. when Multicomponent model is not selected the 'variant'
   label gets left shown all by itself.
2014-05-03 11:05:53 +01:00
Mark Liversedge
481fd5d09c Michael Puchowicz Models
.. updated to include all 3 variants of the 'Veloclinic' model
   linear, exponential and regeneration models for the second
   component
2014-05-03 09:54:07 +01:00
Mark Liversedge
4dc863af15 Merge pull request #859 from Deadolus/Strava-fix
[PATCH] Fix for slightly different Strava export Format
2014-05-01 10:24:58 +01:00
Simon Egli (Silzo)
976e76b2d6 [PATCH] Fix for slightly different Strava export Format
Strava used other slightly other tags for it's gpx files.
Added those tags to the GpxParser.
Tested and verified.
As I don't have a Power Meter I can't verify Power is correctly imported.

Signed-off-by: Simon Egli <smn.egli@gmail.com>
2014-05-01 10:40:46 +02:00
Mark Liversedge
58c517f10c Fix LTM labels metric conversion bug
.. we converted from metric to imperial TWICE for the labels
   which mean't they were located correctly on the y-axis but
   the label was always wrong !

Fixes #827.
2014-04-30 15:48:35 +01:00
Mark Liversedge
4a780857d2 Fix AllPlot Ticks Error
.. was caused by the fact the allPlot height is not set until after the
   first show, so it is zero in initial state.  We just use a default value
   in this case.
2014-04-30 13:56:56 +01:00
Mark Liversedge
54743f0e6e Fix Allplot Axis Labels
.. they weren't updated when the plot was not visible due to looking
   at the curve 'isVisible()' rather than showXXX bool.
2014-04-30 11:17:31 +01:00
Mark Liversedge
628fbb1d63 Andy Froncioni W'bal optiimsation (contd)
.. forgot to remove the threaded integrator which is no longer
   needed and then found it is still being used by the minForCP()
   method, so tidied that up.
2014-04-29 21:02:20 +01:00
Mark Liversedge
1baff94e2d Fix 2 parameter CP .. again
.. broke when playing with t0 for veloclinic model, because
   t0 is actually used in the loop within deriveCPParameters()
2014-04-28 21:50:36 +01:00
Mark Liversedge
1fbfe112b1 Fix cp2-20 to not use t0 ! 2014-04-28 20:12:07 +01:00
Mark Liversedge
a623b15ef1 Hide legend titles for trends/outliers/bests
.. as they are not 'curves' just overlaid onto the
   real curves -- so they are not needed in the legend
2014-04-28 18:06:08 +01:00
Mark Liversedge
5b389e2575 Tidy Preferences Passwords Dialog
.. some left over items that are no longer needed and a
   stray QLineEdit in there.
2014-04-28 10:23:25 +01:00
Mark Liversedge
6fad6ec78c Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2014-04-27 15:10:11 +01:00
Mark Liversedge
cda269c2ec QPixmap::grabWidget() deprecated
.. so use QWidget::grab() instead from QT5 onwards
2014-04-27 15:09:13 +01:00
Damien
f991541a97 Bin2RideFile: Small improvement in sensor name parsing 2014-04-27 00:02:49 +02:00
Damien
afd0712133 Correct errors in last commits 2014-04-27 00:02:49 +02:00
Damien
4c00c1808d CvsRideFile: Add Moxy file type 2014-04-27 00:02:49 +02:00
Mark Liversedge
eb8a138f8b Veloclinic Multicomponent Model
.. implementation of the Veloclinic model, or at least
   the first of a few potential models.

.. It may not be correct at this point, but committing
   a checkpoint.
2014-04-26 22:44:05 +01:00
Mark Liversedge
06f1dcc3b9 Sort out Zones.cpp code formatting
.. I know its a matter of taste, but some of the formatting in there
   would win the OCCC competition. I mean FFS, who puts else clauses
   after a ';' !?

.. the formatting probably reflected the different people who have
   updated the code over the years.

.. no functional changes whatsoever in this commit -- just cleaning
   the source code to make it more maintainable (and readable)
2014-04-26 12:27:59 +01:00
Mark Liversedge
bee8222b83 Dialog deleteLater() om HomeWindow
.. trying to id the Mac crash.
2014-04-25 21:21:37 +01:00
Mark Liversedge
1cc72fabb4 Faster W'bal algorithm
Using Andy Froncioni's modification to the original
formula that removes the need for Tau and also lets
the exponentials drop out.

Massive speed improvement!
2014-04-24 16:23:42 +01:00
Mark Liversedge
36616fc801 Add *.pri to .gitgnore 2014-04-24 14:46:31 +01:00
Mark Liversedge
f3f7d57d48 Allow Interactive Widgets in GcOverlayWidget
.. for "future" interactive widgets.
2014-04-23 07:35:01 +01:00
Mark Liversedge
5f0bd0bf23 CPPlot warning to qDebug
.. qmessagebox is a bad idea since user has not idea
   why it is being raised.
2014-04-22 21:05:08 +01:00
Mark Liversedge
faac207519 Allow Multiple Helper Widgets
.. in GcOverlayWidget.
2014-04-22 09:57:12 +01:00
Mark Liversedge
f9e02db097 Merge pull request #856 from ibooij/fix_crash_when_dataseries_is_empty
Fix crash when opening Speed histogram for the first time, on a file without speed info.
2014-04-21 21:31:29 +01:00
Ilja Booij
b5264fa88a Fix crash when opening Speed histogram for the first time, on a file without speed info.
I had a trainer file as the second file in my history. Opening this ride, and selecting the speed histogram made GC crash.

I narrowed it down to line 905 in src/PowerHist.cpp. The code was trying to do a resize on a QVector with a negative value. count was -7.

Making sure that count is always 0 or greater fixed the crash.

Note that opening another ride file, with speed information before this one, selecting the speed histogram and only after that selecting the ride without speed information, did not crash the application. I'm suspecting that there might be some resetting of values, perhaps in the "standards" arrays, that is not done when a data series is missing.
2014-04-21 22:16:54 +02:00
Mark Liversedge
85f617848e Fix horizontal scrollers
.. from ever appearing on ride navigator / activity log
2014-04-21 18:33:34 +01:00
Damien
c89207ef40 Add hemoglobin series to Editor 2014-04-20 23:46:36 +02:00
Mark Liversedge
210ed97c8e Fix blank ride plot in compare mode
.. when you switch tabs to ride plot having never
   displayed any ride at all.

.. also fixes switching to compare mode when the currently
   selected ride is blank (has no data).
2014-04-19 20:43:51 +01:00
Damien
cf90d0bc2d Correct JsonRideFile for hemoglobin series 2014-04-19 10:14:44 +02:00
Damien
8047e73382 Add hemoglobin SmO2% and tHb data series (Moxy) 2014-04-19 09:22:06 +02:00
Mark Liversedge
5ab401d33c Fix Activity Log Search/Filter
.. not sure it every worked properly.
2014-04-18 19:05:37 +01:00
Mark Liversedge
b453229a21 Fix color change on ridesummarywindow
.. to reflect change and not optimise out.
2014-04-18 18:14:33 +01:00
Mark Liversedge
65687b8d74 Fix AllPlot colour changes
.. frame now updates when the colours change.
2014-04-18 13:35:16 +01:00
Mark Liversedge
a80e4efc95 Time Format is always hh:mm:ss and 24 hour clock
.. so be consistent on manual ride dialog.
2014-04-18 13:20:21 +01:00
Tom Weichmann
d4cd7dd4ae Made Manual Rides honor Imperial/Metric setting, made time use AM/PM if using imperial units (we shold prob have a seperate setting for time format) and fixed distance decimal issue. 2014-04-18 12:23:36 +01:00
Mark Liversedge
1cd2200281 Fix RideNavigator white background
.. its in the viewport, which seems a common problem across
   the Qt widgets, we need to be aware of the internal implementation
   details when setting styles.

   Thats a bit crappy.
2014-04-17 16:11:00 +01:00
Mark Liversedge
bff81a945b Blank State white background 2014-04-17 15:40:48 +01:00
Mark Liversedge
69d9968608 Less transparency on LTM charts 2014-04-17 10:43:36 +01:00
Mark Liversedge
0fef5e634c CPPlot y-axis for power
.. always a multiple of 100w
2014-04-17 10:05:40 +01:00
Mark Liversedge
a3a1cd94a8 Take Model parameters off Summary
.. until we can do it with better performance.

   ITS TOO SLOW !
2014-04-17 09:07:32 +01:00
Mark Liversedge
4f86d90356 MultiCalendar Sidebar honors color prefs
.. phew .. that was tricky !
2014-04-16 23:07:51 +01:00
Mark Liversedge
cbb7351216 Remove dialog in cp model calculation
.. it may occur in background !
2014-04-16 17:49:45 +01:00
Mark Liversedge
fa012fbe11 Fix going negative on setAlpha
.. to stop qt outputing error messages
2014-04-16 17:44:57 +01:00
Mark Liversedge
8d08bf6d09 Compare Pane honours color prefs 2014-04-16 17:39:45 +01:00
Mark Liversedge
4529c7c8d8 RideNavigator background 1px wider
.. border was too thick
2014-04-16 16:40:03 +01:00
Mark Liversedge
5c20d58fe7 RideNavigator line 1px too long 2014-04-16 16:21:57 +01:00
Mark Liversedge
4f91b087c1 Train Sidebar / Diary Summary Colors
.. now honour user preferences

.. just the calendar to fix
2014-04-16 15:57:31 +01:00
Mark Liversedge
f246ef1a35 LTM Sidebar honour Colors
.. now sets the colors for all LTM sidebar widgets according
   to the user's preferences
2014-04-16 14:46:54 +01:00
Mark Liversedge
ded8c5892a Interval Summary Sidebar Colors
.. now honours the color settings too
2014-04-16 14:38:13 +01:00
Mark Liversedge
4a830b176f RideNavigator honour Colour Prefs
.. so matches the plots
2014-04-16 12:48:07 +01:00
Mark Liversedge
b197c70b3d Fixup CP and AllPlot
.. CP to show % for all ride series not just watts
.. AllPlot to show calibration markers in gray
2014-04-14 22:10:53 +01:00
Mark Liversedge
86489c6a26 Fix CP as percent tooltip
Fixes #850
2014-04-14 21:27:01 +01:00
Mark Liversedge
18a9f3464b Add Vector data series to ride editor
.. last of the planned updates to support
   the new vector data series.
2014-04-14 17:19:04 +01:00
Mark Liversedge
1a0f63d4b7 Add Pedal Data to Scatter Plot
.. now plots left and right curves for the
   Vector/Rotor balance/TE and PS data/
2014-04-14 17:04:06 +01:00
Mark Liversedge
80c2d254d4 Updated release notes 2014-04-14 10:51:01 +01:00
Mark Liversedge
3233bbfb30 Add Averages for Pedal Data
.. pedal smoothness and torque effectiveness
2014-04-14 10:39:36 +01:00
Mark Liversedge
86abfbe124 liboauth is optional 2014-04-13 22:17:38 +01:00
Mark Liversedge
6e14f048ab Fix CPPlot SEGV
.. crashes on low power files (eg. power = 0.1w)
2014-04-13 21:44:46 +01:00
Mark Liversedge
b189b1f4bf Add Vector data series to ride plot
.. Torque Effectiveness and Pedal Smoothness now
   added to the ride plot.
2014-04-13 19:47:21 +01:00
Mark Liversedge
43623f8cb3 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2014-04-11 13:48:26 +01:00
Mark Liversedge
0a32f3c571 Add Vector/Rotor TE and PS data series
.. Added the torque effectiveness and pedal smoothness
   data series to the RideFile structures.

.. The only file formats that support it at this stage
   are Fit and  GoldenCheetah JSON.

.. As more file formats support it we will add it here.

.. The charts/editor now need to be updated to support
   these new data series.
2014-04-11 13:46:10 +01:00
Damien
ea2122db0a Twitter: use OAuthDialog for authorisation 2014-04-11 00:00:57 +02:00
Mark Liversedge
dadef6231e Smaller font on CP widget
.. 16 points was too big !
2014-04-10 22:10:09 +01:00
Damien
db0b9885a5 Twitter: api.twitter.com requires SSL/TLS for all connections 2014-04-10 21:08:55 +02:00
Damien
676d1a032a Rank 2014-04-10 21:08:55 +02:00
Damien
93c96b31af ShareDialog: Prepare for GarminConnect Upload 2014-04-10 21:08:55 +02:00
Mark Liversedge
790ea55aa5 Some notes on what's new in GC 3.1 2014-04-09 19:02:37 +01:00
Mark Liversedge
91515bf5ff Add Chart now back on Chart Bar
.. so at least chart adding should be easier and no more
   UX issues.

.. need to look to add other menu options there; add page, athlete,
   chart settings.
2014-04-09 15:51:43 +01:00
Mark Liversedge
00e77053c1 Add menu button to chart bar
.. code lost and reinstated, need to write the code
   to show the chart menu when it is clicked.

.. just pushing this code to get it back into the repo
   as it was lost accidentally with some other recent changes
2014-04-09 12:52:33 +01:00
Mark Liversedge
f5fb69b20b Added some code comments
.. to GcSideBarItem.cpp as the code is very difficult to
   follow. Not hugely valuable comments but they will at least
   help to understand the purpose of each widget.
2014-04-09 12:29:36 +01:00
Mark Liversedge
9fb5b39f28 Truncate W'bal going hugely negative
.. this is caused by bad data and/or the spline getting
   spoilt. We need a better way of decritizing the data.
2014-04-09 10:58:53 +01:00
Mark Liversedge
9c85310ca8 CP Chart Overlay
.. now has an overlay widget that can contain multiple widgets
   and is user movable and resizable etc

.. we show the model derived values for now, but could add other
   things at a later date (e.g. MU distribution etc).

Fixes #811.
2014-04-08 15:36:24 +01:00
Mark Liversedge
fc9042d868 Merge pull request #840 from ibooij/fix_crash_in_qtfullscreen
Fix crash at shutdown.
2014-04-07 19:41:33 +01:00
Ilja Booij
2a20e4b7e0 Fix crash at shutdown.
The context pointer was dereferenced after the context object was deleted. This is fixed by storing a pointer to the MainWindow in QTFullScreen, so context does not have to be dereferenced.

The logic in QTFullScreen::eventFilter is also simplified a bit.
2014-04-07 20:19:17 +02:00
Mark Liversedge
4ffcfd3aa7 Move grid to back CPPlot 2014-04-05 20:31:26 +01:00
Mark Liversedge
c6b6f3dfa8 Merge pull request #838 from ibooij/fix_pmc_crash
Prevent crashed in PMC by checking if start and end date of seasons are ...
2014-04-05 19:55:31 +01:00
Ilja Booij
4c3a6a968d Prevent crashed in PMC by checking if start and end date of seasons are valid. 2014-04-05 20:04:39 +02:00
Mark Liversedge
2e2b864c34 CP plot cosmetics
.. show the 1s point (it was truncated)
.. show power bests as dots if there is a model curve
2014-04-02 14:05:18 +01:00
Mark Liversedge
b55fc00397 Add pointHover to ScatterPlot
.. the last of the ride plots for hover mode

phew.
2014-03-31 20:01:26 +01:00
Mark Liversedge
17ac68b317 Grid style in 2d same as PfPv
.. dotted lines looked naff.
2014-03-31 16:11:00 +01:00
Mark Liversedge
e6cbc8dc9d Fix ScatterPlot interval and framing
.. before adding support for interval hover
2014-03-31 15:54:03 +01:00
Mark Liversedge
c6850c71e5 CP Chart gets grid back
.. put the grid back on the cp chart, which is less ugly
   now we can set and honour colours for it and the background.
2014-03-30 20:08:14 +01:00
Mark Liversedge
1bcceb9413 Prettier grid lines in ride plot 2014-03-30 19:48:14 +01:00
Mark Liversedge
55bc935cdd Changing colors in Ride Plot
.. stack plots respond when colors change
.. need to work out whats wrong with allplot and fullplot
2014-03-29 12:27:25 +00:00
Mark Liversedge
8ca0134441 RideSummary cosmetics
.. FTP is a trademark (I think?)
.. Metrics* is just plain Metrics now.
2014-03-28 18:34:10 +00:00
Mark Liversedge
98f4e02bba Add Model to Summary
.. when summarising a date range we now show the
   model values for CP, FTP, W' et al.
2014-03-28 18:05:30 +00:00
Mark Liversedge
666e985f27 CSS extended a little
.. to include <h4> and <b> since they are used
   on the LTM 'data' table.
2014-03-27 20:18:15 +00:00
Mark Liversedge
2b6a9d063d Introducing GCColor::css() to style HTML
.. wherever we use it, but mostly for the summary
   charts to use the plot marker color. for now.

.. we can get more sophisticated later !
2014-03-27 19:57:08 +00:00
Mark Liversedge
918b40fd3e Better Default Colors
.. now we don't have to have a white background for the plots
   the defaults are more modern -- inspired by Google Nexus
   and the Sublime text editor
2014-03-27 18:32:40 +00:00
Mark Liversedge
9e558f0d47 Missed off previous commit
.. critically, updating the db schema version
.. QPen syntax error on QT 5
2014-03-27 17:20:52 +00:00
Mark Liversedge
5cb636bc88 Improve compatibility with Dropbox
.. by checking the ride file CRC before recomputing
   either the metrics or the ridefilecache.

.. this means that users that routinely copy or backup
   or use dropbox to keep things in sync won't see any
   unneccessary metric computations.
2014-03-27 16:20:33 +00:00
Mark Liversedge
e2d07499a2 Hide hover when ride changes
.. in histogram plot.
2014-03-27 13:48:56 +00:00
Mark Liversedge
cd35e0d4ee Add IntervalHover to Histogram Chart
.. when mousing over the intervals list we
   now plot the hovered interval in gray.
2014-03-27 13:05:53 +00:00
Mark Liversedge
907382c756 Check null in CPPlot setRide
.. to avoid plotting before GC has even opened!
2014-03-27 08:14:30 +00:00
Mark Liversedge
56371bdecf Please ignore this commit
.. I added a CR to the end of the LINUX build document
   just to be able to test push/pull/fetch/cherry-pick
   across a number of different repositories

.. this is just for testing git, no functional changes
   were made at all.
2014-03-26 22:06:50 +00:00
Mark Liversedge
e275a74561 Remove CP friend class
.. its a hack, and wasn't really needed

.. also reimplemented getBest() functions since they
   incorreclty assumed that bestsCache would never be NULL
2014-03-26 11:04:49 +00:00
Mark Liversedge
987176c50e CP plot handling empty rides 2014-03-25 16:23:34 +00:00
Mark Liversedge
56637e6ed9 CP Refactor 3 of 3
.. fix compare date ranges

Now code is ready to extend with new models
and display widgets etc.
2014-03-25 11:54:31 +00:00
Mark Liversedge
f564d8da15 CP Refactor 2 of 3
.. 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.
2014-03-25 10:49:58 +00:00
Mark Liversedge
24e499ff14 Copyright message update for CP chart 2014-03-24 21:39:46 +00:00
Mark Liversedge
c540f23a7c CP Refactor 1 of 3
.. basic ride, bests and model plots all working

.. Compare mode is now BROKEN !

Will fixup the rest tomorrow, needed to checkpoint
the core refactoring work.
2014-03-24 21:30:15 +00:00
Mark Liversedge
3324d90a60 CPPlot.cpp C++ Code Prettify
.. with astyle --style=kr and a little bit of manual editing
2014-03-24 11:49:15 +00:00
Mark Liversedge
774267afb4 CP Code Wash before Refactor
.. the CP plot curve is a terrible mess. Mostly from
   having multiple significant updates from a number
   of notable developers; Sean, Dan, Mark and Damien
   have all made significant contributions.

.. But the code contains lots of 'smells' and is very
   difficult to follow and update

.. this update makes no functional changes but is put
   in place before overhauling the code related to
   "calculating" and plotting the different curves.
2014-03-24 11:08:07 +00:00
Mark Liversedge
d884040fa9 Anaerobic TISS update for RideFile
.. so ride plot of it as a data series is correct
2014-03-23 16:52:57 +00:00
Mark Liversedge
5b49d33afe Updated Gompertz for an-TISS 2014-03-23 16:09:27 +00:00
Mark Liversedge
a6864f3b8c Added TISS Aerobicity metric
.. metric of the aerobic-ness of a ride based upon the
   ratio of a-TISS to an-TISS.

.. bear in mind the curves for a/an TISS are being looked
   at as we speak !
2014-03-22 14:20:07 +00:00
Mark Liversedge
191219bfa4 Anaerobic TISS
Added Anaerobic TISS from Dr Skiba to complement
the Aerobic TISS added recently.

Added to;
* Metrics
* Ride Plot
* PMC metrics
2014-03-22 10:47:44 +00:00
Mark Liversedge
bc47e0a2d1 .gitignore updated
.. to ignore antlog.bin
.. and all the .qm files
2014-03-21 20:16:04 +00:00
Damien
f41792e84f CpPlotCurve: Improve HeatByDate 2014-03-21 15:43:03 +01:00
Mark Liversedge
ee55c97b40 Fix CP chart reveal controls on QT5
.. and also remove the yucky labels on the chart in readiness
   for a CP model widget to overlay and move about the chart.
2014-03-21 12:38:11 +00:00
Mark Liversedge
1b433d702c Less event filtering
.. too many widgets are filtering events needlessly.
2014-03-21 11:57:51 +00:00
Mark Liversedge
df9d03b965 Don't define a class inside a method
.. some compilers don't like it.
2014-03-21 07:28:51 +00:00
Mark Liversedge
be37356a54 Less event processing in HomeWindow
.. was trapping too many events, even when not visible

.. also went back to multishot timer for unreveal but
   stop it when the unreveal even happens.
2014-03-21 07:15:45 +00:00
Mark Liversedge
b86a89c835 Unreveal timer runs forever!!!
.. should have been a single shot !
2014-03-20 22:29:21 +00:00
Mark Liversedge
8874b98f52 CP Heat now shown at bottom of chart
.. akin to the volume on a share price chart.
2014-03-20 18:16:58 +00:00
Mark Liversedge
9b642ebcf5 CP chart now has reveal controls
.. for show heat and show as percentage
2014-03-20 17:27:01 +00:00
Mark Liversedge
f5350925d3 Added Hover on PfPv
.. interval highlighted when hover over its marker
   on the PfPv plot.
2014-03-20 15:59:58 +00:00
Mark Liversedge
cdfdd7da3c Fix Time In Quadran Marker Color
.. when plotting on a dark background
2014-03-20 15:44:18 +00:00
Mark Liversedge
837f294dac PfPv hover color to interval color
.. instead of gray, there is no value in doing anything
   else (aside from consistency) and the marker is in the
   color too, so we should match.
2014-03-20 15:25:57 +00:00
Mark Liversedge
82a691dae8 Add Interval Markers to PfPv
.. mark the center of an interval (i.e. the average aepf/cpv
   for that particular interval).

.. this is in preparation for mouse over the interval causing it
   to be highlighted on hover.
2014-03-20 15:18:43 +00:00
Mark Liversedge
a10752e545 Fix CP scale for percent
.. when showing the ride as a percentage of bests on the CP
   chart we need to adjust the scale when its > 100%.

.. this can happen when comparing a ride with a bests chart
   for a period the ride was not part of; e.g. todays really
   strong ride vs my bests for the beginning of the year.
2014-03-20 13:24:53 +00:00
Mark Liversedge
90eea50aa4 Fix SEGV in Histogram when clearing compare
.. because the arrays were emptied!
2014-03-20 09:58:32 +00:00
Mark Liversedge
cfcf4223dd Bit of transparency on PfPv
.. so we can see overlapping intervals.
2014-03-20 07:50:22 +00:00
Mark Liversedge
734dd294a6 PfPv fixups
.. hide hover curve when change ride
2014-03-19 20:09:40 +00:00
Mark Liversedge
3658cf22a6 Implement Interval Hover in PfPv
.. only from interval list
.. need to also implement from chart hover too
2014-03-19 20:02:02 +00:00
Mark Liversedge
54f9216892 PfPv dots brush
.. been meaning to do this for AGES. the dots in the PfPv
   chart are now filled rather than hollow.
2014-03-19 19:04:10 +00:00
Mark Liversedge
b30e96c52f Rename LTM to Metric Trends
.. LTM is a meaningless acronym
2014-03-19 18:57:29 +00:00
Mark Liversedge
8032647c21 More CP fixups
.. hover curve clear on new ride

.. fix ride plot mode so when plotting ride it always
   does. This was fixed by initialising ridePlotMode in
   the CpintPlot constructor.
2014-03-19 18:20:56 +00:00
Mark Liversedge
ab51128812 Remove errant qDebug statements 2014-03-19 17:55:42 +00:00
Mark Liversedge
c504702061 More CP plot fixups
.. allplot color fixed when not a rainbow curve

.. fix SEGV index bounds check off by one

.. hover curve z-order to top
2014-03-19 17:52:40 +00:00
Mark Liversedge
925d4c8d74 CP pointHover fixup
.. bounds checking on array index
.. set curve grey not white!
2014-03-19 16:18:43 +00:00
Mark Liversedge
29fe606097 CP pointHover
.. plot the interval on hover in the sidebar.
2014-03-19 15:53:58 +00:00
Mark Liversedge
5d211c34a4 CP plot ride as %age of best
.. to quantify the areas trained during the ride
2014-03-18 21:34:32 +00:00
Mark Liversedge
18dcc465b5 Attempt to fix aPower calculation 2014-03-18 19:59:28 +00:00
Mark Liversedge
edc9f0065c QT Mac support is shit
.. making our own buttons to get around the hideous pile of shit
   that is a QPushButton on Mac when you want it to be smaller than
   a billboard sign.
2014-03-18 18:31:31 +00:00
Mark Liversedge
1f0abb50bf Clear Compare Pane
.. last piece of the jigsaw for compare mode. This update adds a
   clear button to the compare pane bar.

.. we can still add lots more to compare mode, but for v3.1 this
   is probably enough now, so closing the feature request too.

Fixes #343.
2014-03-18 17:43:59 +00:00
Mark Liversedge
27582f0cae Mouse Over Interval List to Highlight
.. same as hovering over the interval in the ride view
   hovering over it in the tree list now triggers the
   event.
2014-03-18 16:21:49 +00:00
Mark Liversedge
2cb5cc217e Fix AllPlot SEGV on Compare
.. introduced by a dodgy cut and paste to support the new
   data series Aerobic TISS.
2014-03-17 22:45:23 +00:00
Mark Liversedge
a873c94a37 Aerobic TISS fixup
.. for rides with samples other than 1s recording.
2014-03-17 21:54:30 +00:00
Mark Liversedge
f92d8a5b79 Stress Metric Prototypes
Added a few new training stress metrics whilst discussing
and working on a multicomponent view of training stress.

This is all a wip falling out of discussions around stress
metrics beyond the old TSS/BikeScore models.

For now this just includes;
1. Aerobic Training Impact Scoring System on PM/PMC
2. Work (Kj) above/below CP on PM/PMC
3. Aerobic TISS on the Ride Plot

There is lots more to come; specifically around Anaerobic TISS,
looking again at polarised training and personalised training stress
based upon the individual's CP model.
2014-03-17 20:51:57 +00:00
Damien
a47ebb9c07 CpPlotCurve: Add missing files in last commit 2014-03-16 21:23:48 +01:00
Damien
d4701912e7 CpintPlot: Small correction 2014-03-15 23:07:36 +01:00
Damien
ed0b4c4911 CriticalPowerWindow: Add a Heat by Date option 2014-03-15 22:52:53 +01:00
Mark Liversedge
6386d62445 Fix Mac SEGV
.. native widget causes issues with 4.8.5
.. rideItem->ride() needs to check rideItem is not null
2014-03-15 08:22:10 +00:00
Mark Liversedge
6de400572c CP heat is only below the curve
.. makes it much easier to read and interpret!
2014-03-14 14:28:27 +00:00
Mark Liversedge
8fe6c527a3 Add Heat to CP chart.
.. from an idea from Michael Puchowiz during discussions
   about a Multicomponent PMC.
2014-03-14 10:08:18 +00:00
Mark Liversedge
5321946aa1 Fix ButtonBar paint error
.. caused by an eventFilter not returning false and therefore
   always filtering out the events on the chartbar and buttons.
2014-03-14 08:26:13 +00:00
Mark Liversedge
231a1f4156 Add Power 'heat' to RideFileCache
.. to indicate which power-durations are getting worked hardest

.. Calculate a 'heat' score for the power duration curve.
   A score that counts how many rides in the aggregate
   have a power-duration best that is within 10% of the
   best value calculated.

.. next step is to add it to the CP curve (when showing
   power) to provide some kind of shade/heat indicator
   for the area of the curve.
2014-03-13 22:56:51 +00:00
Mark Liversedge
c741ed7398 Fix Palette for Details
.. not quite right on Linux/Win.
2014-03-13 21:23:29 +00:00
Mark Liversedge
cbcc72101e Colors.h missing in ModelPlot.cpp 2014-03-12 15:39:17 +00:00
Mark Liversedge
05cecd0d8f Aerolab honour background colors 2014-03-12 15:20:16 +00:00
Mark Liversedge
03bb31d2f0 Always signal when color changed
.. even if changed to same value to ensure the widgets
   are updated to reflect -- especially if setting to the
   same as the default value.
2014-03-12 15:13:35 +00:00
Mark Liversedge
ee1cf0236f 3d plot honour background color
.. it already had plot background just needed to honour for
   the frame too.

.. also fixed default empty window to use correct colors.
2014-03-12 15:10:43 +00:00
Mark Liversedge
f695c3085c Bing Map honour background
.. and small cosmetic fix for google map to be right colors
   whilst loading the map too .. stop nasty flicker.
2014-03-12 15:02:36 +00:00
Mark Liversedge
688d07fd12 PMC Chart honour background 2014-03-12 14:43:59 +00:00
Mark Liversedge
3e8e41f272 TreeMap plot honour background colors 2014-03-12 14:05:56 +00:00
Mark Liversedge
f86a21ce33 HrPw honours background color preferences
.. bringing it in line with the other charts honouring the
   background color chart preference.
2014-03-12 13:37:50 +00:00
Mark Liversedge
86ad33020a Fix SEGV on add chart with Qt5
.. and also selects the first chart on the chartbar at startup.
2014-03-12 13:28:01 +00:00
Mark Liversedge
ea96c60e85 Fix stylesheet for 'More...' when config changes 2014-03-12 12:45:49 +00:00
Mark Liversedge
cf9afb7bd2 Fix LTM legend colours
.. when user changes the background color for charts the
   legend can be difficult to read as it is always in black.

.. we now update the legend and it's widgets to change the text
   color when the chart is refreshed.
2014-03-12 11:54:27 +00:00
Gareth Coco
3cf5a034ab Move release files to GitHub releases
Uploaded binaries to GitHub and linked to release information.
Updated web pages to point to new binary locations.
2014-03-11 22:49:03 -04:00
Mark Liversedge
9d02fb15de Oops needed to set Min Width not Fixed
.. otherwise if smaller than window leaves a nasty
   blank render to the right of the buttonbar.
2014-03-11 21:20:44 +00:00
Mark Liversedge
0c30e93260 Fixup button bar with lots of texts 2014-03-11 20:57:41 +00:00
Mark Liversedge
3072e86964 Less subtley on interval hover
.. just a bit easier to see with less alpha.
2014-03-11 20:37:24 +00:00
Mark Liversedge
3b7adf8187 More Charts honouring Colors Preferences
.. Further updates to the charts to honour the background
   color preferences:

        * Google Maps
        * Ride Summary
        * Scatter
        * Details (Metadata)
        * LTM Data View
        * Editor

.. still a few left to do and not entirely happy with how
   things look on the editor but we can fix this up over
   time.
2014-03-11 17:58:41 +00:00
Mark Liversedge
89fe8e14d9 Little More Background Honour
.. updated a few more of the charts to honor the chart
   background property so the chart and chrome are all
   in the color the user specified.
2014-03-10 20:55:45 +00:00
Mark Liversedge
cef115753c UX Fixups
.. chart bar scroll left and right when too many charts
.. set background in ride plot
.. chart menu says 'More...' instead of down tick
2014-03-10 19:40:22 +00:00
Damien
139818bd69 Bin2RideFile: Changes for DataVersion 6 in Joule GPS new firmware 2014-03-09 22:49:26 +01:00
Gareth Coco
7b0bdce0d9 Update website for 3.0.2 release 2014-03-09 14:10:22 -04:00
Mark Liversedge
e385653abc ChartBar Buttons in a QScrollArea
.. ready to animate / scroll when more items to show than
   will fit in the button bar space.
2014-03-09 17:40:26 +00:00
Mark Liversedge
bed3d87e67 Honour Font preferences in Side/Scope/Chart bar 2014-03-09 08:13:57 +00:00
Mark Liversedge
b310af10e5 Update ChartBar button text
.. when editing it in the chart settings
2014-03-08 20:47:39 +00:00
Mark Liversedge
20d5b22f4d TabBar to ScopeBar Mac Fixups
.. using QtMacButton not GcScopeButton
2014-03-08 12:08:27 +00:00
Mark Liversedge
63849c25c7 Fix Scope/ChartBar Font Size on Windows
.. it was size 8 for some bizarre reason
2014-03-08 11:49:49 +00:00
Mark Liversedge
fb1e3cb7bd Replace Tabbar with a Scopebar
.. Only tested on Linux

.. Now going to check on Mac and Qt5

.. Also does not yet support re-ordering tabs
   nor scrolling when there are too many to show.
   This will come in future updates.
2014-03-08 11:36:05 +00:00
Mark Liversedge
5895f0cf1f Reverse last commit re spacing
.. not because it was a bad idea, it is a great idea.

.. we need to replace the tabbar with a scopebar and
   customise it for the view menu and support scrolling
   left and right.

.. will sort this weekend
2014-03-07 20:46:19 +00:00
Mark Liversedge
7d2cd20095 Moving to less border space
.. The UI spacing is a bit 'old hat' and not really in line
   with modern UI's -- so reducing the amount of unneeded
   spacing between widgets.

.. There is more to come on this, but for now this means there
   is a little more screen estate for the charts.
2014-03-07 13:23:58 +00:00
Mark Liversedge
0af9bf9724 Add Configuration for Train View Color
.. the background was set from the ride plot background.
   we now have a separate configuration option for this.
2014-03-07 12:00:25 +00:00
Mark Liversedge
92a9e70d77 Rudimentary Pacing Index
.. need to think about what we're trying to achieve with this
   but for assessing TT efforts we can see how far away from
   a constant load the ride was.

   Its just computed as average power as a percentage of max power.
2014-03-06 19:11:32 +00:00
Mark Liversedge
b125841c9c Fix Fatigue Index Calculation
.. should only measure fatigue from the peak of the interval
   assuming the athlete is performing a proper 'wingate' style
   all out sprint.
2014-03-06 16:33:45 +00:00
Mark Liversedge
c3fb0094d3 W'bal line thickness
.. should follow preferences not always be 2px wide
2014-03-01 09:43:07 +00:00
Damien
32a556a92b ExtendedCriticalPower: display CP value for ExtendedCP model 2014-02-28 23:32:33 +01:00
Mark Liversedge
87be6168ab Fix compile error in LogTimeScaleDraw 2014-02-28 22:15:50 +00:00
Mark Liversedge
78ce5f5f13 Version History update for v3.0-SP2
.. added build id 3032 for 3.0.2
2014-02-28 21:48:53 +00:00
Mark Liversedge
4dee8e60c1 Delta character in CP settings 2014-02-28 08:50:25 +00:00
Damien
afcf084fbc GoogleMapControl: Small fix for Google Map
fix #814
2014-02-28 07:20:40 +01:00
Damien
389fc02e38 CriticalPowerPlot: Add Power by inv time plot 2014-02-28 07:20:40 +01:00
Mark Liversedge
485cd512ec Fix RideEditor SEGV on rideselected (!)
.. 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.
2014-02-27 17:07:50 +00:00
Mark Liversedge
01b066cde2 Fix SEGV on clear selection in RideEditor
.. just call clear() to reset the selection model to
   avoid a SEGV on Mac with QT5 (untested as cannot
   recreate the crash).
2014-02-27 10:45:16 +00:00
Mark Liversedge
9674a9cd29 Fixup Unicode 'Delta' character
.. it didn't display properly on Linux (and possibly
   Windows).
2014-02-26 21:28:44 +00:00
Mark Liversedge
15f78324a8 Small Tidy up of AllPlot Settings 2014-02-26 12:00:21 +00:00
Mark Liversedge
9e296aa0c1 Delta Series Fixups
.. ignore hr drops
.. initialise datapoints
.. ignore time goes backwards
2014-02-26 11:38:47 +00:00
Mark Liversedge
c2ecf2cb9b Tidy Up Delta Series
.. simplified acceleration calculation to convert to m/s before calculation

.. removed distribution for deltas as they were HUGE and introduced a
   terrible performance degradation where aggregation took >30s for a
   ride set that previously took <5s.
2014-02-26 09:18:44 +00:00
Mark Liversedge
06b3c53bb9 Delta Watts, Torque, Cadence and HR
.. Following on from the recent update to add acceleration
   this update adds other derived data series based upon the
   rate of change.

.. Added to the ride plot and the CP plot.

Not sure of the overall utility of these updates but bear in
mind that they are targetting sprinting and track users and
analysis.

As well as the positive side of this (development of power
cadence etc) we also want to think about and collect data
on fatigue rate (possibly only power and torque)
- fatigue over time
- fatigue over pedal stroke
2014-02-25 18:44:53 +00:00
Mark Liversedge
747e1a7f39 Merge pull request #810 from stigbd/master
Made the fault handling in TPDownload a little more user friendly
2014-02-25 14:05:04 +00:00
Stig B. Dørmænen
33bc55235e Made the fault handling in TPDownload a little more user friendly
If something goes wrong, we try to display the fault message to the
user.
2014-02-25 14:23:37 +01:00
alexdelli
18c09e2162 Added Support for Elite Supercrono PowerMag 2014-02-22 19:50:30 -05:00
Mark Liversedge
9409f37233 Fixup CP interval plot
.. w/kg and accel were a mess and the code didn't honour
   decimal places properly.
2014-02-22 15:12:52 +00:00
Mark Liversedge
1522c4cacb Acceleration is m/s/s
.. so don't apply metric to imperial conversion and don't
   label it as km/s !
2014-02-22 13:45:01 +00:00
Mark Liversedge
884b90783c 3 minutes of acceleration bests is enough
.. don't need anything beyond that!
2014-02-22 13:00:51 +00:00
Mark Liversedge
7ffb6ef0d0 Add Acceleration to CP curve
.. and fixup related bugs in ridefilecache
2014-02-22 12:31:22 +00:00
Mark Liversedge
73f4e29513 Add Acceleration to the RideFileCache
.. so we can chart distribution and cp curve for it
2014-02-21 23:20:35 +00:00
Mark Liversedge
78301a77a5 Invisible handles on AllPlot
.. setPalette made no difference on Linux but did on Mac
   so reverting it out of AllPlot.h
2014-02-21 21:09:16 +00:00
Mark Liversedge
cab30f5bcc Add Acceleration Data Series
.. to ride plot only at this point, but will add to
   CP curve etc later

.. will also need to add rate of change for HR, Cadence
   Power as well too.
2014-02-21 20:04:07 +00:00
Mark Liversedge
94c93cf56b AllPlot Zooming Cosmetics
.. slider removed as it was ugly

.. handles are placed on the same side as the axis
   being manipulated, since its irritating to click
   on an axis then have to move mouse to the other
   side of the chart
2014-02-21 10:40:28 +00:00
Mark Liversedge
aeb7404b05 Scale Y-Axis on Ride Plot
.. When you click on the axis to isolate it a spanslider
   appears to let you manually adjust the axis.

.. it looks naff .. but we can tidy that up separately
2014-02-20 23:21:33 +00:00
Mark Liversedge
af4576237f Zone Array is a count not time
.. Fix polarised zones being ZERO when recIntSecs is
   sub-second (e.g. 0.5s with an SRM).

.. the polarised zones were being updated to hold time
   rather than a count of samples. This was fine when
   recIntSecs is 1s but a problem  when it was 0.5
   .. because is is an integer!
2014-02-20 11:51:50 +00:00
Mark Liversedge
fb70e89f33 Compare Intervals now Compare Rides and Intervals
.. changed the title of the compare pane to reflect the
   fact you can drop rides or intervals and compare both.
2014-02-20 09:48:31 +00:00
Mark Liversedge
17965cde85 Allow drag and drop ride for compare
.. drag and drop a ride into the compare pane to get
   the entire ride rather than an interval.
2014-02-19 21:16:18 +00:00
Mark Liversedge
f17a548357 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2014-02-18 00:15:23 +00:00
Mark Liversedge
d3bc1e522c Polarised Adjust Z2 to 85-100% of CP
.. seems to be a consensus.
2014-02-18 00:14:25 +00:00
Mark Liversedge
31efa4136c QT5.2 Remove VLC Dependency
.. if you are building with QT5.2.1 or higher we are no
   longer going to use VLC for video playback.

.. the QT Multimedia module seems to finally have made
   the grade and works as advertised on Linux and Windows

.. FOR NOW we will continue to use QTKit on Mac but that
   may also change soon.

This is to enable overlays -- placing the video behind the
charts etc.
2014-02-17 11:58:38 +00:00
Mark Liversedge
1ce6bae1c6 Tone down the toolbar shading
.. on QT 5.2.1
2014-02-15 15:15:20 +00:00
Mark Liversedge
ca13f26d6e Add Data Labels to Histogram Zones
.. when plotting in zones its helpful to have
   data labels to show the percentage or
   absolute values each bar represents rather
   than having to hover over it.
2014-02-15 14:49:17 +00:00
Mark Liversedge
1ed0fef552 Fixup polarised zones for compare mode
.. the new option to show in polarised zones instead of
   the user defined zones now extended so it works when
   comparing date range / intervals.
2014-02-15 11:15:29 +00:00
Mark Liversedge
bd29aa4e69 Fix W' work metric
.. the calculation assumed 1s recording (or was just wrong)
   joules are now calculated properly, this is especially
   important for SRM recordings of 0.5s samples
2014-02-15 00:09:45 +00:00
Mark Liversedge
c0dca04bd8 Limit the CP autosolve for W'bal
.. if its waaaay off then don't try to autosolve for
   CP .. instead just warn that W' is probably set
   incorrectly.
2014-02-14 20:19:56 +00:00
Mark Liversedge
308a1abe8d Fix with zero for polarised zones
.. the with zero option didn't work with polarised zones
   and there was a silly bug with the settings being applied
   after the setData() call which mean't they were ignored!
2014-02-14 19:00:46 +00:00
Mark Liversedge
aa43681b21 Histogram Polarized Zone Option
.. now can show in zones but using the polarised zones
   rather than user defined zones.

.. we may need to revisit this since it uses zone 2 rather
   than estimate LT1 from CP.

NOTE: The compare mode needs updating to support this option.
2014-02-13 22:26:02 +00:00
Mark Liversedge
39523e4cb1 Ride Tab Grab focus on startup
.. it irritated me that the search box always had focus on launch
2014-02-13 13:24:10 +00:00
Mark Liversedge
bcefc9d716 More UnifiedTitleToolbar Fixups
.. fix preferences dialog toolbar
.. dodgy stylesheet fixed in MainWindow
2014-02-13 12:11:45 +00:00
Mark Liversedge
3b603cf412 Fix flicker on show/hide toolbar/tabbar 2014-02-13 11:06:31 +00:00
Mark Liversedge
4f0fbaa385 Enable Hide Toolbar for QT5.2.1
.. since its not a real unified toolbar
2014-02-13 10:59:24 +00:00
Mark Liversedge
0e0881b1db Fixup Qt5.2.1 Unified Toolbar Cosmetics
.. just needed to use the right linear gradient.
2014-02-13 10:13:10 +00:00
Mark Liversedge
74da15c338 Qt 5.2.1 Unified Toolbar Cosmetic
.. add a separator line between unified toolbar and main widget
2014-02-13 09:50:21 +00:00
Mark Liversedge
df486ef42a QT5.2.1 Unified Title ToolBar Update
.. if you build with qt 5.2.1 then the unified title and toolbar
   is back, but its a hack to just change the gradient and use a
   standard toolbar .. so we do that, but make the colours match.
2014-02-12 19:30:55 +00:00
Mark Liversedge
02c89c6a73 Fix the labels in the ride plot in QT5
.. applying the same fix that Jaime found for the erg file plot
   to the ride plot in QT5
2014-02-12 11:34:37 +00:00
Mark Liversedge
c44177366b QwtPicker SEGV possibly on missing axis
.. the series plot has no yLeft axis yet the plot picker
   is always attached to it.

.. Since we do ALWAYS have a yLeft,2 axis for the highlighter
   I've attached the picker to that instead.

.. This should hopefully stop the SEGV in qwtplotpicker::updateDisplay()

.. Will watch and monitor
2014-02-11 21:29:12 +00:00
Mark Liversedge
5c4d25407b WKO+ Interval Markers
Rather than skip over the 'standard' interval markers because they
have such verbose names we now plot the vertical marker only.

This is to indicate there is an interval at a particular point to
signpost to the user that they can hover over this point to get an
interval summary.
2014-02-11 18:16:34 +00:00
Mark Liversedge
d6cf45a2d9 Ignore entire ride interval on hover highlight
When hovering over a ride if there is an interval that defines
the entire ride (typical if coming in from WKO+) then don't
hover highlight it, since it is distracting and adds no value.
2014-02-11 17:29:38 +00:00
Mark Liversedge
c799d987c9 Ride Plot Highlight Interval on Hover
.. As you mouse over the ride plot it will now highlight
   the shortest interval that that point is within.

.. If an interval has been selected in the sidebar it will
   refrain from hover highlighting as it is distracting

.. Also fixed up the way the highlight curve works so it
   has its own axis and works regardless of the data series
   selected.
2014-02-10 19:24:04 +00:00
Mark Liversedge
f059a396bd Merge pull request #792 from jjofre/master
Fixes issue #791 - Create new workout Workout Wizard show improperly displayed BikeScore trademark
2014-02-10 18:56:28 +00:00
Jaime Jofre
fc7b158074 Fixes issue #791 2014-02-09 20:32:14 -05:00
Mark Liversedge
c549c30267 Optimise out WPrime in AllPlot
.. it was erroneously being computed in AllPlot even
   when it wasn't selected on the plot
2014-02-08 18:54:50 +00:00
Mark Liversedge
1642223af7 Ride Plot Isolate Curve Fixup for Compare Mode
.. a few SEGVs when restoring state to a plot that has
   been reploted / curves deleted or added etc.
2014-02-08 13:31:50 +00:00
Mark Liversedge
7faf72d95c Reference Lines only when Plotting Power
.. the stack series plots allowed reference lines to be added
   on charts that didn't actually plot power data
2014-02-08 12:28:16 +00:00
Mark Liversedge
e1fe0af967 Ride Plot Isolate Curve Fixup
.. reset isolation when resetting curves etc

.. added a visual cue by dulling the axis scales to grey
   when isolation is active -- to let the user see what
   happened when they moused over an axis.
2014-02-08 12:10:24 +00:00
Damien
276ee96666 AllPlot Isolate IntervalCurve (HeadWind, Power Balance) 2014-02-08 09:37:08 +01:00
Mark Liversedge
8a38ff14ec Ride plot SEGV on reference lines
.. we SEGV when they are removed and we use the new
   'isolate' curve mechanism to hide/show curves

.. also now keep a track of the reference lines in the
   CurveColors class
2014-02-07 19:19:19 +00:00
Mark Liversedge
47376f5f2d Ride Plot Isolate curve on click
.. we now isolate a curve temporarily with a click on the axis
   so you can mouse over / look at the curve on its own

.. it would be good to also 'dull' the other curves and their
   axis labels so we have a little context .. will look at that
   next .. it might not be so 'clean' though.
2014-02-07 12:22:22 +00:00
Mark Liversedge
f65503087d AllPlot Series Stack Sizes
.. now set to the user preference when a ride is selectred where
   previously it would set to 200px.
2014-02-06 23:32:04 +00:00
Mark Liversedge
8f4af03619 AllPlot Isolate on Axis Hover
.. less jarring and useful when setting a reference line
   for power as it isolates the power series.
2014-02-06 20:22:37 +00:00
Mark Liversedge
ca2ef8e4a8 AllPlot isolate curve on mouse over
.. disabled the effect as its NASTY and flickery but saving the
   code anyway as we might do it by a mouse over the legend ??
2014-02-06 19:16:07 +00:00
Mark Liversedge
9b7482bd14 LTM Compare Fixup Tooltip
.. now shows a tooltip on the stack charts so will also
   fix normal mode stacked too.
2014-02-06 16:33:02 +00:00
Mark Liversedge
dcf5cd58f2 LTM Compare Fixup Markers
.. show event and season markers on the compare plot
   helps to provide context against the week/month offsets

.. also fixed up how bars are lined up and that each plot
   in the compare stack has the same x-axis
2014-02-06 15:52:47 +00:00
Mark Liversedge
8390af9d09 LTM Compare Fixup legend
.. always hide the meaningless legends for trend, outlier
   and best curves since they are the same color as the
   curves already listed in the legend.

We should apply this to the normal view too.
2014-02-06 12:52:23 +00:00
Mark Liversedge
68f06989e2 Update Default Trend View
.. the trend view layout default has been updated to reflect
   recent updates to the capabilities of the charts, notably;

   * Data Table to summarise recent key markers / indicators
   * Data Labels on charts where appropriate
   * Color scheme slightly altered to plot more appropriately
     when in compare mode (less contrast, less vibrant palette).
2014-02-06 11:25:33 +00:00
Mark Liversedge
d9d540f32e Compare mode for LTM
You can now compare seasons / date ranges across or between
athletes on the LTM charts.

This is only shown on the stack chart as we need one chart
per data series - in a similar vein to the AllPlot chart.

There are some tidy ups left to do over the next few days;

- Data table needs updating to support compare mode
- Event markers need to be shown and in the right color
- PMC curve data is slow, needs some kind of optimisation
- The tooltip is missing and needs to be put back
- Ensure the new stack frame looks correct when using a
  dark plot background (or anything other than white)
- Consider how to handle zooming when there is only one
  data series and hence only one chart for compare
2014-02-05 20:40:24 +00:00
Mark Liversedge
1265b9ebeb Merge pull request #787 from jjofre/master
Fix x-axis missing label issues with Qt 5
2014-02-05 18:29:14 +00:00
Jaime Jofre
8dc780db2e Fix x-axis missing label issues with Qt 5 (https://github.com/GoldenCheetah/GoldenCheetah/issues/750) 2014-02-05 13:19:16 -05:00
Mark Liversedge
4bfd117b83 Fix shading zorder
.. so power shading doesn't hide altitude

Fixes #772
2014-02-03 20:18:09 +00:00
Mark Liversedge
8cb050c6eb Small circle topN
.. when no symbol chosen (instead of a hideous
   great rectangle, yuck).
2014-02-03 19:37:38 +00:00
Mark Liversedge
571607cc2f LTM Stack Zoom Slider
.. to adjust the size of the charts in stack mode.
2014-02-03 19:04:12 +00:00
Mark Liversedge
e2b2c76d89 LTM Stack refresh on first click of 'show stack' 2014-02-03 18:07:00 +00:00
Mark Liversedge
cc7e2e6760 LTM Stack Plot Mode
.. mostly in preparation for compatre date ranges
   on an LTM chart, but also for plotting lots of
   values at once without having too busy a chart.

NOTE: Need to sort out tooltips and optimising the
      refresh as well as making it possible for the
      user to set the plot height like in AllPlot.
2014-02-03 16:23:47 +00:00
Mark Liversedge
e071a7b1a6 LTM Data Table headings fixup
.. to use uname not name and also to avoid duplicating units
   when they are the same as the metric name (e.g. the metric
   'Relative Intensity' has units 'Relative Intensity').
2014-02-03 11:42:05 +00:00
Mark Liversedge
3f6af75aed Another attempt to fix SEGV in FitRideFile
.. when the file is zero length or the header is truncated.
2014-02-02 20:06:40 +00:00
Mark Liversedge
f14ce1224b Revert "Fix SEGV on bad file/header in FitRideFile"
This reverts commit c8e1f95114.
2014-02-02 14:55:49 +00:00
Mark Liversedge
9efd3da80c Tidy up y axis on ErgFilePlot
.. it was a bit messy and yRight 1+2 should have
   been hidden from view.
2014-02-02 13:58:03 +00:00
Mark Liversedge
1f2a735f82 Fix ErgFilePlot xBottom Axis
Fixes #750
2014-02-01 23:57:59 +00:00
Mark Liversedge
d72458819f LTM Data Table Fixups
.. fix PMC SEGV
.. fix for summary of NO data

Will now skip all zero values when summarising
by day, but not for week, month or year.

Fixes #782
2014-02-01 21:50:04 +00:00
Mark Liversedge
0816580bff Fix rrData signal error 2014-02-01 12:48:24 +00:00
Mark Liversedge
47195adf85 Labels for topN need a bit more spacing
.. because there is a big symbol too
2014-02-01 11:31:09 +00:00
Mark Liversedge
e836be2f4d LTM labels on topN
.. coz the first thing you tend to do is hover over the
   point to see what the value is anyway!
2014-02-01 11:22:15 +00:00
Mark Liversedge
b6076decb1 Fix Data Label placement of last point
.. the if/else block was never called for the last point on a
   curve due to a logic error.
2014-01-31 22:55:44 +00:00
Mark Liversedge
fd78e6ddff Fix SEGV on data labels with 1 data point
.. references offset -1 in array
2014-01-31 19:44:55 +00:00
Mark Liversedge
af1a47b725 Diary View Defaults
.. default to summary of the month

.. so now group by week
2014-01-31 17:33:03 +00:00
Mark Liversedge
ab3888c385 LTM Labels Fixes
.. for bar chart
.. and set axis
2014-01-31 17:16:04 +00:00
Mark Liversedge
d1fd25fdd0 LTM Data Labels
.. option to show a label on chart points
2014-01-31 16:29:43 +00:00
Mark Liversedge
d611882464 Fix SEGV on bad file/header in FitRideFile 2014-01-30 20:57:43 +00:00
Mark Liversedge
a924d65110 LTM Data Table Fixups
.. lots of crashes fixed

.. AVOID data table for PMC for now as they are a mess and
   will fix tomorrow night
2014-01-30 00:03:21 +00:00
Mark Liversedge
ad86a739b0 LTM Data View
.. show the metric data as a table as well as a chart, its quite
   useful to configure a summary table of metrics.

Ironically, the ability to configure the summary page in WKO+ was
one of the things that pissed me off and started me down the road
of extracting data from .wko files.  I then found the data I wanted
wasn't even in the files and started developing for GoldenCheetah
         .. the rest, as they say, is history.
2014-01-29 16:48:50 +00:00
Mark Liversedge
0f62d66faf Add rrData signal in ANT and Robot
.. to help development of an experimental HRV tool.
2014-01-29 10:30:22 +00:00
Mark Liversedge
2fb9f10245 W'bal decay set to 1hr, infinite not practical 2014-01-28 20:58:44 +00:00
Mark Liversedge
7c9a83058b W'bal decay to infinity
.. No more cutoff of the decay. Since we use threads its
   not such a big deal as before.

.. We now get a full, smooth decay till the end of the ride
   which was much more noticeable when predicting W'bal for
   a workout, than it was for a ride.
2014-01-28 20:18:20 +00:00
Mark Liversedge
2877ddd6c5 Plot Predicted W'bal in Train mode
.. only plots predicted W'bal for the workout but at least that
   means you can see if the workout is even possible.
2014-01-28 18:32:26 +00:00
Mark Liversedge
0df5bf8646 Fix delete SEGV
.. autodelete doesn't like detached items.
2014-01-27 15:30:47 +00:00
Mark Liversedge
4554ce58ac Update WPrime comment
.. to explain how we sped up the W'bal integral calculation
2014-01-26 20:15:20 +00:00
Mark Liversedge
12711685af Fix WPrime CP lookup SEGV
.. when zones or cp not set for the date in question

Fixes #774.
2014-01-26 16:22:00 +00:00
Mark Liversedge
131baee828 Potentiall fix crash on Pickers
.. track and delete plot pickers.
2014-01-26 15:08:26 +00:00
Mark Liversedge
562c35f70c Add W'bal chart to default setup
.. when new athletes created.
2014-01-26 13:31:39 +00:00
Mark Liversedge
a061a1741f Fix DIV0 SEGV
.. in WPrime, and also don't bother trying to autosolve
   CP when W'bal is negative if W' is not setup
2014-01-26 12:10:13 +00:00
Mark Liversedge
5d5f84acad W'bal use threads
.. to boost performance. Now will compute the integral
   in parallel and saves about 35% in elapsed time on a
   dual core processor.
2014-01-25 22:56:41 +00:00
Damien
5f1c36c167 FitRideFile: wrong copy-paste 2014-01-25 22:59:09 +01:00
Damien
39067e36da FitRideFile: We may need to add string support 2014-01-25 22:56:52 +01:00
Damien
0a1fe76217 FitRideFile: correct issue with unknown field type in fit file
fix #724
2014-01-25 22:36:52 +01:00
Mark Liversedge
c40c69a688 Less bounds checking on W'bal calculation
.. to save on computing cost the W'bal decay was only
   calculated to 20mins and also bounds checked to a
   decay of 0.1w, but of course, the decay is more like
   25 minutes and 0.1w * 1500 samples is a lot... so
   I've removed them.

.. the key optimisation is the way the decay is integrated
   and that is skipped for samples where W' exp is zero ..
   that optimisation reduces the amount of computing cost
   to 25% of doing it for all samples.
2014-01-24 18:36:43 +00:00
Mark Liversedge
8fd8cc1c48 W' Exp rename W' Expended
It was too oblique a name, could have mean't a few things...
2014-01-24 18:12:00 +00:00
Mark Liversedge
bf3c689ebf Red text in summary for W'bal below zero 2014-01-24 18:07:40 +00:00
Mark Liversedge
28db7b7a6c New Metric W' Exp
For maximum W' capacity expended i.e. Min W'bal
expressed as a percentage of W'.

So if W' is 20 kJ and W'bal is 2kJ then 18 kJ
have been expended, which when expressed as a
percentage of W' (18/20 %) would be;

Max W' Exp of 90%

I also cleaned up a few extra instances of WPrime
being created when calculatinf metrics which was
not a big deal for the Metric refresh but would make
interval metrics painful.
2014-01-24 17:27:45 +00:00
Mark Liversedge
7f32cbd35c WPrime don't crash on bad data
.. if duration is overly large we don't want to get some
   massive array, it will exhaust heap and cause a crash ..
   and it is likely to just be bad data.
2014-01-24 15:37:53 +00:00
Mark Liversedge
f4e3e901a5 WPrime interpolation fixup
.. don't be so keen to add zero values interpolating gaps
   in recording when the gap is less than 2 samples wide.

.. previously we were adding way too may zero values at
   subsecond intervals that caused an interpolated value
   returned by the spline to be /practically/ zero.
2014-01-24 11:53:13 +00:00
Mark Liversedge
1b338eb0df Fix WPrime spline starts from 0
.. offset needed to be a double not an int to ensure
   we handle recording gaps from powertap etc where
   it is not an whole number of seconds

.. Thanks for Armando Mastracci for highlighting this
   and providing a test file to recreate

Fixes #773
2014-01-24 10:33:57 +00:00
Mark Liversedge
d872ae8b1c Revert "ANT+ Don't write 5 blank bytes"
This reverts commit c0b38a193c.

It has introduced errors on Mac and Windows -- we need to better
understand why this is not the case on Linux and whay /exactly/
it is doing that helps on the other platforms.
2014-01-24 08:06:37 +00:00
Mark Liversedge
aeacf4ae3b Autosolve CP for Min W'bal +/- 3w
.. just speeding up the autosolve by only looking in increments
   of 3w, should speed up by a factor of 3 but will mean the result
   is correct to +/- 3w .. which given the W' is usually only right
   to +/- 2kJ should be about right.
2014-01-24 07:51:54 +00:00
Mark Liversedge
e1cffcf46e W' Work
.. don't rely on WPrime to compute it, its pretty simple
   to compute as long as CP is set

.. add to the summary totals so always there to compare
   against the total work
2014-01-23 17:55:41 +00:00
Mark Liversedge
4dbbabc1ba Fix W'bal calculation
.. the optimisation was a little eager and took out
   the integration step !

.. access to PCP is now hidden behind a function so
   it is only computed when neccessary.

.. the calculation is still significantly faster than
   the old one but not as instant as the non-integrating
   version (but then it wasn't working either!).
2014-01-23 16:30:53 +00:00
Mark Liversedge
a81c8ebdc8 Fix temperature curve
Cosmetic fixups to make sure temperature is visible
and the fill is honoured.
2014-01-23 11:42:00 +00:00
Mark Liversedge
bc95e3efbf Fix DIV/0 SEGV with WPrime 2014-01-23 08:49:35 +00:00
Mark Liversedge
4cda185dcf Minimum CP for W'bal going negative
.. on ride plot, when W'bal is plotted we put a mesage to say
   that CP is wrong, and autosolve for W'bal to zero.

.. this patch also optimises WPrime to make it a member of the
   ridefile class and this always available (even for intervals).

.. fixed a SEGV when computing metrics for intervals by shifting
   the timestamps to always start from zero.
2014-01-22 20:48:42 +00:00
Mark Liversedge
e2459b9f17 Enable use of Minimum W' bal in data filter 2014-01-21 18:07:33 +00:00
Mark Liversedge
3633c066fa Added W' expenditure metric
.. energy spent above CP
2014-01-20 20:33:33 +00:00
Mark Liversedge
d736eb80e7 Added W' Tau as a metric
.. so we can track and see if it correlates with anthing.
2014-01-20 19:54:00 +00:00
Mark Liversedge
5764b899e0 Add W'bal Metrics
Added;
- minimum W'bal == how deep did you go on the ride?
- max match == hardest sustained effort in KJ.

Fixes #760
2014-01-20 19:25:55 +00:00
Mark Liversedge
3e038b498c Optimise W' calculation
Instead of just reimplementing the spreadsheet we now
implement according to the original formulas as defined
in the W'bal paper.

This means there is no longer a 1200s limit to the decay
which was not part of the original paper.

We should be able to add some W'bal metrics now.
2014-01-20 18:47:03 +00:00
Mark Liversedge
d08ab8c991 Fix PMC LTM SEGV
.. cut and paste error!
2014-01-19 19:01:22 +00:00
Mark Liversedge
667f076839 Add more Suunto Ambit test rides 2014-01-19 12:36:27 +00:00
Mark Liversedge
afab19c1de Merge pull request #766 from Walibu/master
Using milliseconds for speed calculation, needed for Suunto Ambit gpx datafiles
2014-01-19 01:14:57 -08:00
Mark Liversedge
48b9d1a052 Histogram Golden Ratio for Zone Columns
.. taking what we did for compare mode and applying
   it to the normal zoned display.
2014-01-18 22:35:41 +00:00
Walter
a4829a827c using milliseconds for delta_t when calculating speed, supports Suunto Ambit gpx datafiles 2014-01-18 23:32:51 +01:00
Mark Liversedge
cd45f3ee52 Fix Histogram SEGV and Speed
.. SEGV caused by referencing data->isChecked when
   not in range mode

.. Speed plotting broken because line setting the
   array length in setData was accidentally deleted
2014-01-18 20:23:35 +00:00
Mark Liversedge
567c0ebcf6 Histogram Compare Metric
.. the last of the histogram updates to compare date ranges
   for distribution by metric (e.g. IF for rides)
2014-01-18 18:47:57 +00:00
Mark Liversedge
257b8d8ac0 Disable Metric Histogram Compare
.. to avoid errors until we implement
   histogram metric compare date range
2014-01-18 16:21:49 +00:00
Mark Liversedge
4f41933f00 Histogram Compare Date Ranges
.. for bests, not metrics on Histogram

Still need to fixup Histogram to plot metrics
in compare mode for date ranges.
2014-01-18 15:38:35 +00:00
Mark Liversedge
64c88f1675 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2014-01-17 20:21:44 +00:00
Mark Liversedge
d348ce6223 Merge pull request #737 from Tafkas/master
Add virtual power support for Tacx Blue Twist and Blue Motion trainers
2014-01-17 12:21:15 -08:00
Mark Liversedge
c7a6c0df8c Fixup Histogram Compare Zones
.. it was using the range from rideitem
2014-01-17 18:56:40 +00:00
Mark Liversedge
6dafb3b09c Fixup compare interval refresh
.. usual signals and refresh optimization and
   bugs (switch tabs + switch compare mode).
2014-01-17 18:10:34 +00:00
Mark Liversedge
b77fae7b92 HistogramWindow remove legend
.. for now, it causes a nasty refresh glitch.
2014-01-17 16:25:51 +00:00
Mark Liversedge
88b69904fe Golden Ratio for Grouped Bars
.. on the histogram charts when comparing multiple
   intervals we group using a golden ratio to make
   it easier to read.

.. this is less about the histogram and more about
   establishing the aesthetic in time for the LTM
   updates for compare date ranges.
2014-01-17 16:02:35 +00:00
Mark Liversedge
315b91dbca Compare RideFileCache Optimisation
.. need to only create when needed and also need to
   delete when done.
2014-01-17 11:42:34 +00:00
Mark Liversedge
79debf1679 Compare Pane Don't Add Metrics already there
.. distance and duration are default metrics on the
   summary, so we need to make sure we don't double
   up on the compare pane.
2014-01-17 10:30:05 +00:00
Mark Liversedge
36cb0e0eff Histogram Compare Fixup
.. remember we can plot for a season and recognise that
   when checking for isCompareIntervals in PowerHist.

.. fixes a SEGV when looking at a histogram in the trends
   view whilst compare intervals is active in ride view.
2014-01-16 22:55:04 +00:00
Mark Liversedge
acb8156dce Histogram Compare Axis Scaling Fixup
.. truncate the x-axis for small values

.. only set y-axis max for selected intervals
2014-01-16 21:27:45 +00:00
Mark Liversedge
87e62beb00 Histogram Window Interval Compare Mode
.. still needs tidying up for some combinations of show/hide
   tab switch and adjusting chart parameters but is 99% there

.. still need to apply the same compare update for when comparing
   seasons not intervals
2014-01-16 10:56:13 +00:00
Mark Liversedge
1552d79476 Refactor arrays out of PowerHist class
.. in preparation for updating for compare mode.
2014-01-15 13:01:56 +00:00
Mark Liversedge
3aa9ae6c55 CompareInterval ridefilecache
When an interval is added to the compare pane we now
compute the RideFileCache so it can be re-used in the
Histogram and CP charts without computing it each time.
2014-01-14 21:35:01 +00:00
Mark Liversedge
bfd3c24876 Fix sidebar resiziung bug
.. caused by CP plot.

.. have no idea /why/ this occurs, but fixed by commenting
   out the div scale for the CP plot (that isn't needed anyway)
2014-01-12 17:09:57 +00:00
Mark Liversedge
feab5826ff CP chart settings into tabs
.. there were too many settings on one page
   so split into tabs
2014-01-12 14:59:43 +00:00
Mark Liversedge
c1c2b0fa7e Fixup renaming of Views
.. missed in a few minor places.
2014-01-12 14:01:51 +00:00
Mark Liversedge
629081e1dd RideNavigator - activities become rides 2014-01-12 13:43:16 +00:00
Mark Liversedge
4ced2ca51d What's in a name ?
The 4 views have been shown to be confusing -- it is not clear
to new users what their purpose is, and hence how or why they
are different.

So in an effort to reduce the confusion I've renamed a few
things to be much more explicit and specific.

.. We embrace the fact we are a cycling program and use the term
   RIDES not ACTIVITIES for all files

.. HOME is confusing, renamed to TRENDS

.. the ANALYSIS view name is confusing, its all about ANALYSIS
   to renamed to RIDES

There will no doubt be areas that are not renamed properly we
can fix those when the arise.
2014-01-12 13:06:00 +00:00
Mark Liversedge
0cc28b1eb3 Compromise on import
.. signal when importing a relatively small number
   of items (less than 20)

.. don't signal when importing a lot of items (more
   than 20).
2014-01-11 10:55:23 +00:00
Mark Liversedge
73e3270076 ANT+ Don't write 5 blank bytes
.. it doesn't do anything except create errors
2014-01-11 10:25:37 +00:00
Mark Liversedge
3c73d6edd4 Fix Mass Import Memory Exhaustion
.. don't signal when adding a ride, which kicks off
   all manner of updates across the code, instead
   we let the metric refresh kick in at the end.

.. this is great for an initial load and mass import
   of large numbers of rides, but sucks for a small number
   of rides when maybe downloading

.. we could make the signalling dependent on the number of
   rides being imported, so small number still updates the
   CP charts etc.

THIS IS A TEMPORARY FIX TO THE MORE SIGNIFICANT PERFORMANCE
ISSUE -- BUT WE DO NEED TO CONSIDER THE ISSUE OF CHART UPDATES
2014-01-10 22:02:46 +00:00
Mark Liversedge
4a4ea57292 Fix WKO import - another optpad constant
.. amazingly there are still some constant values we have
   not seen before. This time from files provided by
   Patrick McNally.

.. optpad values we have seen now range from 0x8007 through
   0x801a and crucially with only one value missing 0x8008

.. its just a matter of time before we see one of those :)
2014-01-10 19:32:52 +00:00
Mark Liversedge
0432bed7f0 Don't auto open athlete that crashed
.. instead offer the cyclist menu
2014-01-09 22:02:54 +00:00
Mark Liversedge
994afe1952 UI Nits: Qt5 Toolbar color when inactive 2014-01-07 21:32:05 +00:00
Mark Liversedge
99d9d99d5b Forgot to increment the DB Schema! 2014-01-07 16:50:29 +00:00
Mark Liversedge
ae4910504e UI Nits: Prettify Mac Toolbar for QT5
.. colors match document mode tabbar.
2014-01-07 16:49:45 +00:00
Mark Liversedge
55d60fd22b UI Nits: Mac Athlete Tab Bar
.. now looks a bit more 'Mac-like'.
2014-01-07 16:24:36 +00:00
Mark Liversedge
188e9c1fb2 Fixed Estimated VO2MAX metric
.. to use latest ACSM formula.

.. see: http://blue.utb.edu/mbailey/handouts/pdf/MetCalnew.pdf
2014-01-07 16:20:23 +00:00
Mark Liversedge
33dbcef9a2 Hide empty series plots in compare mode
.. check the curves are empty!
2014-01-06 18:25:52 +00:00
Mark Liversedge
77b5723661 AllPlot Paint Zones in Compare Mode
.. we should actually paint a zoned background if
   power shade zones is selected, when in compare mode.

.. but /only/ for charts that have power on them!
2014-01-06 17:51:15 +00:00
Mark Liversedge
71da08446e Fix Ride plot zone shading for series stack
.. the setting wasn't being set/unset according to
   user preferences properly.
2014-01-06 17:01:43 +00:00
Mark Liversedge
ab400f82f2 UI Nits: Colorblind
.. tweaked color sequencing in compare to avoid using
   red/green as it should be avoided -- red/green color
   blindness is relatively common.

.. this is just a hack in the absence of a good algorithm
   to generate distinct hues automatically.
2014-01-06 14:02:24 +00:00
Mark Liversedge
440de245fb Fix compare by time / by distance bug
.. silly typo mean't allplot was being used as a refrence
   when generating plots instead of fullplot

.. this manifests itself as using the wrong plot for the
   'bydist' boolean -- this is fine, unless you switch
   between by time and by distance whilst in compare mode.
2014-01-06 12:59:51 +00:00
Mark Liversedge
ba9cecfa58 Sneak in for dev builds
.. full plot controls always visible in compare mode.
2014-01-05 18:03:46 +00:00
Damien
5756ed5902 ExtendedCriticalPower: Use version 5 2014-01-05 18:41:12 +01:00
Mark Liversedge
3e913df51e UI Nits: PfPv / QA refresh issues 2014-01-05 16:42:13 +00:00
Mark Liversedge
7d5f20ad96 PfPv Compare Nits
* clean up refresh when changing tabs etc
* update the quadrant % markers
2014-01-05 15:17:10 +00:00
Mark Liversedge
82d41b9a8b Fix 'Fix Tools' being called
.. I deleted the lines that actually call the data
   processor when I was refactoring MainWindow.

.. this must have been an accident as there is no
   possible reason for just deleting the code!

Fixes #747
2014-01-05 12:18:44 +00:00
Gareth Coco
6601ed540e Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2014-01-05 01:54:18 -05:00
Gareth Coco
4f1a4e8bc3 Update Fedora RPMs and install instructions
RPMs needed libsrmio installed which is not available.
Change to compile against a static build of libsrmio.
Changed install instructions to use "yum" so dependencies are installed.
2014-01-05 01:52:09 -05:00
Mark Liversedge
bb5d918494 Disable reference lines in compare mode
.. it has nowhere to save them.

.. we could reintroduce and save with a compare set
   when we have one of those!
2014-01-04 11:17:22 +00:00
Mark Liversedge
bb3bcd1e37 Fix allplot Compare mode refresh
.. if you selected a ride and viewed on allplot then
   changed tabs, entered compare mode then switched back
   to allplot the display didn't get refreshed.
2014-01-04 10:49:56 +00:00
Damien
b6400812b3 CpintPlot: hide contribution curves 2014-01-04 10:50:18 +01:00
Damien
0fdc73f657 PfPvPlot: Correct last commit 2014-01-04 10:48:56 +01:00
Damien
637e2dbff8 PfPvPlot: Fix Color for intervals 2014-01-04 10:34:15 +01:00
Damien
b6aa8d6e2c ExtendedCriticalPower: Add contribution curves eCP version 6 2014-01-04 00:46:39 +01:00
Damien
d6b99bb7c4 CriticalPowerWindow: small correction 2014-01-04 00:46:15 +01:00
Damien
801e0d1298 PfPvWindow: Add Compare Mode 2014-01-04 00:42:51 +01:00
Mark Liversedge
6af9921af2 Fixup ComparePane to derive xPower, NP et al
.. so they can be plotted alongside other data
   series in each chart.
2014-01-03 16:43:50 +00:00
Mark Liversedge
d35758d3e7 AllPlot Compare Mode
.. extending the interval compare to the allplot chart.
2014-01-03 14:59:20 +00:00
Mark Liversedge
d23944c507 Merge pull request #746 from jjofre/master
Should only auto refresh filters if we have Lucene configured to prevent...
2014-01-01 13:42:00 -08:00
Jaime Jofre
6abf8d8206 Should only auto refresh filters if we have Lucene configured to prevent core dump 2014-01-01 15:10:58 -05:00
Mark Liversedge
be1b6cd1af Include <QCheckBox> for QT5 2013-12-31 18:41:20 +00:00
Mark Liversedge
a20a2cdbd8 Small fix for Centile SEGV
Array bounds checking used a double which is susceptible
to rounding issues, or at least returning values a tiny
fraction over an integer that when converted add 1.

e.g. 10.000000001 -> 11 when converted to int.
2013-12-31 15:12:14 +00:00
Mark Liversedge
d2aa57546d CP honour Appearances setting for Linewidth
.. it should have been done a long time ago!
2013-12-31 14:57:39 +00:00
Mark Liversedge
b2bda0efe3 Use source context in CP compare mode
When comparing it is possible to compare across
athletes; e.g. their 2013 season vs my 2013 season --
which means we need to use the sourceContext for any
items when aggregating / fetching the data.
2013-12-31 14:21:10 +00:00
Mark Liversedge
6b036c21e3 More CP Fixups
Basically to distinguish between the four modes
and only show what you are asking for;

* rangemode + normal  - the currently highlighted season only
* rangemode + compare - the compare pane seasons only
* ridemode  + normal  - the current ride and left pane intervals only
* ridemode  + compare - the compare pane intervals only
2013-12-31 13:52:41 +00:00
Mark Liversedge
0e2c5766ef Fix Glitch for CP Compare Intervals
.. same as the normal interval display glitch.

That was caused by appending to an array that was
already resized .. making it double the size and
prepended with lot of zeroes!
2013-12-31 13:19:21 +00:00
Mark Liversedge
bd03df1c5c Compare Button Change to Red when on
.. better visual cues for red title, red scope etc
   to show all tied in to compare being ON.
2013-12-31 13:05:24 +00:00
Mark Liversedge
3903fb9e22 Fix SEGV on CP picker in Compare Mode
We still need to fix the CP chart picker and hover
to use the range bests when in compare mode.
2013-12-31 12:25:53 +00:00
Mark Liversedge
7220733f5e CP Plot Fixups
Fixed a few nits that have come to light over the last
few days as lots of new features were developed.

* Fixed interval glitch where first point is zero, caused by
  an off by one error in the original code

* Fixed interval creation which also had an off by one error
  that mean't 5s curve was only 4s long

* Made the shading under an interval optional, as it is a bit
  nasty and was there to hide the glitch in point 1 above

* Made the interval line solid, not dotted, as it looks much
  better that way -- especially now its used for compare mode

* Made the title red by implementing isCompare() when in
  compare mode.

* Fixed a crash on hover in season compare mode
2013-12-31 12:09:02 +00:00
Damien
33e5280c1f CpintPlot Compare Mode
you can now compare intervals or date ranges via the critical power window
2013-12-31 00:57:46 +01:00
Mark Liversedge
e97005f2a0 Fix compare pane sorting
.. sorts according to the expected format for each column
   but if in doubt assumes its numeric
2013-12-30 21:15:47 +00:00
Mark Liversedge
72fb4af7e5 Handle Compare Pane Sort
.. if the user sorts the compare pane contents by clicking
   the header the order they are stored is changed too.

NOTE: The table sort is broken since it is alpha not numeric!
      This needs to be fixed too.
2013-12-30 20:00:38 +00:00
Mark Liversedge
b150ab51a3 RideSummary Honours CheckBoxes
.. if intervals or date ranges are not checked in the
   compare pane then we shouldn't summarise them

.. also fixed up compare pane so first entry ie. what we
   are comparing to is always checked.
2013-12-30 19:06:33 +00:00
Mark Liversedge
dc39054152 Compare Seasons fixups
.. update the title

.. don't keep adding ride count to the total
   metrics to calculate

Need to work out what to do with;
* Temperature
* Athlete Bests
2013-12-30 17:52:35 +00:00
Mark Liversedge
1291e2c813 RideSummary Compare Mode
.. you can now compare intervals or date ranges via
   the ride summary window.
2013-12-30 17:08:17 +00:00
Mark Liversedge
b0a39d5186 Compare Mode Connected Up
.. Connected the compare mode on/off switch in the
   compare pane to Context to notify charts

.. the scope bar and chart painting now highlight in
   red when compare more is active and supported by
   a particular chart.

.. each chart must implement isCompare() to return
   true or false if it is supporting compare mode.

We /still/ do not have a mechanism for clearing or
reordering items in the compare pane, nor a mechanism
for choosing 'delta' compare (i.e. baseline all compares
to first item in the list).
2013-12-30 00:18:41 +00:00
Damien
642d990ec7 MergeActivityWizard: don't crash if no data to merge 2013-12-30 00:12:42 +01:00
Mark Liversedge
5822ff2ee8 UI Nits: Fusion Style on QT5 only
.. improves things somewhat on Windows.
2013-12-29 21:29:11 +00:00
Mark Liversedge
e414e3c698 Checkpoint ComparePane now toggles off/on
.. added a button to switch compare on and off.
2013-12-29 19:47:36 +00:00
Mark Liversedge
cb499e1a21 Fix SEGV on date range compare pane
.. when click color or checkbox for a season.
2013-12-29 17:04:46 +00:00
Mark Liversedge
00c69f3517 UI Nits: Mac and QT5 Toolbar
Fixed up to make the toolbar on a build on QT5 look a little
more like one on QT4 where they still have unified toolbar
and title support.

We should look at managing via the native NSToolbar in the
near future since Digia have made it clear that they are not
keen to reintroduce unified toolbars in QT5.
2013-12-29 14:49:18 +00:00
Mark Liversedge
8b3e481f49 DateRange Compare Pane
.. 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).
2013-12-29 13:00:46 +00:00
Mark Liversedge
d617131cdf Fix Season Encoding for drag/drop
.. should be ok to drag and drop a standard
   date range as well as a season definition

.. pass across the start, end etc to avoid having
   to dereference from the source context
2013-12-29 10:20:57 +00:00
Mark Liversedge
93d0ef0651 ComparePane Qt5 fixups 2013-12-28 23:17:17 +00:00
Damien
ebdd8d3a79 ExtendedCriticalPower: Add code for demo curves 2013-12-28 23:56:02 +01:00
Damien
471ef3c5d3 CPintPlot: Add centile mode plot for selected ride 2013-12-28 23:56:02 +01:00
Mark Liversedge
a8846b1464 UI Nits: Interval Compare Pane
.. on Mac tidied up and also fixed up the way the
   table is resized to contents -- to do it AFTER
   the contents are set (!)
2013-12-28 22:11:21 +00:00
Mark Liversedge
d461551c41 Interval Compare Pane
Now allows you to add intervals and select them and
change colors they will use.

It will maintain the data as a CompareInterval which
also includes a RideFile representation of the interval.
This is stored in Context in a QList as compareIntervals
and can therefore be re-used across all charts.

We now need to think about putting some widgets onto the
Compare 'bar' for turning compare mode on and off and
deleting / reordering / clearing items.
2013-12-28 21:24:52 +00:00
Mark Liversedge
f8bcef4f91 Drag onto athlete tab to switch tabs
.. this allows us to drag and drop between athletes or
   to switch athlete if dropping from outside of GC.

.. also added context to the mime data so the compare pane
   will know where the dragged object has come from (ie. it
   may be from a different athlete).
2013-12-28 10:58:32 +00:00
Mark Liversedge
631faa6115 ComparePane: setDropAction on drop event
.. so it can be accepted and the data is not wiped
   or removed in the source treewidget.
2013-12-28 08:21:51 +00:00
Gareth Coco
bbd81ba714 Update Makefile 2013-12-27 15:36:08 -05:00
Mark Liversedge
cd1fe6a9ef Increase Starting LTS limits
.. from 100 to 300

Fixes #739
2013-12-27 14:20:49 +00:00
Mark Liversedge
2643ffb29a Mac MainWindow Crash Fixes
* refresh popup resize mainwindow crash
* tabbar button crash coz on left not right on Mac
2013-12-27 13:48:02 +00:00
Mark Liversedge
130a0caf8b Add Close Button to Athlete Tab
.. so you can close athletes easily.
2013-12-27 13:23:57 +00:00
Mark Liversedge
d49cd0dee8 Refresh Popup on First Run
.. to give a visual cue as to what is happening, since it
   can feel like GC has 'hung' as it loads.

.. this is especially important now we open tabs in an
   existing mainwindow.

   The delay between clicking open and the tab appearring
   needs to have a visual indicator that something is
   actually happenning.
2013-12-27 12:14:05 +00:00
Mark Liversedge
cf5151659e Update SaveDialogs for Tabbed Athletes
.. the save dialogs all assumed the current tab
   and current context were relevant when checking
   for unsaved files etc, but this was INCORRECT.

.. when window is closed each tab is checked IN TURN
   so the context should have been passed (because the
   current tab/context is just one of the many to save)
2013-12-27 11:41:10 +00:00
Mark Liversedge
3d1c6a2e38 DocumentMode and UnifiedTitleAndToolbar
.. don't go together, so removing the document mode update.
2013-12-26 21:14:31 +00:00
Mark Liversedge
b0f5fcf83a Add <QFileDialog> to GoldenCheetah.cpp
.. for QT5
2013-12-26 20:53:31 +00:00
Damien
039f2b4a65 Export as PNG : hide menu button 2013-12-26 17:42:47 +01:00
Damien
1389f51a97 GcChartWindow: Add "export as PNG" in menu
fix #738
2013-12-26 17:34:38 +01:00
Damien
bad3ce6df3 AllPlot: Add secondary Scope to plot speed and headwind in the same together 2013-12-26 15:41:15 +01:00
Mark Liversedge
7bb0fd7513 Remove tabbar from context save/restore
.. when switching tabs -- as it makes no sense
   at all to hide/show tabbar as you switch tabs!
2013-12-26 11:00:32 +00:00
Mark Liversedge
65ae397a8e Show/Hide tabbar as needed
.. only needed when we have >1 tabs so lets hide and
   show it automatically.

.. also added a setting for remembering setting but it
   doesn't do anything as we auto hide/show.
2013-12-26 10:54:42 +00:00
Mark Liversedge
d88e61154e Tabbed Athlete Fixups
* showhideToolbar isn't available on a Mac
* used showhideToolbar for Tabbar (typo)
* setDocumentMode for tabbar on Mac (slightly better)
2013-12-26 09:18:57 +00:00
Mark Liversedge
234545ef2a Missing <QStackedWidget> in MainWindow.h
.. needed to build on QT5
2013-12-26 09:03:47 +00:00
Mark Liversedge
daf63f2dac MainWindow Refactor Part 5 of 5 - TABBED ATHLETES
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).
2013-12-26 01:03:32 +00:00
Damien
c11c90f621 AerobicDecoupling: Correct formula
fix #721
2013-12-26 01:13:28 +01:00
Damien
58fd2d9e53 AllPlot: Handle noTemp with no smooth
fix #634
2013-12-26 00:24:53 +01:00
Mark Liversedge
5a9b412fd0 oopsie on #ifdef
.. too Mac centric in last commit, forgot we might need to
   worry about other pesky operating systems.
2013-12-24 20:28:01 +00:00
Mark Liversedge
43aeae7399 RideNavigator no scrollbar on QT5
No need to adjust sizes to account for a scrollbar
on Mac in QT5, since the scrollbars are zero width.
2013-12-24 19:12:11 +00:00
Mark Liversedge
3a00ccf798 Fix compile error on stackZoomWidth
Gareth's build system baulked at the stackZoomWidth
class member defined as const in the class declaration.

Moved to a static member of AllPlotWindow.cpp instead.
2013-12-24 17:29:56 +00:00
Damien
0d21dda228 CPintPlot: Correct AxisScale for IntervalCurve (eg. HeadWind) 2013-12-24 15:33:58 +01:00
Mark Liversedge
af5d04705f Fixup Compare Drag-N-Drop
We have two new mime data types;

application/x-gc-intervals
application/x-gc-seasons

With packing routines into QMimeData declared
in IntervalTreeView and SeasonTreeView.

To get around an issue with overwrite mode on
drag and drop from the seasons / interval trees
we DO NOT ACCEPT the drop (even though we do
actually process the data).

All we need to do now is unpack the QMimeData in
ComparePane and then add the GUI elements to it etc.
2013-12-24 11:48:19 +00:00
Mark Liversedge
4dcbca01c0 Zoom to really large
.. because when we're comparing we'll need it.
2013-12-23 22:51:30 +00:00
Mark Liversedge
cd5f2b22a9 Fixup Stack View Zooming
.. it was a bit shit with controls you couldn't
   use, and when you did nothing happened.

.. now has a slider and 7 distinct settings for
   stacks from ok to large and 5-60 mins sections.

.. should be good enough for most users.
2013-12-23 17:21:50 +00:00
Mark Liversedge
437e06e5ff Fixup Stack By Series
Finish off the nits and missing pieces for the recent
update to enable plotting in a stack by data series;

* Now plots W' bal, LR Balance and headwind
* Stacks are now redrawn when settings change
* Interval marking is fixed
* Baseline is now set correctly for each plot
* Reference lines are plotted (on power plots only)
* Reference lines can be dragged
* Interval markers are not redrawn with the text
  only shown on first plot
2013-12-23 15:20:18 +00:00
Gareth Coco
190293fc98 Add Fedora 18/19 x86_64 RPMs for downloading 2013-12-23 07:38:56 -05:00
Mark Liversedge
df343e2e65 Move Cocoa release pool to main
.. because mainwindows come and go and we need to persist
   across them all.
2013-12-23 10:38:18 +00:00
Mark Liversedge
7610b6a221 Remove ScopeBar from MainWindow
.. moving view selection to center of toolbar.
2013-12-23 00:40:11 +00:00
Gareth Coco
cd1ca6f46f Update website for 3.0.1 release 2013-12-22 15:34:56 -05:00
Mark Liversedge
8be3315a8b Remove errant qDebug statements 2013-12-22 17:47:26 +00:00
Mark Liversedge
f9627039a0 AllPlot Stacked by Series
Extending the stack display to have a single plot for each
data series. This will be useful when comparing activities
and also makes it a bit easier to see the data when there
are lots of data series.

This is a checkpoint commit as I need to fixup some of the
series that have multiple curves and also reference lines
are not currently working.

But you can zoom using the fullplot and highlight intervals
etc.
2013-12-22 17:23:19 +00:00
Mark Liversedge
8f1c03e27e Add <QMessageBox> to ExtendedCriticalPower.cpp 2013-12-21 22:35:50 +00:00
Mark Liversedge
26a6196747 Revert "Fixup Mac toolbar for Qt5 and Qt4 build"
This reverts commit 20739ebb29.

Qt5 has a number of issues that cannot easily be resolved.

An alternative strategy of developing a custom cocoa control
for the mac toolbar is probably a better way forward.
2013-12-21 22:29:24 +00:00
Mark Liversedge
3878ee22ad Fixup Mac toolbar for Qt5 and Qt4 build
.. should be a bit better now.
2013-12-21 21:08:21 +00:00
Mark Liversedge
95be1360a8 Sync versions / upgrade script with v3.0 SP1
.. which was released today.
2013-12-21 18:40:37 +00:00
Mark Liversedge
2ef7714d14 Proper fix for autofilter refresh 2013-12-21 17:47:11 +00:00
Mark Liversedge
2243b227f0 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2013-12-21 17:05:57 +00:00
Mark Liversedge
171c65b07d Remove qdebug in ColumnChooser
.. was accidentally committed a long time ago!
2013-12-21 17:05:24 +00:00
Damien
5f68c0c6d4 ExtendedCriticalPower: Change default 2013-12-21 16:45:19 +00:00
Mark Liversedge
6b72d08672 refresh autofilters on ride update
.. when metricDB is updated refresh the autofilters
   to reflect the values available.
2013-12-21 16:37:30 +00:00
Damien
60ba7655a2 ExtendedCriticalPower: Change default 2013-12-21 14:15:38 +01:00
Damien
b83f1c5721 CPintPlot: Add extendedCP in model combo 2013-12-21 00:25:19 +01:00
Mark Liversedge
a6e5fe9db5 Check CPcurve is non-null before hide/show 2013-12-20 21:07:18 +00:00
Mark Liversedge
895982e9f8 Only show 1 model curve
.. either extended or standard models shown.
2013-12-20 20:22:11 +00:00
Mark Liversedge
1d131db2a6 Cosmetics tidy up chart settings 2013-12-20 20:14:30 +00:00
Mark Liversedge
1e76e51031 Fixup SEGV and layout error
.. minor fixups for new CP model code to initialise
   some vars to NULL and remove Qt runtime warnings
   about layouts.
2013-12-20 18:26:46 +00:00
Mark Liversedge
c5028e33c4 Autofilter
.. let the user choose metadata texts to filter
   by value in the sidebar.

Note there are issues;

1. the value lists are not updated automatically when
   rides are updated or imported and values are added
   or removed.

2. it only works with shorttext metadata fields, we might
   choose to add numeric etc later.

3. it would be nice to get an indication of how many
   activities contain the value and maybe even sort
   by count.
2013-12-20 17:48:49 +00:00
Damien
67a3d2ad29 ExtendedCriticalPower: Add Model for ExtendedCP
- One version of the model (Version 4.3)
2013-12-20 18:23:04 +01:00
Mark Liversedge
687963b8db LTM chart user selectable trend lines
.. now allows the user to select the type of trend
   line for a curve, only two options at present;

   * linear (linear regress)
   * quadratic (quadratic lsm)
2013-12-19 11:48:55 +00:00
Mark Liversedge
670286ac7d Accidentally comitted increase in trend points
..was experimenting with fewer and more points on the trend
  line and accidentally committed it alongside the changes
  to fix the LTM axis scale setting.
2013-12-18 21:15:26 +00:00
Mark Liversedge
8e767b9cf3 Fix LTM axis scale setting
.. dumb bug set all scales to same value!
2013-12-18 20:41:49 +00:00
Mark Liversedge
41978d8040 Add copyright and fix bomb character in LTMTrend2 2013-12-18 14:27:42 +00:00
Mark Liversedge
7c56fd723a Revert last commit
.. it wasn't a fencepost error!
2013-12-18 14:07:49 +00:00
Mark Liversedge
f40ec6cb6a Fencepost error in LTMTrend2
.. missed off the last data point each time!
2013-12-18 14:01:47 +00:00
Mark Liversedge
8e3ec70a30 Quadratic Least Squares Trend Line
Added a quadratic least squares trend line for the LTMplot
as the linear regression was generally too blunt.

This is a hack to get the code into the repo -- will know work
on refining the LTMPlot settings to enable users to specify
the kind of trend line they want.

The new trend line might also be useful for other curve fitting
functions (e.g. realtime virtual power curve, a peak power chart
by cadence/pedal speed).
2013-12-18 13:52:37 +00:00
Mark Liversedge
83bb659681 Fix 2d crash
Qwt 6.1 seems to delete objects when they are detached from
the plots by default, so we don't delete them after detach
any more in ScatterPlot.
2013-12-18 11:06:23 +00:00
Mark Liversedge
2383f8fbb2 New Metric Fatigue Index
Looks at the max and min (non-zero) power values and
uses the difference between them to calculate a fatigue
index as a percentage.

i.e.
FI = (maxP - minP) / maxP * 100.00;

This is really only useful for targetted intervals as for
most riding there will always be a period of time where
the rider coasts or takes it easy.

We may look to improve it by smoothing or comparing to the
average power instead of minimum power.
2013-12-18 11:00:48 +00:00
Christian Stade-Schuldt
47844aa868 added Tacx Blue Twist and Tacx Blue Motion to Device Wizard 2013-12-17 18:51:08 +01:00
Mark Liversedge
dbb9a668ec Fix Lucene searches in Home Sidebar
.. I hadn't finished that bit of the code before
   pushing. A bit of an oversight!
2013-12-17 16:39:46 +00:00
Mark Liversedge
6897e6167b Fix Season serialize cut-n-paste bug
.. that caused seasons to disappear!
2013-12-17 13:48:05 +00:00
Mark Liversedge
acfac6166d Fix LTM trend line
.. broken on All Dates selections.

It must be time to introduce a polynomial fit or somesuch
as the linear regress is a little simplistic for most cases.
2013-12-17 13:35:58 +00:00
Christian Stade-Schuldt
12d3d9d5fe Added virtual power support for Tacx Blue Motion trainer 2013-12-17 12:16:01 +01:00
Christian Stade-Schuldt
fc641d3248 Added virtual power support for Tacx Blue Twist trainer 2013-12-17 12:03:31 +01:00
Gareth Coco
3dc20bc4d6 Remove qwtconfig.pri 2013-12-16 21:04:21 -05:00
Gareth Coco
a0ad25e95c Move to qwtconfig.pri.in
Disable shared build (we need libqwt.a)
2013-12-16 21:02:00 -05:00
Mark Liversedge
b6fa36bc71 Merge pull request #736 from Tafkas/master
Updated Tacx Satori Virtual Power values
2013-12-16 11:11:13 -08:00
Mark Liversedge
8070e5f29c Batch Export remembers last format/dir
.. but will only default to the last used dir
   if it still exists.
2013-12-16 18:50:33 +00:00
Mark Liversedge
5a713b31ea Fix crash in select intervals in PfPvPlot
.. we delete the curves after they are detached which
   causes a SEGV as they are already deleted.
2013-12-16 18:16:15 +00:00
Mark Liversedge
eddfc888b8 LTM Plot honour plot background color
.. more of the same as recently updated similarly for
   CP, PfPv, Histogram, AllPlot etc
2013-12-15 23:28:18 +00:00
Mark Liversedge
d8c70a7924 QLineEdit in RideMetadata
.. to compile on Qt5 without Lucene (which contains the same header)
2013-12-15 20:30:21 +00:00
Mark Liversedge
3c92380af1 Fix 3d grid when users specify background colors 2013-12-15 19:17:02 +00:00
Mark Liversedge
18cce9a4ca Histogram Chart honour Plot Background Prefs
.. more of the same as done for AllPlot, CP, PfPv.
2013-12-15 18:42:04 +00:00
Mark Liversedge
7ef33cf813 PfPvPlot honour ride plot background
Similar to fixups to CP plot for user defined plot backgrounds
this update updates the PfPv plot to also re-use the user prefs
when setting axis / canvas and marker colors.
2013-12-15 18:23:22 +00:00
Mark Liversedge
2caf23ff34 QHeaderView in Athlete.h for Jaime. 2013-12-15 17:34:25 +00:00
Mark Liversedge
1a5aaae863 Fix Lucene Optional (again) !
The recent filter bar in home view was coded without taking
into account the fact that LUCENE is an optional build component.

This caused builds to fail when LUCENE wasn't installed.
2013-12-15 13:12:40 +00:00
Mark Liversedge
b7e3cf68c6 AllPlot filter points
.. dramatic speed up in repainting, most noticeable
   if you select different rides with the AllPlot
   visible (in tab mode).
2013-12-13 11:01:07 +00:00
Damien
23c33af1eb LTMPlot: fix show/hide legend 2013-12-12 23:40:24 +01:00
Damien
81c5c40aa5 CpintPlot: Log Axis for Qwt 6.1 for all Data Series 2013-12-12 07:42:00 +01:00
Damien
c8165b96a1 CpintPlot: Log Axis for Qwt 6.1 2013-12-12 00:08:02 +01:00
Mark Liversedge
b216b82ea2 Data Series not Channels
.. thats a term they use in WKO+ not GC !
2013-12-11 18:04:11 +00:00
Mark Liversedge
db825483b1 Fix xBottom lost in AllPlot
.. when you select or deselect a data series.
2013-12-11 18:02:19 +00:00
Mark Liversedge
04dcb8d187 QWT 6.1 canvas() revert and LTM ToolTip fixups
Reverted the update to the QWT 6.1 code to make QwtPlot::canvas()
return a QwtPlotCanvas -- it now returns  QWidget.

This means our local copy of Qwt is the same as the published version
so we should be able to stop maintaining our own copy when Uwe pushes
the multiaxis stuff with 6.2.

Also fixed the LTM tooltip - the zoomer has been removed.
2013-12-11 17:58:35 +00:00
Mark Liversedge
a399bea470 Revert "QT5 -- QWT 6.1 canvas fixup"
This reverts commit 54234ceca4.
2013-12-11 16:37:50 +00:00
Mark Liversedge
bc00f4d1b3 Fix AllPlot display x-axis 2013-12-11 15:53:46 +00:00
Mark Liversedge
8cde622f52 Fix LTM plot x-axis 2013-12-11 15:48:24 +00:00
Mark Liversedge
5b8c407539 Fix LTM chart axes
.. using QwtAxisId type instead of an int cured most ills.
2013-12-11 13:27:13 +00:00
Mark Liversedge
5070f244d8 Fix AllPlot Y-Axes
Now hide/show appropriately and are painted correctly.

There is still a problem with the x-axis disappearing
but this should be straight forward to resolve.
2013-12-11 12:44:14 +00:00
Christian Stade-Schuldt
0edcdc22c3 Updated Tacx Satori Virtual Power values 2013-12-11 10:08:04 +01:00
Mark Liversedge
c237378c3e Fix #if in VideoWindow
.. wrong logic in #if for Linux and Qt5 in both
   the header and source.
2013-12-11 06:52:40 +00:00
Mark Liversedge
38951ef38c Don't set frameworks in QWT
.. makes it possible to build the examples
.. but we still don't build them by default
2013-12-10 21:26:58 +00:00
Mark Liversedge
ec3278f19d QT5 -- Mac fixups for building with 4.8.4
.. missed off earlier commits.
2013-12-10 20:21:32 +00:00
Mark Liversedge
ea281ba057 REGRESS: Remove translateMetrics() from LTMPlot
This is a regression to remove the metric translation
functionality from LTMPlot.

WE WILL REINTRODUCE BEFORE RELEASE!

It has been regressed because;

1. It crashes on QT5 with Win32

2. It has significant performance penalties;

   It really should not instantiate an LTMTool object
   (Ale did discuss this with me and I gave it the go
   ahead, so my bad).

3. It should be executed on applySettings() not on
   each refreshPlot().

4. It has a bug regarding uunits being lost and breaking
   sharing of a common axis.
2013-12-10 19:54:00 +00:00
Mark Liversedge
2bf20369d9 Model reset fixup to use begin/endResetModel
Which is how you are supposed to reset a model and works
on QT 4 as well as QT 5.
2013-12-10 18:08:59 +00:00
Mark Liversedge
8f0231c12d QT5 -- Fix model reset on 4.8.x
Using resetInternalData() does not do the same thing
in 4.8 models as 5.2.
2013-12-10 17:26:05 +00:00
Mark Liversedge
37b1e0e215 QT5 -- Enable build on 4.8.4 -OR- 5.2.0
New strategy to enable build on QT5 or QT4.8 is quite
simple to enact as most of the fixes for QT5 can be
applied to earlier releases.

This patch fixes up some of the special cases for QT5 so
they will continue to build on earlier releases.
2013-12-10 16:07:41 +00:00
Mark Liversedge
e32ac44785 QT5 -- Windows Build Fixups
Fix errors on Win32

* FLOAT reserved word from yacc grammars
* toAscii() becomes toLatin1()
* ->winId() returns int (BROKEN)
2013-12-10 13:56:32 +00:00
Mark Liversedge
19455cb92a Cut and paste-paste error in --help output 2013-12-10 00:09:18 +00:00
Mark Liversedge
cbb5889113 QT5 -- Fixups for Mac build
Remember to make distclean too.

Mac currently looks terrible -- the unified toolbar
is gone and its all a bit of a mess!
2013-12-09 23:00:21 +00:00
Mark Liversedge
a876c8da62 QT5 -- Part 3 of 3
Fixup crashes and major issues created by porting
to QT5. These have included;

* Fix CP plot log scale
* AllPlot axes and tooltip
* DBAccess prepare/bind bug
* LTMSettings crash
* LTMWindow zoomer/picker crash
* LTMPlot axes hack

There are still issues remaining but we can start
working through them at leisure -- the product now
builds and runs.
2013-12-09 21:21:51 +00:00
Mark Liversedge
f7854ffc24 QT5 -- 2 of 3
Fixup all the GC code to use the QWT 6.1 code.
It needed canvas() to be patched to return a
QwtPlotCanvas and not a QWidget.

We could probably get round that with a cast.

When we switch to QWT 6.2 with the multiaxis
support formally baked in we can fix the code
as needed.

Now compiles and links without issues.
2013-12-09 12:26:55 +00:00
Mark Liversedge
5a89eee24c QT5 -- QWT 6.1 canvas fixup 2013-12-09 12:26:49 +00:00
Mark Liversedge
5abf8776f1 QT5 -- Add Qwt 6.1-multiaxes 2013-12-09 10:02:47 +00:00
Mark Liversedge
03d3afdf53 QT5 -- remove old qwt 2013-12-09 10:00:50 +00:00
Mark Liversedge
82baf90131 QT5 -- 1 of 3
Porting the codebase to QT 5 (5.2) to get the
latest bug fixes, performance and improved platform
support.

This first part is to fixup the codebase to compile
on Qt 5, but some aspects have been broken (video).

The second part is to migrate from Qwt 6.0.1 to the
latest Qwt for multiaxis support.

The third part will be to fixup any platform specific
issues or issues identified at runtime.
2013-12-09 09:57:13 +00:00
Mark Liversedge
2cadf4a374 Fix up CP markers
.. to use the right colors.
2013-12-07 20:01:08 +00:00
Mark Liversedge
d7b1829bfa Plot Background and CP chart
If you change the plot background to black then the
CP curve is always in black too so becomes invisible.

Added a customisable color for the CP curve and fixed
up a few redraw issues in CP and Ride plot when you
change the colors.

Still need to fixup the other charts, but will do over
time. I suspect almost noone changes the plot colors from
the default values.
2013-12-07 19:42:51 +00:00
Mark Liversedge
a26a035ced Introduce SB Lowpoint
Let the user define the lowpoint for stress balance -- this is
so we can highlight or alert when they go below.

From a post-hoc perspective it is useful for identifying where
they went too low, but also for planning it helps to stop
planning to fail.

Will update the LTM chart to highlight it alongside SB metrics.
2013-12-07 10:28:41 +00:00
Mark Liversedge
1282bb5b8a Windowless border on metric refresh popup 2013-12-07 09:43:48 +00:00
Mark Liversedge
63032d9688 Fix find intervals no gps/speed bug
.. flawed logic mean't that findBests didn't work
   when distance is not present via speed or gps.
2013-12-06 22:50:33 +00:00
Mark Liversedge
e3d7a873f2 Cache StressCalculator in LTMPlot
A bit of a compromise since really we should move the
stress calculators to the Athlete class and reuse when
no filtering is applied.

This code fix just means the SC is not recalculated for
each of the individual curves (LTS, STS etc) and pretty
much halves (or better) the time taken to refresh the
LTMPlot.

For those with very few rides (<500) this isn't much of
an issue, but for some with lots (2000 or more) it can
be quite tedious.
2013-12-06 19:32:41 +00:00
Mark Liversedge
7915feea60 Bests offset error
.. when plotting 1s best aka Max Power, the code was using
   the wrong offset (out by one) and returning 0w.
2013-12-06 17:07:17 +00:00
Mark Liversedge
974fa777fd Prefs pane sizing to font size
.. to stop it being too small when you select a larger font.
2013-12-06 13:01:29 +00:00
Mark Liversedge
00360afb10 Fix sidebar sizing bugs
.. part of the refactor of mainwindow saw the sidebar
   sizes independently set and therefore using different
   settings.

.. we now use the old setting if first time through, or
   if first time run for athlete set a sensible default.
2013-12-05 18:23:53 +00:00
Mark Liversedge
e1f7bb78ac Fix LTM title filter color bug
.. the title of an LTM chart doesn't change when you
   select or deselect a filter in the sidebar.
2013-12-05 17:22:53 +00:00
Mark Liversedge
b19ed09a9e Fix LC_LOCALE on Xcode 5
by including "locale.h".

Fixes #734
2013-12-05 16:26:29 +00:00
Mark Liversedge
0a215562d5 Add Filter Sidebar
To allow selection of filters aka Named Searches when
plotting charts.

Fixes #732
2013-12-05 14:30:42 +00:00
Mark Liversedge
4b5ed2188c Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2013-12-03 16:59:35 +01:00
Mark Liversedge
fd3e4dfec1 Show reference lines on CP chart
.. but only when showing a 'power' data series
   such as NP, xPower, aPower etc.
2013-12-03 16:58:50 +01:00
Mark Liversedge
88c8eeba5b Merge pull request #731 from dresco/ANT
Don't reset ANT channel settings on search timeout
2013-12-02 22:08:37 -08:00
Jon Escombe
6c21c87a42 Don't reset ANT channel settings on search timeout
Wiping out these settings prevents a successful reconnection
of the device if it comes back into range

Fixes #514
2013-12-02 23:27:01 +00:00
Damien
adca720d62 FitRideFile: Correction for last Garmin firmware updates
In last Garmin firmware there is some (unknow) fields with multiples values

Fixes #724
2013-12-02 18:07:18 +01:00
Mark Liversedge
c700d7b3d9 Toolbar/Menu update when Compare Pane Show/Hide
.. if the compare pane is automatically shown or hidden
   due to the user dragging and dropping the menu and toolbar
   got out of sync with the status of the widget.
2013-12-02 17:48:48 +01:00
Mark Liversedge
6d791f84a8 Compare Pane Mechanics
.. compare pane now appears and disappears on both
   the analysis view and home view

.. it also is notified of drag/drop events and can
   accept the objects dropped

.. it is now time to write the widget for collecting
   and managing compare sets
2013-12-01 10:28:27 +00:00
Mark Liversedge
a683008109 Set GC_DEBUG for debug builds
.. when building a debug build of GC with CONFIG += debug
   then we define a macros GC_DEBUG.

.. main no longer redirects to goldencheetah.log if you have
   GC_DEBUG set, so developers will continue to see debug
   messages on the terminal output (for mac/linux only).

.. we could use the GC_DEBUG macros to allow debug messages
   to be switched on / off in the code in future
2013-12-01 09:40:32 +00:00
Mark Liversedge
f3450e92b7 Fix auto show/hide compare pane on drag/drop
.. now the compare pane will appear and disapear
   when the user drags and interval / season into
   the view.

By fixing the way we handle QDragLeaveEvents in the
code in TabView.h ViewSplitter.
2013-12-01 00:19:59 +01:00
Mark Liversedge
d668f39237 Auto show compare on drag interval
.. but its broken, needs fixing.
2013-11-30 22:19:38 +00:00
Mark Liversedge
d16b86ba68 Compare Show Animation
.. need to fix hide timeout animation but do that
   later tonight.
2013-11-29 07:20:35 +01:00
Mark Liversedge
c10b9c89c1 Compare Pane 'hpos' property
Introduce an hpos property on TabView::mainSplitter so we can use
an animation to make the compare pane slide up and down when
arriving and leaving.

Will add the animation shortly, just pushing to save updates.
2013-11-29 06:40:44 +01:00
Mark Liversedge
12822fa1c0 Fix events shown on LTM plots
Recent update to change the way the LTM configuration dialog
worked accidentally lost the events setting.

Show events is not being stored in the LTMsettings 'datastream'
but as a separate chart property -- but *is* stored internally in
the LTMSettings class.

it was being lost when the datastream is appled. This fix makes
sure the value is remembered and reapplied after the settings are
applied.
2013-11-28 22:54:37 +01:00
Mark Liversedge
a5ead14e94 Remove qDebug() from TabView.h 2013-11-28 20:34:27 +00:00
Mark Liversedge
b5ac7d0068 Basic Compare Pane Hide/Show
.. just committing before adding animation and the compare pane content.
2013-11-28 21:07:43 +01:00
Mark Liversedge
dab923ec9e Forgot message in compare pane mockup 2013-11-27 19:45:46 +01:00
Mark Liversedge
b0dafea5c7 Compare Pane Mockup
.. balsamiq mockup and png export
2013-11-27 19:42:01 +01:00
Mark Liversedge
e526fd4f94 Add GPS/Altitude alignment to Compare spec
.. we should make it possible to display interval
   data aligned via the altitude or gps data as well
   as via time/distance. This really only applies to
   the ride plot.
2013-11-26 11:56:35 +01:00
Mark Liversedge
a8cbfc2f15 Update Compare Document
.. to reflect feedback from Damien re compare sets

.. Also changed the compare pane to be view specific and
   shared across all charts in the view.
2013-11-25 09:02:45 +00:00
Mark Liversedge
d12b3fc6ec Compare button icon 2013-11-24 14:20:42 +00:00
Mark Liversedge
4d5b8d9cba Compare toolbar/menu option
Just added a toolbar button and menu to bring up the
compare pane, before adding it to the tab and view
classes.
2013-11-24 14:18:21 +00:00
Mark Liversedge
5c1e2b3809 Plot CP model for derived power series
.. not sure of the validity of applying the model
   to derived data series like xPower and aPower
   but it may provide some insight.
2013-11-23 21:08:50 +00:00
Mark Liversedge
4efb597f26 Fix CP defaults bug
.. set to 3600 not 360 (!)

.. updated intervals causing warnings when using values
   that were half baked. Now delays recalc() till all
   the parameter intervals are set.
2013-11-22 22:30:47 +00:00
Mark Liversedge
e7e6bdf968 Better CP model defaults
Improved defaults for CP model to derive CP
and W' from bests data.
2013-11-22 21:59:29 +00:00
Mark Liversedge
61a6116fa5 Fencepost error on CP intervals
.. caused the meanmax curve for an interval to be
   recomputed every time even though we'd gone to all
   those lengths to cache them.
2013-11-21 18:28:01 +00:00
Mark Liversedge
dd8b8537b4 Date Format on Athlete Bests
.. didn't follow the same standard as the rest of
   GC, minor cosmetic fixup.
2013-11-21 17:59:50 +00:00
Mark Liversedge
34841bad1d Move uml docs to the design folder 2013-11-21 10:07:22 +00:00
Mark Liversedge
87d4b8a9aa Adding Compare design outline
Jusst jotted down thoughts about implementing compare in v3.1
and added to the documentation folder. Will try and get some
mockups sorted too in the near future.
2013-11-21 09:41:00 +00:00
Mark Liversedge
8a74223726 Fix WIN32 build issue in main.cpp
.. nostderr() not supported on Windows.
2013-11-20 14:13:26 +00:00
Mark Liversedge
d3a3a76ccc Fix stderr redirect platform issues
.. don't use toLatin1() and fopen, use QFile and full QStrings
   so we can support directory names with unicode characters.

.. add unistd.h for dup() and close()
2013-11-20 14:08:28 +00:00
Mark Liversedge
d548cccf49 Better Command Line Processing
Now accepts --debug to disable redirection of stderr to
goldencheetah.log, which is handy for developers.

Also refined the way the command line is processed to enable
new arguments to be added in the future.
2013-11-20 13:26:25 +00:00
Mark Liversedge
ad84abf291 Redirect stderr to goldencheetah.log
In the home directory of GC (platform specific or configured
by the user). This is only relevant for OpenBSD, Linux and Mac.

Windows does not support applications that are GUI and console.
2013-11-20 12:48:09 +00:00
Mark Liversedge
bea2cfb5f2 Fix CP chart defaults
The CP chart model defaults are set before the spin box step
min and max values are set, which means that the value is always
reset to 100.

Since the vast majority of users will not be aware of the settings
and/or will never think of setting them to their own 'preferences'
it is vital the default is applied correctly.
2013-11-20 08:08:55 +00:00
Damien
7dd8524e5c CP Model: let the user define whole interval durations 2013-11-20 08:17:49 +01:00
Damien
0642932aae FitRideFile: - Add Left/Right TorqueEff and Left/Rigth PedalSmooth
- Open Truncated file
2013-11-19 22:38:18 +01:00
gcoco
274d3f9580 Add Garmin Forerunner 910XT 2013-11-18 14:27:47 -05:00
Mark Liversedge
9fe5e0c04a Slight cosmetic on new Athlete bests
.. and don't show zero values.
2013-11-16 22:44:43 +00:00
Mark Liversedge
5d77d14b43 Athlete Bests on Summary
Configurable metrics to show top 10 bests for date
range selected.
2013-11-16 21:01:01 +00:00
Mark Liversedge
173f6a10f8 Fix show W' on AllPlot bug
.. redraw didn't happen until you changed smoothing
   or selected a ride file.
2013-11-16 13:39:02 +00:00
Mark Liversedge
a1efef850b Command line parsing
Now allows:

$ GoldenCheetah [[directory] athlete]
$ GoldenCheetah [--version|--help]
$ GoldenCheetah

Passing the athlete on its own is as before, but you can
now also pass the folder name in as well.

I've also added the option to get a help message if you
pass --version or --help.

Lastly, as before, with no command line paramaters you
open the last athlete worked on.

Since we now output the version and build info I have uplifted
the build and version numbers in GcUpgrade.h to reflect the fact
we are now developing v3.1.
2013-11-16 11:14:44 +00:00
Mark Liversedge
7f66a870bd Restart properly when home changes
After fixing up the trainDB problem we can now restart
the mainwindows safely when the athlete directory changes.
2013-11-16 09:38:17 +00:00
Mark Liversedge
e2f4ab73e3 Training DB clean up gracefully
When closing down we left the training database open
and this caused problems when looking to implement
a restart function.

The problems stemmed from the way the QSqlDatabase
code was implemented in TrainDB which was modelled on
code in DBAccess that was cleaned up subsequently.

TrainDB code now mirrors the approach taken in DBAccess
and relinquishes resources correctly. The TrainDB is now
closed as well as being opened in main.cpp at startup.

Also, removed reference to obsolete dbconn member in the
DBAccess class definition since it is no longer used.
2013-11-16 08:33:11 +00:00
Mark Liversedge
3d3657e79b User definable athlete library location
Allow the user to select a directory to use for the
athlete libary. Leaving it blank will continue to use
the default location (dependent on platform).

If it is changed the user will be asked to confirm
and then GC shuts down.

Restart wouldn't work due to issues with the DBAccess
QSqlDatabase connection (which is really annoying). I
will look into this as a restart option would be much
cleaner.

Its only taken 4 years to implement this feature! (ouch).

Fixes #282.
2013-11-15 23:19:04 +00:00
Mark Liversedge
cee2c1b138 Honour "CP" override in W'
W' calculator didn't use the "CP" metadata to override the
CP for the ride.
2013-11-15 18:14:17 +00:00
Mark Liversedge
135f3e366c Fix W' crash smoothing sub-second recording. 2013-11-14 23:02:30 +00:00
Mark Liversedge
58d0b0b9e9 Don't truncate 3 parameter CP curve 2013-11-14 17:17:06 +00:00
Mark Liversedge
d0f0904bde CP Curve tmin
.. accidentally left at 0s now corrected back
   to truncate at tau for the 2 parameter model
   and set to 25s for the 3 parameter mode where
   it seems to breakdown.
2013-11-14 16:21:50 +00:00
Mark Liversedge
9b3c9ab5d2 Estimate CP and W' in CP Estimator
Since we want to track W' and CP now it makes sense
to add W' estimation to the tool.
2013-11-14 14:11:59 +00:00
Mark Liversedge
69f502d044 The CP Model has "parameters" not "points"
Might as well use the right terminology if your gonna
let the user choose and adjust the model!
2013-11-14 12:24:37 +00:00
Mark Liversedge
48d072db4a User Definable CP Model
Let the user define whether to use a 2 point or
3 point model (Morton et al).

In addition, let the user define the interval durations
to use; by default we set to 3 and 30 mins.

For estimating CP against good, recent data both of these
models are more than adequate for the purpose.

We'll just keep kicking the can down the road whilst we
can rely on published, verified science.
2013-11-14 11:43:55 +00:00
Mark Liversedge
ff035d685c Reinstate 3 point CP model
DJ Connel implemented a 3 point model, after Morton,
which was erroneously removed in a prior commit.

Our thanks to Andy Coggan for pointing this out in a
recent webinar. Nice to know he is following us closely.
2013-11-14 09:22:06 +00:00
Mark Liversedge
a0b8c5be11 Clean CP curve
.. when in range mode (i.e. plotting a CP curve for a date
   range or season rather than for a ride).
2013-11-13 23:00:26 +00:00
Mark Liversedge
86f04b165b UI Nits: Less clunky CP curve
When no shading selected it really does no shading and
the CP model curve is now in a smaller line width.
2013-11-13 21:06:14 +00:00
Mark Liversedge
2430c73d93 Highlight intervals on CP Curve
Will show a CP curve for the selected data series
for each interval that is selected, just like the
rest of the charts.

Fixes #718.
2013-11-13 20:38:06 +00:00
Mark Liversedge
a79b490e42 UX: Add to intervals flow
.. in the find intervals dialog it makes more sense to
   close the dialog once add to activity has been pressed.
2013-11-13 10:29:28 +00:00
Mark Liversedge
a00d77bd97 LTM Speedup
.. don't refresh when not visible!

   This is a side effect of the code updates added
   to handle filtering in chart settings or the global
   search/datafilter box.
2013-11-13 08:25:23 +00:00
Mark Liversedge
44b04dae12 Clear results when switch type
.. to W' bal or Ascent type interval searching
2013-11-12 18:58:40 +00:00
Mark Liversedge
dfb5157ec8 Find Ascents
.. another method for find intervals to find the ascents
   in a ride. Uses the hysteresis as defined in options
   which means a climb ends if there is a descent of that
   or more (by default only 3m).
2013-11-12 18:09:24 +00:00
Mark Liversedge
24e12eb024 Remove References in Dialog
.. you can now choose to remove reference lines in the
   allplot when you double click on the axis.

.. we might want to put the table and buttons for deleting
   references into the chart settings too (?)
2013-11-12 13:16:44 +00:00
Mark Liversedge
613ddb916b UI Nits: Less is more
.. remove grid line from CP plot.
2013-11-12 09:19:05 +00:00
Mark Liversedge
07784615ae UI Nits: Matches markers in CWBAL color 2013-11-11 23:18:51 +00:00
Mark Liversedge
217d6ab7ad UI Nits: Matches markers lower
.. so they don't clash with other interval markers
   most especially user supplied interval marks
2013-11-11 23:11:46 +00:00
Mark Liversedge
735099ea68 UI Nits: Back to black in QA
.. the washed out grey was unpopular and is too
   hard to read.
2013-11-11 22:53:49 +00:00
Mark Liversedge
0fa3da925b UI Nits: Less Ride Plot xBottom
.. no title needed for time, its obvious, but
   still need to show units if its distance.
2013-11-11 22:26:29 +00:00
Mark Liversedge
514b726850 UI Nits: Thinner reference line
2px too thick for a guide, made 1px which is in
line with the rest of the code.
2013-11-11 22:11:38 +00:00
Mark Liversedge
00a52abff4 UI Nits: Less is more
Further removal of chart decorations ala the recent
changes to the ride plot, now applied to the other
charts.
2013-11-11 22:04:06 +00:00
Mark Liversedge
569ddbb46f UI Nits: Declutter ride plot
Too much going on and gets noisy, especially in stack mode.

Might extend this to the other plots, but need to live with
it for a while to see if the ticks were actually useful (!)
2013-11-11 21:25:05 +00:00
Mark Liversedge
f2d8a0792f Zoom Out Menu Option
So you can unzoom in ride plot when you've zoomed in
to an interval -- avoiding having to show fullplot to
do the same thing manually.

There are probably other places to add functionality
for zooming out, will deal with those as they arise.
2013-11-11 19:56:31 +00:00
Mark Liversedge
17b1edab65 Match duration fencepost error. 2013-11-11 18:04:50 +00:00
Mark Liversedge
a3ae770965 Find Matches as Intervals
Now let the user add 'match' intervals in
the find intervals dialog by setting a minimum
cost for the match.
2013-11-11 17:53:58 +00:00
Mark Liversedge
265d85f75b UI Nits: Axis background color
Changed to match the ride plot background. This makes
it easer to read axis that use light colours (e.g.
using yellow for power).
2013-11-10 22:06:34 +00:00
Mark Liversedge
29dd3139a7 Find Matches
Added auto finding matches in Wprime, but there are
two areas to develop further;

1. Use the W'bal data to find matches instead of the
   power above CP (which is really being used as a proxy
   for the better approach).

2. Update the 'find intervals' dialog to allow you to
   find matches and add them as normal intervals.

Pushing to repo as a version checkpoint, this function
will definitely need refining before 3.1 is released.
2013-11-07 20:43:51 +00:00
Mark Liversedge
0bfe3574d0 UI Nits: Center Preferences/Options pane 2013-11-07 14:30:57 +00:00
Mark Liversedge
9488abe855 User definable color for W' bal curve 2013-11-07 14:23:42 +00:00
Mark Liversedge
9680b3aef3 Fix crash on tmp reference line at 0w 2013-11-07 13:58:42 +00:00
Mark Liversedge
740ac2ed21 Fix smoothing bug in Allplot for xPower and aPower 2013-11-07 12:55:11 +00:00
Mark Liversedge
c0a7552faa Add Derived Series to Ride Plot
You can now plot NP, xPower and aPower on the
ride plot.

This has been done to provide transparency &
insight into the relationship between the derived
values and the recorded power values,
2013-11-07 12:04:44 +00:00
Mark Liversedge
e99651e6d7 Read reference lines in WKO+ files
Added support for reading the 'references' or 'guide lines'
from a WKO+ ride file.
2013-11-07 09:58:40 +00:00
Damien
42e8890a60 AllPlot: Add Reference Line for Power (Watts) 2013-11-06 23:49:07 +01:00
Mark Liversedge
cbb0dd04d6 Histogram aPower
Added aPower to histogram, although not zoned.
2013-11-06 18:50:29 +00:00
Mark Liversedge
b23ed51fa4 Best aPower
Peak aPower durations now computed and cached;

* updated RideFileCache to work with aPower
* CP curve now allows you to plot aPower
* LTM plot allows you to plot aPower peaks
* DataFilter allows 'best(apower, duration)' function
2013-11-06 16:41:25 +00:00
Mark Liversedge
4026ff87bd Added Effect of Altitude (%)
A metric of the %age of power that has been lost due
to riding at altitude.
2013-11-05 21:31:31 +00:00
Mark Liversedge
86c54c7e47 Add citation and references for aPower
Added comment in ridefile.cpp to reference the book
and research paper that aPower is based upon:

// Calculate derived data series, including a new metric aPower
// aPower is based upon the models and research presented in
// "Altitude training and Athletic Performance" by Randall L. Wilber
// and Peronnet et al. (1991): Peronnet, F., G. Thibault, and D.L. Cousineau 1991.
// "A theoretical analisys of the effect of altitude on running
// performance." Journal of Applied Physiology 70:399-404
2013-11-05 20:18:06 +00:00
Mark Liversedge
4dff955424 Average aPower
Added an average aPower metric.

I also and found and fixed a couple of bugs along the way;

* intervals create a ridefile and need to explicitly call
  recalculateDerivedMetrics()

* the aPower calculation was using the calculated vo2max
  percentage the wrong way around (!)
2013-11-05 20:06:09 +00:00
Mark Liversedge
bf21b55658 Add aPower
Introduce altitude adjusted power 'aPower'.

This is a new ride data series that takes into account
the effect of altitude on power output.

At present we are only adding this as a derived data series
with the intention of making it possible to plot it on
the ride chart.

We will also introduce alternate metrics for average power,
bikescore etc that are based upon the aPower value.
2013-11-05 18:54:06 +00:00
Mark Liversedge
63853fd44e Add NP and xPower Derived Data Series
Calculate NP and xPower as a data series so we can
plot on the ride plot.

Have also added 'aPower' which will be coming in the
next few days - altitude adjusted power, which will also
have some associated metrics (a-xPower, a-NP, a-TSS etc).
2013-11-05 17:14:05 +00:00
Gareth Coco
b1b7a3134d Run: lupdate-qt4 src/src.pro
Update the translation source files
2013-11-05 00:31:00 -05:00
Gareth Coco
e89a995dda Website updates 2013-11-05 00:30:05 -05:00
Mark Liversedge
ec1225fecb W' calculator fill gaps with zeroes
Otherwise they are interpolated and smoothed, which is not
consistent with the rest of GC.
2013-11-04 17:18:10 +00:00
Mark Liversedge
4823e21a51 Adjust layout in Preferences
As new W' setting in athete -> power is all
squashed up on a Mac (where spacing is defaulted
to 20, not 10).
2013-11-04 08:52:35 +00:00
Mark Liversedge
8f3c44c270 Allow user to specify W' alongside CP
In preferences->athlete->power you can now set
your W' in joules alongside your CP.

This is also available in the new cyclist dialog
which also defaults to 20Kj.
2013-11-03 20:32:48 +00:00
Damien
61c1a5eb24 ShareDialog: Strava authorise was broken in last commit 2013-11-02 23:22:52 +01:00
Damien Grauser
5eefc6fd9b Merge pull request #712 from gcoco/master
ShareDialog corrections
2013-11-02 03:25:38 -07:00
gcoco
7bc1493600 Get rid of qwt compile error about format string.
Author: KURASHIKI Satoru <lurdan@gmail.com>

Taken from Debian patches for GC 3.0.3
2013-11-01 17:08:40 +00:00
Mark Liversedge
c1791b3438 Fix W' calculator for bad data
Fix 1s smoothing to ensure time doesn't go backwards
as when the same timestamp is used more than once the
QwtSpline used to interpolate returns all zeroes.
2013-11-01 16:47:15 +00:00
Mark Liversedge
39e22e0dc6 Calculate tau for W'
The implementation set tau to a constant when it
should be derived from the recovery power across
the ride.

I've also added tau to the chart so you can see
what value has been derived.
2013-11-01 13:21:26 +00:00
gcoco
aca912bb15 Minor comment correction 2013-11-01 07:42:30 -04:00
gcoco
14c05753cf Code corrections/cleanup 2013-11-01 07:37:41 -04:00
Mark Liversedge
5361fd3129 Use W' instead of AWC on CP chart
AWC is old terminology and should not be used any more.
2013-10-31 19:18:12 +00:00
Mark Liversedge
587429b5ad W' calculate starting from 0s
Instead of starting at 20 minutes, which was a function of the
code for calculating decay, i.e. an implementation nit, not a
physiological constraint.
2013-10-31 18:13:39 +00:00
Mark Liversedge
ab7ee66f5b Disable Minimum W' Metric
.. its too slooooow.

.. lets fix the WPrime performance issue before
   introducing any metrics on the back of it.
2013-10-31 17:36:56 +00:00
Mark Liversedge
9bf7816f02 Add Minimum W' Metric
It TREBLES the amount of time required to refresh the
metrics, so will need to be optmised before 3.1 is released.

But it should only need to run once.

I've also added a 'RideMetric::Low' type which we could
also apply to weight.
2013-10-31 16:49:43 +00:00
Mark Liversedge
682530f8a9 Add W' to All Plot
Will plot the W' balance as another data series.
2013-10-31 15:00:25 +00:00
Mark Liversedge
d0d577ed19 Missed off previous commit. 2013-10-30 22:56:54 +00:00
Mark Liversedge
2c4c78f067 W' expenditure and reconstitution calculator
Calculates the W' expenditure and reconstition during a ride.
The implementation is sub-optimal and will need to be optimised
and probably re-written to improve performance before v3.1 is
released.

This is based upon research conducted at the University of Exeter
by Philip Skiba, Weerapong Chidnok, Anni Vanhatalo, and Andrew Jones
and is used with permission.

For more information on the research please see: ""Modeling the
Expenditure and Reconstitution of Work Capacity above Critical
Power." Med Sci Sports Exerc 2012;:1.
2013-10-30 22:49:26 +00:00
Damien
7b9ea6492e ShareDialog: Add upload to selfloops.com 2013-10-30 18:39:40 +01:00
Mark Liversedge
c558fbf78e Add /dev/cu.usbserial as a serial device
Useful on Mac with Sewell adapter for the CT.
2013-10-29 15:32:41 +00:00
Mark Liversedge
974f57dc01 Interval Summary Off By 1 Error
Intervals are off by 1 sample because when the temporary
ride is created it stops short of the last sample in both
the ride and interval summary window code.

Fixes #623.
2013-10-29 15:31:29 +00:00
Mark Liversedge
5653169a0f HR Time in Zone percent
.. to match the recent update for the power
   time in zone metric.
2013-10-29 10:38:06 +00:00
Mark Liversedge
eaa8839119 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2013-10-29 10:01:19 +00:00
Mark Liversedge
064e840c32 New Metric Percent Time In Zone
The current TIZ metrics only allow you to chart the
absolute time in zone. Over longer periods it can be
helpful to look at the overall ratio of intensities
trained at.
2013-10-29 09:59:00 +00:00
gcoco
878dd2256b Fix GC_CYCLINGANALYTICS_CLIENT_SECRET #ifndef 2013-10-29 05:57:10 -04:00
Mark Liversedge
ee33b55384 Hide buttons when no Tokens configured
.. for Strava or CylingAnalytics upload
   authorised buttons in the preferences
   dialog.
2013-10-29 07:45:47 +00:00
Damien
0a2c98c41f ShareDialog: Add ipload to www.cyclinganalytics.com 2013-10-28 23:27:33 +01:00
Mark Liversedge
53281c21bb Fix User Defined LTM durations bugs
.. refresh didn't clear old curves
.. didn't honour any filter being applied
2013-10-28 20:57:21 +00:00
Mark Liversedge
5822db4b58 Plot Peak Power et al 2 of 2
Updated RideFileCache and LTMWindow/Plot to
plot the user defined durations for peak power.

Actually we support all the different meanmax
measures available in the CP chart, so you can
now track peaks for user defined durations of;

            * Power
            * Watts per Kg
            * xPower
            * NP
            * Heartrate
            * Speed
            * Cadence
            * Torque
            * VAM

I have not spent much time optimising for performance
but reusing the same 'seek' approach used by the recent
update for best() and tiz() functions in the datafilter.

Fixes #322.
2013-10-28 19:29:28 +00:00
Mark Liversedge
d0827131ef Urgent Fixup to previous commit
.. to make sure the v2 LTMSettings
   uses the bestSymbol.

Just pushing this (WIP) to make sure
we don't get half baked LTM settings
from people building against the previous
commit.
2013-10-28 17:58:04 +00:00
Mark Liversedge
780e749c43 Plot Peak Power et al 1 of 2
Update to let users specify a custom duration
to plot on LTM for peak power, vam, wpk etc.

This update is to the LTM chart settings and
the reading/writing of chart settings.

Next update will update LTMWindow/LTMPlot to
retrieve and plot the values from the CPX files.

Note: the values will not plot yet, the next
      commit in this series is required.
2013-10-28 12:34:17 +00:00
Mark Liversedge
d2dd34776b Show/hide scopebar with toolbar
When showing / hiding the toolbar we also show / hide
the scope bar. This is so when in train mode and you go
full screen it is possible to hide all ornamentation.

This will become a moot point when the scope bar is
replaced with 'appstore style icons' in the toolbar
to switch between home, analysis, train etc.
2013-10-27 21:11:59 +00:00
Mark Liversedge
d4ff4a2438 Truncate Altitude values
We know the highesst point on Earth, so any activity that
contains an altitude greater than that is definitely incorrect.

This patch truncates the altitude to the maximum possible, this
has the happy by product of curing a major mem alloc crash in QWT
when trying to plot altitudes with very large values.

Fixes #700
2013-10-27 20:06:37 +00:00
Mark Liversedge
699882f301 Add Current to LTM presets
But saving is an issue !

The presets need to move to the athlete object as they
are in the athlete directory -- we currently have one
per LTM chart, which means they get overwritten on exit.
2013-10-27 19:46:51 +00:00
Mark Liversedge
f49fccd93b LTM bars cosmetics
Just made gap slightly smaller to make it easier to
compare and overall the proportions 'feel better'.
2013-10-27 15:08:02 +00:00
Mark Liversedge
2b725a7183 LTM Chart Settings improved UX
The definition of curves is rationalised to match the
new design mockups in readiness for introducing user
defined peak durations for power et al.

For now this patch cleans the UX and makes it much
easier to add/edit/remove curves.

Fixes #548
2013-10-27 14:34:17 +00:00
Damien
982d5d6b15 ShareDialog: Manage null error message 2013-10-27 00:21:13 +02:00
Damien
4d79861c63 ShareDialog 2/3 : For version 3.0.1 2013-10-20 11:10:07 +02:00
Mark Liversedge
f5af4c1f8e Merge pull request #693 from gcoco/master
Assert cleanup
2013-10-16 07:15:05 -07:00
Damien
3dfe1debac GoogleMap: Little fix 2013-10-14 07:53:29 +02:00
Damien
e0c8593775 Correct to compil without liboauth 2013-10-04 16:08:53 +02:00
Damien
96e70e6fad ShareDialog 1/3 : Merge StravaDialog and RideWithGPSDialog
Add OAuth for Strava (Release version only)
2013-10-01 23:18:18 +02:00
Damien
ebc5d48114 Aerolab: Add a constant altitude option 2013-09-26 00:04:58 +02:00
Damien
28d140830e JouleDevice: Remove debug lines 2013-09-25 23:26:46 +02:00
Damien
75ef7af7a1 JouleDevice: Remove debug lines 2013-09-25 23:24:27 +02:00
gcoco
0c2de505c7 Assert cleanup 2013-09-24 04:02:33 -04:00
Mark Liversedge
d3acb8bf31 Merge pull request #690 from dresco/master
Detach kernel driver before claiming USB2 ANT+ interface.
2013-09-22 06:12:15 -07:00
Jon Escombe
be8fc73ffb Detach kernel driver before claiming USB2 ANT+ interface.
Only detach kernel driver if compiling under Linux (not a portable function)..
2013-09-22 00:56:24 +01:00
Jon Escombe
f10739bdec Detach kernel driver before claiming USB2 ANT+ interface.
Kernel 3.11 exposes the Suunto ANT+ stick as a USB serial device,
this prevents GC from opening it in training mode unless the
kernel driver is detached first.
2013-09-21 22:44:30 +01:00
Eric Johnson
43502df290 Use float division when converting wheel size
In training mode, calculations of speed using wheel size and RPM from
a speed sensor used integer division. This truncated all wheel
circumferences to an integral number of meters. 2100mm wheels were
treated as 2 meters and 1960mm wheels were treated as 1 meter,
effectively reducing calculated speeds by roughly 5% and 50%
respectively.

Fixes #585
Fixes #651
Fixes #669
2013-09-21 17:29:26 +01:00
Mark Liversedge
5b6c2e0576 Merge pull request #676 from lurdan/spelling
fix some spelling
2013-09-19 11:24:40 -07:00
Mark Liversedge
ab2f680b75 Merge pull request #686 from Walibu/master
Adding hr,cad,power,temp of the watch "Suunto Ambit2" Export gpx files
2013-09-19 11:21:09 -07:00
gcoco
a71a8b4268 Kurt Kinetic Road Machine PowerCurve fix
Fixes #685
2013-09-19 14:11:25 -04:00
Damien
f03320abe1 Bin2RideFile: correct bug for some GPS data 2013-09-17 23:03:14 +02:00
Walter Bürki
01d211d21b adding hr,cad,power,temp of Suunto Ambit gpx files 2013-09-15 19:17:02 +02:00
Mark Liversedge
e45ad7c5b4 Merge pull request #684 from jjofre/master
Work around to ensure controller key presses aren't missed.
2013-09-05 23:01:24 -07:00
Jaime
e21859b75e Work around to ensure controller key presses aren't missed. Borrowed from Fortius.cpp 2013-09-05 22:47:53 -04:00
Damien
82c7bac2b0 MergeActivityWizard: Use index for last point 2013-09-05 14:07:55 +02:00
Mark Liversedge
e0ac96b88b Merge pull request #683 from rclasen/ttb-pwx
use pwx for Trainingstagebuch upload
2013-08-26 22:56:11 -07:00
Mark Liversedge
c5d72ef654 Merge pull request #682 from rclasen/fix-pwx
several pwx fixes / improvements
2013-08-26 22:55:51 -07:00
Rainer Clasen
6f0219a684 use pwx for Trainingstagebuch upload
as current tcx writer currently doesn't support laps (and tcx doesn't
allow non-linear/overlapping intervals, at all) this patch makes GC upload
exercises as pwx.
2013-08-26 23:11:40 +02:00
Rainer Clasen
128e76bbac PWX: read/write temperature
added temperature to read/write
2013-08-26 23:00:53 +02:00
Rainer Clasen
ada0b553ed PWX export: keep timestamp + distance precision
Pwx does support for arbitrary sample lengths. No need to chop off
timestamp precision and introduce bad data + jitter.

Instead we should look at fixing data import and consider resampling on
read.

Distance is defined as double, aswell - so, let's keep the precision,
aswell.
2013-08-26 23:00:53 +02:00
Rainer Clasen
943810f7d3 fix PWX export: always write summarydata
xml schema is requiring summarydata to exist. Otherwise upload to
trainingpeaks fails.

Block was omitted when no intervals were defined.
2013-08-26 23:00:53 +02:00
Rainer Clasen
bc8c1d93d7 fix PWX export: handle end of gaps gracefully.
As I got it pwx by itself has no concept of recording intervals. "smart
recording" and other strange data require variable recoring intervals.

On the other hand it's not recording the duration of a sample explicitly.
This means the duration needs to be derived from the previous samples
timestamp (assuming the sample timestamps are referring to the end of the
sampled period).

This diff writes an empty timestamp at the end of each gap so that the
next real sample/ridepoint can calculate the correct duration.

Please note that this may unhide some deficiencies in GCs file reading in
exports.
2013-08-26 22:46:14 +02:00
Mark Liversedge
f5ba01fbe7 LTM presets UX improvement
Simplified selecting and managing preset charts
in the LTM chart settings.

Need to now move the 'Add' button to the custom
tab, but that is the next pending update.
2013-08-26 13:20:56 +01:00
Mark Liversedge
cccb72d76c Merge pull request #679 from rclasen/fix-tcx-speed
#678: Tcx: fix speed in summary information
2013-08-24 03:34:47 -07:00
Damien
10720b8d9d CsvRideFile: add temperature and hill slope (%) parsing for ibike csv file 2013-08-20 22:50:58 +02:00
Mark Liversedge
cbad504c86 Remove MainWindow from TabView.cpp 2013-08-19 21:47:57 +01:00
Rainer Clasen
6aefb960d0 Tcx: fix speed in summary information
When exporting files to Tcx, it's writing an ActivityExtension to the end
of the file with calculated AvgSpeed and MaxSpeed. Unfortunatly it's using
the km/h values - while Tcx is using m/sec. Schema is a bit unclear about
this, as the ActivityExtension uses "double" as type for both values, but
original Tcx v2 Schema only uses m/sec, GTC exports as m/sec and some
other software is expecting m/sec, aswell.
2013-08-15 20:58:59 +02:00
Damien
bb73af34aa MergeActivityWizard : Use recIntSecs 2013-08-14 16:20:28 +02:00
Damien
91d22b1547 Bin2RideFile: Changes in Summary pages for Data version 5 2013-08-14 16:12:56 +02:00
Gareth Coco
1c7884af89 Fixed broke download links/Typo
Fixes #635
2013-08-13 19:53:55 -04:00
gcoco
f4321e40ce Support Twitter API 1.1
To record the changes from 1.0 to 1.1 if we bring this back.
2013-08-10 23:48:18 -04:00
KURASHIKI Satoru
f17dc3044a Merge branch 'master' into spelling 2013-08-09 11:14:20 +09:00
Mark Liversedge
eaabff390f Added Suunto xlsx file to test rides
.. thanks to Fester for the example file.
2013-08-07 19:18:11 +01:00
Mark Liversedge
dec5ec5699 Fix SEGV on close with TrainTool->Stop()
.. casting the sidebar in TrainView was wrong because the
   controls are in the sidebar, not the trainTool. Thus
   it would crash on exit .. but strangely only on Mac!

.. the code now correctly calls trainTool->Stop(), quite
   why it fails on Mac only is a bit of a mystery.
2013-08-06 11:10:32 +01:00
Mark Liversedge
b692bed4ed Added collapse/expand to analysis sidebar
.. to collapse/expand for whatever is grouped by.
2013-08-05 18:20:50 +01:00
Mark Liversedge
c8b87559ea Animate Activity List collapse/expand
.. its standard Qt, and is kinda cool.
2013-08-05 16:05:54 +01:00
Mark Liversedge
44e0d6b744 Fixup ridefilecache best decimals
.. forgot that the values are converted to
   zero decimals when stored.

This fixes strange results when filtering by
wpk or speed, or any series that has decimal
places.
2013-08-05 08:37:25 +01:00
Mark Liversedge
0790d16be5 Best and TIZ shouldn't buffer
.. they have one read operation beyond the header
   and will not need to buffer -- the O/S will buffer
   file blocks too, lets not duplicate.
2013-08-05 07:41:40 +01:00
KURASHIKI Satoru
012703c9fb fix trivial mis-spelling. 2013-08-05 09:09:47 +09:00
Mark Liversedge
f6ed46489e Slightly larger SearchBox
.. since it was 'just' too small for a typical query.
2013-08-04 22:24:56 +01:00
Mark Liversedge
a8acdc8561 Fast Best and TIZ queries
Added static functions to ridefilecache
to get best and tiz values for series and duration
or zones and glued them in to the datafilter code
recently added.

It uses seek (via QDataStream::skipRawData) and is
quite fast on my Linux development PC.

We now need to update the LTM settings dialogs to
the new mockups so we can plot custom durations for
peak power / NP etc too.

NOTE: Not tried on Windows / Mac, so may not be quite
      so fast there, will need to check.

      To try this out, in the search filter box type:

            best(power, 3600) > 250

      to filter only those rides where the best hour
      power is greater than 250 watts. It should
      return almost instantly.
2013-08-04 15:45:55 +01:00
Mark Liversedge
2546b38ec2 Fix segv on filter '(NP)'
Fixes the crash but the eval code is a bit of a
fuck up. It was evaluating children instead of
using recursion, and now we have lots more types
and expressions its all a bit of a mess.

Will need to rewrite to use recursion and it will
be a lot simpler!
2013-08-04 11:40:44 +01:00
Mark Liversedge
77278b2ed1 A lot less assert
There still some assert left in the code, but removed
a fair number of the examples where, its just as easy
to handle the condition gracefully, without crashing.

By 3.1 we will have eradicated assert from the code.
2013-08-04 11:06:07 +01:00
Mark Liversedge
cb5b128fb0 Forgot wpk 2013-08-03 22:16:12 +01:00
Mark Liversedge
6f1f35bcfb DataFilter update for formulas
Will now allow users to specify a formula using
the * / + - ^ operators. This can be used to specify
values (e.g. TSS > 100*2) or to calculate a totally
new user metric (e.g. Average_Heart_Rate / RPE).

Also added two functions as well;

1. best (series, duration)   which returns the best value
                             for the series of the given
                             duration in seconds.

                             Where series is one of; power,
                             hr, cadence, speed, torque,
                             xpower, np.

2. tiz (series, zone)        which returns the time spent
                             in the given series and zone
                             Where series is either power
                             or hr and zone is 1-10.

NOTE:

We know need to add the functions for retrieving the best and
tiz values from the ridefilecache without having to read the
entire file (ie. read the header and use lseek).
2013-08-03 21:25:26 +01:00
Mark Liversedge
219d7cc724 Train View 30s power etc
.. fixed the dial property for rolling average

.. improved default layout to include realtime numbers
   alongside the workout plot, and added 30s power
2013-07-29 09:44:10 +01:00
Mark Liversedge
f26047edf6 Remove delete ride flicker
.. selects next ride, this one disappears flicker
   was mildy irksome.
2013-07-28 20:42:50 +01:00
Mark Liversedge
55996463ac Train Controls Temporary hack
.. to at least be able to start/stop a workout
   will fixup over the next few days to make a
   more professional controls overlay.
2013-07-28 20:34:09 +01:00
Mark Liversedge
12b9792426 BlankState fixup for MainWindow refactor
.. reintroduced it whilst moving the logic to
   TabView and BlankStatePage.
2013-07-28 17:33:49 +01:00
Mark Liversedge
70b33bec1f Fix TrainSidebar SEGV on Exit
.. by stopping any active session in the close() method
   and not the destructor.
2013-07-28 15:41:52 +01:00
Mark Liversedge
840e59eae5 More MainWindow Tidy
.. headers in MainWindow.cpp and deleted commented out
   members in MainWindow.h. Moved Spacer to GcToolBar.h
2013-07-28 10:29:13 +01:00
Mark Liversedge
dd966ded71 Refactor fixup resize
.. it was not possibe to resize the window because
   the blankstate page was too big.

.. blankstatepage is hidden for now until we fix the
   logic for it in TabView
2013-07-28 10:04:19 +01:00
Mark Liversedge
ed2bdc5d3a MainWindow Refactor Part 4 of 5
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!
2013-07-27 21:41:03 +01:00
Mark Liversedge
a5a13668cd Move filters from MainWindow to Context
.. we notify search/filter updates via context rather
   than MainWindow
2013-07-27 13:51:09 +01:00
Mark Liversedge
c65aa66276 Checkpoint TabView commit
Part 4 of the MainWindow refactor is moving the code for the
4 views (Analysis, Train, Home, Diary) out of MainWindow and
into a separate set of classes.

TabView is the base class for the 4 views and the basic code
is in this commit, but now need to work on the 4 derived
classes for Analysis, Home etc and the controller class 'Tab'.
2013-07-27 10:29:26 +01:00
Mark Liversedge
8191616f76 More MainWindow Tidy
.. remove dateChanged unused member
.. remove recordMeasure unused member
2013-07-20 18:54:00 +01:00
Mark Liversedge
1b54255539 More Athlete destructor
.. forgot to destroy the Lucene, NamedSearches and RideMetadata
   instances in the Athlete destructor
2013-07-20 11:15:45 +01:00
Mark Liversedge
449eb6e818 Fixup Athlete/DBAccess/MainWindow dependency
A bit of a mix of stuff, but basically the Athlete
class has sql stuff in it, that DBAccess used but
also referenced a session number in MainWindow.

Removed the interdependency and moved all code to do
with DB to DBAccess and out of MainWindow and Athlete.

At the same time needed to clean up a bit of memory
management and so introduced a MainWindow and Athlete
destructor.

We are now ready to do refactor part 4 to split MainWindow
into a new View class (that will be in each tab).
2013-07-20 11:07:03 +01:00
Mark Liversedge
430bee1ad5 Fixup refactor SEGV in StreetView
.. wasn't initialising context.
2013-07-19 23:22:18 +01:00
Mark Liversedge
f684b8b081 Deprecate DatePickerDialog
.. not sure its actually been used in the code
2013-07-19 23:00:37 +01:00
Mark Liversedge
037f206d68 Deprecate unused GcWindowTool 2013-07-19 21:47:46 +01:00
Mark Liversedge
c192b40246 Remove MainWindow unused
.. QPushButton *full was never used.
2013-07-19 21:34:02 +01:00
Mark Liversedge
25b0661ea5 Fix QTFullScreen compile error
.. needed Context and MainWindow headers
2013-07-19 20:54:55 +01:00
Mark Liversedge
491f8db749 A little less MainWindow
.. trying to remove it from as many headers as possible.
2013-07-19 18:08:07 +01:00
Mark Liversedge
6a8e5d9a49 More MainWindow tidy
.. reduce the number of public members
2013-07-19 15:28:29 +01:00
Mark Liversedge
181f50b058 Remove qDebug from FitRideFile
.. commented out so can reuse when debugging etc.
2013-07-18 22:18:15 +01:00
Mark Liversedge
695dbb7449 More MainWindow tidy
.. remove unneccessary class members

.. reorg to highlight where the remaining members need to
   migrate to
2013-07-18 22:13:03 +01:00
Mark Liversedge
790dff7dbf Calibration Messages minor update
.. add some sample files with calibration messages to the
   test/rides directory

.. remove the calibration marker color config (we can add it
   back if needed, but was in the wrong 'sequence' and is
   probably just a little bit *too* fine grained).
2013-07-18 22:05:57 +01:00
Damien
f72e2bf135 AllPlot: plot references lines 2013-07-18 21:51:07 +02:00
Damien
caeaef6ea9 FitRideFile: Add Calibration Event parsing 2013-07-18 18:23:11 +02:00
Mark Liversedge
5c5207c7bb Clean MainWindow.cpp
.. remove unneccessary #include statements
2013-07-18 09:51:06 +01:00
Mark Liversedge
8df5cf8778 A little less MainWindow.h
.. slowy removing it everywhere.
2013-07-18 09:37:32 +01:00
Mark Liversedge
d710b1a43c Fixup column chooser
.. in AnalysisSidebar
.. and SearchBox

Will need to fixup again when we introduce Tabs into
MainWindow, but it will be obvious when we get there.
2013-07-18 08:55:39 +01:00
Mark Liversedge
d02e540b39 Small Tidy up
.. removed 'init' from MainWindow
.. moved Qxt header out of the src directory
2013-07-18 08:37:42 +01:00
Mark Liversedge
c58700cfa0 Move intervals to AnalysisSidebar
Further MainWindow updates, this time moving the code
for working with intervals to the AnalysisSidebar and the
associate menus.

Ultimately, the functions for working with Activities and
their Intervals will move from MainWindow and Sidebars to
the ActivityCollection classes.

This is a step as we strip out MainWindow to just GUI
aspects.
2013-07-18 08:00:35 +01:00
Damien
6bf5b0ccf5 use context->athlete->treeWidget instead of treeWidget 2013-07-17 22:51:18 +02:00
Damien
62d0da0a9f RideFile: Add a ride merge wizard 2013-07-17 22:27:49 +02:00
Mark Liversedge
55d6ffc520 Minor tidy up of MainWindow.cpp
Get the sidebar code all in the same place.
For tidiness / maintainability.
2013-07-15 22:29:40 +01:00
Mark Liversedge
b827cedd80 Introduce AnalysisSidebar widget
Moving the code intertwined into MainWindow for
the analysis view sidebar; activity list, intervals
and calendar into a new AnalysisSidebar class.

                WARNING!

This is a work in progress checkpoint commit
as the sidebar menus and context menus have
not yet been migrated out -- this will be done
in the next commit or two.
2013-07-15 22:24:31 +01:00
Dave Waterworth
789074cede More Fortius Fixes
Including:
   * Fixed a type with slope mode updating the wrong byte array
   * Transposed bytes in the definition of the erg and slope messages
   * Added power smoothing

Note:
   It appears the Fortius is supplying torque not power, some more
   testing is being performed but expect to see an update shortly
   once this has been fully tested.
2013-07-15 08:34:09 +01:00
Mark Liversedge
b722da4f15 Deprecate the Bubble
.. its hideous and really annoying.
2013-07-14 21:18:10 +01:00
Mark Liversedge
db6b5b118d Tidy up MainWindow.cpp
.. comments and reorg whats left.
2013-07-14 13:13:38 +01:00
Mark Liversedge
bd0d08b2c7 Move Crash and Upgrade Processing to Athlete
.. and out of mainwindow
2013-07-14 12:55:08 +01:00
Mark Liversedge
12f63e2b73 Move specialFields from MainWindow to Context
.. and tidy up a few unneccessary references to mainWindow
2013-07-14 11:51:34 +01:00
Mark Liversedge
d30ec2ae3a More refactor tidying
.. move signals to context from mainwindow
.. fix missed updates to aerolab and realtime plot
.. remove clutter from MainWindow.h
2013-07-14 11:23:06 +01:00
Mark Liversedge
486fa77d9a Move allRides initialisation to Athlete
.. was left behind in MainWindow by accident.
2013-07-14 10:25:40 +01:00
Mark Liversedge
336b21aee9 Rename TrainTool to TrainSidebar
.. just for a bit of consistency before we develop
   AnalysisSidebar and refactor the views in MainWindow.
2013-07-13 20:15:07 +01:00
Mark Liversedge
47814846d9 MainWindow Refactor Part 3 of 5
Slowly migrating code  and data from the MainWindow
class to Athlete and Context classes.

This update moves the ride and interval lists and
data structures from MainWindow to Athlete.
2013-07-13 19:46:03 +01:00
Mark Liversedge
bcedd9e212 Rename GcCalendar as DiarySidebar
.. as we tidy up the views and decouple them from MainWindow
2013-07-13 09:38:54 +01:00
Mark Liversedge
65182f70c1 Move isclean from MainWindow to Athlete
.. rather unfortunate use of English as it leads
   to athlete->isclean == false :)
2013-07-12 18:15:14 +01:00
Mark Liversedge
6e1be4a541 Remove multisave from MainWindow
.. rather than migrate to context just remove it altogether
2013-07-12 17:36:39 +01:00
Mark Liversedge
d2b2fbc411 Metric Popup Flicker
The show/hide approach in previous commit caused the
metric popup to flicker. So we now only create the popup
when we know we want to show.
2013-07-12 17:24:15 +01:00
Mark Liversedge
95435e9594 Hide metric refresh popup
.. until its been running for more than 6 seconds since
   it takes time to do its thing and can be annoying!
2013-07-12 14:17:55 +01:00
Mark Liversedge
e66b8bb259 Further MainWindow Refactor Part 2 of 5
.. migrate constructor from MainWindow to Athlete and
   Context classes

.. remove Athlete *athlete from MainWindow altogether
2013-07-12 13:59:10 +01:00
Mark Liversedge
d59655d730 Fixup MainWindow refactor Part 2
.. Minor oopsie with references to context->mainWindow->athlete
   instead of simply context->athlete.

The MainWindow refactor will be complete when references to
the mainWindow class is for gui reasons only.
2013-07-12 08:57:49 +01:00
Mark Liversedge
24b0b8d97d Fixup MainWindow refactor Part 2
.. VideoWindow needed updating
.. QTFullScreen needed updating
.. Fix use of lower case n #include
2013-07-11 20:59:05 +01:00
Mark Liversedge
60f548435f Fix src.pro accidentally removed RideWindow.qrc 2013-07-11 19:46:15 +01:00
Mark Liversedge
c477e82850 Fixup MainWindow refactor Part 2
.. fix workoutwizard context hack
.. fix modelplot (3d) code that was missed
2013-07-11 18:10:37 +01:00
Mark Liversedge
0fcbbe1b77 Refactor MainWindow Part 2 of 5
Decoupled classes from MainWindow to reference Context
and Athlete (and introduced a couple of new headers).

We no longer pass around a MainWindow pointer to children
but pass a context instead.

There are still a few pieces left in MainWindow that need
to move to a better place;
    * Setting/clearing filter selection
    * Working with Intervals
    * Adding/Deleting Rides
    * Save on Exit

As mentioned previously there are lots of other parts to
this refactor left to do;
    * break MainWindow Gui elements into Toolbar and Views

    * migrate from RideItem and Ridelist to ActivityCollection
      and Activity classes that are not tied into gui elements.

    * introduce Application Context and AthleteCollection
2013-07-11 14:02:02 +01:00
Mark Liversedge
e256783f73 Recognise Dave Waterworth
.. in the about box contributors list.
2013-07-09 20:08:10 +01:00
Mark Liversedge
7e651b588d Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2013-07-09 11:07:10 +01:00
Dave Waterworth
a0f206c015 Fix Tacx Fortius Device Support
Multiple fixups for Tacx Support -- as a result the support
is now pencilled in for full support in 3.0 SP1.

Fixes #24.
2013-07-09 11:02:42 +01:00
Mark Liversedge
f552e015f0 Fix allplot crash on daft power value
Incredibly high power value in ride file causes a memory
error when setting up plot ticks.

Fixes #658
2013-07-07 20:00:25 +01:00
Mark Liversedge
79a0bb864a Refactor Part 1 Mac Fixups
Fixing a few issues from Part 1 of the MainWindow refactor
for building on a Mac.  Also retired twitter completely.
2013-07-07 16:22:42 +01:00
Mark Liversedge
c56c5a9567 MainWindow Refactor Part 1 of 5
Breaking the MainWindow 'god object' into
separate classes for Athlete and Context.

Further updates will need to;
- break MainWindow Gui elements into Toolbar and Views

- migrate from RideItem and Ridelist to ActivityCollection
  and Activity classes that are not tied into gui elements.

- introduce Application Context and AthleteCollection

Once these are done we will be in a position to decouple
most classes from mainwindow and also introduce tabbed
athletes.
2013-07-07 15:50:28 +01:00
Mark Liversedge
edadc20a24 Deprecate Strava Support
No API v3 access.

Fixes #656.
2013-07-06 00:12:34 +01:00
Mark Liversedge
843db7a63c Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2013-07-05 21:43:59 +01:00
Mark Liversedge
c39654b8b8 Update FAQ regarding Strava support 2013-07-05 21:40:40 +01:00
Mark Liversedge
694e60e130 Fixup gcconfig.pri.in for Mac OSX 10.9 preview
.. need to add SDK to includepath
.. will go away hopefully, when 10.9 is released
2013-07-02 12:37:48 +01:00
Mark Liversedge
af28a477ea Fix PWX export SEGV
fixes #654.
2013-07-01 19:14:16 +01:00
Mark Liversedge
db54a582c1 MainWindow refactor design update
.. more complete list of attributes and operations
.. need to plan the sequencing of the refactor itself and testing approach
2013-06-28 11:35:59 +01:00
Mark Liversedge
fb19b69ebb MainWindow refactor design
.. a class model for breaking up MainWindow
.. not all methods/members are listed, mostly about
   identifying the new classes required.
2013-06-25 22:17:22 +01:00
Mark Liversedge
6782ea2f37 Merge pull request #650 from rclasen/fix-win
make srmio details in version dialog conditionally
2013-06-25 03:14:51 -07:00
Rainer Clasen
bfd4fc807e make srmio details in version dialog conditionally
... so that GC keeps building with older srmio versions.
2013-06-24 23:40:41 +02:00
Mark Liversedge
a4922690b9 Srmio less wordy version
.. still provides version and commit but removed
   unneccessary words as it skewed the output.

I'm strangely anal about alignment !
2013-06-23 20:45:36 +01:00
Mark Liversedge
3e3114fd4d Intervals indexes crash / parser error
2 bugs:
- interval offset of -1 causes a crash in htmlSummary
- interval offset of form nnn e+0n parses incorrectly

Also remove silly -wreorder warning in ridefile.h
2013-06-23 16:52:58 +01:00
Mark Liversedge
2da510862a Merge pull request #645 from rclasen/fix-win
Fix SRM download issues on windows/mingw
2013-06-23 07:42:44 -07:00
Rainer Clasen
1b17a5b81d inlude srmio version + commit in about dialog 2013-06-23 14:18:24 +02:00
Rainer Clasen
70b753828a SrmDevice: fix writing srmio data
fopen() was missing 'b' flag, so that mingw and other platforms doing
LF/CR translation screwed data.

This is fixing the astronomic values of direct SRM downloads.
2013-06-23 14:18:23 +02:00
Damien
7b7c3af058 RideFile: Add Min, Max and Avg point 2013-06-22 14:42:18 +02:00
Mark Liversedge
3ca1b0c38c 10.9 Code Nits
Couple of minor coding nits identified when compiling
on OS X 10.9 Mavericks with Xcode 5 tools.
2013-06-20 15:59:45 +01:00
Mark Liversedge
3d325e9010 Hand drawn mockups for 3.1 MainWindow options
Playing with some ideas about how the UI will change
to support new UX features for viewing multiple athletes
in a single mainwindow and also having multiple pages
of charts in a single view.

2 Options on the drawing:
.. Having tabbed Athletes and scope bar for view pages
.. Having a source list and tabbed view pages

Can't decide which is best -or- if there are better options
we could look at.
2013-06-19 10:16:15 +01:00
Gareth Coco
3b90d22175 Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2013-06-10 03:19:20 -04:00
Gareth Coco
4ce149f025 Website updates for Version 3.0 2013-06-10 03:17:49 -04:00
Mark Liversedge
4c289bedce Version 3 Release
.. update of build and upgrade processing for
   release 3 final update.
2013-06-07 08:53:24 +01:00
Gareth Coco
31159ffeb6 Minor website update. 2013-06-07 01:49:34 -04:00
Mark Liversedge
ccd9ab863e New LTM Chart Setup Mockups
.. to support measures, metrics, bests and user defined
   (formula). For v3.1 development.
2013-06-06 22:07:42 +01:00
Mark Liversedge
a286e96a29 Merge pull request #630 from amtriathlon/master
Last update to spanish translation
2013-06-04 23:03:56 -07:00
Mark Liversedge
5a3480e6ba Remove Column Chooser from Chart Settings
Because the chart settings are modal its a really bad
idea to open up a column chooser from there. So, by
default, we don't have a column chooser option on the
search/filter box -- it must be explicitly requested.

We therefore explicity set the column chooser from the
mainwindow and also from the ride navigator window.
2013-06-05 07:01:36 +01:00
Alejandro Martinez
85f264a748 Update spanish translation with event creation warning 2013-06-04 20:24:55 -03:00
Mark Liversedge
270be46cea Fixup reset layout for tile mode
The show() is needed them, for each chart.
2013-06-04 19:42:48 +01:00
Mark Liversedge
9fc47560ac Fix reset layout 'crash'
Fixes #629.
2013-06-04 19:18:29 +01:00
Mark Liversedge
a31d93ec18 Fix ScatterPlot setTime() SEGV
At first it seemed this was caused by setting the time to
a value greater than the length if the ridefile.

It was actually a constructor error, since the settings
class didn't initialise the ride variable.
2013-06-02 12:21:14 +01:00
Mark Liversedge
4ce898a697 Update for RC7
.. version number / build id.
2013-05-31 20:33:31 +01:00
Mark Liversedge
cd4938ea2f Add alpha support for Dynastream OEM USB ant+
.. different pid of 1009 to the garmin usb2 stick
   but probably works the same .. lets see!
2013-05-31 20:05:58 +01:00
Mark Liversedge
222d3aeea6 Add Darren Hague copyright message
.. to the ANTLogger code.
2013-05-31 19:02:57 +01:00
Mark Liversedge
d223d032f2 Warning on add event
.. to explain they belong to a season.
2013-05-30 22:17:17 +01:00
Mark Liversedge
4ed659f8df Fix delete ride SEGV
Ridesummarywindow was using rideitem to get zones to use when
summarising for a date range which was bad because a) the ride
might not be for the date range selected and b) it might have
been deleted.

This fixes that and means we get a summary that is more accurate
and no crashing when rides are deleted.
2013-05-30 21:11:24 +01:00
Mark Liversedge
683664d311 Only refresh calendar if visible
Speeds things up and also removes problem of refreshing
when referencing a deleted ride.
2013-05-30 20:26:06 +01:00
Mark Liversedge
45e8f2266b Diary Sidebar Calendar ignores first ride
Fix to check the first (0th) ride when clicking left
for previous ride rather than >0th.
2013-05-30 19:49:51 +01:00
Mark Liversedge
8a24da3fc9 Fix first file SEGV
If you delete and readd an activity after showing it on
the diary view you get a SEGV.

This is an edge case related to deleting the last activity
and going back to the blank state before importing another.

Actually there are 3 technical issues;

1. GcCalendar doesn't get notified by MainWindow when
   there are no rides -- so it crashes on refresh

2. RideSummaryWindow doesn't get notified by home window
   if its not visible

3. RideSummaryWindow should check rideItem isn't NULL before
   trying to plot zones (but only for date range summaries)

Fixes #622
2013-05-30 19:31:26 +01:00
Mark Liversedge
87ec4081c4 Deprecate overwrite existing files on import
.. just for release 3.0 until the major bugs are fixed.

Fixes #620
2013-05-30 11:42:52 +01:00
Mark Liversedge
898d9b31a9 Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2013-05-30 10:42:45 +01:00
Mark Liversedge
92797fc25c Fix Editor find results sorting
.. it was sorting as a string not a number
2013-05-30 10:29:29 +01:00
Damien
0fe60c95c8 JsonRideFile: add support to the references for forward compatibility 2013-05-29 23:55:26 +02:00
Mark Liversedge
37828be829 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2013-05-29 20:36:09 +01:00
Mark Liversedge
7fc8c2321e Fix date range popup for cycles/adhoc
Its RC6 and we only just caught this bug!!! It was not
possible to delete or edit date ranges of type 'Cycle' due
to a cockup with the type() values.

Thanks to Martin Wifling for finding this one!
2013-05-29 20:34:01 +01:00
Damien
bf0b774793 BinRideFile: Support for left-right pedal balance
Test ride file : test/rides/2013_05_15_18_38_30.bin
2013-05-28 22:15:18 +02:00
Mark Liversedge
34f52982da Documentation: How to create/edit Seasons/Events
.. added to the FAQ for v3.0.
2013-05-28 17:51:37 +01:00
Mark Liversedge
36982cdd83 Documentation: Withings setup in FAQ
.. to explain where to get the user id and public key
   from (it foxed me for a while).
2013-05-28 17:45:44 +01:00
Mark Liversedge
634d2f463d UI Nits: AllPlot interval too hard to see
.. the interval highlighter is so feint that it can hardly
   be seen -- increased the alpha from 64 to 128.
2013-05-28 14:55:19 +01:00
Mark Liversedge
651f61c257 Fix RidePlot draw performance
.. by only plotting the stack view if its actually
   needed (i.e. user has selected stack view).

.. this performance degradation was introduced by the
   axisscaling update (which is a nice update)

Fixes #616.
2013-05-28 12:11:10 +01:00
Mark Liversedge
e8c5d6d3a8 Move tests to top level directory
.. they don't belong in the src directory!
2013-05-28 10:23:57 +01:00
Mark Liversedge
3efa8882f9 Support gpxtpx:hr elements in GPX files
.. thanks to Joaquin Ricarte for the sample file
2013-05-27 21:49:23 +01:00
Mark Liversedge
38276d5e3b Calendar Sidebar on no ride
.. default to this month, so at least there is a month
   displayed rather than lots of 1s and no month name.
2013-05-27 21:23:41 +01:00
Mark Liversedge
0a3341e1fe GcCalendar - setRide on show
.. because the old value may be out of date if
   e.g. you deleted it in analysis view and then
   switched back
2013-05-27 21:10:03 +01:00
Mark Liversedge
99ba4f4c67 Don't publish Withings key in crash report
.. it is personal data and should not be shared
2013-05-27 21:00:09 +01:00
Mark Liversedge
a12df2bd7d Fix QFile/Fclose conflict in RawRideFile SEGV
On Windows QFile crashes trying to close a file that has already
been closed by fclose() since it maintains its own state and doesn't
handle the return code of -1.

We just reverse the order we close via QFile and fclose() to avoid
the conflict. We need to do both since fclose needs to release the
stream buffer (they get exhausted on Mac OSX) but QFile needs to
maintain its state too!

Longer term the RawRideFile reader needs to use QFile methods. But
at this stage in the release cycle I'm not going to make such a
dramatic change.
2013-05-27 11:11:22 +01:00
Mark Liversedge
f7a148fff7 Added very short (12s) test ride
.. to check bounds checking in array processing
.. especially in the histogram/HrPw charts and metrics
2013-05-27 09:00:30 +01:00
Mark Liversedge
727c11d801 Fix HrPw array offset SEGV
On very short rides the array bounds checking in HrPwPlot
and HrPwWindow was missing. This meant that attempts to
find delays or apply delays that were longer than the
ridefile itself generated negative array offsets, and thus
a SEGV.
2013-05-27 08:48:57 +01:00
Mark Liversedge
a6ed6211de Build Id and String update for RC6
.. this should be the last RC!
.. won't tag for RC6 until end of today
2013-05-26 11:31:32 +01:00
Mark Liversedge
34d4cdc3dd Recognise Tilman Schmiedeberg
.. he has performed the entire v3 German translation
.. added to the contributors About box
2013-05-26 10:30:23 +01:00
Mark Liversedge
2f9ad36a3e Recognise Okano Takayoshi
.. he has fixed up the v3 Japanese translation
.. included in the Contributors about box
2013-05-26 10:10:02 +01:00
Mark Liversedge
7cf7f99dee Merge pull request #612 from amtriathlon/master
Updated German Translation by Tilman Schmiedeberg
2013-05-24 14:11:48 -07:00
Alejandro Martinez
6c4da19026 Updated German Translation by Tilman Schmiedeberg 2013-05-24 18:07:01 -03:00
Mark Liversedge
2aeef95d1a Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2013-05-23 06:48:22 +01:00
Mark Liversedge
5ea1dd6486 More WPK interval SEGV fixing
.. in interval summary
.. and workout wizard

There aren't any other computeMetrics() pieces of code
left. I also scanned for new RideFile() code and it was
limited to the RideFileReaders which are managed by the
openRideFile() base method, so all should now be well.
2013-05-23 06:38:54 +01:00
Mark Liversedge
cd126218fe Merge pull request #610 from amtriathlon/master
Updated Translations
2013-05-22 22:29:29 -07:00
Alejandro Martinez
b8826e85c9 Updated translations
Italian by Marco Piccirilli
Japanese by Okano Takayoshi
2013-05-22 20:28:12 -03:00
Mark Liversedge
8fe16cc871 Clean up measures.xml
.. remove it as part of the upgrade.
.. use built-in version for db schema
.. don't re-read it when doing getAllMeasuresFor()
2013-05-22 21:18:57 +01:00
Mark Liversedge
3b09dd5af1 Ready to publish v3.0-RC5X
.. updated version string.
2013-05-22 19:03:24 +01:00
Mark Liversedge
c5aadbaec9 Fix WPK interval metric crash
.. recent update to use getWeight() in the ride file
caused a SEGV as interval metric computation is done
on the fly against a 'manufactured' ride file.

.. That ridefile doesn't have a mainwindow reference in
it, so when getWeight() references mainwindow->metricDB
a SEGV occurred.
2013-05-22 18:50:49 +01:00
Mark Liversedge
f58a5ace39 UI Nits: Defaut sidebar settings
When a new athlete is created or when running v3 for the first
time for this user the sidebars shown are yucky. This just updates
the settings to make sure you start up with a simple sidebar for
the four views.
2013-05-22 15:58:01 +01:00
Mark Liversedge
614aded8f7 No CLucene optimise on Windows
.. it looks like it crashes.
2013-05-21 15:41:08 +01:00
Mark Liversedge
1a9ed26154 RC5 Update Build ID and String
.. build 3005.
2013-05-21 11:24:29 +01:00
Mark Liversedge
b0fea333a1 Upgrade should only try once
.. since it prohibits startup when fails.
.. suspect there is an issue with optimise() on a new index
.. have also added more logging to watch this.
2013-05-21 06:54:53 +01:00
Mark Liversedge
246e9774ca Merge pull request #605 from amtriathlon/master
Updated spanish translation
2013-05-20 00:35:05 -07:00
Mark Liversedge
e9a767ab9b FitRideFile fix truncated read crash
.. caused by an eager file.close() recently introduced.
.. and add some more when returning from error.
2013-05-20 08:29:16 +01:00
Alejandro Martinez
3b93d0a08b Enabled translation of Cancel/Save in NewCyclistDialog 2013-05-19 19:50:06 -03:00
Alejandro Martinez
111866e46a Updated spanish translation 2013-05-19 19:33:47 -03:00
Mark Liversedge
fb66a8e0bf Upgrade: Set default weight to non-zero
As part of the upgrade, if the default weight is zero
set it to 75.
2013-05-19 21:09:17 +01:00
Mark Liversedge
eff25e0c84 getWeight() always sets weight_ to non-zero
Just in case .. to avoid threaded db access in RideFileCache.
2013-05-19 21:00:06 +01:00
Mark Liversedge
4d1fa86cb3 RideFileCache dbaccess thread ...again
Need to call getWeight() in the RideFileCache when it
opens the ride there rather than in MetricAggregator.

Oopsie.
2013-05-19 19:45:43 +01:00
Mark Liversedge
57b15dbe86 Fix RideFileCache threaded db access
The call to RideFile::getWeight() in RideFileCache
computation ends up with a call the read the measures
table in the DB. This is BAD since it is called from
a thread.

We now call getWeight() in the metric aggregator before
launching the ridefilecache computation -- this will cache
the weight and avoid db access.

I've also removed the duplicate code in the w/kg metric code
too and it should be marginally faster at computing metrics
now.

BIG THANKS TO ILJA BOOIJ FOR HIGHLIGHTING THIS, DESPITE MY
INITIAL SCEPTICISM. I OWE HIM A PINT (OR TWO) :)

Fixes #604
2013-05-19 19:06:28 +01:00
Mark Liversedge
e7c3dee61f v3.0 RC4
.. update GcUpgrade.h
2013-05-19 16:08:41 +01:00
Mark Liversedge
2968cb3479 More File Closing
Shocked at the lack of file closing in the rest of the
ridefile readers.
2013-05-19 16:00:27 +01:00
Mark Liversedge
0edc75e718 Fix RawRidFile fdopen assert crash
Rather than assert it might be better to handle fdopen()
calls that fail with more grace.  Especially since the
file wasn't being closed.

Ugh.
2013-05-18 11:14:20 +01:00
Mark Liversedge
59d400571d Recognise Satoru Kurashiki
Who has maintained the GoldenCheetah Linux package since v2.1.
Now added to the contributors in the About dialog and also
recognised in the release notes for v3.0
2013-05-16 19:54:28 +01:00
Mark Liversedge
3043e356d5 ANTLogger farce continues
Fixups after testing this evening - the meta object types
are now registered and the file open/close is called as
needed.
2013-05-14 21:57:52 +01:00
Mark Liversedge
64fd759a27 ANT Logging Fixups
.. accidentally committed the first half of this update
   alongside some changes to the documentation.

.. basically we now pass ANT messages on the stack rather than
   as a pointer (fixes memory corruption issues).

.. the log file is explicitly opened and closed with status maintained
   alongside that to ensure we only log messages when the logfile is open.

.. This is an alternative fixup to the fix proposed by Jon Escombe in
   pull request #597.
2013-05-14 13:33:06 +01:00
Mark Liversedge
3596605b2d Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2013-05-14 10:05:41 +01:00
Mark Liversedge
2023547bf7 Documentation: Makeinfo compatibility
.. only use the @input macro if we're not running info -- we only do that
   to get nice fonts in printed output anyway.
2013-05-14 10:00:00 +01:00
Mark Liversedge
a16c4d1615 BasiRideMetric handle no speed/distance gracefully 2013-05-13 20:05:32 +01:00
Mark Liversedge
c742ad3553 HUD fix Avg HR and Max Cadence
.. they always displayed zero even when the data is available.
2013-05-13 19:30:56 +01:00
Mark Liversedge
67b5ee0fda Add version details to Crash report
By refactoring out the version stuff from the about dialog
and making it part of the crash report (and reused).
2013-05-12 13:27:08 +01:00
Mark Liversedge
2a6815a4d6 Crash Reporting
We now use a per-athlete setting to track if the last
time the athlete was opened GC shutdown gracefully.

If it didn't then we show a dialog box with some basic
data to use to debug / diag the problem. For now it is
just limited to;

* metric.log
* athlete directory listing (by modified time)
* app settings

We explicitly DO NOT include personal information such
as DOB, Weight, Sex nor critical information such as userids
or passwords.

This is a first stab at this, and we will almost certainly
improve it to include other .xml config files as well as
automatically posting an email (or similar).

Fixes #596.
2013-05-11 22:50:40 +01:00
Mark Liversedge
0605fe70bb Translation: German Analysis -> Analyse
TE Analyse is too much for such an important phrase, so
shortened it to Analyse.
2013-05-11 15:00:32 +01:00
Mark Liversedge
3289481f8a UI Nits: Fixup ScopeBar button widths
.. for different font sizes and as importantly to make the
   buttons large enough for the translated button texts -- this
   is particularly important for Deutsch.
2013-05-11 11:42:50 +01:00
Mark Liversedge
8a93d14004 LTM Show top 1 not 5 by default
.. Top 5 is a bit much, in reality defaulting to highlight
   just the top value is more useful and shouldn't lead to
   an ugly chart.
2013-05-09 20:16:20 +01:00
Mark Liversedge
3e3b92b889 Add Fatigue Profiling Peak Power Durations
.. added for 2,3,8 and 90m peak power

.. user defined intervals for peak power/vam/np et al
   are still planned for v3.1

Fixes #595
2013-05-09 20:10:54 +01:00
Mark Liversedge
2c5aced70f PWX support make/model for TP.com upload
.. on request from TrainingPeaks we now add the make and model
   elements to a PWX file.

Fixes #593
2013-05-09 19:25:03 +01:00
Mark Liversedge
2887c0d3df DBSchema increment to 44
.. was missed in April, no biggie but need to make sure
   it matches the metric definitions and comment in DBAccess.cpp
2013-05-06 18:24:04 +01:00
Mark Liversedge
af146fd4bb Left/Right Balance in DataFilter
.. need to make a special case as the symbol name contains
   a / character. Lexer handles it as a special case.
2013-05-05 18:45:18 +01:00
Mark Liversedge
67531aee07 TRIMP(100)_Points in DataFilter
.. the parenthesis caused problems so now treated as a
   special case in the lexer.
2013-05-05 18:36:51 +01:00
Damien
a818806adc BinRideFile: correct altitude
handle negative value for altitude
2013-05-05 08:42:38 +02:00
Mark Liversedge
a47bbe8ac8 Update QT install instructions INSTALL-LINUX
.. since Qt changed the name back to Qt 4.8 rather
than SDK 1.1.
2013-05-04 18:26:24 +01:00
Mark Liversedge
06b2aec69f About Dialog Config Tab
.. should only be shown on developer builds. When building
   releases or release candidates and GC_VERSION is being defined
   then don't add the config tab -- it is too `geeky' for the average
   end user and not at all useful for debugging.
2013-05-04 12:01:31 +01:00
Mark Liversedge
7b32c659ba Merge pull request #589 from dresco/ANT
ANT+ reliability fixes
2013-05-04 02:52:45 -07:00
Jon Escombe
1755bf1d0a Whitespace cleanup (tabs to spaces) 2013-05-04 10:42:46 +01:00
Jon Escombe
f56a90cf59 Postpone ANT debug log close
Don't stop debug log until the end of the receive thread (else the
traffic from the close channel messages can re-open the log file).
2013-05-04 10:33:10 +01:00
Jon Escombe
6364725301 Close ANT channels before stopping session
This appears to resolve an intermittent issue with the USB2
stick not responding to reset messages when re-opened.
2013-05-04 10:33:09 +01:00
Jon Escombe
5c823850ca Move early ANT setup after receive loop is started
Moves the early setup code so that the receive loop is already
running when these messages are transmitted. Doesn't achieve much
at this point, but can visualise the send and receive packet flow
better, and will enable the responses to these messages to be
checked in the future.
2013-05-04 10:33:09 +01:00
Jon Escombe
60407a95d4 Change usb_bulk_read() timeout back to 125ms 2013-05-04 10:33:09 +01:00
Jon Escombe
a34eb74fb1 Add delay after ANT reset message
Wait 500ms after sending reset message (as per ANT+ spec), before
sending any more host commands.
2013-05-04 10:32:03 +01:00
Mark Liversedge
a7c6732328 Added Jon Escombe to Contributors
.. in about dialog.
2013-05-04 10:04:55 +01:00
Mark Liversedge
27857e0f3a UI Nits: Add chart frame on chart
The frame on the chart wasn't shown and it looked ugly
in the add chart dialog.
2013-05-04 09:29:33 +01:00
Mark Liversedge
35f543003c Added Upgrade processing
We now maintain a build id which correlates to a release
version (or development version if we want).

Most importantly, when we increment the build id we get to
run some processing when the cyclist is opened to clean/prep
for this release.

I have added V3 RC3 as the first build id and it will
remove *.cpi and *.bak files as well as removing the
clucene index and metricDBv3 file.

Fixes #584.
2013-05-02 16:18:04 +01:00
Mark Liversedge
0695eaf9d0 ModelPlot (3d) redraw
We now redraw whenever plot properties change so the user doesn't
have to click on the replot button. This was originally introduced
because rendering was slow, but this was more to do with the original
code and is no longer a performance issue.
2013-05-01 20:42:48 +01:00
Jon Escombe
32ed7e5c31 Fix QIODevice errors in ANTLogger
Darren Hagues logging code causes issues since the state
of the logger is not reset on close.
2013-04-29 19:18:20 +01:00
Mark Liversedge
1862fb8ba2 Named Search Menu
Better UX to put less used options at bottom of the menu.
2013-04-27 20:53:39 +01:00
Mark Liversedge
8f40eed75a UI Nits: Scope Bar Font on Mac 2013-04-27 18:43:47 +01:00
Mark Liversedge
7db48a1b01 UI Nits: Edit Faves on a Mac
.. geometry was not 'quite right'.
2013-04-27 18:03:37 +01:00
Mark Liversedge
ca540be954 Edit Named Searches
Fixes #577
2013-04-27 13:49:27 +01:00
Mark Liversedge
a18c7d68a2 Fix Filter on BikeScore and 95% heart rate
As the parser fell over on them due to special characters
and having to convert the TM symbol to an HTML escape.
2013-04-26 17:13:16 +01:00
Mark Liversedge
82e4ba7462 Fixup CLucene OPTIONAL!
.. CLucene is optional, but some recent updates didn't
   honour that and cause compile time errors if CLucene support
   is not available.
2013-04-26 13:21:08 +01:00
Mark Liversedge
7e501dc3da Visual cue for filter
.. by highlighting chart title too if a filter is
   being applied.

This is important to warn users that the data being plotted
is adjusted to the search/filter (either globally or in the
chart settings).
2013-04-26 12:44:51 +01:00
Mark Liversedge
820c32a2a6 Add Column Chooser for SearchBox
.. so you can drag and drop fields in when creating a filter.
2013-04-25 21:57:44 +01:00
Mark Liversedge
38057f79cf Fix 2 Google Map SEGV
.. webBridge crash in QtWebKit for 4.8.4 (qt-bug 30403)

.. delete GoogleMap leaves webBridge orphaned which will
   crash if intervals are created or removed.

We need a proper fix for the webkit issue which we will get
when we migrate to Qt5.
2013-04-25 21:18:33 +01:00
Mark Liversedge
67d5cfdf59 Visual signpost for search/filter
.. scope bar colors update
.. needs fixing up for the Mac
2013-04-24 21:01:50 +01:00
Mark Liversedge
11bcf43cbe Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2013-04-23 21:39:53 +01:00
Mark Liversedge
90c0739fc2 Fix urls in FAQ document 2013-04-23 21:39:10 +01:00
Mark Liversedge
5dc47bdde9 Column Chooser Still Too Big
.. made font smaller so now just about squeezes onto
   a netbook 800x600.

.. we need to make it a scrollarea so it can be much
   smaller.
2013-04-23 07:02:08 +01:00
Damien
128ab286e5 AllPlot: Save last showTemp value for ridePlot 2013-04-22 22:21:51 +02:00
Mark Liversedge
aa59239aa4 Choose Columns Matrix on Netbooks
The choose columns matrix is to big for a typical notebook display.
This little update makes it wider and not so tall.
2013-04-21 22:07:00 +01:00
Mark Liversedge
9eb5a10182 Fix FitRideFile 'hangs'
We now only interpolate for gaps less than 30 minutes since
some corrupt files may be longer (or forgot to press stop).
2013-04-21 18:02:00 +01:00
Mark Liversedge
b8d3f8d8fd Update v3 release notes
.. to include metric histogram plot.
2013-04-20 17:50:03 +01:00
Mark Liversedge
aa788dcf9e Metric Distribution
Show BlankState when no results for date selection.
2013-04-20 11:18:01 +01:00
Mark Liversedge
10e28e7978 Fix array bound SEGV
.. double to int conversion rounded up and caused an
   array bounds segv. just added 1 to the initial resize
   of the array to avoid.

.. annoying since I performed considerable testing of the
   metric histogram on Mac, but this crashed almost immediately
   on Linux. Bah.
2013-04-20 11:08:02 +01:00
Mark Liversedge
b6059cc75b Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2013-04-20 10:42:14 +01:00
Marc Boudreau
9440c234ad Notes (<cmt/>) from PWX files not added as RideFile tags... 2013-04-20 10:40:21 +01:00
Alejandro Martinez
e1b899d53c Enabled progress translation in PowerTap download
Updated spanish translation
2013-04-20 10:40:21 +01:00
Mark Liversedge
1b16b034bd Metric Histogram Plot
Update to the histogram plot to now plot long term metrics.
It enables you to plot distribution of say, Intensity Factor
for a season or cycle.

You can select the y-axis metric too, so rather than just
plotting duration you could plot say, TSS accumulated for
different ride intensities.

Fixes #560
2013-04-20 10:35:44 +01:00
Mark Liversedge
401b900003 Merge pull request #579 from MrMarc/master
Comments in PWX files not visible in RideFile Tags
2013-04-20 00:20:17 -07:00
Marc Boudreau
86841698b9 Notes (<cmt/>) from PWX files not added as RideFile tags... 2013-04-19 23:53:47 -04:00
Mark Liversedge
be6fcb7b5a Merge pull request #574 from amtriathlon/master
Enabled progress translation in PowerTap download
2013-04-16 23:26:33 -07:00
Alejandro Martinez
a531befa01 Enabled progress translation in PowerTap download
Updated spanish translation
2013-04-16 19:02:44 -03:00
Mark Liversedge
e71569043a Merge pull request #571 from amtriathlon/master
Use Distance as a PMC metric
2013-04-15 02:37:27 -07:00
Alejandro Martinez
700f5d989a Use Distance as a PMC metric
Fixes #570
2013-04-14 18:10:12 -03:00
Mark Liversedge
c4974e1dfa Fix PerformanceManager curve disappear
.. truncating the front of the sts/lts arrays also
   truncated the xday array which mean't it didn't
   start from 0.

.. left code in there, but commented out with a
   comment to explain in case anyone is tempted to
   add it back in the future.
2013-04-12 23:29:52 +01:00
Damien
586b5d8cb4 Restore sizes after sidebar reshow
fixes #568
2013-04-12 19:32:41 +02:00
Damien
b836b5db30 No resize of left sidebar after reshow 2013-04-12 17:04:45 +02:00
Mark Liversedge
baafe10563 Use Work as a PMC metric
.. twas very trivial to add.

Fixes #564.
2013-04-11 19:39:35 +01:00
Mark Liversedge
6a11f68f0b Merge pull request #567 from amtriathlon/master
Enabled translation of GroupBy labels and formats in RideNavigator
2013-04-11 07:50:59 -07:00
Alejandro Martinez
c5ff16fe08 Enabled translation of GroupBy labels and formats in RideNavigator 2013-04-11 11:46:45 -03:00
Mark Liversedge
ca17b09b00 Fix repaint of intervals when one changes 2013-04-10 21:31:51 +01:00
Mark Liversedge
5786e49a3e Merge pull request #566 from amtriathlon/master
Enabled translation of BatchExportDialog
2013-04-10 11:58:32 -07:00
Alejandro Martinez
3290921588 Enabled translation of BatchExportDialog
Updated Spanish Translation
Updated Italian Translation (by Marco Piccirilli)
2013-04-10 15:55:57 -03:00
Mark Liversedge
9c5adfdcad Fix CP chart SEGV on delete ride
.. referencing combo box when in range mode.
2013-04-10 19:29:06 +01:00
Mark Liversedge
5f12fbe19a Version String Error
.. in aboutdialog.cpp, accidentally commited earlier
   this month in prep for V3.0 release candidates.
2013-04-10 18:53:48 +01:00
Mark Liversedge
94e6e223e7 Further updates for Windows NSI script
.. to add in MingW32 dlls and dependencies
2013-04-10 18:31:01 +01:00
Mark Liversedge
d2bf20d9e9 Fix StressCalculator SEGV
.. when season starts before first ever recorded ride.
2013-04-10 17:37:21 +01:00
Mark Liversedge
4e512bac2e RideImport MUST notify charts
Essentially reverting the commit 0ba93fe61
2013-04-10 12:43:20 +01:00
Mark Liversedge
961d8a0c46 Deprecate the old INITIAL[SL]TS settings
Since you can no longer edit them but they were
still being used by stress calculator to seed initial
Short Term and Long Term Stress.
2013-04-09 14:35:31 +01:00
Mark Liversedge
4db2ffab8d Fix LTM useToToday bug
If you change the date setting toa/from and back to
useToToday then refreshes never happen.
2013-04-09 13:48:13 +01:00
Mark Liversedge
e0aa34502e New chart dialog no stay on top
.. to avoid clashing with dialogs opened from the chart
   settings.

Fixes #562.
2013-04-08 19:45:06 +01:00
Mark Liversedge
ef3580225a Merge pull request #561 from amtriathlon/master
UI Nits: enlarge Aerolab Crr box to fit the allowed 6 decimal places
2013-04-07 06:24:29 -07:00
Mark Liversedge
0768e604ff Color fixups for Windows
.. tested on Windows 8.
.. still needs foxus rectangle on the search box
   in Mac to be drawn properly.
2013-04-07 13:34:56 +01:00
Mark Liversedge
f8414d4a5a Minor focus/highlight fixups Linux
Search box gets a focus and the calendar highlighting uses
the default palette highlight -- only good for new installs
or if the user resets their colors but at least it now does
the right thing.

Need to test and fixup on Mac and Windows.
2013-04-07 13:19:40 +01:00
Gareth Coco
553e122f50 Appearence fixes
Allows Popup Text color to be set on certain OS.
Sets current day in calendar to a color you can see the date with.

Fixes #552
2013-04-06 19:31:00 -04:00
Alejandro Martinez
647b1e4cb9 UI Nits: enlarge Aerolab Crr box to fit the allowed 6 decimal places 2013-04-06 19:42:19 -03:00
Damien
08f09512e0 RideFile: If we have temperature but the first point have no value use 0 insteed of noTemp value. 2013-04-06 22:40:23 +02:00
Mark Liversedge
fc6e4cd215 UI Nits: Move searchbox toolbutton
.. to the right 2 pixels on Windows/Linux
   Seems obsessive but if I'm gonna look at this for the
   next year I want it to be perfect.
2013-04-06 15:36:25 +01:00
Mark Liversedge
5ffe31bf4c Fix white specs on Download Icon
.. only affected Windows and Linux.
2013-04-06 15:27:37 +01:00
Mark Liversedge
a407f27daa UI Nits: Search box clear icon
.. more like a Mac and better suited to rounded edges.
2013-04-06 14:59:18 +01:00
Mark Liversedge
6ab186599f Deprecate QtMacSearchBox
We now only use the SearchFilterBox on all platforms.
2013-04-06 14:22:41 +01:00
Mark Liversedge
a35a1790f3 UI Nits: Activity list cosmetic
Drives me mad, but the separator line was over painted
and it just looked amateurish. Been meaning to fix it for
absolutely ages!
2013-04-06 12:57:16 +01:00
Mark Liversedge
79c8a1cc09 Remove bubble from DiaryWindow
Now we have a decent sidebar calendar it is redundant
and furthermore it is fugly!!
2013-04-06 11:44:24 +01:00
Mark Liversedge
0264ae10e7 Don't start in full screen]
If you close or crash in fullscreen mode then it is
restored on startup but not in fullscreen mode. So
it is impossible to shrink -- this is particularly
relevant on Windows 8.

We now restrict the initial size to always be 60px
smaller in x and y than the actual screen size.
2013-04-06 10:55:46 +01:00
Mark Liversedge
9aa7651651 Fix calendar hide/show crash
.. by hiding not deleting minicharts. Its better this
   way since deleting and recreating them all is very
   expensive and the layout code breaks as a result.
   It is an edge case for optimisation anyway.

.. so if you expand out the sidebar and have lots of
   minicalendars then shrink it down again then it
   will be slow to update.

Fixes #550.
2013-04-06 10:40:34 +01:00
Damien
46acd9e72d FitRideFile: Use the slope value 2013-04-06 09:51:11 +02:00
Damien
e2e004406a FitRideFile: Correct wrong copy-past 2013-04-05 23:04:11 +02:00
Mark Liversedge
8102d96ded UI Nits: SearchBox icon/tool position tweak. 2013-04-05 20:26:34 +01:00
Mark Liversedge
54771dfbc0 UI Nits: Search Box Height 21px 2013-04-05 20:20:29 +01:00
Mark Liversedge
59aee2b0cc Merge pull request #559 from amtriathlon/master
Enabled translation of Season and Event details
2013-04-05 12:05:52 -07:00
Mark Liversedge
13b1e8aa58 Search Box Rounded Corners for Linux/Windows
.. it looks ok.
2013-04-05 19:54:38 +01:00
Mark Liversedge
67962d8489 Images missed off on 2 prior commits 2013-04-05 19:47:52 +01:00
Alejandro Martinez
80f5e6c418 Enabled translation of Season and Event details
Updated spanish translation
Updated german translation (by Tilman Schmiedeberg)
2013-04-05 15:46:56 -03:00
Mark Liversedge
c822c566e0 UI Nits: Searchboxm on a Mac cosmetics
.. just rounded corners and slightly different icons.
2013-04-05 19:45:37 +01:00
Mark Liversedge
69298ef7c2 Mac allow search AND filter on toolbar
.. to support the recent update to allow search filter across
   the charts as well as the sidebar.
2013-04-05 19:04:40 +01:00
Alejandro Martinez
7ae38c20b7 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2013-04-05 14:46:40 -03:00
Mark Liversedge
f5bbcae001 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2013-04-05 18:30:04 +01:00
Damien
ad98de20f7 SyncRideFile: Uniformise manufacturer name 2013-04-05 18:46:34 +02:00
Damien
2bdeae80a9 FitFile: Add O Synce in manufacturer and navi2coach in product 2013-04-05 18:34:14 +02:00
Mark Liversedge
31ced60209 Search/Filter on toolbar applies to Charts
When the user free text searches or applies a data filter in
the top right toolbar search box it gets applied to any charts
that plot data from many rides, including;

- CP curve
- Calendar
- Histogram
- LTM
- TreeMap
- Summary

I need to update on a Mac to no longer use a Mac text search box
but now use a search filter box on the top right.
2013-04-05 16:23:16 +01:00
Mark Liversedge
d656981d5e Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2013-04-05 09:17:25 +01:00
Mark Liversedge
61c265ddbf Fix filtering on ridesummary window
.. to apply to the list of activities too.

Fixes #556.
2013-04-05 08:38:54 +01:00
Mark Liversedge
ddbe9ef6de Merge pull request #555 from amtriathlon/b7f7b3aa3729366f0f3ee1a17aefcb04a2f8880a
Enabled translation of Search and Group By
2013-04-04 12:25:59 -07:00
Alejandro Martinez
3e44fc8b03 Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2013-04-04 11:12:19 -03:00
Alejandro Martinez
4a1766f57b Enabled translation of Search and Group By
Update spanish translation
Update italian translation (by Marco Piccirilli)
2013-04-04 11:10:41 -03:00
Mark Liversedge
df4db4a169 Merge pull request #554 from cleeland/master
fix issue #553
2013-04-03 22:15:37 -07:00
Chris Cleeland
6a5a33c231 Fix issue #553: take metricDetail->fillCurve from the checkbox state
rather than using the pointer.
2013-04-03 23:00:14 -05:00
Damien
c7b2c9c258 RidePlot: Correct min value for altitudes less than zero
fixes #527
2013-04-04 00:16:23 +02:00
Mark Liversedge
a131eac7cb Merge pull request #551 from amtriathlon/1fedaf4e7233af54c5441f77cb46744581cc36f1
Enabled ScatterPlot axis legend translation
2013-04-03 08:25:27 -07:00
Alejandro Martinez
94c023ed9b Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2013-04-03 11:54:51 -03:00
Alejandro Martinez
a5b8b12bba Enabled ScatterPlot axis legend translation 2013-04-03 11:53:30 -03:00
Mark Liversedge
7a2c22cde3 Fix stresscalculator 2-a-day bug.
If >1 rides per day stresscalculator ignores after the first
ride, this was caused by a flawed strategy for seeding the STS
and LTS with non-zero values.

We now seed with negative values and switch signs as we pass over
the date during calculation.

Fixes #549.
2013-04-02 14:11:45 +01:00
Mark Liversedge
2ecca113af Merge pull request #547 from amtriathlon/master
Enabled translation of supported devices legend in DeviceTypes.cpp
2013-04-01 23:14:28 -07:00
Alejandro Martinez
9b304b59dc Enabled translation of supported devices legend in DeviceTypes.cpp 2013-04-01 20:18:44 -03:00
Mark Liversedge
bc5944d29b WIN32 NSI missed off libusb0.dll 2013-04-01 20:32:10 +01:00
Mark Liversedge
b0315c5618 Merge pull request #544 from amtriathlon/master
Enable translation of welcome text in BlankState.cpp and Wheelsize in Pages.cpp
2013-04-01 12:29:10 -07:00
Mark Liversedge
c587e9a67d WIN32: NSI build script updated
.. to include new V3 dependencies.
2013-04-01 19:25:44 +01:00
Mark Liversedge
48ed6fa1cf CLucene is optional!
.. and link with -lclucene-core not -lclucene

Fixes #543.
2013-04-01 17:56:00 +01:00
Alejandro Martinez
c7e6673e42 Enable translation of welcome text in BlankState.cpp and Wheelsize in Pages.cpp 2013-04-01 13:12:38 -03:00
Alejandro Martinez
c3936eb86a Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2013-04-01 13:03:37 -03:00
Mark Liversedge
c6dc032974 RideSummary summarise Activities
When summarising a date range we now list the rides
where on a ride summary it would list intervals.

Fixes #542.
2013-04-01 11:54:33 +01:00
Mark Liversedge
b5aa5baee6 Merge pull request #541 from amtriathlon/27740dbe5c3c23d2f2f5112b926b2fae0955e8bc
Update Spanish Translation and enable additional translations in Devices
2013-04-01 00:46:05 -07:00
Alejandro Martinez
02f2ae700f Merge branch 'master' of https://github.com/GoldenCheetah/GoldenCheetah 2013-03-31 21:12:01 -03:00
Alejandro Martinez
796c55b74c Enable translations in Devices and update spanish translation 2013-03-31 21:10:58 -03:00
Mark Liversedge
3f1cf7f1da Documentation: Manual Chapter 3 WIP
.. committing for the day.
2013-03-31 22:01:38 +01:00
Mark Liversedge
cd23ecf2ec Added CLucene patch for Win32
It corrects removal of threading support against the 2.3.3.4
head. This is required for Windows builds at present.

I also added an INDEX in the contrib directory for all the
other things we've snaffled into the repository.
2013-03-31 18:11:53 +01:00
Mark Liversedge
1de92b9091 Update gcconfig.pri.in for latest libkml
.. minimum versions (i.e. 64bit)
.. additional dependencies (minizip etc)
2013-03-31 16:01:44 +01:00
Mark Liversedge
dd168b4263 Repaint in DiaryWindow
.. now we've optimised out the model resets the diary window
   (calendar chart) needs to explicitly repaint when a ride is
   selected because the model won't reset unless the ride selected
   is for a different month to the one currently shown.
2013-03-31 14:46:34 +01:00
Mark Liversedge
7af0c6a55b GcCalendar optimizations
Updated GcCalendar and GcCalendarModel to reduce model
refreshe and redraws when not visible or the month/year
hasn't changed.

Fixes #538.
2013-03-31 13:10:54 +01:00
Mark Liversedge
527d179225 Clear stale flag when update!
.. last commit missed the critical line of code.
2013-03-31 02:05:06 +01:00
Mark Liversedge
f34867a1fd GcCalendarModel optimise updates
.. don't reset if the current month and year are the same as
   the current selection and no rides have been added or deleted.
2013-03-31 00:59:32 +00:00
Mark Liversedge
8c51a5d77d MultiCalendar updateEnabled setting
.. in setRide() to avoid 'flickery' update.
2013-03-31 00:32:30 +00:00
Mark Liversedge
c61a34dcd6 Multicalendar double update fixups
.. lots of unneccessary setting of dates and refreshing optimised out.

.. but probably more lurking coz we handle updates from all over the
   place and worse to miss one than do it twice in most cases.
2013-03-31 00:23:14 +00:00
Mark Liversedge
c229362ead Revert "Code Cleanup: RideFileCache remove mallocs"
This reverts commit 6fdc55528f.

The performance decrease is considerable. Using mallocs across
my personal ride collection takes 5:19 to compute all the caches.
Using the QVector equivalent took 22:40.

Need to consider looking at QVector across the GC codebase.
2013-03-30 21:33:01 +00:00
Mark Liversedge
a2dbd911f1 Defer metric refresh till end RideImportWizard
.. speeds up large imports considerably.
2013-03-30 20:33:36 +00:00
Mark Liversedge
b0153a8c88 DataFilters: Summary should have a filter
Missed off by accident when filtering was added.

Fixes #536.
2013-03-30 09:54:58 +00:00
Mark Liversedge
4d39f00fce Translation: More texts now available
Including
* ScopeBar 'Home', 'Analysis' selection names
* Downloaders: Powertap, Calendar
* Wizards: Split, Add device
2013-03-30 08:12:44 +00:00
Mark Liversedge
8b29284fd2 Refresh all curve when spikes edited and saved
.. will refresh after the metrics and cpx have been refreshed

.. it invalidates the data rather than refreshing immediately
   since thats expensive and better wait until refresh is needed.
2013-03-29 19:33:43 +00:00
Mark Liversedge
76c11b3568 Invalidate incore cache when refreshing
If an incore cache of an aggregated RideFileCache is invalidated
by a ride in the same period being edited it does not clear
until the cache array is cleared (25 of them so likely to be
never) or upon a restart.

This fixes them being invalidated by refreshCache.
2013-03-29 18:15:34 +00:00
Mark Liversedge
4aedb862f3 Add Timex PWX file to test rides
.. used to recreate 2s recording bug #533.
2013-03-29 15:38:17 +00:00
Mark Liversedge
830f4c5e63 Improved deduction of PWX recording interval
Fixes #533.
2013-03-29 15:33:14 +00:00
Mark Liversedge
c024d36d6f Merge pull request #532 from dresco/geometry-fix
Fix for 'stuck in full screen' issue
2013-03-28 14:43:41 -07:00
Jon Escombe
364c92d0b9 Fix for 'stuck in full screen' issue
When GC is restarted after being closed full screen, the saved geometry
is larger than the actual screen size - resulting in the title bar being
drawn off screen & not easily reachable.

This patch checks whether the saved geometry is larger than the current
screen size, and resizes to the screen size instead of the saved values.
2013-03-28 19:44:35 +00:00
Mark Liversedge
7834870415 UI Nits: Use a toolbutton on the handle
The animation on clicked for a pushbutton was fugly on a Mac.
2013-03-28 13:16:57 +00:00
Mark Liversedge
0f03a12a06 Documentation: Chapter 3 update
.. menu bar documented, still need to do remaining elements of
the main window.
2013-03-27 21:23:43 +00:00
Mark Liversedge
4a75a4e9cd Fix color bug "in Italian"
.. actually it was an uninitialized variable bug introduced
by the earlier fix for the calendar model.

Caused by new code checking if an index was -1 before setting
it, but forgetting to initialise it to -1 to begin with.

Fixes #531.
2013-03-27 20:23:33 +00:00
Mark Liversedge
b580644e26 Fix searchbox dropdown alignment
Fixes #528.
2013-03-27 19:32:12 +00:00
Mark Liversedge
7e8c061736 Fix calendar issue for Italian translation
.. it turns out the translation for Data and Date are both
Data!

.. we now use the first column that matches when seeking special
fields. This is a bit of a hack, but good enough for now.

Fixes #530.
2013-03-27 09:08:56 +00:00
Mark Liversedge
f2c5ff23dd Fix foreign characters (e.g.Umlaut) in JSON parser
Thanks to Walter Burki.

Fixes #529.
2013-03-26 20:54:51 +00:00
Mark Liversedge
1ee25cd881 Documentation: Palatino Fonts
Prettify the pdf output to use palatino fonts from the GNU Press.
Also started to work on chapter 3 of the user guide, but it is
far from finished.
2013-03-26 16:28:34 +00:00
Mark Liversedge
5dcb94729a Documentation: Manual Chapter 2 Completed
.. very basic quick start guide
.. but doesn't cover train view, perhaps it should
2013-03-25 21:39:10 +00:00
Mark Liversedge
405e7eee58 Documentation: Indentation and Item Lists
.. minor tidy up
2013-03-25 14:09:18 +00:00
Mark Liversedge
8fb7ef5246 Documentation: Manual Chapter 1 completed.
.. bit of an intro, no screenshots.
2013-03-25 12:57:34 +00:00
Mark Liversedge
7b8e8e2bd7 Datafilter support older versions of Flex
.. just like JsonRideFile and Withings parsers.
2013-03-24 20:40:51 +00:00
Mark Liversedge
832fdecdd8 UI Nits: RideMetadata clean look on Windows
.. remove the ugly frame.
2013-03-24 17:34:35 +00:00
Mark Liversedge
112531e9b5 UI Nits: Bubble use antialias
.. looks MUCH better.
2013-03-24 17:21:21 +00:00
Mark Liversedge
f8dc154fa2 UI Nits: Splitterhandle cosmetic on Linux
.. no orange focus rectange thanks.
2013-03-24 16:42:40 +00:00
Mark Liversedge
4eba9dfedb UI Tweaks: Splitter pushbuttons problem
.. attempt to resolve issues on Linux Mint reported
by Tom Weichmann.
2013-03-24 16:30:25 +00:00
Mark Liversedge
32112b1ac5 Deprecate 'Save CP' button on CP curve
Since it is flawed and confusing to almost all users.
2013-03-24 15:43:07 +00:00
Mark Liversedge
d5b19959cb Documentation: Makefile adjusted
.. to add a clean rule
.. to remove need for html version
2013-03-24 13:07:08 +00:00
Mark Liversedge
1b23ad8539 Fix Diary view refresh on first select
When youi switch to Diary view no date range is known by the
charts because they have just been created. Since we have a
lazy create we need to resignal the date range after they
are created.

This was already in MainWindow with a call to GcCalendar::refresh
but a recent update optimised that out.
2013-03-24 12:44:09 +00:00
Mark Liversedge
6365ecf337 UI Nits: Sidebar calendar expanding
.. add more minicalendars if the sidebar is expanded -- so
you can show calendars in columns and rows.
2013-03-24 10:56:58 +00:00
Mark Liversedge
448a76dbe4 Add FAQ for close chart and find preferences pane
.. maybe the menu tick should be more blatant.
2013-03-23 22:45:40 +00:00
Mark Liversedge
571411ea15 Calendar highlighting tweaks
.. personal tastes, so should make configurable. But its nice to
make it the same as the a focus rectangle on Mac.
2013-03-23 21:34:55 +00:00
Mark Liversedge
7c1a9bf987 Search highlighting on Calendar
.. hover color changes to differentiate.
2013-03-23 21:23:02 +00:00
Mark Liversedge
4358e152dd Fixup search highlighting
.. on Linux/Windows since its slightly different.
.. also fixes a SEGV
2013-03-23 21:06:10 +00:00
Mark Liversedge
3a1e3126fb Search/Filter applies to Calendar
The search/filter selects in the activity list but doesn't
highlight the rides on the calendar.

This patch highlights the dates that have activities that
match with a red border and a red number.
2013-03-23 20:45:13 +00:00
Damien
fa3d1f423f Strava upload : send selected channels only in TCX mode 2013-03-23 17:54:07 +01:00
Mark Liversedge
233114b785 Strava download fix SEGV
After download fails a .strava file is left in the
athlete directory. This is picked up on restart and
causes a crash.

We now create the temporary file in a temporary
directory to avoid this issue.

Fixes #525.
2013-03-23 10:53:58 +00:00
Mark Liversedge
8afa3e9f4e Documentation: Manual images sorted
.. example on the cover page of the manual

.. we need them to follow a naming convention
   if section-keyword.pdf, e.g. 0-icon.pdf for
   the icon on the title page (section 0).
2013-03-23 09:33:12 +00:00
Mark Liversedge
a0d7b0e1a1 UI Nits: Splitter menu button sizes
.. made toolbar larger and icons larger.
2013-03-23 08:57:39 +00:00
Mark Liversedge
f5388a1b9a Fix multicalendar repaint bug
After taking out the double refresh in the previous commit
we got a bug with the last selected date stating highlighted
when clicking on the left and right buttons.

Fixed by signalling date changes after the model has been
queried. Still lots faster than before.
2013-03-22 19:36:17 +00:00
Mark Liversedge
0d6c2a7eaa Fix Sidebar multicalendar refresh bug
.. it didn't refresh properly when a ride was added
removed or edited

.. also fix a double update call, so its a bit snappier
now.
2013-03-22 18:56:49 +00:00
Mark Liversedge
1470c0e20f Documentation: Manual fixup and Makefile
.. and added raw PDF with no content.
2013-03-22 18:04:56 +00:00
Mark Liversedge
747449b336 Documentation: Manual structure and markup
.. but no content or images yet.
2013-03-22 17:35:25 +00:00
Mark Liversedge
60c2e05264 Documentation: Update FAQ for seeding CTL
.. since we have now added it to the season definition.
2013-03-21 22:03:24 +00:00
Mark Liversedge
9a33b86d1f Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2013-03-21 21:51:41 +00:00
Mark Liversedge
aea4b05da3 Seed LTS from Season used in PMC
.. StressCalculator updated to use the stress seeded for
the period in question
2013-03-21 21:50:50 +00:00
Mark Liversedge
a65afe550c Documentation: Full User Manual Structure
.. but no markup yet
2013-03-21 20:38:45 +00:00
Mark Liversedge
cab2c68857 Add Starting LTS to Season
.. so we can seed 'CTL' for the PMC charts
2013-03-21 19:50:18 +00:00
Mark Liversedge
f95302ce07 Fix egregious ommission in the V3 credits
.. the project founder and all round ace guy was missing:
   SEAN RHEA!

.. sorry.
2013-03-20 07:04:30 +00:00
Mark Liversedge
890830a3f8 Documentation: V3 Release Notes
.. with key features, credits and a list of contributors.
2013-03-19 21:27:40 +00:00
Mark Liversedge
ba2ecf455c UI tweaks: Slightly darker toolbar buttons
.. on Linux and Windows to match the toolbar background.
2013-03-19 17:23:51 +00:00
Mark Liversedge
233bbcd363 Documentation: Add the doc outputs to git
.. no longer ignored in .gitignore

.. they are committed to the repo in the same
   way that translation .qm files are

.. in this way those without the right tools installed
   (in this case tex and texinfo tools) can still use
   them.
2013-03-19 16:39:21 +00:00
Mark Liversedge
15e537564f Documentation: Filenames too generic
.. So FAQ becomes GC3-FAQ
.. and Manual becomes GC3-Manual

This is just so they can be distributed and installed in their own
right and still be identifiable as GoldenCheetah v3 files.
2013-03-19 15:35:43 +00:00
Mark Liversedge
651b02f7af Documentation: Added a Makefile
.. to create pdf, html and info files
.. and .gitignore to ignore outputs
2013-03-19 15:23:59 +00:00
Mark Liversedge
1b60c6feb8 Documentation: Fix menu for makeinfo on FAQ
.. the nodes needed next, prev, up set so we could
   create an info file using makeinfo
2013-03-19 14:53:07 +00:00
Mark Liversedge
39ff7e8ae4 Documentation: Initial FAQ
.. completed and fixed up content
.. initial basic texinfo markup done
2013-03-19 12:16:43 +00:00
Mark Liversedge
3e09cf24be Documentation: Completed FAQ content
.. all questions answered.

.. pulled in R.Chung's paper on VE to reference in
   one of the answers. It gets stored for posterity now.
2013-03-19 10:28:37 +00:00
Mark Liversedge
cfd4bd6215 Documentation: User Documentation Content
.. restructured the doc directory to distibguish between
   website content and user documentation

.. added basic content for FAQ and Manual, but neither
   are complete and contain no markup
2013-03-19 09:46:51 +00:00
Mark Liversedge
ba225edf53 Remove rename single interval functionality
.. since it is superceded by the ability to edit all
   the interval details, including start and stop time
2013-03-19 07:05:48 +00:00
Damien
a3bcbf3454 Correct min value for speed axis 2013-03-18 21:58:22 +01:00
Mark Liversedge
dad5cd2064 Missed ModelPlot for IntervalItem.h
.. after removing it from MainWindow.h
2013-03-17 22:17:15 +00:00
Damien
71e919775e Display negative temperatures (and respect temperature units) in AllPlot
fixes #466
2013-03-17 22:51:48 +01:00
Mark Liversedge
c6f6dfec70 Add interval sort function
.. added to the splitter handle context menu

.. also took IntervalItem.h and IntervalTreeView.h from MainWindow.h
   coz I was getting pissed with recompiling everything when changing it.
   Thats why so many other files have been changed in this commit.

Fixes #338.
2013-03-17 21:29:47 +00:00
Mark Liversedge
cdd1fa9ded Fixup edit interval
.. now updates the ridefile (via updateRideFileintervals)
.. and uses a QTimeEdit rather than raw seconds
2013-03-17 19:42:38 +00:00
Damien
f4495bcd3b Edit interval 2013-03-17 15:29:54 +01:00
Damien
ab58d0169f Joule GPS : handle negative temperature 2013-03-17 15:29:54 +01:00
Mark Liversedge
645d3b3fe4 Fix SEGV on delete first activity
.. the RideFile::data member is used by the ride editor and was deleted
when a ridfefile is deleted, but we have no way of telling the editor.

.. now doesn't delete, which is a small memory leak.
2013-03-17 14:22:44 +00:00
Mark Liversedge
37581c1e70 Rename/Renumber intervals
.. will use entered text and append 1,2,3 etc
.. or if entry ends with a number, will start from that
.. eg; "Int#3" will result in "Int#3", "Int#4" .. "Int#n"

Fixes #513.
2013-03-17 10:31:41 +00:00
Mark Liversedge
145b10014c Kickr Fixups for WF Api 3.0beta08
.. still has a 20sec connection issue
.. no longer crashes on BTLE reset
2013-03-16 21:48:10 +00:00
Chris Cleeland
969bbc563e Pre-patched version of libusb tarball
Primarily for Mac OSX builds.
2013-03-16 17:54:27 +00:00
Claus Assmann
2ae55153a2 OpenBSD support for ANT sticks
.. just sets up another o/s version
2013-03-16 14:27:51 +00:00
Mark Liversedge
b1feef1c6c UI Nits: Use our own icons not standardIcons
.. for left and right in the calendar, since the standard ones
are pretty ugly.
2013-03-16 13:51:50 +00:00
Mark Liversedge
0106a8f754 UI Nits: Calendar '<' and '>' icons
.. use the native styling.
2013-03-16 13:14:00 +00:00
Mark Liversedge
04036d7312 LTM: Add fill curves option
.. so you can fill below the curve.
.. also added a 'version' field for the file format for metric
   details, so we can add more fields later.
2013-03-16 11:17:09 +00:00
Mark Liversedge
42280f47b6 Code Cleanup: Win compile with CLucene 2013-03-16 11:16:56 +00:00
Mark Liversedge
0abcde16d4 UI Nits: Date Settings "un-scrunched"
.. no space in the layout of the date settings edit
dialog made all the options scrunched up. Just added
some 5px spacing to breath some air into it.
2013-03-15 21:18:10 +00:00
Mark Liversedge
b71d532c9f UI Nits: Side Calendar border
.. fixed bug in GcLabel::paint that makes a nasty border
on the day which makes it look like a button. yuck.
2013-03-15 21:06:00 +00:00
Mark Liversedge
58a1f33db1 Windows: GcLabel/GcCalendar font bug
.. GcLabel::paint didn't honour font settings
.. Fonts too big on Windows .. looks better smaller for some reason
2013-03-15 20:59:59 +00:00
Claus Assmann
88a3a754b0 Fix typos in FixHRSpikes
.. just changes to text
2013-03-15 20:32:03 +00:00
Mark Liversedge
59b4a843a7 Windows: Tooltips
.. but qtsegmentcontrol ignores them. ugh.
2013-03-15 20:11:37 +00:00
Mark Liversedge
73d295d0d3 Windows: style selection fixup
.. infinite loop when clicking style selector on Linux or
Windows fixed and signals reconnected.
2013-03-15 19:46:21 +00:00
Mark Liversedge
c6530d6ba8 Fix WIN startup SEGV with scopebar no ICAL
.. pesky indexing into scopebar when ical not compiled in
2013-03-15 18:57:48 +00:00
Mark Liversedge
37dd62e4aa Windows: Toolbar tweaks
.. menubar color
.. toolbar smaller since contains menu bar
2013-03-15 18:17:43 +00:00
Mark Liversedge
ebdb8e65bf Windows: View selection
.. scope bar select item lines up with menu choice now.
2013-03-15 17:38:44 +00:00
Mark Liversedge
3399ec604d Windows: Font sizes and cosmetics
.. for the sidebar and scope bar
.. use the same and better fit for windows fonts
2013-03-15 17:15:26 +00:00
Mark Liversedge
3a3a35aba0 Windows: Toolbar buttons style
.. use cleanlooks since its very close to the Mac look
we are trying to achieve, but without the metal finish.
2013-03-15 16:52:35 +00:00
gcoco
16c5029a38 Whitespace cleanup 2013-03-14 22:54:57 -03:00
Mark Liversedge
5bdf897ca0 Fix Windows Look and Feel crash on ICAL
.. fixed crash when compiling without ICAL
.. I found because my Windows build doesn't have ICAL
2013-03-15 00:22:48 +00:00
Mark Liversedge
dbab14f4fe Windows Look and Feel Mac Fixups
.. fixes the Mac build
.. Windows still crashes
2013-03-15 00:13:48 +00:00
Mark Liversedge
8812de5711 Windows Look and Feel
.. akin to the Mac look and feel
.. still needs a bit of cosmetic work, but basically sound
.. also added in fixes to native file imports

Fixes #404
Fixes #504
2013-03-14 22:53:37 +00:00
Mark Liversedge
2927ff0390 GcLabel paint is a CPU hog
.. and for no good reason.
2013-03-13 20:27:32 +00:00
Mark Liversedge
f37ff8a728 Replace fopen() in JSON ride file reader
.. since it fails to open files with foreign characters in the
path name. We now read via QFile into a buffer.
2013-03-12 08:32:53 +00:00
Mark Liversedge
97ef810003 Fix JSON reader ignoring open fail
D'oh.

The ridefile reader for JSON files spotted when a file failed
to open but then continued to try and parse it!  Now returns NULL
when fopen fails.

This is particularly relevant when using foreign characters in
a filename passed to fopen(). We need to remove the fopen stuff
and replace if QFile reading to a buffer.
2013-03-12 07:47:58 +00:00
Mark Liversedge
93e17af8c5 Fix LTM group by selection
Fixes #499.
2013-03-11 21:15:54 +00:00
Mark Liversedge
7832299fe7 Remove big numbers at top of Diary calendar
Especially since the date selected is almost irrelevant on the
diary sidebar anyway!
2013-03-11 20:34:18 +00:00
Mark Liversedge
0c3c42d027 Calendar sidebars now show multiple months
.. if you resize them they will show as many months
as they can fit vertically.

.. also removed the scrollbars in the summarys shown
in the diary and LTM sidebar

Fixes #503.
2013-03-11 19:44:45 +00:00
Mark Liversedge
4baaf545f4 UI Nits: Splitter handle show/hide button gone
.. taking out last remnants in the code from previous design. This will
also remove the focus block that appears on calendar handle in diary view,
but only really visible on Linux with Gtk/Gnome.
2013-03-11 13:21:05 +00:00
Mark Liversedge
ba42c27346 More Linux file dialog workarounds
.. for export activity and export metrics.

Fixes #504. (again, it was reopened).
2013-03-11 12:39:29 +00:00
Mark Liversedge
3cfa9048cf Reinstate mini calendar on sidebar
This is the first step to reinstating the calendar on the analysis view
sidebar. Next step is to enhance it to show multiple months and then to
refactor the diary sidebar GcCalendar to use it.
2013-03-11 12:14:43 +00:00
Mark Liversedge
7b9a4744f6 Fix Histogram window custom date selection
.. it wasn't updated properly when fixing custom
date ranges in LTM.

Fixes #509.
2013-03-11 10:06:27 +00:00
Mark Liversedge
5e212f5bf0 Speed up sidebar painting
.. by setting the linear gradient up in advance rather than
on every repaint.
2013-03-11 09:49:34 +00:00
Mark Liversedge
ff94f95d65 Use QT file dialogs on Linux
.. cause native are borked on Ubuntu.
2013-03-11 09:49:34 +00:00
Mark Liversedge
a8262c2cd8 Explicit memory allocation for CLucene
.. clutching at straws, but more explicit type declaration and usage to
try and resolve Win7 64bit issues with cross-compiled 32bit binaries.
2013-03-09 16:29:51 +00:00
Mark Liversedge
6083ecbb97 Fix sidebar groupby column names error
The visual headings are not reset when the view is reset, for
example after startup. This means the wrong columns are offered
on the activity popup menu for group by.

The resetView() function needed to call columnsChanged() to get
the visual headings reset.
2013-03-09 11:38:04 +00:00
Mark Liversedge
c8e145592d Less right-click on Activity list
.. group by and field chooser now appear on the
popupMenu in the sidebar.
2013-03-09 11:25:32 +00:00
gcoco
6d817c8c28 Added notes on the build
Basically pointed out you need QT 4.8 minimum and that use newer
libs if they exist from Windows except for libusb (0.1.12 required)
2013-03-08 17:20:41 -05:00
Mark Liversedge
a4cd35002a Fix custom date range muddle when groupby weeks
.. the start date would progressively change as you selected a
date range in the sidebar. This is because the code to set the date
range to the start of a week looked at the wrong date variable when
using a custom date range.

Fixes #500.
2013-03-08 15:24:03 +00:00
Mark Liversedge
f4949df9ea LTM tooltip for groupby weeks is misleading
.. it lists start date for this week to start date for next week
.. now changed to say 'Week commencing <date>'.

Fixes #501.
2013-03-08 12:50:42 +00:00
Mark Liversedge
512232d3d6 Fix rename interval SEGV
.. when called from popupMenu.
2013-03-08 07:26:27 +00:00
Mark Liversedge
cb49d94a20 UI Nits: Splitter interval functions
.. final piece of the jigsaw, interval popup menu.
2013-03-07 20:54:40 +00:00
Mark Liversedge
bc191cc5fb Add support for deleting videos
.. but only deletes references and db entry
.. we do not delete from the filesystem -- need to add a dialog
   to ask the user to confirm deleting the file from disk.
2013-03-07 15:23:43 +00:00
Mark Liversedge
0104c32440 Add function to delete workouts
.. in train view we could add workouts but never delete.
2013-03-07 14:34:47 +00:00
Damien
d2e3be3bd3 LTMSidebar: store/use last selected date range 2013-03-05 22:49:42 +01:00
Mark Liversedge
453112693e Dumbass spelling mistake. 2013-03-05 20:13:19 +00:00
Mark Liversedge
0ae9e1f1ca UI Nits: LTMSidebar Splitter simplify to menu
.. remove the + and - options.
2013-03-05 20:00:54 +00:00
Mark Liversedge
3bac8cd4fc UI Nits: Simplify splitter to just one menu
.. instead of + and - and menu.
2013-03-05 19:47:54 +00:00
Damien
b8b32a568f Strava upload: Use TCX format to handle stationary trainer ride 2013-03-04 23:26:13 +01:00
Mark Liversedge
facde109e0 UI Nits: Analysis view menu only
.. need to fix up the event but at least got the code in.
.. still needs the menu implementing.
2013-03-04 22:10:12 +00:00
Mark Liversedge
95d84b4d7c UI Nits: TrainTool splitter shortcuts 2013-03-04 20:42:15 +00:00
Mark Liversedge
4db9a86ee5 UI Nits: Splitter actions for TrainTool Devices
.. add and delete devices.
2013-03-04 16:00:11 +00:00
Mark Liversedge
1a55714d44 Fix Home Sidebar Season Editing
.. it broke when we moved from right click to splitter buttons.
2013-03-04 14:25:09 +00:00
Mark Liversedge
c2f4136da3 Fix SEGV on edit event details
.. part of migration from right click to splitter.
2013-03-04 14:07:17 +00:00
Mark Liversedge
64f95350b4 Code Cleanup: Strava download Xcode warning
.. adding a number to a string.
2013-03-04 13:48:47 +00:00
Mark Liversedge
bb4cb0fdcd Fix SEGV on add/delete event in LTMSidebar
.. need to use selected items, since its not always called via a
right click - there is a button on the handle for that now.
2013-03-04 09:23:41 +00:00
Mark Liversedge
d0c11692c4 UI Nits: Groove highlight line
Seriously OCD / attention to detail, adding the highlight line
on the scope bar, icon bar and splitter handle. Most folks wouldn't
even notice it.
2013-03-03 22:31:05 +00:00
Mark Liversedge
4d9264e034 UI Nits: Emboss Splitter + - menu icons
.. changed icons since they don't emboss well algorithmically
(yeah, the algorithm is very basic for now).
2013-03-03 20:03:12 +00:00
Mark Liversedge
0723d22dc7 UI Nits: Center Icon Bar 2013-03-03 15:23:05 +00:00
Mark Liversedge
37fd29c612 UI Nits: Images embossed
.. akin to the NSImage 'template' function we now pre-process
the GcSplitter icons to get a shaded and embossed look. Its a bit
clunky code, but its only run at startup.
2013-03-03 14:58:16 +00:00
Mark Liversedge
324cd9af3e UI Nits: Stop unhiding the sidebar
.. when switching views. It seemed like a good idea at the
time, but now it is really irritating. If I want the sidebar to
be shown I'll select it thanks.
2013-03-02 23:00:32 +00:00
Mark Liversedge
732c54957e UI Nits: Sidebar remember their state
Rather than relying on the parent to maintain the splitter sizes
and states, the GcSplitter remembers its own state and sizing.

This includes remembering if the children have been hidden via the
icon bar at the bottom of the splitter.
2013-03-02 22:52:41 +00:00
Mark Liversedge
54600b6c1c UI Nits: Splitter icons adjust
The icons are adjusted via utility function iconFromPNG()
which currently just adjusts the icon color to be a muted
gray as opposed to black.

This is the first pass at recreating the 'template' function
used by the cocoa image functions. Will add an emboss feature
later, but at least now they are less vibrant and when clicked
turn black giving a visual clue that they are clickable.
2013-03-02 20:57:56 +00:00
Mark Liversedge
2f7c86bd2c UI Nits: QSplitter colors on Linux
.. just adjusted to be more Gnome friendly.
2013-03-02 18:15:35 +00:00
Mark Liversedge
c04ec45363 Fixup sidebar cosmetics for Linux
.. embossed offset is 2 there too.
2013-03-02 17:37:14 +00:00
Mark Liversedge
3457dd31b9 UI Nits: QSplitter cosmetics
.. prettified on a Mac.
.. still need to work on icons
2013-03-02 16:57:37 +00:00
Mark Liversedge
4aaa2aae4c Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2013-03-02 09:27:05 +00:00
Mark Liversedge
b437abee32 LTMPlot fix baseline setting
.. it was lost when fixing bar style drawing.
.. maybe we should also allow fill under curves?
2013-03-02 09:26:11 +00:00
Mark Liversedge
82eecce8f9 Mac Sidebar button in toolbar
Button to toggle sidebar, also changes as we manually close
the sidebar by dragging, similar to behaviour in XCode.
2013-03-01 13:17:05 +00:00
Mark Liversedge
89f4d5adbb Mac sidebar button image
.. as template image for NSButton
2013-03-01 10:49:29 +00:00
Damien
6b4c88320f UI Nits: Sidebar, invisible root item for intervals 2013-02-28 22:49:28 +01:00
Mark Liversedge
9fbfcc51f8 Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2013-02-28 18:53:03 +00:00
Mark Liversedge
5b78cf62f4 Allow manual collapse sidebar
.. but need to add a toolbar button for Mac since the
old show/hide button on the scope bar has been removed
since it is now in the wrong place.
2013-02-28 18:51:47 +00:00
Mark Liversedge
2ab7ac9e04 Remove german translations for weekly summary 2013-02-28 09:50:26 +00:00
Mark Liversedge
8c5b2de715 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2013-02-28 07:18:30 +00:00
Mark Liversedge
12c8e29627 INSTALL-MAC libusb instructions
Now include the patch required to get a compilation
going. Thanks to Gareth for the link.
2013-02-28 07:16:10 +00:00
gcoco
d17197f3f8 Add Garmin Edge 810 2013-02-28 00:37:23 -05:00
Mark Liversedge
8f73340dee Splitter menu position and tooltips 2013-02-27 19:21:50 +00:00
Mark Liversedge
b3cfa84add New sidebar splitter on Analysis and Diary 2013-02-27 16:03:56 +00:00
Mark Liversedge
f56538d8b7 UI Nits: Splitter decor
Moved icon bar back to the bottom and made Splitter handle
same size as scope bar.

The splitter handle paint artefacts were caused by splitter
size restore from before the "new" splitter. We will need to
rename all the settings to ensure we don't get incorrect sizes
for them in future.
2013-02-27 12:38:18 +00:00
gcoco
7b7d69e264 Added Garmin Edge 510 2013-02-27 06:10:59 -05:00
Damien
0748d5ce90 UI Nits: Sidebar WIP
Move extra menu
2013-02-26 23:12:56 +01:00
Mark Liversedge
1b4a8e0ed5 UI Nits: Fix splitter expanding
Since the treeviews didn't fill the space in the sidebar.
This was because the splitter itself wasn't expanding since it
used the sizepolicy of its children.

.. not sure the class hierarchy is right for this stuff, but will
stick with it for now.
2013-02-26 22:04:35 +00:00
Marco Piccirilli
e815029962 v3.0 Italian Translation
.. all texts translated!
2013-02-26 09:25:16 +00:00
Mark Liversedge
788a48cdfc Splitter for Train View
.. icons and basics. Wanted three treeviews to work on the
issue related to treeviews not expanding properly.
2013-02-25 22:41:48 +00:00
Damien
056264d83e UI Nits: Sidebar WIP 2013-02-25 23:33:22 +01:00
Mark Liversedge
54a1faa19a Handle button too small on Linux 2013-02-25 19:55:55 +00:00
Mark Liversedge
da495d8700 Fix SEGV on unsupported device types
.. train tool segvs on device types that were previously
configured but are no longer supported. This fix now silently
ignores any devices that are no longer supported.

Fixes #497.
2013-02-25 13:37:07 +00:00
Mark Liversedge
b35114ef50 UI Nits: Sidebar WIP
.. some cosmetic and tidy ups for the recent sidebar WIP update
from Damien. Just trying to get clean look before making the icon
bar look more like the one in XCode and make the icons use the
Cocoa "template" look.
2013-02-25 13:19:50 +00:00
Damien
4363e1990c Strava download : add error messages 2013-02-24 23:00:17 +01:00
Mark Liversedge
91f6e8a925 Minor fixups to new Splitter
.. to compile.
2013-02-24 21:38:39 +00:00
Damien
14f223f7d1 Add missing images in last commit for sidebar 2013-02-24 22:33:31 +01:00
Damien
f636623d32 UI Nits : Add a splitter control 2013-02-24 22:20:57 +01:00
Mark Liversedge
d054534097 Weight entry honours user preference
.. metric or imperial.
2013-02-24 18:38:39 +00:00
Mark Liversedge
f2d9b42ff1 QA/2d customise symbol color
Let the user define the color used for the symbols on the PfPv
and Scatter plot when framing intervals.
2013-02-24 17:30:58 +00:00
Claus Assmann
f2aaba888c Poweragent 7.5.7.34 CSV date format
It seems the new PowerAgent version (7.5.7.34) changed the format
of the date/time data in the csv file:

6,2011-01-02 21:22:20|2011-01-02 21:22|01/02/2011 21:22|2011-01-02 21-22-20,0,0, ...

Here are the header lines of the new PowerAgent csv file:

Version,Date/Time,Km,Minutes,RPE,Tags,"Weight, kg","Work, kJ",FTP,"Sample Rate, s",Device Type,Firmware Version,Last Updated,Category 1,Category 2
6,2011-01-02 21:22:20|2011-01-02 21:22|01/02/2011 21:22|2011-01-02 21-22-20,0,0,0,,55.8,807,227,1,CycleOps Joule,18.054,,0,0
User Name,Power Zone 1,Power Zone 2,Power Zone 3,Power Zone 4,Power Zone 5,Power Zone 6,HR Zone 1,HR Zone 2,HR Zone 3,HR Zone 4,HR Zone 5,Calc Power A,Calc Power B,Calc Power C
,0,0,0,0,0,0,148,157,167,172,250,0,-0,0
Minutes, Torq (N-m),Km/h,Watts,Km,Cadence,Hrate,ID,Altitude (m),Temperature (°C),"Grade, %",Latitude,Longitude,Power Calc'd,Calc Power,Right Pedal,Pedal Power %,Cad. Smooth
2013-02-24 15:56:57 +00:00
Damien
0fb8351bbc Add Strava activity download feature 2013-02-23 23:16:53 +01:00
Mark Liversedge
cf59ac938e UI Nits: Less vibrant gradients
.. go back to more GC-like color defaults, which became a little
too vibrant in a recent update to introduce linear gradients to
the CP, Histogram and LTM plots.
2013-02-23 16:34:09 +00:00
Mark Liversedge
0cc4cca75c UI Nits: Diary Sidebar
.. alignment and spacing.
2013-02-21 21:32:04 +00:00
Mark Liversedge
c121e8cd11 Support old flex or lex
.. in JsonRideFile.l

Because we added a call to yy_lex_destroy in the parser
but it may not exist in Flex < 2.5.9 or if we are not using
GNU Flex, e.g. good ol' ATT lex.
2013-02-21 18:47:10 +00:00
Claus Assmann
447c87fcf0 Update INSTALL-LINUX for needing > Flex 2.5.9 2013-02-21 18:37:20 +00:00
Mark Liversedge
30c13fe973 Code Cleanup: RideFileCache remove mallocs
Mark Rage's superfast meanmax computer works like a charm but
uses stdlib malloc/free for memory allocation.
2013-02-21 13:07:00 +00:00
Mark Liversedge
cf2e0251c5 Code Cleanup: Deprecate Train Streaming
We no longer support streaming data from the Train View.
All the source for this has been moved to deprecated.
2013-02-20 22:11:54 +00:00
Mark Liversedge
d2457db458 Code Cleanup: RideFile EditorData memory leak
.. when freeing memory for the ridefile we didn't delete
the memory allocated for editor data
2013-02-20 21:11:13 +00:00
Mark Liversedge
714c635f55 Code Cleanup: Json lexer memory leak
.. possibly. According to the docs we need to free
the malloc'ed memory in the lexer when parsing completes.
2013-02-20 20:20:32 +00:00
Mark Liversedge
4c244327c6 UI Nits: Splitter handles cosmetics
Its the OCD in me again. Got rid of the "gap" between the
splitter handles and lined up the labels etc.
2013-02-20 13:30:01 +00:00
Damien
6493f4ab2f Sidebar : Use QSplitterhandle 2013-02-18 22:55:21 +01:00
Mark Liversedge
32b0124160 UI Nits: Font tweaking splitter 2013-02-18 21:24:17 +00:00
Mark Liversedge
63bf34f1d5 UI Nits: splitter color
.. black is too in your face. changed to dark gray.
2013-02-18 19:45:27 +00:00
Mark Liversedge
f53c5beee0 UI Nits: Sidebar cosmetics
.. MainWindow splitter color to bring in line with the new work
from Damien.
2013-02-18 19:37:05 +00:00
Mark Liversedge
38c636937a Fix season drag and drop SEGV 2013-02-18 19:08:35 +00:00
Mark Liversedge
3bb869345a UI Nits: Seriously OCD 2013-02-18 17:36:09 +00:00
Mark Liversedge
1c56702930 UI Nits: OCD cosmetics for splitter handles
OK, I admit it, I am OCD when it comes to this stuff. The
handles are a WIP and Damien is working hard on it, but for
now I just wanted to get rid of;

- spacing between handle and content
- focus / height of handle toolbar

Its gonna go when Damien finishes his excellent work, but I
just needed to get rid of it temporarily, I was getting bit
of a twitch ;)
2013-02-18 17:31:57 +00:00
Mark Liversedge
0431edac81 Code Cleanup: Fix yyinput warnings
.. we can tell flex to not generate the yyinput code in the
first place, to remove compiler warnings about emitting yyinput()
2013-02-18 16:24:59 +00:00
Mark Liversedge
9c98ac84d3 Merge pull request #492 from Walibu/master
Adding L/R balance saved into ridefile
2013-02-18 02:43:35 -08:00
Walter Bürki
49c1f485fc added left/right balance values into ridefile 2013-02-18 11:06:32 +01:00
Mark Liversedge
d0cb13eb4c Code Cleanup: Fix Xcode 4.6 compiler warnings
.. largely about unused member variables in class definitions
2013-02-17 20:26:22 +00:00
Mark Liversedge
909dc6df0e Add script to build xcode 4.6 project files
.. just upgraded to Xcode 4.6 and the project files
created by qmake 4.8 don't work. After scanning the
web I found a workaround in QTBUG-29371 and implemented
it in a little shell script: qmake-xcode.

.. to run, from the src directory invoke it with
$ sh ./qmake-xcode
2013-02-17 19:30:46 +00:00
Jon Escombe
f68606b10a Fix CRS file granularity
Using the CompuTrainer utility to convert GPS logs to a course profile
results in lots of very small segments where the height differences are
less than 1 metre. These were incorrectly handled as the altitude was
being stored as a long.

In fact the double to long conversion was always rounding down, for
instance 200+0.01 is 200 as expected, but 200-0.01 is 199. Therefore the
course would gradually ratchet downhill with every small data point.
2013-02-17 15:56:49 +00:00
Damien
151d160c82 Correct : splitters not resizing after expanded 2013-02-17 10:49:36 +01:00
Damien
9d6f24c805 UI Nits: Add titlebar for splitters 2013-02-16 23:48:00 +01:00
Mark Liversedge
47e39e3df7 Fixup last commit
.. strange edits lost related to widget layouts.
2013-02-16 14:21:12 +00:00
Mark Liversedge
b389555bef Shade Selector on CP chart
- none - no shading on the all curve
- derived CP - as before using the CP value derived from all curve data
- CP - the value of CP for the time of the ride

NOTE: When in rangemode (i.e. on home) the CP is set to the mean CP for
the date range selected.
2013-02-16 13:41:55 +00:00
Mark Liversedge
75d5799f39 Revert "Code Cleanup: Suppress Xcode warnings"
This reverts commit 6a97d81e4f.
It causes a SEGV.
2013-02-15 11:17:29 +00:00
Mark Liversedge
45fe4f1fcd Code Cleanup: Suppress Xcode warnings
.. about yyinput from clang when compiling lex scanners.
2013-02-15 10:47:34 +00:00
Mark Liversedge
bafbbb0138 Garmin Device Types
.. not so much unknown since we know its a Garmin xxx
2013-02-15 06:33:47 +00:00
gcoco
bcd6d88534 Accuracy is important 2013-02-15 00:17:21 -05:00
gcoco
2603beba19 Add some Garmin Device Types
Garmin Edge 200
Garmin Training Center
Garmin Connect Website
2013-02-14 17:35:18 -05:00
Mark Liversedge
b48a9a2b86 Fix VAM on CP chart out by factor of 10
Fixes #489.
2013-02-13 22:01:43 +00:00
Mark Liversedge
acfd1ca3f7 UI Nits: remove reveal on 3d plot
.. it doesn't play nice with OpenGL and the dropdown
disappears anyway.

Fixes #488.
2013-02-13 21:00:11 +00:00
Mark Liversedge
9f95e34352 UI Nits: Manual dialog
swap sport and workout code round.

Fixes #487.
2013-02-13 20:33:23 +00:00
Tilman Schmiedeberg
2faa5f3af5 German Translation for V3.0
Over 1,700 texts translated.
2013-02-13 19:57:50 +00:00
Mark Liversedge
72d021dab1 Code Cleanup: win32 fixups
.. Bin2RideFile constants might be an issue?
.. otherwise just unused variables
2013-02-13 19:17:56 +00:00
Mark Liversedge
c4d278278a Code Cleanup: TrainTool.h
.. unused context menus for workout and media lists.
2013-02-13 11:59:13 +00:00
Mark Liversedge
fcf7662f3c Code Cleanup: SplitActivityWizard.h
.. removed commented out code for markers -- they cause QWT to crash anyway!
2013-02-13 11:57:30 +00:00
Mark Liversedge
78f624a393 Code Cleanup: Last Xcode semantic warnings
.. unused NSString to QString
.. autorelease not valid in CFStringCreateWithCharacters
2013-02-13 11:32:50 +00:00
Mark Liversedge
80b3d12465 Fix metric/imperial in LTMSidebar
The code uses the old global metric/imperial selector rather than the
new athlete specific setting.

Fixes #483.
2013-02-13 11:01:14 +00:00
Mark Liversedge
684c413a46 Code Cleanup: RideFileCache
.. static const in class a GNU extension and not used anyway.
2013-02-13 09:26:19 +00:00
Mark Liversedge
97ebc19d9f Code Cleanup: Power Hist
.. static const in class GNU extension.
2013-02-13 09:24:12 +00:00
Mark Liversedge
9240ae9872 Code Cleanup: Workout Wizard
.. semantic warningss on Xcode regarding default constructors
2013-02-13 09:16:13 +00:00
Mark Liversedge
4d8f8a3230 Code Cleanup: ? and + operator precedence warnings
.. in RideImportWizard resizing .. nasty bit of code.
2013-02-13 09:09:39 +00:00
Mark Liversedge
37799d7ad1 Code Cleanup: Compiler nits
.. fix further XCode semantic warning messages (still some left)
.. WIN32 gcc builds
2013-02-13 09:01:20 +00:00
Mark Liversedge
cfa7fb7824 Code Cleanup: More compile time errors/warnings
.. warnings from Xcode 4.6 (still some remaining)
.. and deprecated Quarqd code (we have native ANT now)
.. and MultiWindow deprecated (it isn't finished)
2013-02-12 22:40:08 +00:00
Mark Liversedge
917921a6ef Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2013-02-12 07:04:47 +00:00
Jaime
f2da9a8b4f Code Cleanup: CpintPlot Memory leak
.. kept allocating a new RideFileCache but didn't delete
the previous one. Given their relatively large size this
can lead large amounts of memory lost in a short amount
of time.
2013-02-12 06:57:34 +00:00
Mark Liversedge
3989ce4b81 RideEditor anomaly button enable/disable
.. if there are/aren't any anomalies in the ride.
2013-02-11 20:23:44 +00:00
Mark Liversedge
b8cb2b7afd Fix SEGV on finf intervals on a blank activity
If you try to find intervals on a blank (manual) activity
the dialog will SEGV. It now checks in the same way as split.
2013-02-11 20:01:05 +00:00
Mark Liversedge
8f9d827984 Tacx Flow Virtual Power
Courtesy of Alex Leyland.
2013-02-11 19:25:28 +00:00
Mark Liversedge
75974fa910 Less heap more stack
.. for LTMOutliers, just trying to eliminate as much
naked new as possible.
2013-02-11 17:18:10 +00:00
Mark Liversedge
58529832ac HrPwPlot: Show/Hide fullplot
.. since it doesn't add much now its lost shading.
2013-02-11 16:46:15 +00:00
Jaime
fa08dbe068 Code Cleanup: HrPw memory leak
.. delete arrays[]
.. small change to code formatting
2013-02-11 16:25:30 +00:00
Jaime
77950298ed Code Cleanup: Ride Editor memory leak
.. for LTMOutliers, now alloced on stack not heap.
2013-02-11 15:33:59 +00:00
Mark Liversedge
caec4ee0fe Code Cleanup: Remove #if 0 code
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.
2013-02-11 15:00:00 +00:00
Mark Liversedge
fa04eddb6b Code Cleanup: LibUsb
.. removed commented out code.
2013-02-11 14:40:58 +00:00
Mark Liversedge
4f53108c96 Code Cleanup: RealtimeController
.. lots of confusion about virtual power based upon speed and
using lack of cadence to show no power -- this is invalid since there
may not be a cadence sensor present!
2013-02-11 14:38:21 +00:00
Mark Liversedge
9a8512730d Code Cleanup: RideFileCommand
.. fix small memory leak on command stack.
2013-02-11 14:36:05 +00:00
Mark Liversedge
2611e68f5e Code Cleanup: Charts
.. comments explain decisions, no action required.
2013-02-11 14:15:43 +00:00
Mark Liversedge
d95a03ed2f Code Cleanup: Device Downloading
.. all comments are suggestions not mandatory and we have a feature
request system for that.
2013-02-11 14:12:41 +00:00
Mark Liversedge
4c110f2a80 Code Cleanup: ErgFile
.. XXX is a suggestion not a TODO.
2013-02-11 14:07:55 +00:00
Jaime
3984edb0e6 Icon Toolbar Memory Management
More minor fixups regarding memory leaks.
2013-02-11 13:50:01 +00:00
Mark Liversedge
5784f8b37a Fix assert SEGV on Trimp Points
Introduced by me when using workout_time for duration.
2013-02-11 13:48:41 +00:00
Mark Liversedge
7b4f0e6aa9 Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2013-02-11 13:19:59 +00:00
Mark Liversedge
eb8544bef8 Code Cleanup: Valgrind Memory
Not sure why, but setting the text on a treewidget item seems to
cost a lot of memory. So we don't bother since it is never used.

In general the valgrind output is ok, quite surprised. There are
very few non-widget items that are alloced but never free'd in the
GC code.
2013-02-11 11:32:23 +00:00
Mark Liversedge
71948ee20a Code Cleanup: Minor Valgrind grumbles
.. uninitialised variables
2013-02-11 10:40:08 +00:00
Mark Liversedge
18cfea4573 Code Cleanup: Deprecated
MainWindow - AthleteTool - not used.
2013-02-11 10:09:00 +00:00
Mark Liversedge
5085647073 Code Cleanup: Deprecating stuff
Train view - race* - out of date and no used
Train view - SimpleNetwork - not used
Analysis view - WeeklySummaryWindow - not used
MainWindow - RideCalendar - deprecated 2 years ago
2013-02-11 10:03:21 +00:00
Mark Liversedge
4bce369bd1 Code Cleanup: src.pro
Removed deprecated / unused code, includes;
- racedispatcher.cpp
- simplenetworkcontroller.cpp
- simplenetworkclient.cpp

Will look at the network stuff in OpenTrainer.
2013-02-11 09:40:42 +00:00
Mark Liversedge
1af4e83509 Code Cleanup: Notes deprecated
.. some vestiges from the old notes file.
.. fixes a significant memory leak in MainWindow too.
2013-02-11 09:35:03 +00:00
Mark Liversedge
ad158d967d Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2013-02-11 09:08:34 +00:00
Mark Liversedge
8fe51ed495 Code Cleanup: GcCalendarModel
.. wow, nasty memory leak fixed. Leaked memory every
time a ride was selected or calendar was refreshed!

.. tbf it was marked with a 'XXX' memory leak comment
but really lazy to leave it there.

.. was also highlighted by valgrind, which is promising,
since I've been using it to hunt down any memory managment
issues -- most of them are within 3rd party libraries tho.
2013-02-11 09:05:19 +00:00
Mark Liversedge
70ed00c8e5 Code Cleanup: Data processors
.. still call ride selected when done.
2013-02-10 21:19:25 +00:00
Mark Liversedge
31170e0d8f Code Cleanup: GUI elements 2013-02-10 21:18:14 +00:00
Mark Liversedge
1127b57bef Code Cleanup: DBAccess
.. invalid comments about texts which are bwing stored.
2013-02-10 21:14:35 +00:00
Mark Liversedge
9f3f6112cd Code Cleanup: CP chart 2013-02-10 21:11:39 +00:00
Mark Liversedge
d44191d87a Code Cleanup: Fix tools
All the fix tools share common code with an empty else
clause markeed with XXX. removed the redundant code.
2013-02-10 21:09:45 +00:00
Mark Liversedge
bef2ce6588 Code Cleanup: Calendar and Diary
.. comments just reflect current constraints and are not
actionable, so XXX removed.
2013-02-10 21:06:24 +00:00
Mark Liversedge
064a294715 Code Cleanup: RideFile readers
.. mostly comments about features not yet implemented, but
   not relevant to current feature set anyway.
2013-02-10 11:27:33 +00:00
Mark Liversedge
f348f42226 Code Cleanup: MainWindow
.. XXX comments related to CPI files, we no longer have those.
2013-02-10 11:16:28 +00:00
Mark Liversedge
ea6cfa9f3d Code cleanup: Video player
.. comments don't reflect that we implemented video playback on
Mac using the QTKit API.
2013-02-10 11:14:47 +00:00
Mark Liversedge
8269da97a5 Code Cleanup: Stress Calculator
.. wasn't a todo, more a comment.
2013-02-10 11:13:36 +00:00
Mark Liversedge
6473245a44 Code Cleanup: Scatterplot
.. had same comments as model plot, obv from cut and paste!
2013-02-10 11:12:17 +00:00
Mark Liversedge
14d8f8e87a Code Cleanup: Calendar menu
.. remove unimplemented options for import/export
2013-02-10 11:10:39 +00:00
Mark Liversedge
ec6de647a4 Code Cleanup: Aerolab
.. unused variable
2013-02-10 11:00:56 +00:00
Mark Liversedge
8ff155e4ab Code Cleanup: Model Plot
.. used XXX as warnings rather than todo.
2013-02-10 10:59:54 +00:00
Mark Liversedge
b527a9ed33 Code Cleanup: Ride Data and Friends
.. cleaning XXX and misleading comments
2013-02-10 10:57:33 +00:00
Mark Liversedge
427e74d380 UI Nits: Mac focus rectangle on ErgDB download
.. removed coz it looks ugly.
2013-02-10 10:45:25 +00:00
Mark Liversedge
e815f0d1d8 Silence CLucene compile time warning
.. Hits->length() is a size_t not an int.
2013-02-10 10:37:26 +00:00
Mark Liversedge
6d1665a4c1 Add Tacx Satori Virtual Power
Courtesy of Stephen Dag we now support virtual power
for the Tacx Satori trainer.
2013-02-10 09:21:14 +00:00
Mark Liversedge
8c9ba50408 UI Nits: Mac toolbar tidy
.. a blank widget left from other coding iterations and the
lhs widgets not spacing properly.
2013-02-09 13:52:26 +00:00
Mark Liversedge
2ba5788c35 Fix split manual ride SEGV
If you try and split an empty/manual ride then the split wizard
SEGVs. The split wizard now is only executed if the ride contains data.
2013-02-09 13:21:12 +00:00
Mark Liversedge
7aa67e47b0 UI Nits: border on metadata
.. part of moving to GcChartWindow
2013-02-09 12:36:49 +00:00
Mark Liversedge
9acef56545 MetricAggregator less heap
Noticed when looking for memory/stack overflow issues that
the importRide function allocates an aggregator on the heap
for the lifetime of the method. No biggie, but better to use
stack for that.
2013-02-09 11:48:11 +00:00
Claus Assmann
b8b1594549 Add Support for Joule CSV Poweragent Files
Updated CSV support for Joule 1.0 format files in Poweragent
format. Also included a sample ride file.
2013-02-09 11:14:01 +00:00
Mark Liversedge
c5465e34e9 Fix mac toolbar icon corruption
Because the image representation was stored in the pixmap
which was allocated on the stack -- it should be allocated on
heap since the underlying data is never actually copied.

This seems to fix the issue, but need to keep monitoring it!

Fixes #477.
2013-02-09 00:41:02 +00:00
Jon Escombe
047c777d71 Fix lap number issue
.. lap number jumps around when playing a crs file
2013-02-07 19:28:55 +00:00
Jaime
98aac86307 Mac Buttons Icon Corruption
.. another attempt to fix it.
2013-02-07 17:23:16 +00:00
Mark Liversedge
9ea0734e21 Code Cleanup: Train
.. TrainDB and TrainTool cleanup, removed references to GC servers
and removed commented #if0 code.
2013-02-07 16:25:34 +00:00
Mark Liversedge
f1095a610d Code Cleanup: TP upload/download
.. just removed commented out code.
2013-02-07 15:53:39 +00:00
Mark Liversedge
b5492a1f64 Fix colorpicker focus loss on Mac
.. when editing a custom metric. This is to get around
a QT Bug ().

Fixes #476.
2013-02-07 14:53:18 +00:00
Mark Liversedge
19de413902 Code Cleanup: Add Device Wizard
.. just comments
2013-02-07 13:23:38 +00:00
Mark Liversedge
4ae50b0ecf Code Cleanup: Home and GcWindows
Tidy up code, removing XXX and comemnted out blocks
of code in preparation for V3.0 release.
2013-02-07 13:21:15 +00:00
Mark Liversedge
fbd6c025e8 Code Cleanup: RideNavigator
Remove XXX and commented out code. No functional changes.
2013-02-07 13:08:05 +00:00
Mark Liversedge
e9cabc116f Code Cleaning: ANT+ sources
Removing and fixing 'XXX' code markers across the ANT+
code. Largely this was to confirm against specs and mark
for future support (e.g. burst data, further refactoring
of the quarqd sources).
2013-02-07 12:20:40 +00:00
Mark Liversedge
2290b194e3 Code Cleaning: LTM sources
Addressing or removing 'XXX' code alerts across the Long Term
Metrics source files.

This is part of a code cleanup prior to V3.0 release.
2013-02-07 12:04:44 +00:00
Mark Liversedge
47b9f40fed Kickr connection fail gracefully
.. the code assumes the kickr connection will always work, even
when no BTLE hardware is present.

If no BTLE hardware is available then connections fail immediately
and so do attempts to find devices.

If BTLE hardware is available but the kickr connection cannot be
established in 30 seconds in train view then it returns an error.

Also added better device descriptions to check the device subtype
so we can identify stages, inride and kickr separately.
2013-02-07 09:16:46 +00:00
Mark Liversedge
1620bee6a4 Fix SEGV in ride editor
When switching between a ride with datapoints and one
without, then back again. Editor data was being deleted
for previous ride edited when selecting a ride with no
data!
2013-02-06 21:48:42 +00:00
Mark Liversedge
a9464eb474 Mac buttons retain
.. trying to address corrupted button icons.
2013-02-06 20:20:32 +00:00
Mark Liversedge
e322818d0e Update docs for build
.. to run qmake -recursive from the top level directory
to ensure subdirs Makefiles are regenerated.
2013-02-06 18:56:52 +00:00
Mark Liversedge
f2f22dbf1a replace tabs with spaces
.. in TrainTool.cpp
2013-02-06 16:03:40 +00:00
Mark Liversedge
5a32d0d472 Merge pull request #473 from jjofre/master
Restore load/gradient after done with calibration
2013-02-06 07:59:18 -08:00
Mark Liversedge
f527d8e5c2 Fix compiler warnings
All are harmless but for the sake of clarity have
fixed them all bar a couple;

- Lucene grumbles about signed/unsigned conversion which
  is/isn't valid depending upon the version of CLucene you
  compile with. Either way it is harmless.

- QxtScheduleView has a bunch of issues, but since it is a
  third party widget its better to leave it unchanged.
2013-02-06 15:54:32 +00:00
Jaime
68467d3988 Restore load/gradient after done with calibration 2013-02-06 10:51:23 -05:00
Mark Liversedge
0022140687 BlankState: Cosmetics
Just changed the icon for add device and tidied up
the icon sizing and button sizing a smidge. As ever,
tastes vary.
2013-02-06 12:35:27 +00:00
Mark Liversedge
a73e1521fe BlankState: Analysis view more blanks
- Better handling of a NULL ride for most of the analysis charts
- Don't show activity editor if no data rows to edit
2013-02-06 11:48:52 +00:00
Damien
798a0b2888 PfPvWindow : Double Click
Update edit values for CP et CAD after double click
2013-02-05 23:37:46 +01:00
Damien
fa6eaa0601 UI Nits: PfPvWindow double click to change quarters (CP and cadence) 2013-02-05 23:20:11 +01:00
Mark Liversedge
0160abe9f2 BlankState: Minor cosmetics
.. changed the image to be fainter and smaller
.. the text to be larger and bolder
2013-02-05 21:55:32 +00:00
Mark Liversedge
44c0199259 Chart Settings menu is All Chart Settings
.. to differentiate from the reveal settings which
are just a small subset of the chart settings.
2013-02-05 15:59:54 +00:00
Mark Liversedge
5e5df7dc2b RideEditor: Stop hiding controls
The find dialog and anomalies list are now available
from the ride editor toolbar and not hidden in the
chart controls.

As a result the ride editor no longer has any chart
controls and so they are removed altogether.
2013-02-05 15:55:25 +00:00
Mark Liversedge
1945183ce3 Don't hide Histogram when in range mode
When plotting distribution for a date range instead of
for a specific activity we should not hide when the current
ride has no data (since we are plotting a range not the current
ride).
2013-02-05 13:35:34 +00:00
Mark Liversedge
791f84d51f Add reveal controls to LTM chart
Allows user to quickly change the settings for
- group by (week, month, year etc)
- shading (power / hr zones)
- show events (chart markers)
2013-02-05 13:23:23 +00:00
Damien
8cee30f9f7 BlankState : ScatterWindow
Blank state only if no ride or no data point
2013-02-04 22:37:46 +01:00
Damien
35ce51a583 BlankState: No data available for PfPvWindow
Use the default blank state in PfPvWindow when data not present
2013-02-04 22:22:49 +01:00
Damien
d91576ff5f BlankState: No data available for AllPlotWindow
Use the default blank state in AllPlotWindow when data not present
2013-02-04 22:12:40 +01:00
Damien
72aad14755 BlankState: No data available for HrPwWindow
Use the default blank state in HrPwWindow when data not present
2013-02-04 22:02:51 +01:00
Damien
7fbd88390a BlankState: No data available for HistogramWindow
Use the default blank state in HistogramWindow where data not present
2013-02-04 21:54:37 +01:00
Mark Liversedge
3f7cf132bb LTM Show Events Checkbox
Adds a checkbox to the LTM plot to enable and
disable the plot markers for season and events.
2013-02-04 12:51:30 +00:00
Damien
7910e07e51 Blank State : default image for no data available 2013-02-04 07:46:31 +01:00
Damien
d5bc0f4ce7 Blank state : no GPS image for Google Map
Add an image when no GPS data present
2013-02-03 23:11:56 +01:00
Damien
05a5d91036 Translation update
Use metric symbol insteed of name for summary metric data
2013-02-03 21:55:05 +01:00
Damien
9ff04bf9f8 Re-order seasons with drag drop
fixes #445
2013-02-02 23:28:31 +01:00
Mark Liversedge
3149287b12 Fix compile time error for WF API 2013-01-30 22:34:25 +00:00
Mark Liversedge
c4c490181b BT40 device discovery fixups
A few fixups for BT40 discovery, we now search for BT40
devices properly.

- delete BT40 properly
- scan for longer
- return count of total found
- a few fixups to logic in AddDeviceWizard

Now need to update the pair screen to let the user
select/deselect sensors that are part of this "device".

Then obviously update the BT40/Controller for runtime
activity (and filter out the RFLKT since it will have
its own device type.
2013-01-30 21:39:16 +00:00
Mark Liversedge
c599058930 BT40 AddDeviceWizard updates
Just a checkpoint before BT40 pair updates to connect with
each found sensor and display current data on the pair screen.

This is so the user can select the devices they want to be
included in this device definition (if they have lots of
BTLE devices).

I guess this is gonna mostly be dcrainmaker and wahoo employees!
2013-01-30 13:39:07 +00:00
Mark Liversedge
f67aca2ffb BT40 / Kickr device discovery
Ensure the Kickr and BT40 devices can co-exist by
ignoring subtypes.

Also introduced a deviceFound signal so we can get a
device pairing page for BT40 (non-Kickr) devices.
2013-01-30 10:47:01 +00:00
Mark Liversedge
9a4919a210 BT40 Skeleton code
To enable support of BTLE (BT 4.0 'smart') devices
as well as the Kickr.

Very basic skeleton code to get started. Will need
to;
- add a BTLE 'pair' in AddDeviceWizard
- use profile not portspec for the uuids
- filter out RFLKT and KICKR as they have their
  own device types
- fixup BT40.cpp which is KICKR code in this commit
2013-01-29 20:28:43 +00:00
Damien
daf4090a4d Show picker info in CriticalPowerWindow
Correct previous commit
2013-01-28 23:26:03 +01:00
Damien
aacaf134e6 UI Nits: GcChartWindow for CriticalPowerWindow and ModelWindow 2013-01-28 22:49:02 +01:00
Mark Liversedge
b58c30ba5c Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2013-01-28 21:42:13 +00:00
Mark Liversedge
7df0e21895 WF Api support multiple connections
Changed the WF API wrapper to return a sensor connection
descriptor (int) in the same way open/close system calls
return a file descriptor.

This means we will be able to setup multiple connections
at once .. but not neccessarily in separate threads.
2013-01-28 21:40:00 +00:00
Damien
8a09997b45 UI Nits: GcChartWindow for PfPvWindow and HrPwWindow 2013-01-28 21:40:22 +01:00
Mark Liversedge
5a1747c499 Kickr autorelease pool when scanning
.. in AddDeviceWizard we need an autorelease pool
when doing the scan.
2013-01-28 20:28:39 +00:00
Mark Liversedge
15e1ab5d79 Kickr BTLE connection fixup
No need to scan first, connect directly to
the previouslt paired device uuid.

By no longer scanning we can have multiple
threads connecting at once without conflicting
with each other.
2013-01-28 19:43:00 +00:00
Mark Liversedge
d934c39472 Fix all plot reveal size
My bad -- added padding at the top a while ago when
trying to fix another issue. Then forgot to remove it
afterwards.
2013-01-28 08:54:50 +00:00
Mark Liversedge
a9692aa1ea tabs to spaces
.. in Computrainer.cpp and TrainTool.cpp
2013-01-28 07:17:45 +00:00
Mark Liversedge
7d722ce733 Merge pull request #469 from jjofre/master
Computrainer fixes for Gradient/Slop Mode and Misc default
2013-01-27 23:16:26 -08:00
Damien
b19d8b0769 Hide reveal control after animation
Update HistogramWindow reveal controls
2013-01-28 08:04:29 +01:00
Jaime
3c942ccc9f Fixes in CT support to ensure Gradient/Slope is being defaulted and updated properly between the CTConroller and TrainTool.
Fix to preselect ERG mode in workoutTree.
2013-01-27 22:02:52 -05:00
Jaime
938b94f995 Noticed that slope was not being initialized to 0.0, so reworked the constructor ro initialize the variables in the order they are listed in RealtimeData.h 2013-01-27 21:57:00 -05:00
Damien
e2cf82e5ac UI Nits: Reveal controls for GcChartWindow
Add a new Class GcChartWindow with reveal widget and animations
2013-01-27 23:11:18 +01:00
Mark Liversedge
44bb468d59 Merge pull request #468 from jjofre/master
Added removal of double quotes from Racermate TXT data files
2013-01-27 13:00:22 -08:00
Jaime
fabdfa2257 Racermate test TXT file with double quoted data 2013-01-27 15:50:06 -05:00
Jaime
7bb034e678 Added removal of double quotes from Racermate TXT data files 2013-01-27 15:48:26 -05:00
Mark Liversedge
ca5ce1541a Kickr load setting fixups
The load setting was not working properly, this update
ensures the load is set 10 times a second, but will
generate errors even though the device claims to be
connected.

Also added a few new methods to get/singal connection
status in the code.
2013-01-27 19:17:04 +00:00
Mark Liversedge
18a7260d36 Kickr: Load setting fixup
Fixed up the Kickr code to resend the load if the
user is generating more than 50% over the load or
is only generating 50% of the load.

This is in case the last message was not processed
for some reason (connection being established, or
noise).
2013-01-27 15:49:55 +00:00
Mark Liversedge
0e4ccc2e4a Kickr: Clean WF API
Just cleaning up the WF API code before adjustments to
the recent BTLE support or Kickr to also support other
BTLE devices (e.g. Speed/Cadence and HR straps).

This will mean adjusting the WF API code to use 'handles' to
reference multiple parallel connections since the existing code
assumes a single connection to the Kickr.
2013-01-26 23:03:13 +00:00
Mark Liversedge
914544bb7a Reveal experiment, faster and in-sync. 2013-01-26 17:25:09 +00:00
Mark Liversedge
70b06683ec Reveal experiment with Histogram 2013-01-26 17:16:15 +00:00
Damien
e9d714b75c Wait before controls appear on AllPlot 2013-01-26 16:15:34 +01:00
Damien
abca4fda6a Animation for AllPlot only for background 2013-01-26 15:55:08 +01:00
Mark Liversedge
335233f3e9 Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2013-01-26 14:20:49 +00:00
Mark Liversedge
63a7723351 Update install instructions for Mac
.. to explain qmake basics.
2013-01-26 14:20:09 +00:00
Mark Liversedge
080e89a14b Fix crash on wake from sleep
.. in WFAPI due to autorelease pool gone.
2013-01-26 14:16:37 +00:00
Damien
0ff734b665 Change animation for reveal on AllPlotWindow 2013-01-26 15:15:22 +01:00
Dean Junk
f688ec1cfa Updates for XML schema compliance.
Added tags for additional info in TCX file and a tries to use a
valid value for sport type/activity based on user defined meta
data.
2013-01-26 13:50:54 +00:00
Mark Liversedge
72818a2710 UI Nits: Style selection wonky
The splash screens broke the setting of the style selector
in the toolbar. They got out of sync. This fixes that.
FWIW, I introduced the bug!
2013-01-26 13:14:32 +00:00
Mark Liversedge
93065a7d0d Clean compiler warnings in WF Api Code 2013-01-26 13:06:10 +00:00
Mark Liversedge
5ba8378897 Kickr: Disable firmware Check
It takes ages to check when you connect. But the discovery
also takes 5 seconds.
2013-01-26 13:00:36 +00:00
Mark Liversedge
1de495fe55 Cocoa Memory Management Fixups
A number of memory management errors fixed, no doubt there
are more lurking in there.

* CocoaInitializer now sets up an application wide NSAutoreleasePool
* Kickr now init/releases an NSAutoreleasePool for its thread
* Local autorelease pools in constructors etc have been removed
* Searchbox and Button no longer release in the constructor

The icon corruption seems to be improved (I think it is a memory
management issue) but has not been totally removed.
2013-01-26 12:36:23 +00:00
Jaime
43ec1b548d Fix thread warning exit realtime
Stops any active realtime threads before exiting to
suppress the warning messages about active threads.
2013-01-26 09:25:56 +00:00
Mark Liversedge
37bc7f1496 UI Nits: CP today 'gap'
.. when in rangemode.
2013-01-25 18:27:26 +00:00
Mark Liversedge
c19dec0344 Reveal: Add an easing curve
Just to try different effects. InSine seems the most pleasing.
2013-01-25 18:13:47 +00:00
Mark Liversedge
5042606462 UINits: QPixmap to NSImage
.. why do those darned icons disappear / corrupt?
2013-01-25 17:56:38 +00:00
Mark Liversedge
cb908fbc89 UI Nits: QA reveal controls
.. needed to be vertically centred.
2013-01-25 16:29:18 +00:00
Mark Liversedge
bb9ea040a4 Add animation in more charts
Added Damien's animation to;
- Distribution (PowerHist)
- QA (PfPv)
- 2d (Scatter)
2013-01-25 16:05:28 +00:00
Mark Liversedge
89f5170839 Reveal slow, unreveal instant
Just playing with Damien's animation code :)
2013-01-25 15:52:01 +00:00
Mark Liversedge
7118fb6e14 UI Nits: Allplot reveal
I changed the fixed height of the allplot reveal
controls and forgot to set it back. It leaves a
little artefact on the plot when they hide.

I took out my edit and it fixed it.
2013-01-25 15:20:32 +00:00
Mark Liversedge
96d298598e Merge pull request #464 from jjofre/master
Fixes for side bar icon toggle when switching modes
2013-01-25 06:37:12 -08:00
Damien
283649c039 Animation for reveal controls 2013-01-25 15:21:46 +01:00
Jaime
764734a2ce Fixed side bar to properly toggle the Hide/Show state when switching modes
Minor fixes to #defines for Q_OS_MAC on side/scopebar
2013-01-25 09:01:50 -05:00
Mark Liversedge
87cf93a4b2 UI Nits: Reveal Controls Cosmetics
After discussion with Damien;

* solid white background for the controls looks best
* CP on chart labels need to be less obtrusive
* keep the controls to a simple but useful set

I also tidied up some of the margins since they were
also wrong.
2013-01-25 09:28:20 +00:00
Mark Liversedge
7e0d5d485e Merge pull request #463 from jjofre/master
Fixed CP chart title blanking out after first showing
2013-01-25 00:25:28 -08:00
Jaime
9280f5dd65 Move initialization of curveTitle to CpintPlot constructor from calculate() so the Cp title doesn't get overriden to blank after its first showing. 2013-01-24 21:15:34 -05:00
Mark Liversedge
df96307d47 TRIMP fallback to workout time if time riding 0 2013-01-24 21:42:23 +00:00
Mark Liversedge
1e45d4c666 Cleanup tabs and whitespace
Not sure where it came from, but cleaned up anyway.
No functional change.
2013-01-24 21:24:49 +00:00
Mark Liversedge
2ca5bc6439 Merge pull request #461 from jjofre/master
Fixes to properly resume plotting after calibration
2013-01-24 13:13:13 -08:00
Mark Liversedge
8aaef02895 Framing color less in your face
.. when plotting QA or Scatter plots we frame
intervals with all points of data. By default this
has been black.

.. this tones it down to be less high contrast. But
really we should make it a configurable color longer
term.
2013-01-24 18:58:32 +00:00
Jaime
8cf1a40258 Logic changes to enable real time plotting to resume properly after calibration.
Minor cosmetic fixes of missing #defines for media support
2013-01-23 21:29:32 -05:00
Jaime
ad1f45de96 Changes to fix CT calibration issues with the real time Train plot. 2013-01-23 21:26:25 -05:00
Mark Liversedge
be2dd022f5 Kickr BTLE Support (Beta)
This finalises beta support for the Wahoo Kickr
using their WFConnector API for BTLE.

This support will only work on Mac OSX - pending
ANT+ support to be available and/or BTLE support
is made available on Windows and Linux.

Fixes #446.
2013-01-23 22:08:10 +00:00
Damien
ca2cad40e2 Add reveal controls for ScatterWindow 2013-01-23 22:40:05 +01:00
Mark Liversedge
0d298f3408 Previous pull request missing commit
.. only a couple of line so made the change again.
2013-01-23 19:43:29 +00:00
Mark Liversedge
c27e7a3c3a Merge pull request #458 from johnnye/master
fix for #457
2013-01-23 11:39:21 -08:00
Mark Liversedge
480b298fc8 Kickr mutex for thread safety
Ensure the member variables are only maintained in
one thread at a time.
2013-01-23 08:44:53 +00:00
John Nye
7e9957436b update to fix ticket #457
This caps the wattage at 4kW, and hence the torque values also. It's fairly safe to assume that no-one will be producing 4kW on a PowerTap
2013-01-22 22:57:54 +00:00
Mark Liversedge
bbc970b0bc Kickr speed calculation
.. using device configuration and wheel RPM.
2013-01-22 22:19:30 +00:00
Mark Liversedge
20a5ebd764 Kickr basic functionality
.. connects and disconnects to the Kickr
.. gets instant telemetry

Still need to sort the other channels (are there
any?) and also set load and gradient.

Pretty close and need to then clean up the qDebug
messages and we have a first pass at Kickr support.
2013-01-22 21:10:18 +00:00
Mark Liversedge
ccecfa6898 Fix SEGV when pairing ANT+ Speed
Recent update broke this, forgeting that when you are
configuring a device the device configuration will be
null.
2013-01-22 13:24:55 +00:00
Mark Liversedge
9b2d7dc836 Kickr connect should fail if no BTLE hardware
Returns immediately if trying to connect when there is no
BTLE hardware available.
2013-01-22 13:09:02 +00:00
Mark Liversedge
ac21a8ae68 Fixed initial Kickr connection issues
It was because the connector was still searching when
asked it to connect to a sensor. We now cancel any
search before attempting to connect.

But sadly, the connection is dropped and a bunch of
error messages popup about firmware.
2013-01-21 21:36:37 +00:00
Mark Liversedge
1233d18799 Kickr checkpoint, connect errors
Can discover device but cannot connect. Checkpoint
commit as done for the night.
2013-01-21 20:27:55 +00:00
Mark Liversedge
b9ea7ca62f Fix another compile error if WFAPI not available 2013-01-21 17:07:14 +00:00
Mark Liversedge
bc23948736 Kickr device configuration complete
The code to discover and setup a Kickr device has
been finished. The portspec is used to hold the device
UUID for later connection.
2013-01-21 16:24:14 +00:00
Mark Liversedge
fffca860ca Device scanner delay accidentally set to 5s
.. when it should just be 1s to avoid being a
cpu hog.
2013-01-21 15:11:29 +00:00
Mark Liversedge
ef220438cb AddDeviceWizard cannot be modal
.. because it blocks the event loop that hosts the WF API
class. And we definitely want it to stay on the main event
loop along with the native WF classes and delegates.
2013-01-21 13:59:31 +00:00
Mark Liversedge
4127a43a65 Kickr Checkpoint Commit
.. device discovery working after a bit of
heartache with blocking threads and signals.
2013-01-21 13:05:49 +00:00
Mark Liversedge
f7686cb7a0 Merge pull request #456 from andybryson/QNetworkProxyQuery
Fix build error on Arch Linux
2013-01-20 23:45:55 -08:00
Andy Bryson
85edb09a37 Fix build error on Arch Linux 2013-01-21 07:40:09 +00:00
Mark Liversedge
0ada4d7dff UI Nits: Allplot reveal controls
.. fixups for positioning and translucent
background looks a bit naff.
2013-01-21 07:16:21 +00:00
Mark Liversedge
0d4ae66c1c Fix Kickr compile error
.. in TrainTool too.
2013-01-21 07:07:37 +00:00
Mark Liversedge
3f758367c6 Fix Kickr compile error
.. in adddevicewizard when WF API is not
available
2013-01-21 07:02:58 +00:00
Mark Liversedge
f9c0392f56 Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2013-01-20 23:03:36 +00:00
Mark Liversedge
3aad4bccdf Drag n Drop on Splash Train Vew
.. because we didn't maintain the currentWindow when
showing blankstate pages the drag and drop functionality
didn't work.

This is kinda key when you have no videos and workouts, its
the simplest way of providing the files needed.
2013-01-20 23:01:40 +00:00
Damien
50d596db09 Add reveal controls for CP Plot and PfPv Plot 2013-01-20 23:36:31 +01:00
Mark Liversedge
0088575920 remove WFAPI hack code in mainwindow
.. accidentally committed earlier
2013-01-20 19:40:40 +00:00
Mark Liversedge
52b896ecf2 Kickr Skeleton Code
Added Skeleton code for device discovery, config
and runtime. Now need to develop the WFApi class
to support each function.
2013-01-20 19:11:16 +00:00
Mark Liversedge
297579e456 Fixed WFAPI Crash
.. needed to manage autorelease pool

Lets not talk about the hours wasted trying
to fixup the code whilst BT was disabled via
OSX and the Kickr wasn't actually plugged in.
2013-01-20 16:00:42 +00:00
Mark Liversedge
08a4e1804d UI Nits: Tile Mode cleaner
Made the spacing in tile mode smaller and cleaned up
the decorations to make them cleaner and more in line
with modern UIs like Win 8 and OSX.

Also parameterised the spacing / margins in HomeWindow
in case we want to add a slidebar to adjust them or
maybe even a zooming.
2013-01-20 12:58:23 +00:00
Mark Liversedge
cff6bbb0c0 Kickr linker fixups, still crashes
.. on CBCentralManager delegate didUpdateState. Not
sure if this is internal to the WF API or if QT is
getting upset at unexpected events.
2013-01-20 12:44:08 +00:00
Mark Liversedge
36bcce2b4c State Changed missed.
.. unedited from previous commit
2013-01-19 19:55:41 +00:00
Mark Liversedge
cbf94b5a75 Wahoo Fitness API Abstraction Part 2
First pass of using latest WF API (3.0.beta2) but
there are event exception problems within the WF API
so committing a checkpoint.

This has BTLE status and Scan functions implemented,
I also updated About dialog top include the WF version.
2013-01-19 19:38:37 +00:00
Mark Liversedge
e3992c6c19 Wahoo Fitness API Abstraction Part 1
Just the framework for the abstraction layer. I
wanted to commit this since its the blank state
and clean.

Now to implement;
1 hasBTLESupport and friends
2 scanForDevices
3 connect/disconnect device
4 getRealtimeData
5 setLoad/setGrade

Once thats done should be easy to write a controller
and runner for TrainView.

Last step will be to add a configuration pane -- but
might wait until I have a BTLE HR strap to include
the 'multi-device' stuff.
2013-01-19 14:56:50 +00:00
Mark Liversedge
4c390d135b UI Nits: Reveal controls on black bg
.. black controls on a black background might
be cool if you play in a plutonium rock band
from the Gagrakacka Mind Zones, but for the
rest of us its helpful if the controls are
slightly more visible.

A bit of hacking with style sheets and the controls
now change color to contrast with whatever background
color is selected.
2013-01-19 09:44:17 +00:00
Mark Liversedge
c36409f83a Tone down "HUD" close button
.. and this is the last of the Mac OSX native look
and feel stuff for v3.0
2013-01-18 23:21:18 +00:00
Mark Liversedge
8f95cbff88 Autorelease pool on Mac
.. fixup re button icons going missing.
2013-01-18 23:11:10 +00:00
Mark Liversedge
a633e6b931 Wahoo Fitness API Framework
gcconfig.pri.in and src.pro updates to
add WFConnector framework for BTLE and
Kickr APIs on Mac only.
2013-01-18 18:58:38 +00:00
Mark Liversedge
f31126875f About cosmetics
.. for the config tab; no focus rectangle
on a Mac and get rid of all those frames.
2013-01-18 16:30:57 +00:00
Mark Liversedge
ce99a03c6b Added gcconfig.pri tab to About
.. so we can see what the gcconfig
setup was for a particular build when
trying to debug build issues.
2013-01-18 16:15:00 +00:00
Mark Liversedge
27df37208a Added contributor
Dean Junk
2013-01-18 15:58:41 +00:00
Dean Junk
c908af5621 Enhance TCX export
Provide more data to Garmin Training Center and
also makes the export compliant  with the latest
TCX schema. It displays correctly in GTC.

As an avid runner and biker I use GTC to combine
the data from both sports for additional analysis.

I'm sure others would benefit from the additional
data in the TCX file when importing to other tools.

The following derived/computed metrics have been
added to the export:

   1. Added MaximumSpeed
   2. AverageHeartRateBPM
   3. MaximumHeartRateBPM
   4. MaxBikeCadence
   5. AvgSpeed
   6. AvgWatts
   7. MaxWatts
   8. HeartRateBPM defaults to 1* (if not present or zero value)

*Garmin training center won't display the HeartRate
charts if the tag isn't part of every TrackPoint and
greater than zero.
2013-01-18 15:50:49 +00:00
Mark Liversedge
ad5fd5b3c9 Add Jaime Jofre as a contributor 2013-01-17 21:16:25 +00:00
Mark Liversedge
0e6dee9d19 Merge pull request #452 from jjofre/master
Fixed issue with updating real time plot (Issue #437)
2013-01-17 13:12:01 -08:00
Jaime
c6368cfcd0 Merge remote-tracking branch 'upstream/master' 2013-01-17 15:53:15 -05:00
Jaime
333b59d4bd In guiUpdate(), fixed an issue with updating now to current time so that it is updated about every 1 second. 2013-01-17 15:52:16 -05:00
Mark Liversedge
ffdbbd303a Merge pull request #451 from jjofre/master
Added Tool to fix heart rate spikes and dropouts
2013-01-16 11:51:35 -08:00
Jaime
02cee7f514 Add support to Fix hear rate spikes and dropouts 2013-01-16 14:34:40 -05:00
Mark Liversedge
eed360ad5f fix compiler warning in LTMPlot
.. about unused variable 'middle'.
2013-01-16 19:19:42 +00:00
Mark Liversedge
66c417fca6 UI Nits: LTMPlot remove old markers
.. when there is nothing to plot between the
date ranges selected.
2013-01-16 19:08:30 +00:00
Jaime
aad93ca14c Added FixHRSpikes.cpp 2013-01-16 13:51:01 -05:00
Jaime
42c65c4a72 Added GC_DPFHRS_MAX to support fixing HR spikes 2013-01-16 13:50:09 -05:00
Mark Liversedge
0ae721664f UI Nits: Aerolab title
Removed the "date" title on Aerolab, thought I'd removed
those a long time ago. Last vestige of the 2.x style.
2013-01-16 11:43:58 +00:00
Mark Liversedge
085cfe424f Reveal Controls: HrPw update
Moved the fullplot to the bottom since it clashes with
the new reveal controls. Also changed the contents
margins to 2 to allow resize in tile view.
2013-01-16 11:06:16 +00:00
Mark Liversedge
76054418d7 Reveal Controls: AllPlot update
To allow user to turn on/off the fullplot at the
bottom of the chart.
2013-01-16 10:57:37 +00:00
Mark Liversedge
114379fe6d UI Nits:Histogram Window border
.. I broke this in an earlier commit where I set
contents margins to 0, thus making it impossible
to resize in tile mode and also making the chart
overlap with the border.
2013-01-15 23:08:32 +00:00
Damien
58951e4e8f Transparent background for reveal controls
Add controls for HrPwWindow
2013-01-15 23:40:39 +01:00
Mark Liversedge
b9b4894b0d Change 'hotspot' for reveal/unreveal 2013-01-14 23:12:28 +00:00
Mark Liversedge
e0b251c367 UseThruToday: TreeMap 2013-01-14 10:05:48 +00:00
Mark Liversedge
86454c7651 UseThruToday: Summary 2013-01-14 09:58:34 +00:00
Mark Liversedge
41d93fe377 UseThruToday: Fix Histogram chart 2013-01-14 09:50:57 +00:00
Mark Liversedge
d88dbf2c14 UseThruToday: Fix CP chart 2013-01-14 09:44:46 +00:00
Mark Liversedge
975f45fafe Fix thru today date selection on LTM
.. it needs to be applied every time a
date range is selected, so need a new bool
useToToday to flag that up.

Will need to fix the other date range charts
to do the same.
2013-01-14 09:06:04 +00:00
Damien
cbdbb5098a Initialisation of reveal controls 2013-01-13 23:46:24 +01:00
Mark Liversedge
2f1caec602 Reveal Controls: AllPlot
Added smooth slider and stack selection as the
reveal controls on the ride plot.
2013-01-13 21:55:25 +00:00
Damien
8223423481 initialise default value for reveal control
synchronize reveal slider with standard slider
2013-01-13 22:49:57 +01:00
Dean Junk
482d0746dd Fix TCX Export Schema Compliance
Write a valid TCX file, that conforms to its
schema, including;
- ProductId is ProductID
- Watts must be an integer
- Language ID is required
- PartNumber has a specific format
2013-01-13 19:44:41 +00:00
Mark Liversedge
ebe6716f10 Reveal Controls: Histogram
Add reveal controls to the histogram window, using
the new reveal framework.

I only added a small number of controls, we should
be careful not to overload this feature with a zillion
controls "because one user wants it".
2013-01-13 18:31:10 +00:00
Mark Liversedge
0c34789dcb Chart settings reveal adjust mouse positions
.. have a larger area to activate and deactivate the
revealed chart controls.
2013-01-13 18:30:13 +00:00
Mark Liversedge
92f81b6433 Autohidden chart settings framework
Setup code to enable revealed chart controls. When
in tabbed mode, if the cursor is towards the title
then the chart controls are revealed, as the cursor
moves away or off the chart the controls are hidden.

Each chart, that wants revealed controls must implement;

bool hasReveal() -- return true if controls are available
void reveal()    -- show controls (must be at top of chart and a single line)
void unrveal()   -- hide controls

Will now work through each chart adding the controls as needed.
Will also probably end up with a 'standard' flat stylesheet for
the controls, can implement this later.

See description for this feature here:
https://github.com/GoldenCheetah/GoldenCheetah/issues/31#issuecomment-12040318
2013-01-13 14:55:16 +00:00
Mark Liversedge
1149d2327a BlankState basics completed
.. now closes train view blankstate when device added
and workouts have been imported.

.. and made the home and diary views have same buttons
as the analysis view. That may change in later releases
when we have planning functions.
2013-01-12 23:28:59 +00:00
Mark Liversedge
2de2b5daef Clear blankstate screen if conditions change
The diary, home and analysis blank state screens will
now close if rides are added.

Still need to make the train view blank state screen
close when devices and workouts are added.
2013-01-12 21:52:38 +00:00
Mark Liversedge
ec2b71730d Don't export HR if it is zero
Tcx XML HR must be positive, so if there is no
value (i.e. it is zero) then don't write it.

Thanks to Dean Junk for diagnosing this and
posting his findings to them mailing list.
2013-01-12 14:45:37 +00:00
Mark Liversedge
6f3f9cff10 Let user close blank state
The user can close the blank state screen and
can also click a checkbox to ensure it is not
shown again for this athlete.
2013-01-12 13:01:37 +00:00
Mark Liversedge
9bb2d69c7c UI Nits: default chart fonts smaller
.. the chart labels need to be smaller especially
on small screens, and better to err on the side of
caution and make them smaller.
2013-01-11 20:39:54 +00:00
Mark Liversedge
e63e113c4f Remove BlankState menu 2013-01-11 19:41:16 +00:00
Mark Liversedge
eabd1234dc Fix delete intervals
If multiple intervals are selected then the delete interval
menu item should delete all the ones that are highlighted.

Fixes #442
2013-01-11 15:19:47 +00:00
Mark Liversedge
3ca7590db2 Merge pull request #439 from jjofre/master
Made color of x and y axis in the ErgPlot Window configurable
2013-01-11 06:35:52 -08:00
Jaime
70a70ae970 Merge remote-tracking branch 'upstream/master' 2013-01-11 08:23:51 -05:00
Mark Liversedge
d1cfe3e6e2 Use the device wheelsize!!!
Bug reported by many users, should know better than to
dismiss it so out of hand. There was a bug. The ANT+
code used an old global setting and not the per device
configuration.

Fixes #441
2013-01-11 09:08:31 +00:00
Mark Liversedge
fcc97c51c4 Fix pause/unpause bug
When you press stop it should clear the paused flag.

Fixes #440.
2013-01-11 08:57:36 +00:00
Jaime
6adb940d09 Merge remote-tracking branch 'upstream/master' 2013-01-10 22:28:16 -05:00
Jaime
1b26f60397 In ErgFilePlot(), made the X and Y axis color configurable. 2013-01-10 21:34:06 -05:00
Jaime
632fe7fbff Added Ride Plot X and Y Axis color configuration. Default to blue and red. 2013-01-10 21:32:36 -05:00
Jaime
77c1994e7c Added CRIDEPLOTXAXIS and CRIDEPLOTYAXIS for ErgFilePlot axis color configuration 2013-01-10 21:31:44 -05:00
Mark Liversedge
a2b741a19e UI Nits: Hist chart controls errant label
If we are not in date range mode (i.e. on the home or
diary view) then we shouldn't add the 'date range' label.
2013-01-10 23:16:05 +00:00
Mark Liversedge
731e74aefb UI Nits: Reformat allplot chart settings
To be a little easier on the eye. But still some
room for improvement.
2013-01-10 21:17:10 +00:00
Mark Liversedge
f26625579d Merge pull request #434 from jjofre/master
Remove hard-coded colors for Load, TSS and BikeScore
2013-01-09 09:13:04 -08:00
Jaime
72e3a1c6f9 Added support for configurable colors for Load, TSS and BikeScore 2013-01-09 11:09:22 -05:00
Jaime
d38a978225 Added use of CNUMOFCFGCOLORS macro in ColorList and DefaultColorList arrays
Added Load, TSS and BikeScore support in setupColors()
2013-01-09 11:08:30 -05:00
Jaime
679222ee73 Added CNUMOFCFGCOLORS macro to define the number of configurable metric colors are available
Added macro entries for Load, TSS and BikeScore
2013-01-09 11:06:39 -05:00
Mark Liversedge
6b54c6a892 UI Nits: BlankState cosmetics
Just wordwrap the labels gives more screen estate to
the right side image making it less likely to be out
of proportion with the text size.

Also changed disc to disk in one of the narrative
texts. Maybe its a 'British English' thing tho ;)
2013-01-08 21:22:56 +00:00
Mark Liversedge
4516900e35 Fix conflict with Qwtplot3d
The struct Appearance conflicts with a class
in the QWT3D namespace. So renamed it. Fixes
a compile time error.
2013-01-08 19:02:15 +00:00
Mark Liversedge
3db3a6dd1d UI Nits: Sensible defaults for screen/font size
Set the default size of fonts and screens based upon the
screen size we're running on.

We may need to think about retrospectively adjusting the
font size for users that have not realised they can change
from the defaults (which may not be valid for their hardware).
2013-01-08 15:03:15 +00:00
Mark Liversedge
1d31c34424 UI Nits: Cosmetic gui updates
- searchbox border
- LTM controls - make search box expand
- Histogram controls - make slider expand
2013-01-08 09:48:37 +00:00
Mark Liversedge
502db4052a UI Nits: Choose Athlete Dialog Buttons
.. order of New, Cancel, Open and a bit of stretch
to stop ugly elongated buttons.
2013-01-07 20:27:04 +00:00
Mark Liversedge
97fd43818a Linux fixup for BlankState
Nothing major, just setting no focus on buttons since
it gives them a salmon pink color, which is pretty nasty
on the 'img' button.

Did I mention that I love this new feature?
2013-01-07 19:37:08 +00:00
Mark Liversedge
8931d56b47 No chart menu in blank state 2013-01-07 16:44:24 +00:00
Mark Liversedge
d4694c5b07 Blank state for train view
Only show blank state for train view when we have
no devices configured -or- there are no workouts
imported into the library.
2013-01-07 15:32:32 +00:00
Tilman Schmiedeberg
f2c5bf3cce Initial v3 German Translation
First translated texts.
2013-01-07 14:26:17 +00:00
Mark Liversedge
afd298827f Add ErgDB to train view blank state
Allow the user to download workouts as well as
scan disk for workouts (they are not likely to
have any workouts of their own).
2013-01-07 13:37:37 +00:00
Mark Liversedge
05b75dbcc3 Blank state train view action
Changed the second action to search for videos and workouts
rather than import. It makes more sense to setup the library
rather than import a single file.

We still need to change the conditions for the train view blank
state to no devices or no videos/workouts.
2013-01-07 13:23:36 +00:00
Mark Liversedge
8062e4ee06 add images back to qrc file 2013-01-07 12:07:06 +00:00
Damien
d350a3ca8a Add images for BlankStatePages 2013-01-07 12:49:55 +01:00
Mark Liversedge
d6cbe39d67 Temporary - remove missing images from qrc file 2013-01-07 09:00:01 +00:00
Damien
7f44159107 Blank state
Add a blank state for analysis window
2013-01-06 22:21:22 +01:00
Damien
dc88a1627e ISODate format for UTC date end by "Z"
fixes #419
2013-01-06 22:00:30 +01:00
Mark Liversedge
66434beaf8 Fix date selection in Tile Mode
Fixes #424.
2013-01-06 19:02:00 +00:00
Eamonn Doyle
4ab87b448c Fix Linux README
.. to refer to /etc/udev not /dev/udev
2013-01-06 12:43:09 +00:00
Mark Liversedge
4eeac0659d Fix zooming in histogram
Fixes #416
2013-01-05 17:35:48 +00:00
Mark Liversedge
acae351030 Show Pace in Summary as mm:ss
Fixes #423
2013-01-05 15:00:06 +00:00
Mark Liversedge
c9439b5ffd clang 4.1 fixups
remove casts to keep clang 4.1 happy on
Mac OS X. Now produces a number of warnings
on clang 4.0.

Fixes #420
2013-01-05 14:30:26 +00:00
Mark Liversedge
2daa586446 Edit times using a QTimeEdit in Metadata
When overriding the duration, time riding and other
time based metrics in the metadata screen it asks
the user for the time in seconds.

This update offers a QTimeEdit to edit them, a little
more user friendly.

Fixes #422
2013-01-05 12:43:48 +00:00
Mark Liversedge
337f7cc578 Fix KML needing boost in gcconfig and src.pro
Fixes #421
2013-01-05 12:08:35 +00:00
Mark Liversedge
716aea7f88 Chart Dates: Part 3d of 3 (final)
Added chart date selection to the Histogram chart.
This now completes the updates to enable custom date
ranges to be defined in charts that support date
ranges.

Any further 'ideas' for setting custom ranges can be
added into the DateRangeEdit widget and will be re-used
across all the charts.

Fixes #417
2013-01-05 11:50:04 +00:00
Mark Liversedge
57fbc51dfc Fix date settings needed a restart
To get the date settings to register user interaction
you needed to restart gc after adding the chart. This
was caused by an initialisation error, setting the active
flag to true on object creation -- it should have been
set to false.
2013-01-05 11:16:09 +00:00
Mark Liversedge
ebbad73f86 Chart Dates: Part 3c of 3
Added chart date selection to the Summary chart.
Still need to add this to;
        - Histogram
2013-01-05 10:49:00 +00:00
Mark Liversedge
e3a2f0bb26 Chart Dates: Part 3b of 3
Added chart date selection to the CP chart.
Still need to add this to;
    - Summary
    - Histogram
2013-01-04 23:43:37 +00:00
Mark Liversedge
570b829c76 Chart Dates: Part 3a of 3
Added chart date selection to the
Treemap chart. Still need to add this
to;

- Summary
- CP
- Histogram
2013-01-04 20:20:42 +00:00
Mark Liversedge
4f09714b54 accidentally left in qDebug() statement 2013-01-04 19:29:10 +00:00
Mark Liversedge
d48023e7b3 Chart Dates: Part 2 of 3 update
.. added a 'This' option to choose a date range
such as this month, week, year. I also added the ability
to specift a 'prior' period.

So in July you could plot for this month prior 1 to choose
a date range for June.

This allows folks to have a static setup of charts for this
this-1 and this-2 months and data to change over time.
2013-01-04 12:39:25 +00:00
Mark Liversedge
3a5ffe1c12 Chart Dates: refresh a bit less often
.. the plot is redrawn as the user enters a date or
number which is slow and annoying -- far better to
wait for the editingFinished() signal.
2013-01-03 14:36:26 +00:00
Mark Liversedge
32e586db3f Chart Dates: Part 2 of 3 fixup
Refactor of the date settings into its own
widget so we can re-use it across any chart
that supports date ranges.
2013-01-03 14:29:45 +00:00
Mark Liversedge
e223c690eb Chart Dates: Part 2 of 3
Updated LTM chart date range to allow the
user to specify a number of alternative
ranges;

- use current selected
- use current selected thru today
- between x and y
- last n days/weeks/months/years
- from - today
2013-01-02 20:52:41 +00:00
Mark Liversedge
aa56f7aa80 Chart Dates: Part 1 of 3
An update to allow users to define a specific date
range for a chart on the home window. This update
only applies to the LTM chart and only allows a
date range from/to to be defined.

It would be nice to also support a last 'n' 'period'
selection too (i.e. last n days/weeks/months).

Also, further updates are required to add similar
functionality to TreeMap, CP, Dist and Summary charts
when they are on the home window.
2013-01-02 14:34:17 +00:00
Mark Liversedge
5d164cd691 Merge pull request #414 from amtriathlon/fields
Enable fieldChooser and field types translation
2012-12-31 02:43:11 -08:00
Alejandro Martinez
e1690d8d72 Enable fieldChooser and field types translation 2012-12-30 22:25:35 -03:00
Mark Liversedge
e4f41f5df3 Merge pull request #412 from amtriathlon/translations
Fix minor translations related issues
2012-12-30 09:53:12 -08:00
Alejandro Martinez
3b2167962f Fix minor translations related issues 2012-12-30 14:48:46 -03:00
Mark Liversedge
2b66ae75a7 remove boost from docs
.. it is no longer needed.
2012-12-30 17:13:11 +00:00
Mark Liversedge
9f183bf2b5 Merge pull request #409 from andybryson/boost_crc
Remove Boost
2012-12-29 16:02:13 -08:00
Andy Bryson
49d8eb0fc3 Remove Boost
Replace boost checksum stuff.
Remove boost from versions
Remove Boost from src.pro
Remove Boost from gcconfig.pri.in
2012-12-29 22:59:28 +00:00
Mark Liversedge
ecf2f03abe Merge pull request #408 from amtriathlon/options
Options Toolbar & Keywords Translations
2012-12-29 11:38:04 -08:00
Alejandro Martinez
e3d7174ccb Options Toolbar & Keywords Translations 2012-12-29 16:08:03 -03:00
Rainer Clasen
a2af765f31 Remove Boost - SrmDevice
converted SrmDevice to use signals instead of callback.
Also add missing erase connections.

Signed-off-by: Andy Bryson <agbryson@gmail.com>
2012-12-29 18:32:22 +00:00
Andy Bryson
be7b9f44bb Remove Boost Dependency - Devices
All devices no longer need boost (use signals and slots instead), other
than SRM.
2012-12-29 18:32:22 +00:00
Mark Liversedge
acae4b1800 Merge pull request #407 from amtriathlon/RideNavigator
Fix RideNavigator Translation
2012-12-29 10:27:26 -08:00
Alejandro Martinez
357cf647f7 Fix RideNavigator Translation
column names from xml file need to be translated to match translated headings,
other posibility would be to match before translation, but this option needed
fewer changes.
2012-12-29 15:16:27 -03:00
Mark Liversedge
3ee8fc709f Merge pull request #406 from amtriathlon/measures
Enable Measures Translation
2012-12-29 08:57:02 -08:00
Alejandro Martinez
dd18015330 Enable Measures Translation
For use in LTM metrics list
2012-12-29 13:46:43 -03:00
Mark Liversedge
fac190456b Merge pull request #405 from amtriathlon/units
Translate axis labels LTMPlot
2012-12-29 05:41:28 -08:00
Alejandro Martinez
6743a1ac6b Translate axis labels LTMPlot
Fixes #29
2012-12-29 10:27:32 -03:00
Mark Liversedge
5b33de235a UI Nits: Autorepeat on open is wrong
.. it makes the menu flicker.
2012-12-28 19:55:57 +00:00
gcoco
f7225428a5 D2XX.cpp requires #include <assert.h> 2012-12-28 11:41:59 -05:00
Mark Liversedge
34c2e3f38b Measures on LTMPlot got lost
When optimising for performance the measures
refresh was lost in LTMPlot. This reinstates
them.

Additionally, measures are now shown on the
metric list with a "(m)" after their name to
help differentiate them.
2012-12-28 10:32:20 +00:00
Mark Liversedge
5e8b9bf63f UI Nits: Metadata TextEdit double frame
For example the notes field on its own tab looks fugly
with a frame inside a tab (especially on a Mac). So this
patch removes the frame and background for a cleaner look.
2012-12-27 23:58:03 +00:00
Mark Liversedge
b52b0f2b27 Missing break. 2012-12-27 21:04:00 +00:00
Mark Liversedge
590c535327 UI Nits: Download/Compose Mac button icons
.. follow up to earlier fix, but this one covers
the download and compose buttons too.
2012-12-27 20:45:17 +00:00
Mark Liversedge
981d53d063 Fix Batch Export Dir choice on Mac
For some reason when selecting a target directory
for batch export on the Mac the returned value was
always the same as the supplied value.

Fixed via temporary variables, but not sure why it
fixes the problem, tbh.
2012-12-27 20:28:52 +00:00
Mark Liversedge
97e3ad08fa UI Nits: Fix Mac button icons weirdness
The Mac button icons would go a bit odd, this seems
to be caused by not setting an alternate image for
buttons (they have two images one for each state).
2012-12-27 20:18:42 +00:00
Mark Liversedge
2c17783e2d Saris Powerbeam PRO Virtual Power
.. using constants supplied by Tom (ATucker) on the
golden cheetah google group.
2012-12-27 19:44:53 +00:00
Mark Liversedge
f67713ff74 Fix -Wdelete-non-virtual-dtor warnings
Base classes should have virtual destructors to
ensure derived classes destructor is also virtual.

This is not a major issue, since in all of the
warning cases there is no base destructor, but
its nice to shutup the compiler warnings.
2012-12-27 19:10:05 +00:00
Mark Liversedge
1d310a67a6 Merge pull request #403 from andybryson/rem_boost
Remove Boost Dependency - The Easy Bits
2012-12-27 09:51:30 -08:00
Andy Bryson
ff546e8471 Remove Boost Dependency - The Easy Bits
Replace boost stuff with QT or C++ equivalents
2012-12-27 17:04:36 +00:00
Mark Liversedge
3507021e67 UI Nits: Mac + chart button too wide
.. broken in earlier commits today.
2012-12-26 22:35:35 +00:00
Mark Liversedge
bdb5f9282c UI Nits: Add Chart on Linux/Windows
.. now just a "+" sign like on Mac.
2012-12-26 14:50:20 +00:00
Mark Liversedge
79bec2ddf7 UI Nits: Non-Mac Toolbar
Fix differing icon sizes and click animation fugly. Still
need some professional looking icons to replace the
temporary ones.
2012-12-26 14:36:25 +00:00
Mark Liversedge
a4878bb86c UI Nits: Color prefs
Column sizing on appearance pref pane was
too small. Simple fix.
2012-12-25 15:50:08 +00:00
Mark Liversedge
368d2f3b76 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2012-12-25 12:04:51 +00:00
Mark Liversedge
d609b37158 LTM Sidebar add season
It wasn't possible to add a season until a user
defined season was available!! This fixes that.

We need to make the sidebar Splitter have titled
handles with actions like this on it (ala QtCreator).
There is a feature request open for this.
2012-12-25 12:03:18 +00:00
Mark Liversedge
c80986f4a8 UI Nits: QMactyle QToolButtons are ugly
I really hate the way QMacStyle changes the style of
a button based upon its size. Its really annoying, especially
since you cannot override it.

Updated last couple of commits to have no effect on Mac where
they make some of the buttons in the preferences pane look ugly.
2012-12-25 11:34:16 +00:00
Mark Liversedge
980803d20a UI Nits: Pref Pane Fields page
Column widths set to avoid horizontal
scrollbar from appearing.
2012-12-25 10:42:51 +00:00
Mark Liversedge
5bf004d1cf UI Nits: Prefs pane cosmetics
Made the up,down,left,right,add,del buttons
smaller and used icons where appropriate.
2012-12-25 10:15:22 +00:00
Mark Liversedge
35841684c1 Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2012-12-24 19:14:38 +00:00
Mark Liversedge
e9e61f6837 Add Chart on Scope Bar
Put a button on the scope bar to add a chart. This is more
intuitive than the right click menu. The style could be
better but ok for now.

Deprecated the right-click menu option since it is unintuitive
and hidden from the user (i.e. bad UX).
2012-12-24 19:13:12 +00:00
Mark Liversedge
a836882f4f VLC is Optional - don't SEGV
Ugh. Fixed a couple of SEGV when library importing
is used with video but no video support is compiled in.
2012-12-24 16:45:44 +00:00
Mark Liversedge
497b3935e2 CP Calculator is really and Estimator
.. and the dialog was a bit ugly too.
2012-12-24 16:23:16 +00:00
Mark Liversedge
71abc80403 Workout Library fixups
Remember the selected video or workout when refreshing list
on data change. This is particularly relevant when dragging
and dropping in videos and workouts.
2012-12-24 16:05:07 +00:00
Mark Liversedge
1fe0072bf8 Further Workout Library Fixups
- Added drag and drop dialog and functionality
- if only 1 video/workout imported it is imported and selected
- if multiple they are imported with a dialog
- now shows any references in the scan function

The use of references to avoid making copies of videos is
a touch complicated -- the workflow could be friendlier.
2012-12-24 15:23:16 +00:00
Mark Liversedge
697a30811e Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2012-12-24 09:21:44 +00:00
Mark Liversedge
64337495e5 Further Workout Library 3 fixups
Now need to write the workout import dialog.
2012-12-24 09:20:56 +00:00
Mark Liversedge
3063d21774 Merge pull request #402 from objectiveous/master
Inclusion of macports usage for builds on Mac
2012-12-23 13:21:20 -08:00
Robert Evans
9caaef6643 Adding macports instructions for qt dependency install
It's possible to use macports to install the qt dependencies and this change introduces language to that effect. It describes how to install both qt and the qt-sqllite dependencies.
2012-12-23 11:48:57 -08:00
Mark Liversedge
596986e355 Support PC7 /dev entry
As reported on the list the cu/usbserial device contains
a non-hexadecimal number (given example cu.usbserial-A2QYN3QJ)
this update changes the regexp to match.
2012-12-23 18:46:34 +00:00
Mark Liversedge
d6a6c53899 Workout Library Part 3 fixups
Some fixups to recent update for the workout
library support;

- ergDB download now updates the DB
- mainwindow menu options names more consistent
- sort order in the video and workout list
- hooks for import/drag and drop

Will now write the importer for drag-n-drop and
import workouts menu option.
2012-12-23 17:56:41 +00:00
Mark Liversedge
f761b68de7 Fix Z-order for chart settings
Always on top hint is not appropriate for the
chart settings since the LTM chart settings
open another dialog -- which then appear behind
the dialog and cannot be moved.

Fixes #401.
2012-12-22 19:10:41 +00:00
Mark Liversedge
5afe2c3e78 Workout Library Part 3 of 3
Linked up the training db to the train tool to
allow users to select from the db.

Further enhancements to the list could be made,
but leaving this till we move to OpenTrainer.

Still need to add drag and drop to copy into
the library or add reference to the file.

Fixes #301.
2012-12-22 19:05:36 +00:00
Mark Liversedge
19f626f58d LTMPlot linear gradient was upside down 2012-12-22 11:12:27 +00:00
Mark Liversedge
c73b8fdc25 CP 'this' curve more prominent
Made 2px line rather than 1px to make it more
prominent on the CP chart.
2012-12-22 11:05:04 +00:00
Mark Liversedge
a4832d020f Tone down CP linear gradient
My eyes started to bleed at the burst of color
on the cp plot after the introduction of a
linear gradient there. Just toned it down a bit
for the "rainbow" all curve.
2012-12-22 10:53:19 +00:00
Mark Liversedge
ba1950cc27 UI Polish: More linear gradient on CP curve
Added linear gradient shading to the CP curve
2012-12-22 10:35:17 +00:00
Mark Liversedge
de71148548 UI Polish: More linear gradient on histogram
Added linear gradient shading in the histogram charts.
2012-12-22 10:23:17 +00:00
Mark Liversedge
ae91365a04 UI Polish: Bit more linear gradient
Add s subtle linear gradient to the bars on the
LTMPlot.
2012-12-22 00:00:25 +00:00
Mark Liversedge
e9fe1df4d6 Library Part 2 fixups
Kept recreating the db tables due to an error
in checkDBVersion.
2012-12-21 21:58:59 +00:00
Mark Liversedge
d9d581e1d0 Workout Library Part 2 of 3
Add trainDB sqlite database of workouts and videos
found during a library search. A bit ghetto but
works well enough.

Part 3 will need to;
- update traintool to list contents from db
- allow drag-n-drop of files into db (and worry
  about copy to library vs add path).
2012-12-21 16:27:49 +00:00
Mark Liversedge
ba7616789f ErgFile lookup CP
Instead of passing the CP value for the rider
when opening an ErgFile it now looks up the CP
value itself. Simplifies the API.
2012-12-21 11:09:52 +00:00
gcoco
3ab31ed4c1 Reset defaults 2012-12-20 23:11:25 -05:00
gcoco
5a2e795914 Reset defaults 2012-12-20 23:10:18 -05:00
gcoco
390df0516c Remove data from default settings 2012-12-20 18:57:31 -05:00
Mark Liversedge
ea3965bdb2 AVI isn't supported by Quicktime
Which sucks hoops.
2012-12-20 21:58:57 +00:00
Mark Liversedge
59f2c04980 Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2012-12-20 19:59:44 +00:00
Mark Liversedge
83b5ab6ee2 UX: Chart Setup simplified
Don't ask about height/width factor, no-one knows
what they mean and ou can adjust it once added to
the view anyway.

Also, if there are not chart controls don't reserve
the space for them.
2012-12-20 19:57:58 +00:00
Mark Liversedge
a47b833767 Merge pull request #399 from amtriathlon/ridefile
Enable RideFile seriesName translation
2012-12-20 11:17:39 -08:00
Alejandro Martinez
8e179cfbfb Enable RideFile seriesName translation
Also changed all references to QObject::tr for a version with the proper context
2012-12-20 15:55:47 -03:00
Mark Liversedge
fa2ee25cf4 More Library Part 1 fixups
- honour the checkboxes
- fix screen flicker
2012-12-20 16:54:49 +00:00
Mark Liversedge
7332e4c944 Library Part 1 fixups
- vlc is optional on Linux/Windows
- summary of found items was out by 1
2012-12-20 15:05:25 +00:00
Mark Liversedge
872d40d20e LTMPlot refresh optimisation
Only refresh when dateRange actually changes
within dateRangeChanged() since it is a signal
used by the HomeWindow to ask a replot when
a tab is selected.

Should speed up navigation across diary and
home view.
2012-12-20 14:50:10 +00:00
Mark Liversedge
0724a610ac Stop double updating LTM Plots
When dateRange was implemented in LTMSidebar and the property
dateRange was introduced to LTM charts a nasty double and
triple plot bug was introduced.

This update ensures the chart is only plotted once when it is
selected.
2012-12-20 14:27:53 +00:00
Mark Liversedge
ce0217adfa Fix user units lost in translation
LTMPlot translation lost the user defined units
which made the default PMC (amongst others) look
odd since each data series used a different axis.
2012-12-20 14:07:08 +00:00
Mark Liversedge
1856b6dc6f Oops: left in a qdebug 2012-12-20 13:50:01 +00:00
Mark Liversedge
531bd7a491 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2012-12-20 13:34:38 +00:00
Mark Liversedge
3752c80f52 Workout Library Part 1 of 3
Implementing a workout library that keeps
track of media and workouts that can be used
in train view.

This first part implements;
- library.xml to record search paths
- search dialog to find media/workouts

Part 2 and 3 will bring:
- Sqllite libraryDB to store found details
- Update traintool to use libraryDB and display
  icons, duration/distance, IF and TSS in list
- import and drag-n-drop of new media/workouts
2012-12-20 13:30:49 +00:00
Mark Liversedge
b73e120c78 Merge pull request #397 from andybryson/stacking
Stacked Plot Improvements
2012-12-20 05:21:57 -08:00
Andy Bryson
6ee4f5cbaa Stacked Plot Improvements
Make first plot the same size as the others in stacked view
Stop RPM scale clutter
2012-12-20 12:59:48 +00:00
Gareth Coco
595f378464 Allow make to compile translations before building
Fixes #388.
2012-12-20 10:26:10 +00:00
Mark Liversedge
d9ada7e20a Trimmed PMC/Manual Preferences
There were a bunch of preferences that really
weren't needed; STS/LTS starting values were not
being used (and logic flawed anyway).

The mode/days to estimate bikescore were only used
in one place (manual ride dialog) so moved there
instead.

Fixes #396.
2012-12-20 10:14:41 +00:00
Mark Liversedge
ed206b05d7 Merge pull request #395 from amtriathlon/navigator
Enable RideNavigator Translation
2012-12-19 14:35:02 -08:00
Alejandro Martinez
57e46c46f9 Enable RideNavigator Translation 2012-12-19 19:31:54 -03:00
Mark Liversedge
5c9e4cb8f6 Merge pull request #391 from dhague/master
Pre-work for coastdown calibration
2012-12-18 13:31:13 -08:00
dhague
60b7f223c9 Refactor antlog.bin output into ANTLogger class
ANT.cpp now emits a signal for each ANTMessage
ANTlocalController wires up this signal to a slot in ANTLogger which
writes the message to antlog.bin

Signed-off-by: dhague <darren.hague@fortybeans.com>
2012-12-18 21:22:34 +00:00
Mark Liversedge
cf9a9b713a Merge pull request #390 from amtriathlon/chartname
Enable chart names translation
2012-12-18 10:15:03 -08:00
Alejandro Martinez
5dc21c0817 Enable chart names translation 2012-12-18 14:32:03 -03:00
Mark Liversedge
4c8add3f92 Merge pull request #389 from amtriathlon/calendar
Enable Diary Translations
2012-12-17 22:54:46 -08:00
Alejandro Martinez
227ab59bb6 Enable Diary Translations 2012-12-17 23:41:18 -03:00
Damien
3feda4f8ec ISODate format for UTC date end by "Z"
fixes #387
2012-12-17 21:49:49 +01:00
Mark Liversedge
5827de339e UI Polish: Linear gradient in ErgFilePlot
Use a linear gradient to fill the load curve in the train view.
2012-12-17 11:26:40 +00:00
Mark Liversedge
e8077cd578 Merge pull request #378 from amtriathlon/home
Enable HomeWindow Translations
2012-12-16 14:08:48 -08:00
Alejandro Martinez
9e917123af Translate metrics names and units 2012-12-16 18:41:23 -03:00
Mark Liversedge
5f2ed6b7c5 Merge pull request #386 from andybryson/chart_settings
Chart Settings (show legend and shade zones) do not persist.
2012-12-16 11:20:07 -08:00
Andy Bryson
20f39576b3 Chart Settings (show legend and show zone) were not persistent. 2012-12-16 19:02:21 +00:00
Mark Liversedge
006af4ac6d Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2012-12-16 12:51:19 +00:00
Mark Liversedge
de8d8e3d15 UI Nit: toolbar selection wrong
When using the view menu to switch between
diary, analysis and home view the tab widget
was not updated.

Fixes #383.
2012-12-16 12:49:51 +00:00
Mark Liversedge
54c68e808a Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2012-12-15 18:42:25 +00:00
Mark Liversedge
dc1b73a4b3 Added Blank GC Icon 2012-12-15 18:41:57 +00:00
Damien
fca4c27d2c Remove some warnings 2012-12-15 17:18:44 +01:00
Mark Liversedge
38d110df5d Context Menu for Devices in Train View
Right click to add/delete a new device on the device list
in the train view sidebar.

It is temporary to bring the train view in line with the rest
of GC, but will then be updated as we remove functionality that
is hidden behind a right click.
2012-12-15 14:07:45 +00:00
Mark Liversedge
7f71adcc9c Manual Ride Dialog Fixups
- default size on Linux/Windows
- initialise the seconds/totalseconds variables
2012-12-14 15:05:50 +00:00
Damien
08d696aefd Update French translation for V3.0 (3/3) 2012-12-13 23:23:06 +01:00
Mark Liversedge
af772d65f6 Fix SEGV in CPPlot when ride added/deleted
The recent update to allow CP charts to be added to the home
view and display the cp chart for the range selected did not
update to cater for ride/add delete whilst the season combo
is not set.

As a result when a ride was added/deleted the current index for
the combo was used (-1) to reference the season array resulting
in an fatal assert on array bounds.
2012-12-13 14:44:09 +00:00
Mark Liversedge
3af26cde15 UI Nits: Manual Ride Dialog fugly
Tidied up and enhanced the manual ride dialog. It now
lets users add Sport, Workout Code and Notes (or leave
them blank if they don't use them).

Also added Average HR, Cad, Watts and Speed as well as
deriving TSS and Work.

If there are no rides in the last 'n' days it falls back
to the default for all rides logged.

It also now writes json format files.
2012-12-13 14:14:25 +00:00
Alejandro Martinez
3daf2097fa New metricsDetails method in LTMTools 2012-12-12 10:56:28 -03:00
Mark Liversedge
fe1e0881a0 Fix Split Ride SEGV
Appears to be related to add/removing labels during a paint event,
which is pretty bad practice anyway. To get past this crash the
labels have been removed -- the chart still shades areas to show
the parts of the ride that will be split out, but no longer shows
the number for each segment.

Fixes #379.
2012-12-11 11:47:51 +00:00
gcoco
1c48eaf2e0 Fix
Recent commit 8eee2dd got some of the logic
the wrong way round for switching between metric
and imperial units in Weight.
2012-12-11 01:43:36 -05:00
Alejandro Martinez
a7988337f2 Enable HomeWindow Translations 2012-12-10 23:49:51 -03:00
Mark Liversedge
bba3b609f0 ConfigDialog was missing copyright messages 2012-12-10 14:35:11 +00:00
Mark Liversedge
a520da1f2a UI Nits: Geometry and setUnifiedTitleAndToolBar
The restore / set geometry for the config dialog and mainwindow
was 'adjusted' by setUnifiedTitleAndToolBarOnMac. This meant
that when restoring geometry at startup the window would gradually
decrease in size (by roughly 42 pixels).
2012-12-10 08:51:41 +00:00
Mark Liversedge
9b0b193ed3 Remove RideFileCache compile time warnings
Just noticed and thought I'd do a quick fix since it
was so trivial.
2012-12-10 07:27:00 +00:00
Damien
0a784a4a6a Remove warnings 2012-12-09 23:03:19 +01:00
Gareth Coco
7ba6b11812 Update binary translations 2012-12-09 16:14:42 -05:00
Mark Liversedge
b176fd0064 Handle -lGLU in qmake for mac where unix is true. 2012-12-09 17:53:41 +00:00
Mark Liversedge
6a977451c0 -lGLU only needed on Unix 2012-12-09 13:08:47 +00:00
Damien
62141b7cbd Update French translation for V3.0 (2/3) 2012-12-09 10:55:13 +01:00
Mark Liversedge
e46f199a98 Merge pull request #377 from amtriathlon/3d
Enable 3d chart translations
2012-12-08 15:54:50 -08:00
Alejandro Martinez
e29f53be06 Enable 3d chart translations 2012-12-08 20:26:44 -03:00
Mark Liversedge
b25c97fc25 Update LINUX-INSTALL for 3D on Ubuntu 12.10 2012-12-08 21:50:14 +00:00
Mark Liversedge
c33b84f3f0 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2012-12-08 21:44:34 +00:00
Mark Liversedge
be1ea22e83 Need -lGLU for 3d link on Ubuntu 2012-12-08 21:44:06 +00:00
Mark Liversedge
342a7e081b Merge pull request #376 from amtriathlon/rho
Enable Rho and Twitter translations
2012-12-08 11:56:39 -08:00
Alejandro Martinez
5f5196c4f1 Enable Rho and Twitter translations 2012-12-08 16:45:41 -03:00
Mark Liversedge
53f2a8d05d Merge pull request #375 from amtriathlon/colors
Enable Colors translations
2012-12-08 09:32:01 -08:00
Alejandro Martinez
7192352f09 Enable Colors translations
Includes loading translations for system dialogs and
using default units according to system settings
2012-12-08 14:22:08 -03:00
Mark Liversedge
d2d022316c Merge pull request #374 from amtriathlon/DataProc
Enable DataProcessor Translation
2012-12-08 09:13:56 -08:00
Alejandro Martinez
374129e007 Enable DataProcessor Translation
Also includes download instructions translation
2012-12-08 12:37:01 -03:00
Mark Liversedge
00482af7e9 Update LTMTool chart translation table
To reflect new charts.xml that is now the default
chart setup for v3.
2012-12-08 14:38:12 +00:00
Mark Liversedge
a1c0d9b1dd Fix Ridesummary SEGV 2012-12-08 14:13:30 +00:00
Mark Liversedge
c37ae3482a Default Configuration Files
This represents the default configuration for
charts, layouts and metadata. This is now frozen
for the V3 release to allow translations to be
made.
2012-12-08 14:02:28 +00:00
Mark Liversedge
2bc5f62f71 Merge pull request #373 from amtriathlon/ltm
Enable LTM Translations
2012-12-07 16:12:14 -08:00
Alejandro Martinez
9bc390fa58 Enable LTM Translations
Includes translation of default chart names, these
should be in sync with those defined in charts.xml
2012-12-07 21:04:21 -03:00
Mark Liversedge
a45b1723c3 Hysteresis label too long. 2012-12-07 22:26:50 +00:00
Eric Murray
8e1d2240c1 User Configurable Hysteresis
Still defaults to the original value of 3 meters. Because
the metrics need to be recalculated when it changes we also
add the hysteresis factor to the zone fingerprint CRC.
2012-12-07 21:56:11 +00:00
Mark Liversedge
a7122ef7af UI Nits: Simple frame for tab mode
Will look at drop shadows tomorrow.
2012-12-07 21:21:36 +00:00
Mark Liversedge
8839d4bcab UI Nits: GcBubble border color 2012-12-07 18:59:14 +00:00
Mark Liversedge
09924088b1 UI Nits: Config Dialog Cosmetics 2012-12-07 18:24:53 +00:00
Mark Liversedge
4f0c485ae6 UI Nits: Config Dialog toolbar not movable 2012-12-07 17:17:20 +00:00
Mark Liversedge
9ce543693b Merge branch 'pmc-qa' of https://github.com/amtriathlon/GoldenCheetah into amtriathlon-pmc-qa
Conflicts:
	src/translations/gc_fr.ts
2012-12-07 17:05:31 +00:00
Mark Liversedge
9b40aff694 UI Nits: Config Dialog Size on Linux 2012-12-07 17:00:12 +00:00
Mark Liversedge
c1d059e47a Image missed from last commit. 2012-12-07 16:47:32 +00:00
Alejandro Martinez
067201ab1f Enable PerfPlot and PfPvPlot translations
Also includes a minor change in LTMSidebar
2012-12-07 13:40:34 -03:00
Mark Liversedge
3e2915946d Merge pull request #371 from amtriathlon/aerolab-allplot
Enable AllPlot and Aerolab translations
2012-12-07 08:37:05 -08:00
Mark Liversedge
c80131d042 Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2012-12-07 16:36:22 +00:00
Mark Liversedge
8eb058f7a6 Tidy up Preferences Dialog
Big refactor of the code since it was really messy
and also moved to a Mac style config dialog with
a bit of Mac UI polish.

Moved many of the pages around to make it more user
friendly.

Removed the fortius and proxy code altogether
and removed the measures config since we will need to
look at this in v3.1 and don't want to have to add
backward compatibility support for users that change it.

Fixes #358.
2012-12-07 16:32:58 +00:00
Alejandro Martinez
b370520679 Enable AllPlot and Aerolab translations
Also update spanish translation
2012-12-07 11:54:09 -03:00
Damien
b770ee4f80 Update French translation for V3.0 (1/3)
2
2012-12-07 14:35:45 +01:00
Mark Liversedge
98993eaefa Merge pull request #370 from amtriathlon/ridesummary
Enable translations in RideSummary
2012-12-06 14:28:47 -08:00
Alejandro Martinez
7f9f075f9f Enable translations in RideSummary
Includes default zone descriptions
2012-12-06 19:19:18 -03:00
Mark Liversedge
ab8c367b01 LTMSidebar: Add season
Makes sense to let the users create seasons in the LTM sidebar
rather than have to go into preferences to do it.
2012-12-06 11:52:40 +00:00
Mark Liversedge
1bfa333ca1 Merge pull request #369 from amtriathlon/aerolab
Add error reporting to Estimate CdA and Crr
2012-12-05 10:12:17 -08:00
unknown
92c8abf0e4 Add error reporting to Estimate CdA and Crr 2012-12-05 14:57:07 -03:00
Mark Liversedge
89ce88a8c2 Merge pull request #368 from amtriathlon/metadata
Enable Metadata translation
2012-12-04 23:07:19 -08:00
Alejandro Martinez
017cc71d5a Enable Metadata translation
This patch keeps the original english name of SpecialFields and SpecialTabs
as internalName, to preserve compatibility, while it uses a translated
displayName for user interfase in other languages.
2012-12-04 22:00:59 -03:00
Damien
b6065f3332 Mismatching allocation and deallocation 2012-12-04 23:38:13 +01:00
Damien
b16615419d Add label for seasons with same start date 2012-12-04 23:18:50 +01:00
Mark Liversedge
f0d87cad9b Merge pull request #367 from amtriathlon/metrics
Enable translation on LeftRight metric
2012-12-04 12:00:05 -08:00
Alejandro Martinez
eff1cdde32 Enable translation on LeftRight metric 2012-12-04 16:51:04 -03:00
Damien
24e78e7734 Correct invalid json if no hr in Strava upload 2012-12-04 20:39:07 +01:00
Mark Liversedge
4fb26c21b0 UI Nits: Fixup after ridelist scrollbar 2012-12-04 19:04:43 +00:00
Mark Liversedge
d55fa6974a Merge pull request #366 from amtriathlon/metrics
Enable metrics translations
2012-12-04 10:32:56 -08:00
Alejandro Martinez
299867550a Enable metrics translations
The code setting metric names and units was moved from constructors to
an initialize method, to be called after translator initialization.
English Name is preserved as InternalName for metadata.xlm compatibility
in metric override.
Q_DECLARE_TR_FUNCTIONS(class-name) macro is used to set tr() context
when class-name is not QObject sub-class.
2012-12-04 13:59:49 -03:00
Mark Liversedge
1f5e89582e UI Nits: Ride list scrollbar on Mac
Style was all wrong and when rides were filtered
the scrollbar disappeared by the space was left
un painted.
2012-12-04 15:58:27 +00:00
Mark Liversedge
c35c89049f TreeMap show rides when cell clicked
When a cell in the treemap plot is clicked they are displayed
in the popup pane also used by the LTM charts.

We do need to tart up the popup, but at least now the treemap
plot does something meaningful.

Fixes #364.
2012-12-04 15:13:46 +00:00
Mark Liversedge
c59276f88a TreeMap Chart - refactor away LTM
The treemap chart was developed as a variation of an LTM
chart and as a results has the same chart settings etc.

It has now been refactored to be a standalone chart with
no need to re-use the LTM settings and code.

This is also in preparation to support click through on
the cells to show a popup of rides.
2012-12-04 14:01:33 +00:00
Mark Liversedge
af119ff710 TCX Parser: Strtod is locale specific
When parsing in locale's where numbers use a
',' as a decimal point, strtod fails to parse
lon/lat values.

Thanks to Horst Huschauer for the fix.

Fixes #365.
2012-12-03 21:51:05 +00:00
Mark Liversedge
0b478e79bb UI Nits: LTM popup stretch
Remove stretch in LTM popup, makes it much more space
efficient. Will not look to make it more of a HUD popup.
2012-12-03 20:37:13 +00:00
Mark Liversedge
d15a748ef1 UI Nits: Remove unused LTM metric options
There were a few metric options on the LTM
chart that were introduced a looooong time
ago when playing with filter ideas.

They don't do anything and will confuse the
hell out of users. They are now removed.
2012-12-03 19:15:07 +00:00
Mark Liversedge
68c57bee4c UI Nits: Ride Navigator weird gap fix
Workaround that by putting new columns at the left
not at the right and the problem goes away. Suspect
it is related to issues with QT and expandLastColumn()
which also displayed issues.
2012-12-03 16:21:21 +00:00
Mark Liversedge
546b4aac83 W/KG fixup distribution/histogram
The w/kg ridefile cache was not quite right
for distribution charting.
2012-12-03 14:56:43 +00:00
Mark Liversedge
1ae60f44fb Uncomment code from last commit.
Accidentally pushed some commented out code in the last
commit, which was left from debugging. The code is now reinstated.
2012-12-03 12:12:13 +00:00
Mark Liversedge
02e0203ddd Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2012-12-03 12:01:33 +00:00
Mark Liversedge
2908c7d8cf Performance Manager Date Labels
Linker error using different TimeScaleDraw::label but
also a memory leak with unneccesary calls to create a
new ScaleDraw object.

Also applied recent fixes from qwt6 for scale draws. We
should look to pick up some of the other recent fixes
-- especially QT5 support.

Fixes #363.
2012-12-03 12:00:12 +00:00
Damien
7bc33402d3 Add shaded power zones for watt per kilogram series in histogram 2012-12-02 23:05:35 +01:00
Damien
1087d0356c Correct binWidth if not valid for the selected series 2012-12-02 22:32:06 +01:00
Mark Liversedge
6b666959ff UI Nits: Fix GcBubble on Mac
Painting artefacts caused by setting native window painting
in main.cpp. It was left in accidentally.
2012-12-02 19:36:57 +00:00
Mark Liversedge
f32e1a8536 UI Nits: LTM add chart use a default date range
When adding a chart to the home view no date range is set.
This update ensures that the last selected date range is
used, so when a chart is selected/configured some data
will be shown.
2012-12-02 18:10:26 +00:00
Mark Liversedge
4d8f25caa3 UI Nits: New athlete splitter sizes
When a new athlete is setup the splitter sizes are not
defaulted, leading to a sidebar that is way too wide.
2012-12-02 16:07:04 +00:00
Mark Liversedge
46c2ceb048 UI Nits: Importing GTC Export screen updates
When importing a GTC export (which contains multiple ride
files in a single .TCX) the screen update stalls whilst the
file is split. The import dialog is half drawn and looks
ugly to the user for a split second.

We now delay updates until the export has been expanded
into separate files, which means there is a slightly longer
delay as the file is initially processed, but the screen
updates are cleaner.
2012-12-02 08:16:35 +00:00
gcoco
e7c39c8064 Fix git URLs 2012-12-01 20:59:36 -05:00
gcoco
69d95364b1 Fit git URL 2012-12-01 20:57:58 -05:00
gcoco
80b3a524fd Fix git URL 2012-12-01 20:57:19 -05:00
Damien
a5e606c3fe Return cached value 2012-12-02 01:00:14 +01:00
Damien
c10692e3c4 The getWeight() method should find the last value of weight in measures if the last measure has no weight value 2012-12-02 00:53:05 +01:00
Mark Liversedge
0a5885fb7e Fix Weight stored in KGs
Recent commit 8eee2ddb got some of the logic
the wrong way round for converting weight to KGs
before saving (and when switching between metric
and imperial units).

We always store weight in KGs.
2012-12-01 23:27:57 +00:00
Damien
79ebc0a82d Implements WattsKg in histogram
fixes #362
2012-12-01 23:52:50 +01:00
Mark Liversedge
cd2145504a Fix SEGV on cancel remove chart
Recent update to use deleteLater() when removing
a chart in the event loop /always/ deletes the chart
regardless of the user selection, this is because it
is deleted in the wrong place.

It was deleted when the user selected the close menu
option (in GoldenCheetah.cpp) rather than after the
user had confirmed (in HomeWindow.cpp).
2012-12-01 22:19:46 +00:00
Mark Liversedge
b5300181ce UI Nits: Fix fugly LTM settings dialog
Slightly better. Still room for improvement in the
workflow for working with the preset charts.
2012-12-01 22:02:59 +00:00
Mark Liversedge
6e5ff36bdf UI Nits: LTM popup fugly
Small improvement to LTM popup. Need a better
close icon though.
2012-12-01 19:25:49 +00:00
Damien
1c389fab58 Change series id for histograms after ids were changed by mistake in commit #b116d3a 2012-12-01 19:35:04 +01:00
Mark Liversedge
6009cdbdbd UI Nits: RideNavigator honout font metrics
The row height in the ride list is fixed. When the user
selects a different font the row height should adjust
accordingly.
2012-12-01 17:34:52 +00:00
Mark Liversedge
4bfc223c0d Fix SEGV on ESC in chart settings
If you press ESC on the chart settings (not add chart) dialog
then the dialog is closed and deleted, causing a SEGV. This
patch overrides reject() to ensure the dialog is just hidden.
2012-12-01 13:12:33 +00:00
Mark Liversedge
cf01e23428 Merge pull request #361 from andybryson/morecharts
Y axis is still unclear
2012-11-30 13:18:24 -08:00
Mark Liversedge
b5ef544b29 UI Nits: Disable GcBubble on Mac
The painting artefacts are a problem only on a Mac. Suspect
it is a QT bug. Disabling the bubble on a Mac for this reason.
Its starting to grate anyway, perhaps there is a better way
of doing this.
2012-11-30 19:14:27 +00:00
Mark Liversedge
432783a1be UI Nits: Fix bubble vanish!
The popup bubble appears and vanuishes on the
diary view. This patch fixes that. Still need
to work out why it goes invisbible on Mac OSX.
2012-11-30 18:25:22 +00:00
Andy Bryson
d254c41a15 361 - Y axis is still unclear 2012-11-30 12:50:55 +00:00
Mark Liversedge
ef5a899f68 UI Nits: GcBubble positioning
RideNavigator set the GCBubble to the wrong position on
screen which can be confusing when you have a narrow list
of rides. The bubble appeared to be displaying for a totally
different ride.
2012-11-30 10:27:23 +00:00
Damien
9767a442ed Update translation (ts) files 2012-11-30 07:47:04 +01:00
Alejandro Martinez
930857afab Add es and pt translation files set lang default according to system default 2012-11-29 23:34:58 +01:00
Mark Liversedge
e369b660d6 Events on LTM work for different group by
The last patch to show events on the LTM chart only
worked when grouping by weeks. This is because the
groupby x dimension is baselined to the starting date;
i.e. groups always start from 0.

This patch fixes displaying events when grouping by
days, months or years.
2012-11-29 17:38:47 +00:00
Mark Liversedge
2f31bd1068 I Nits: LTM Sidebar (Part 3 of 3)
Events are now maintainable in the sidebar and this
update now plots them on the LTM plot.

Events and season markers are shown so long as they
fall within the chosen date range.
2012-11-29 16:24:15 +00:00
Mark Liversedge
23665f986d Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2012-11-29 14:52:05 +00:00
Mark Liversedge
900da0be05 Mainain Events in LTM Sidebar
Add the ability to create and maintain events in
the LTMSidebar. This is a follow up to adding
support for Events in seasons.xml.

The last step is now to add support for annotating
charts to show the events for the date range selected
and possibly for the seasons within that date range.
2012-11-29 14:49:21 +00:00
Mark Liversedge
92b18469ee Season preferences don't lose events
If you maintained your seasons in the tools
or preferences pane then all your events would
be lost.
2012-11-29 10:22:24 +00:00
Mark Liversedge
8812617409 Add Events to Seasons.xml
But bear in mind the season editor in preferences
needs to be updated to support the additional elements.
2012-11-29 09:37:39 +00:00
Damien
d6919bf2a8 Update translation (ts) files 2012-11-28 22:21:49 +01:00
Mark Liversedge
46557d0b59 Histogram nointerval curve on season chart 2012-11-28 19:53:47 +00:00
Mark Liversedge
dd9f4ed126 Concise metric names in sidebars 2012-11-28 17:11:24 +00:00
Mark Liversedge
3050753a8e Fix split ride SEGV on bad recording interval
When reading a PWX file we try to guess the recording interval
by looking at the first two samples. This can lead to silly
values when there are recording errors.

This patch sanity checks the recording interval and sets it to
1s recording if the derived value is unusual.
2012-11-28 16:08:22 +00:00
Mark Liversedge
4286123ff2 Merge pull request #360 from andybryson/charts
Issue #357 - Y axis is unclear
2012-11-27 13:12:45 -08:00
Damien
1c0b8901d5 Correct Zeo data download : only one message box after new values 2012-11-27 22:08:57 +01:00
Damien
df884d77f0 Correct crash for Joule 2.0 files without temperature for first seconds 2012-11-27 22:08:57 +01:00
Mark Liversedge
1eba467976 UI Nits: LTM Sidebar (Part 2 of 3)
The last of a series of recent patches to address performance
degradation from the introduction of the LTMSiebar. This last
patch introduces a CPX aggregates cache to re-use aggregated
CPX data (e.g. for plotting a specific season or date range).

The cache is set to only hold 25 caches, which should be enough
for most folks list of seasons. But won't get unwieldy if they
scroll around in the diary view.

The following will be introduced in the last patch of
this series:

1. Introduce 'events' within a season and plot them on the
   LTM chart -- a form of 'annotation' but also the beginning
   of planned events in the future too.

2. Implement click functionality on LTM charts but decide if
   we use click to annotate or to define a new date range or
   both?
2012-11-27 21:03:19 +00:00
Mark Liversedge
268738dd96 Fix SEGV on GcBubble 2012-11-27 18:53:11 +00:00
Andy Bryson
01cbecdbc1 Issue #357 - Y axis is unclear 2012-11-27 18:40:11 +00:00
Mark Liversedge
15f44becd5 UI Nits: LTMSidebar performance
Don't refresh CP, LTM or Histogram plots when dateRange property
is set, if the dateRange was previously plotted anyway. Will set
to stale if a ride is added or deleted too.

This means the replot of tabs is not performed when simply switching
between tabs. But will if the date range does change or a ride is
added or deleted meaning the aggregate needs to be re-calculated.

There is still one more performance improvement required;

1. get RideFileCache to have a cache of recent aggregations.
   Since (a) the same ranges will be called over and over by
   different charts when a season is selected and (b) there
   are only likely to be 20-30 seasons defined in total, so
   lets cache them instead of recalculating every time.
2012-11-27 13:41:36 +00:00
Damien
aedc39e423 Choose Metric/Imperial units in New Athlete dialog
fixes #34
2012-11-26 23:35:35 +01:00
Mark Liversedge
09c5e1e59e UI Nits: LTMSidebar performance
Remove the double update from HomeWindow and only
update in CP and Histogram when visible.

Still need to:

1. get CP/Histogram to remember what the last update
was to not bother unless something has changed.

2. get RideFileCache to have a cache of recent aggregations.
   Since (a) the same ranges will be called over and over by
   different charts when a season is selected and (b) there
   are only likely to be 20-30 seasons defined in total, so
   lets cache them instead of recalculating every time.
2012-11-26 22:11:46 +00:00
Mark Liversedge
a9f4038705 Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2012-11-26 20:30:21 +00:00
Mark Liversedge
d74bc19ac8 UI Nits: LTM Sidebar (Part 1 of 3)
We now have a date range selector in the sidebar.  The
sidebar has a date range selector and summary. It is
used to set the date range for the charts in the view.

As a result we can now add summary charts to the home view
and LTM/CP/Histogram charts to the Diary view. The weekly
summary chart is now deprecated.

Creating seasons has also been disabled on metric charts. We
will need to decide what clicking on an LTM chart should do,
and look at whether we want to keep the popup bubble or
adjust it.

There are some unfortunate performance degradations as a result
of this patch when selecting date ranges and switching between
charts in tab view. This needs to be addressed as a priority.

Follow up patches, part 2 and 3 will need to;
1. address performance degradations & cache results
2. introduce events in sidebar and as annotations on charts
3. implement click functionality on LTM charts (annotate vs
  define a new season/range)

NOTE: existing HOME, ANALYSIS and DIARY chart setups will need
      to be rebuilt since chart ids and properties have changed
      in this patch -- do not raise a bug until you have deleted
      and re-added the offending chart.
2012-11-26 20:20:36 +00:00
Gareth Coco
7d520b18ab HTML formatting 2012-11-26 09:53:41 -05:00
Gareth Coco
1e21a6d636 Website updates for broken links. 2012-11-26 09:50:50 -05:00
Mark Liversedge
4bdd953bad Fix SEGV on close chart in HomeWindow
Needed to delete outside of the event loop, fortunately this
can be done with QObject::deleteLater().
2012-11-24 20:12:26 +00:00
Mark Liversedge
a628ea1c44 Set Application Proxy from Operating System
Uses the QT proxy query and application wide proxy setting
to allow users behind a corporate firewall to use network
functions (maps, TP.com, ergDB etc).

Fixes #27.
2012-11-24 10:03:39 +00:00
Mark Liversedge
84efeef7df UI Nits: Don't delete last column
Don't let the user delete the last column on the
ride navigator. If they do that then there is no
way of adding a column back!
2012-11-23 23:20:03 +00:00
Mark Liversedge
be2c0c6516 UI Nits: Ride navigator contents margins
When adjusting column widths take into account the
contents margins. Also shows sort indicator on the
columns when not on a mac (this was changed as part
of the recent Mac native polish commits).
2012-11-23 22:27:46 +00:00
Mark Liversedge
5b33b34b5a Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2012-11-23 22:07:19 +00:00
Damien
30808e4b52 Another change on date for Joule 1.0 2012-11-23 22:05:37 +00:00
Damien
4e437ef5d3 Modify date reader for Joule 1.0 2012-11-23 22:05:37 +00:00
Damien
4a7d4800a3 Modify getUnitVersion for Joule 1.0 2012-11-23 22:05:37 +00:00
Mark Liversedge
6e5e22b907 UI Nits: Non-Mac searchbox fix
The mac searchbox using a NSSearchField works a
treat on Mac, but the code accidentally removed the
searchbox on Linux and Windows.

This patch reinstates it.
2012-11-23 22:05:37 +00:00
Damien
7425bfa605 Correct bug with the new virtual column for Ride Time 2012-11-23 22:05:37 +00:00
Mark Liversedge
a9d3bd6650 User configure Field to set colors from
The user can now select a metadata text field to use when
setting colors from keywords.

Fixes #32.
2012-11-23 22:01:41 +00:00
Damien
6546b93a71 Another change on date for Joule 1.0 2012-11-23 22:47:29 +01:00
Damien
0b44762976 Modify date reader for Joule 1.0 2012-11-23 21:52:19 +01:00
Mark Liversedge
438802b960 Merge branch 'master' of github.com:/GoldenCheetah/GoldenCheetah 2012-11-23 19:04:27 +00:00
Mark Liversedge
cda0f9c778 UI Nits: Non-Mac searchbox fix
The mac searchbox using a NSSearchField works a
treat on Mac, but the code accidentally removed the
searchbox on Linux and Windows.

This patch reinstates it.
2012-11-23 19:02:54 +00:00
Damien
627297c8b3 Modify getUnitVersion for Joule 1.0 2012-11-23 20:00:58 +01:00
Damien
bd83268881 Correct bug with the new virtual column for Ride Time 2012-11-23 17:35:08 +01:00
Mark Liversedge
8f57532273 Fix ride navigator crash on search
The ride navigator crashed on search after the new
time column was added. This was caused by incorrectly
setting the groupBy member variable (-1 is used to
indicate no group by, it was set to -2).

In addition to fixing the code to set it to -1 the
array reference now does bounds checking to avoid
crashing for invalid values.
2012-11-23 10:47:50 +00:00
Damien
f570fd4100 Modify Joule download to include Joule 1.0
Need to modify parser now
2012-11-23 07:45:11 +01:00
gcoco
9ce2d15c9a Update doc/developers-guide.content 2012-11-22 22:16:10 -05:00
gcoco
cd603e32b0 Update doc/developers-guide.content
Fix the GitHub group and point to Google Groups
2012-11-22 22:13:06 -05:00
gcoco
5d7eb1f3d2 Update doc/download.content
Update GitHub group
2012-11-22 22:07:07 -05:00
gcoco
6de7b85791 Update doc/bug-tracker.content
Point to new GitHub group
2012-11-22 22:05:11 -05:00
Claus Assmann
9e6742e563 Support download for OpenBSD USB Serial devices 2012-11-21 22:46:27 +00:00
Damien
6ca7fbb89b Add a column Start Time in the ride navigator
fixes #33
2012-11-21 22:30:57 +01:00
Damien
0ef72fdf54 Correct error in last commit 2012-11-21 21:22:41 +01:00
Gareth Coco
03b0415901 Sigma 2.1 Test files
For GitHub Issue #356
2012-11-20 17:41:29 -05:00
Mark Liversedge
f83b5a53ae UI Nits: No menu on list view
The menu drop down can appear on the list view. This is
now disabled via a window property "nomenu".

Also set the new attribute to set native widgets on a Mac.
2012-11-20 19:58:10 +00:00
Mark Liversedge
0612992204 UI Polish: Show/Hide Sidebar on ScopeBar for Mac
There is now a little button to show and hide the sidebar
just like in Mac Mail. We now only have to add the add chart
button for the toolbar/scope bar changes to be complete.
2012-11-20 19:14:37 +00:00
Mark Liversedge
e68afff2c7 UI Polish: Move train view controls to scope bar
Now we have a scope bar we can move the train view controls
out of the sidebar.
2012-11-20 17:21:22 +00:00
Mark Liversedge
a16eb563f9 the last commit needed one or two #ifdef Q_OS_MACs 2012-11-20 16:06:55 +00:00
Mark Liversedge
1a746b25f6 UI Polish: Scope Bar for Mac Native
Added a scope bar for native mac. The windows and linux
toolbar is a combined toolbar and scope bar, on a Mac it
looks much more elegant to split the two.

We will need to now add a show/hide sidebar control on the
left of the scopebar (like apple mail), the train view controls
in the centre and the add chart to the far right).
2012-11-20 15:46:31 +00:00
Mark Liversedge
9f94f0b7cc UI Polish: Toolbar spacing reduced
In readiness for a scope bar, the Mac unified title and toolbar height
is too large and needs to reduce. It now has very similar margins as the
Mac Mail toolbar.

The scope bar will make it look less compact when it is introduced.
2012-11-20 12:34:39 +00:00
Mark Liversedge
cbc1eae83e UI Nits: Small font in Details Screen
Adjustment sneaked in by accident to reduce the
font size was hard to track down, but this patch
fixes it and also removes some errant (but harmless)
code in the navigator too.
2012-11-20 06:47:11 +00:00
Mark Liversedge
019c23326c UI Polish: Diary sidebar hover color
To give the user a bit more feedback when hovering
over the day number in the diary sidebar it gets a
gray background to feedback it is clickable and also
to give a more fluid feel.

This mimics the same approach used in the Mac cal application.
2012-11-20 06:27:04 +00:00
Mark Liversedge
a658bea81f Add OpenBSD compile support
Thanks to Claus Assmann for the fixups;
- RideNavigator double foreach loops used same name for iterator
- N_TTY line discipline is not defined on OpenBSD (possibly)

Would be nice to have a better fix for the line discipline
stuff, but 0 is usually the TTY line discipline. Bit of a
hack, but ok for now.
2012-11-20 06:08:47 +00:00
Mark Liversedge
0a12f3c68c UI Nits: train labels in white
Last commit accidentally changed the color for the
IF/TSS labels on the train tool to black but this
is only appropriate for the Mac implementation.
2012-11-19 22:31:09 +00:00
Mark Liversedge
3992cc3b2c UI Nits: Goodbye ToolBox
The left sidebar is now a stacked widget and the toolbox
has been consigned to history. We are now ready to add a
left sidebar for the metric "home" view.
2012-11-19 22:15:35 +00:00
Mark Liversedge
988b010987 Merge pull request #353 from rclasen/pm-now
PM: by default show values up to "now"
2012-11-19 12:51:40 -08:00
Mark Liversedge
70fe0eb204 Merge pull request #354 from rclasen/bug737
SrmRideFile: handle bad marker start
2012-11-19 12:51:15 -08:00
Rainer Clasen
414df69cbd PM: by default show values up to "now"
Main purpose of the Performance manager is to show History up to now -
though, peeking at decline of values in next days is still interesting.

This commit makes the PM show the graph up to today, but still allows to
check the next days.
2012-11-19 21:43:20 +01:00
Mark Liversedge
f353443dc4 Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2012-11-19 20:04:25 +00:00
Mark Liversedge
83070d003b UI Polish: Mac Style Selector
Added a style selector to the Mac toolbar to toggle
between tabbed or tiled mode.
2012-11-19 20:03:25 +00:00
Rainer Clasen
cbc39d3750 SrmRideFile: handle bad marker start
Marker start wasn't check - so, it could point to data outside the array
and cause a crash.

This fixes #737
2012-11-19 19:53:02 +01:00
gcoco
b9f1d601a0 URL updates
Update URL's for WIKI/Tracker to point to the base pages on main website
2012-11-19 12:30:05 -05:00
Mark Liversedge
ff25867204 UI Polish: Mac toolbar buttons too narrow
The toolbar buttons for find intervals, split and delete were
too narrow and looked oddly smaller than the buttons to the
left .. perhaps it was an optical illusion but they are now
wider and look more consistent.
2012-11-19 09:03:15 +00:00
Damien
2152b41c0f Choose channels (Altitude, Power, Cadence, Heartrate) to upload to Strava
Fixes #351
2012-11-18 22:02:07 +01:00
Damien
85a1b048c0 Minor changes in Joule GPS download 2012-11-18 18:15:08 +01:00
Mark Liversedge
07a408f7da Minor Fixups for Mac Native
A couple of #ifdef Q_OS_MAC needed around
bits of code that are Mac native. To support
the Mac Native patch just applied.
2012-11-18 16:39:44 +00:00
Mark Liversedge
296d2b72cc Merge branch 'master' of github.com:GoldenCheetah/GoldenCheetah 2012-11-18 16:14:54 +00:00
Damien
e7c5e400bc Correct error in the erase function for Joule GPS 2012-11-18 16:13:15 +00:00
Damien
098a18d980 Refresh metrics for rides after a new weight form Withings download 2012-11-18 16:13:15 +00:00
Damien
b9f2e98e47 Add myzeo data download Add ZQ and sleep time metrics 2012-11-18 16:13:15 +00:00
Mark Liversedge
c2c8d233e3 Fortius 0x1932 added to find logic
Forgot to add update to the find method when
adding experimental support for the 0x1932
revision of the Tacx Fortius.
2012-11-18 16:13:15 +00:00
Damien
c0eb22beb4 Enable withings weight for Watts per Kilogram metric 2012-11-18 16:13:15 +00:00
Damien
53148ca067 Correct copy/paste errors for File Format 2012-11-18 16:13:14 +00:00
Mark Liversedge
1faa1e19ea Mac Native UI (Part 1 of 3)
Part of a series of commits to adjust the UI on a Mac to
look more native and conform better to the Mac UI design
guidelines.

This patch introduces a unified title and toolbar which hosts
a search field and buttons for commonly used functions like
import, split ride, delete etc.

Since it is not possible (or more importantly good practice) to
hide and show toolbar items the Train View controls have now been
moved to the sidebar on a Mac. This is a temporary measure and
will be resolved in future updates.

Further updates planned are;
Part 2 - fixup the preferences pane to be more Mac-like
Part 3 - Spit and Polish around the charts; drop shadows, controls etc
2012-11-18 15:55:07 +00:00
Damien
605b8a01eb Correct error in the erase function for Joule GPS 2012-11-17 16:52:37 +01:00
Damien
5c91fede21 Refresh metrics for rides after a new weight form Withings download 2012-11-16 23:51:33 +01:00
Mark Liversedge
a57f6084f7 Merge branch 'master' of github.com:/srhea/GoldenCheetah 2012-11-16 17:59:39 +00:00
Mark Liversedge
190f31a422 Fortius 0x1932 added to find logic
Forgot to add update to the find method when
adding experimental support for the 0x1932
revision of the Tacx Fortius.
2012-11-16 17:58:32 +00:00
Damien
2567b17984 Add myzeo data download Add ZQ and sleep time metrics 2012-11-15 23:11:27 +01:00
Damien
6a1a979913 Enable withings weight for Watts per Kilogram metric 2012-11-14 22:12:35 +01:00
Damien
7cbf10a92e Correct copy/paste errors for File Format 2012-11-14 19:06:45 +01:00
Damien
4005e27039 Add FileType to RideFile
modified:   src/Bin2RideFile.cpp
	modified:   src/BinRideFile.cpp
	modified:   src/Computrainer3dpFile.cpp
	modified:   src/CsvRideFile.cpp
	modified:   src/FitRideFile.cpp
	modified:   src/FitlogParser.cpp
	modified:   src/FitlogRideFile.cpp
	modified:   src/GcRideFile.cpp
	modified:   src/GpxRideFile.cpp
	modified:   src/ManualRideFile.cpp
	modified:   src/PolarRideFile.cpp
	modified:   src/PolarRideFile.cpp
	modified:   src/PwxRideFile.cpp
	modified:   src/QuarqRideFile.cpp
	modified:   src/RawRideFile.cpp
	modified:   src/SlfRideFile.cpp
	modified:   src/SmfRideFile.cpp
	modified:   src/SplitActivityWizard.cpp
	modified:   src/SplitRideDialog.cpp
	modified:   src/SrdRideFile.cpp
	modified:   src/SrmRideFile.cpp
	modified:   src/SyncRideFile.cpp
	modified:   src/TacxCafRideFile.cpp
	modified:   src/TcxParser.cpp
	modified:   src/TcxRideFile.cpp
	modified:   src/TxtRideFile.cpp
	modified:   src/WkoRideFile.cpp
2012-11-14 00:37:24 +01:00
Damien
fb08b6c12a Ignore/correct invalid start time for an interval
modified:   src/FitRideFile.cpp
2012-11-14 00:37:24 +01:00
Mark Liversedge
5531cacc81 Fix Google Map navigation
Hack to workaround QT webkit pretending to have gestures when
it doesn't is no longer needed. It also now breaks the grab
and navigation in the google map.

Fixes #349.
2012-11-13 20:33:31 +00:00
Mark Liversedge
f3b984b2f5 UI Nits: Indent first column ridenav
Just to make a little more pleasing on the eye.
2012-11-13 20:09:21 +00:00
Mark Liversedge
53839f5f56 UI Nits: Ridelist cosmetics
A few minor adjustments to the ride list to make
it a bit easier to ride and less dense.
2012-11-13 19:27:27 +00:00
Mark Liversedge
2a91ae833b Bugfix duplicate temp on summary
Making the column list a static array was a bad
idea since we append to it every time we summarise
a ride with temperature!

Fixes #344.
2012-11-13 18:23:49 +00:00
Mark Liversedge
35b16961d7 UI Nits: Calendar cosmetics
Make it a bit smaller and easier on the eye.
2012-11-13 18:20:33 +00:00
Mark Liversedge
f68d9f2e43 Revert "UI Nits: Reinstate drop shadow option"
This reverts commit 3c57f01674.

It just doesn't work. Painting and UI responses are lost
and the price is not worth paying for some eye candy.
2012-11-13 16:35:46 +00:00
Mark Liversedge
79efd4181b UI Nits: Reinstate drop shadow option
But NOT for win32 and ONLY on the sidebar and tabwidget (for
performance reasons). Since most users prefer the tabbed look
anyway this should be ok.

Performance of the graphicseffect has improved remarkably in
the 2 years since we tried it before. Worth experimenting with
since it adds a bit of polish to the look and feel.

Users turn it on and off in options, it is off by default.
2012-11-13 15:22:38 +00:00
Mark Liversedge
4b83f130da UI Nits: RideNavigator margins to allow resize
The ride navigator has 0 contents margins which made
grabbing and resizing impossible in paned mode. This
was done to make it look beter when it is a ride list.

It now has a constructor argument to specify if its
being put into mainwindow as the ride list or its being
added to a view.
2012-11-13 14:45:27 +00:00
Mark Liversedge
fe5fb53870 UI Nits: Daily/Weekly/Monthly Summary
You can now add the summary chart to the diary
view to get a summary of the date range currently
being summarised on that view.

Once the Home view has its own sidebar that selects
date ranges you will be able to add it there too
and summarise seasons etc.
2012-11-13 13:27:36 +00:00
Mark Liversedge
75969b2c0e UI Nits: Introducing GcWindow property Daterange
To allow charts to have a property set for the date range
to plot a new property is added. This will work in the same
manner as the "ride" property.

No functional enhancement.
2012-11-13 08:19:03 +00:00
Mark Liversedge
cb006e4edf UI Nits: smaller font in cal sidebar 2012-11-12 21:30:57 +00:00
Gareth Coco
9c88eeb6d7 Needs to be: #include "TimeUtils.h" 2012-11-12 13:31:51 -05:00
Gareth Coco
1821aa4ab9 Added MAC OSX file for WIKI download 2012-11-12 12:56:28 -05:00
Gareth Coco
bf4c3e3564 Update website with new issue tracker/WIKI 2012-11-12 12:55:38 -05:00
Gareth Coco
a970c86533 D2XX Drivers installer for MAC OS
Used to be on the WIKI via Redmine. Now here to be used.
2012-11-12 12:24:49 -05:00
Mark Liversedge
83d36dccba UI Nits: Ride list horiz scrollbar
The ride list / navigator gets a horizontal scrollbar
every time it is shown as the columns are resized but
not taking into account the need for a vertical scrollbar.

The reasons behind this are more complicated but this
patch fixes this annoyance.
2012-11-12 16:12:56 +00:00
Mark Liversedge
1bab529cb4 UI Nits: Added Splitter for Diary sidebar
To be consistent with the other sidebars and also
to enable folks to remove unwanted clutter if they
aren't interested in the summary.
2012-11-12 15:38:44 +00:00
Mark Liversedge
dc632de4d2 UI Nits: Auto select toolbox
Temporary update just to select the left sidebar whenever
a different view is selected. This will go away eventually
but starts to get closer to the finished concept.

Now need to work on the Home View sidebar.
2012-11-12 14:09:26 +00:00
Mark Liversedge
24c7678a39 UI Nits: Add Brief Summary on Calendar Sidebar
To show aggregated summary of effort for the time period. This
is part of a collection of updates to address iritations or
nits in the v3 UI.
2012-11-12 13:21:53 +00:00
Mark Liversedge
e675185cfc UI Nits: Mini calendar use prefs
We have a preference for the color of the currently
selected item in a calendar. This should be honored
in the Diary sidebar (GcCalendar).
2012-11-10 22:57:55 +00:00
Mark Liversedge
71a9110dbd Calendar sidebar cosmetics
It should be white to be in line with the rest of the
sidebars and have some semblance of coherence.

I also put a rectangle around the box so if the day
color is white you can still see there is a ride that day.

A summary ala the interval summary will come next summarising
either day, week or month for the ride selected.
2012-11-10 20:54:17 +00:00
Mark Liversedge
222feab679 Use hh:mm:ss format in Allplot tooltip 2012-11-10 17:50:50 +00:00
Damien
de083903de add seconds to plot scale label under 5 minutes 2012-11-10 17:40:53 +00:00
Damien
5ff90ff524 Show hh:mm:ss on x-axis in ride plot
Fixes #37 (Old 726)
2012-11-10 10:28:52 +00:00
Mark Liversedge
1c310cd221 README - update to reflect reality
The readme hasn't been updated for 3 years and needed
to reference the websites with builds and the detailed
build instructions in the INSTALL* documents.
2012-11-08 22:24:13 +00:00
Mark Liversedge
10fa98cdc5 UI Nits: Fewer default columns
The ride list had way too many default columns making it almost
impossible to see any info. This makes the default columns
workout code, TSS and Date.
2012-11-08 18:11:25 +00:00
Mark Liversedge
aa971402bb UI Nits: Metadata gap in tab widget 2012-11-07 21:01:58 +00:00
Mark Liversedge
e013bb7a11 Experiment: Support for Tacx Fortius 0x1932
.. lets see if this actually works.
2012-11-07 20:02:09 +00:00
Mark Liversedge
9119af5b3f Skip C99 and just use uint_16 2012-11-07 19:04:12 +00:00
Mark Liversedge
67d23edacc termio not needed for Joule 2012-11-07 17:16:19 +00:00
Mark Liversedge
2e0a1efd4c Bin2RideFile <stdint.h>
Was needed on Windows as well as Linux and is harmless on
OSX so conditional include removed.
2012-11-07 17:08:49 +00:00
Mark Liversedge
6542cca65c UI Nits: Move Calendar from RHS to LHS Sidebar
Drop the notion of a rhs sidebar and move the calendar
from the rhs to the lhs toolbox. It will soon be the
context sidebar for the diary view, and also get a
day summary at the bottom, but for now lets just remove
the references to a rhs sidebar.
2012-11-07 12:01:29 +00:00
Mark Liversedge
c1a58b5cb2 UI Nits: Save/Restore Splitter sizes 2012-11-07 11:16:16 +00:00
Mark Liversedge
e0c0dd93da UI Nits: Analysis sidebar rides & intervals 2012-11-07 10:46:52 +00:00
Mark Liversedge
ec73766677 UI Nits: Filter Tooltip colors 2012-11-07 10:24:00 +00:00
Mark Liversedge
caaa10bca6 UI Nits: Chart settings and Chart Close Menu
The chart settings are no longer in the side bar and can be selected
from a drop down menu on the chart. This works in tiled and tabbed
mode and allows for further enhancements e.g. custom menu options
for commonly use config options (ala Android).

This is part of a series of updates to migrate away from a sidebar
that is a toolbox of ridelist etc and move back towards a context
sensitive sidebar.
2012-11-07 10:10:56 +00:00
Damien
3ac9020bff Fix Joule GPS time recording gap error. 2012-11-07 06:51:09 +00:00
Mark Liversedge
44d4455067 UI Nits: SearchBox menu and Tooltip
Use the wrong stylesheet and are hard to read. This adjusts
tooltip and menu to make them more readable but may not be
ideal for those with heavily customised setups.
2012-11-06 13:50:04 +00:00
Mark Liversedge
a4043b1b36 UI Nits: About Contributors alignment
Alignment of the contributors in the about dialog
was wonky. This patch centers the names within
each column.
2012-11-06 13:31:01 +00:00
Mark Liversedge
83977a3ab9 UI Nits: Named Search Input Box
The named search dialog box uses the same style sheet as
the search box, which looks odd in a dialog box.

This patch ensures the stylesheet is only applied to the
search box and not any children.
2012-11-06 13:26:40 +00:00
Mark Liversedge
0c2543cce0 UI Nits: Ride list column widths fixup
An annoying bug that has been around for far too long.. the ride
list headings are resizable and the user can adjust them. But
when GC restarts the sizes are lost.

This was caused by an error in the code that saved away to column
widths -- it failed to use the logical index for each column (since
columns can be re-arranged).

Now upon restart the columns will be the right size -- but for the
very first launch after this bug is fixed the sizes will still be wrong.
They will need to be reorganised and then restart GC one more time.
2012-11-06 12:55:55 +00:00
Mark Liversedge
e09cb7b185 Mac UI Sidebar Cosmetics
The sidebar elements all get a blue focus rectangle on
Mac OSX. This is a platform specific setting. This patch
removes the focus rectangle for sidebar components only.
2012-11-06 11:16:41 +00:00
Mark Liversedge
7f512ccfaa missing stdint.h in Bin2RideFile.h 2012-11-06 06:58:19 +00:00
Damien Grauser
e7ba349818 Joule GPS Support
This is BETA support for downloading ride files
from the new Cyclops Powertap Joule GPS.
2012-11-05 21:33:05 +00:00
Mark Liversedge
ace7c0b3b3 missed from last commit 2012-11-05 17:51:10 +00:00
Mark Liversedge
4a20a3ba67 Basic default for the home view
Having used the LTM and Home View for well
over a year I am proposing this default setup
for the home view.

It is just a PMC, Power tracker, CP chart and
a time in zone histogram.

No time and distance etc. But the user can add
these, the charts.xml is there to help.
2012-11-05 17:39:55 +00:00
Mark Liversedge
a5bcec5265 Data Filter (Part 3 of 3)
Last part of the search/filter functionality;

* SearchBox now incorporates filter and search
  with a new widget. We can update this widget
  to include more fancy UI/Interactions without
  having to change the ride list or charts etc.

* Added search/filter widget to the relevant charts
  and screens; Metrics, TreeMap, CP, Histogram,
  Activity Log, Ride list (refactored out of MainWindow)

* Added namedsearches.xml and adding/selecting them
  from a drop down menu on the search box.

* Fixed some performance bugs related to duplicate
  signals and redraw/reprocessing. Also ensured that
  CLucene remains optional -- but means no search or
  filter functionality unless it is available.
2012-11-05 15:44:01 +00:00
Mark Liversedge
2e9507b292 Silly cut and paste coding error
DataFilter code for string operations was
duplicated as cut and paste but not edited.
2012-10-29 18:44:53 +00:00
Gareth Coco
008ed12547 Typo fix - F2XX is meant to be D2XX 2012-10-29 12:10:36 -04:00
Mark Liversedge
68aab9dfad Data Filter (Part 2 of 3)
Added evaluation of filters and integrated with the ride list, this
means the user can filter the rides listed.

Additionally the search box will highlight the filter in red if
it doesn't parse correctly, and a tooltip describes the errors.
2012-10-29 15:33:08 +00:00
Mark Liversedge
e6bd0a7f8d About Dialog Tidy
A bit of tidy up to make the About dialog look a bit
like it used to in terms of size and layout. Is now
an acceptable size for those on netbooks or devices
with a small screen.
2012-10-29 09:52:07 +00:00
Mark Liversedge
9343b8aa7c About Dialog too big
The about dialog was 800x600. This patch reduces margins and
spacing around the widgets to make it somewhat smaller. There is
still room for improvement though.
2012-10-29 06:53:16 +00:00
Damien
37f294c82e About dialog
About dialog now shows versions and contributors.

Fixes #563.
2012-10-28 22:10:11 +00:00
Mark Liversedge
6b17087cfe DataFilter fix compile on Mac
Conflicts between yacc symbols (LT) and HrZones.h means we
need to split out the cpp code and yacc grammar code.
2012-10-28 21:01:03 +00:00
Mark Liversedge
7e4786bc5a Data Filter (Part 1 of 3)
Part 1 of Data filtering, this patch adds the ability
to enter and parse filter statements in the search box
(by clicking on the magnifying glass it becomes a filter
box).

The statements can reference metrics and metadata fields
allowing the user to define boolean expressions to filter
data. An example of the syntax;

    Average_Power > 200 and Duration > 3600

This references the metric Average_Power and ride Duration. But
will also support operations on metadata fields, for example;

    Workout_Code endsWith "SST"

The operators are;
    = <> > >= < <= matches contains endswith beginswith
    ( ) && and || or

Filters are syntactically and semantically validated. But at
this point the resulting tree is not evaluated, i.e. we can
parse the filters, but do not execute them.

Two further updates are pending (once written and tested):
- Part 2 of 3 : Execute filters and apply to the ride list
- Part 3 of 3 : Allow named filters and apply to LTM charts

Further updates will support a visual editor and allowing filters
to be applied to CP and Histogram charts and affect the PMC stress
calculators.
2012-10-28 20:05:12 +00:00
Mark Liversedge
299b8f6fa9 Merge branch 'master' of github.com:/srhea/GoldenCheetah 2012-10-27 08:49:35 +01:00
Mark Liversedge
b3da24901e Change Search Strategy
1. Use the whitespace analyzer so its easier to search for
tokens that are a mix of letters and numbers e.g. workout
codes and TT route names.

2. Search as you type. Since we have very small collections
to search across (typically no more than a couple of thousand)
there is no major overhead in searching as you type.

3. Search all texts by default not just the Notes field. This is
a more appropriate default and is less likely to confuse new
users. In addition, it is most likely what most users want to
do anyway.
2012-10-27 08:46:36 +01:00
Mark Liversedge
d1f90639b9 Merge branch 'master' of github.com:srhea/GoldenCheetah 2012-10-24 14:49:33 +01:00
Mark Liversedge
412bc359f6 Added contributors.txt 2012-10-24 14:49:11 +01:00
Mark Liversedge
844daef864 Searchbox toggle search/filter
Clicking the icon to toggle between text search and
data filter mode for searchbox.

As part of filtering implementation.
2012-10-23 21:27:06 +01:00
Mark Liversedge
5da2c57b6d Initialise ismultisave variable. 2012-10-22 22:50:44 +01:00
g3rg
3d3af3b293 #381 Prevent statistics from refreshing for each file saved on close, and just run for the last file. Also covers #506 and #656 which are duplicates.
Fixes #381.
2012-10-22 22:30:00 +01:00
Mark Liversedge
b1fddb9d22 MAC Lucene added to install notes
The Macports lucene does not work, added instructions
to the INSTALL-MAC for getting and building the clucene
libs from their git repository.

Fixes issues with deleting rides corrupting the index.
2012-10-22 22:12:15 +01:00
Mark Liversedge
59da3c14c1 Refactoring CLucene
There are some issues with document deletion and support for
the latest release of CLucene which may be related to having
concurrent IndexWriters and IndexReaders.

This refactoring works fine on Linux. Pushed for safety for
any users that may be experiencing issues when deleting rides.

Further investigation is required on mac and windows builds.
2012-10-22 21:40:49 +01:00
Mark Liversedge
f2c5d2331d CLucene better exception handling
QT crashes if exceptions are raised in the event loop. This was
happenning during program exit and also when deleting rides with
a right click.

This patch traps those exceptions and also, since Macports will
install 0.9.23 we can use IndexWriter to deleteDocuments.
2012-10-22 20:14:30 +01:00
Mark Liversedge
4c7f60a6b2 Fix Crash in Split Wizard
Fixes #687
2012-10-22 15:14:04 +01:00
Mark Liversedge
5577d64d4c Fix Ride List not refreshing
A bug was introduced by the new search/filter update causing the
ride list to not get refreshed when rides were imported or deleted.
This was due to signals from the source model (sql) not being propagated
upstream (groupby) in the standard implementation of qsortfilterproxymodel.

This patch fixes that.
2012-10-22 11:16:36 +01:00
Mark Liversedge
9f17835732 Lucene should be optional
Fixup some of the recent commit for searching with support by
ensuring it is only used if lucene support is available.
2012-10-21 17:31:35 +01:00
Mark Liversedge
7a8d4377b9 Search/Filter using Lucene
Searching and filtering the ride list using a search box.
This is implemented using a new optional dependency on
CLucene.

Fixes #627.
2012-10-21 15:28:26 +01:00
Mark Liversedge
914c07f576 Virtual Power for Minoura V100
Added virtual power calculations for a Minoura V100
with one selection for whichever gear it is set to.

Thanks to 'frenchman' on the slowtwitch forums for
working out the formulae.
2012-10-19 22:12:42 +01:00
Mark Liversedge
83f1e1fb79 Support "CP" metadata field
When calculating TSS, BikeScore et al the user can
set a ride specific value for CP to override the
default zones set within configuration (power.zones).

This is because some users like to have a different CP
for indoor vs outdoor riding.

To use this the user will need to add an "CP" metadata
field and only enter a value when they want to override,
since by default it will be zero, causing the standard
zone CP to be used.
2012-10-13 20:46:39 +01:00
Mark Liversedge
88dbd9e4ec Only set PWX weight from metadata tag "Weight" 2012-10-01 19:07:32 +01:00
Ron Alford
568c946cfb Changing TCX export to convert to UTC time 2012-10-01 07:05:12 +01:00
Ron Alford
a9a6dd5e51 Correcting the haversine distance calculation for GPX imports 2012-10-01 06:54:17 +01:00
Damien
4389286bbc Keep/Save last value for showBalance 2012-09-22 20:22:24 +01:00
Damien
032a420598 Correct memory leak in HrPw plot 2012-09-22 20:22:24 +01:00
Damien
778f48517d Modify TM processing
For some reason the processing of the TM symbol causes a
crash on Mac OSX. This patch fixes that.
2012-09-15 18:38:24 +01:00
Alejandro Martinez
7ecc9fac48 Automatic CdA and Crr Estimation in Aerolab
Fixes #851.
2012-08-24 20:45:47 +01:00
Mark Liversedge
22ebf53591 Increment DB version
Last commit added a new metric but didn't increment the DBAccess
DB schema version, causing DB functions to break. This patch just
increments the version to ensure the DB is rebuilt to include
the new metric.
2012-08-19 20:48:10 +01:00
Mark Liversedge
a63c351fe5 Fix (TM) processing
Lost in previous commit somehow.
2012-08-19 20:36:52 +01:00
Damien
0b16845612 Add Left/Right Power Support
Add Left/Right Power Balance for FIT and Polar HRM parsers
 Add Left/Right Balance metric
 Add Left/Right series to Ride Chart

Fixes #711.
2012-08-19 13:57:24 +01:00
Alejandro Martinez
872842b920 Change Pace metric to follow metric/imperial units as configured
Fixes #718
2012-07-31 14:15:33 -04:00
gcoco
a84531d809 Merge pull request #22 from rclasen/bug715
fix for Bug715: Srm download + Srm file reader issues

Fixes #715
2012-07-31 11:09:01 -07:00
Rainer Clasen
06e5fcc7dd SrmRideFile: handle bad/truncated files
SRM file reader didn't check stream status / values taken from the file.
This could easily lead to segmentation faults.
2012-07-30 18:55:50 +02:00
Rainer Clasen
d68835cf23 SrmRideFile: don't truncate comment
last character in comment was truncated due to a bad string termination.
2012-07-30 18:55:50 +02:00
Rainer Clasen
0c1e1dd2a5 SrmDevice: fix catching broken downloads
broken downloads weren't detected, properly. This caused empty files to be
created.
2012-07-30 18:55:50 +02:00
Mark Liversedge
a04375f20d Manual entries compute metrics
A few months ago I commented out the calculation of metrics
for manual ride files. This was a hack to avoid fixing the code
to handle metric calculations from overrides where there are no
data points.

This annoyingly meant that the 'rides' metric was zero for manual
ride files, and any derived metrics similarly were zero.

This patch fixes that.
2012-07-08 16:22:40 +01:00
Mark Liversedge
97293613c0 Withings Weight and Watts per Kilogram
Fixed up the code to use withings weight when calculating watts
per kilogram and the display on the CP chart.

There will be issues when retrospectively refreshing data from a
withings account, but that is such an edge case we can just ask
people to delete old .cpx files to ensure they are refreshed.
2012-07-08 15:38:53 +01:00
Mark Liversedge
bbe2ee59d2 Watts per kilo slight changes
Attempt to sort using withings data, but commented out for now. But
it will compile if uncommented. Also changed name to Watts per Kilogram.
2012-07-08 12:24:04 +01:00
Damien
02e95b140d Add Watts/Kg in the cpx cache files and in the CP plot
modified:   src/CpintPlot.cpp
	modified:   src/CriticalPowerWindow.cpp
	modified:   src/CriticalPowerWindow.h
	modified:   src/HistogramWindow.cpp
	modified:   src/RideFile.cpp
	modified:   src/RideFile.h
	modified:   src/RideFileCache.cpp
	modified:   src/RideFileCache.h
2012-07-08 11:03:20 +01:00
Mark Liversedge
785679c0bc Merge branch 'master' of github.com:/srhea/GoldenCheetah 2012-07-08 10:40:03 +01:00
Mark Liversedge
49825c891a Enable Measures in v3.0
Re-enabled the measures feature, largely to allow donwload
from Withings for folks that track weight.

This is to provide better support ahead of showing watts/kg
on the mean max "CP" chart.
2012-07-08 10:38:28 +01:00
Magnus Gille
cdbbdb806d Fixed a missing -1 to make non motoactv files parsable again 2012-06-18 02:57:26 -04:00
Magnus Gille
e77bd505f2 Added test files for MotoACTV 2012-06-18 02:57:26 -04:00
Magnus Gille
7ac7ee46de Added support for MotoACTV csv files 2012-06-18 02:57:25 -04:00
Gareth Coco
4eb2b00459 Added Garmin Forerunner 110 2012-06-17 18:48:25 -04:00
gcoco
55423c11f7 Merge pull request #20 from rclasen/master
bunch of small changes...
2012-05-24 11:21:58 -07:00
Rainer Clasen
c82455be75 Download: remeber last used device/port
last used Device/Port ist now remembered and automatically selected on
next download.

closes #683
2012-05-04 21:01:22 +02:00
Rainer Clasen
b6e32ca49f added upload to trainingstagebuch.org 2012-05-04 16:08:38 +02:00
Rainer Clasen
5f5e6dc1b6 PM: show upcoming days, aswell
so far, the Performance manager restricted the view to the latest exercise
or today. So it wasn't possible to see predicted TSB for the upcoming
days.

This patch allows me to get a better forecast on when to do the next ride.
2012-05-02 22:41:47 +02:00
Rainer Clasen
23e31b99cd added non-zero average power metric
This might be meaningless for actual analysis, but helps to match numbers
of devices, that exclude time with zero power from the average
calculation.

While it's controversal to be usefull, this leaves the choice to the user.
2012-05-01 22:28:06 +02:00
Rainer Clasen
f909817f00 main: allow passing athlete as argument
Allow passing initial athlete to open as command line argument.
2012-05-01 22:28:06 +02:00
Rainer Clasen
ccf5f6ed4c fix: remember state of showTorque in ride dialog
showTorque wasn't declared as property so HomeWindow::saveState() didn't
save it's setting.
2012-05-01 22:28:06 +02:00
Gareth Coco
4f4e2b2f8d Add back in the ROBOT for Realtime testing 2012-04-18 21:00:54 -04:00
Mark Liversedge
7f928134fd Link compress libs (-lz) by default
Although you should not link with local compress
libraries if you are using the QT supplied ones, it
has caused a lot of problems for newbies.

We now link with compress by default, we may see some
odd / incorrect behaviour with images and TrainingPeaks
upload if the libs mismatch but the developer can fix
that should it arise.

Fixes #668.
Fixes #6.
2012-04-08 08:34:43 +01:00
Mark Liversedge
d32e011e72 Remove 'qollector_interpret' warning
The qollector binary warning message is not relevant to large
numbers of GC users and not sure if the qollector is even still
being sold.

The message is now removed.
2012-04-05 18:14:37 +01:00
Mark Liversedge
5019abfc69 Fix Bounds checking SEGV
RideFileCache hogs CPU / hangs with poorly parsed files, whilst
the activity may crash when columns are removed.
2012-04-05 17:18:43 +01:00
Gareth Coco
8c027add73 Fix file name for RideWithGPS.com patch
Fixes #677
2012-04-04 14:17:50 -04:00
Damien
d3ed87fd21 Add Upload to RideWithGPS.com
new file:   src/RideWithGPSDialog.cpp
	new file:   src/RideWithGPSDialog.h

	modified:   src/MainWindow.cpp
	modified:   src/MainWindow.h
	modified:   src/Pages.cpp
	modified:   src/Pages.h
	modified:   src/Settings.h
	modified:   src/src.pro

Fixes #677
2012-04-04 14:17:50 -04:00
Gareth Coco
ce79946142 Documentation updates
1. Fixed doc/Makefile
2. Fixed broken link in doc/download.content
3. Updated Qt required to 4.8.0
2012-03-28 22:54:57 -04:00
Greg Lonnon
488e2a771f moved v2.1 doc to master.
Here's my steps.

git checkout master
cd <top dir>
git checkout v2.1 doc
git add doc
git commit
2012-03-25 15:24:44 -06:00
Mark Liversedge
522f92b1aa Merge pull request #19 from rclasen/master
SRM support - several trivial fixes
2012-03-25 01:13:46 -07:00
Rainer Clasen
0919575206 SrmRide: set Tags
Ride notes, slope, zero offset... were ignored during import of SRM files.
This patch sets the meta tags accordingly.
2012-03-22 19:37:50 +01:00
Rainer Clasen
8fece5e3ce SrmRide: suppress empty intervalls 2012-03-22 11:06:58 +01:00
Rainer Clasen
058dd65f08 SrmRide: Import marker names, aswell
so far marker names were ignored. Changed code to pick them up, aswell.
2012-03-22 11:06:58 +01:00
Rainer Clasen
724edf8068 fix: refuse writing bad power zone settings
power zone settings dialog allowed new entries with CP=0. This was written
to power.zones, but the parser refused to read these files, afterwards.

This patch rejects new zones with CP=0.
2012-03-22 11:05:21 +01:00
Rainer Clasen
909bf9ade3 fixed duplicate main window hotkeys
- removed *duplicate* binding of Ctrl-O from options
- moved Ctrl-W from disabled code to closeWindow
2012-03-22 11:05:02 +01:00
Rainer Clasen
c1cd91b538 SrmDevice: fixed marker offsets
marker offsets were off by one. This could lead to bad indices when adding
an "open" marker at the end of a recording.
2012-03-22 10:58:47 +01:00
Damien
018ac2c821 Correct typo in peakpower intervals
modified:   src/AddIntervalDialog.cpp
2012-03-21 20:58:08 +00:00
Damien
60e14f9dbc Find intervals by time/distance
Find interval dialog will now allow you to add
intervals by time or distance (e.g. add interval for
every 10 minutes or every kilometer).

Since there were three menu options all doing similar
things, they have now been consolidated into a single
dialog.
2012-03-21 06:53:41 +00:00
Marc Boudreau
e82313cd6c Fix:
- 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
2012-03-16 12:28:32 +00:00
Andrew Bryson
324d4aebf1 Allow user to select another video when paused
Fixes #648

Also little play/pause fix.
2012-03-16 12:28:20 +00:00
Tom Weichmann
bfcedf6cae Honour units in Realtime Plots 2012-03-16 12:28:05 +00:00
g3rg
de71547607 Fixed tab order of fields on New Cyclist Dialog
Fixes #653
2012-03-01 10:39:11 -05:00
gcoco
fc369c428b Merge pull request #9 from gcoco/release_3.0.0dev
Release 3.0.0dev
2012-02-28 12:27:11 -08:00
gcoco
5cc928006e Merge pull request #12 from glonnon/strava_date_fix
Strava date fix
2012-02-28 11:17:55 -08:00
Greg Lonnon
e3ccd6448f Strava Upload date corrected.
fixed the ride date to use UTC and ISO encoding.
2012-02-21 04:45:43 -07:00
Mark Liversedge
de15bbef02 Add Minute Mile Pace metric
Runners tend to measure speed in minute mile pace and
this is common even if they use metric units.
2012-02-18 17:48:36 +00:00
Mark Liversedge
2c95864222 Add Popup Bubble to new Calendar Widget
The right side calendar widget now supports tooltip
popup of the ride bubble in the same manner as the
ride navigator and diary window.
2012-02-17 21:53:53 +00:00
Mark Liversedge
2d4d235c2d Honour wheelsize configuration
Fixes #651.
2012-02-17 14:02:57 +00:00
Damien
7f54c3d5bc Add torque on the plot
Fixes #245.
2012-02-13 19:34:49 +00:00
Jamie Kimberley
3490424f2a fix unit conversion error in max cadence calc
There was a unit conversion from km->miles being applied to cadence. I have
removed the offending line.

I've also changed the precision so the we report cadence as an integer.

Fixes #601.
2012-02-13 06:48:49 +00:00
Damien
a0527f3316 Correct intialisation of altitude for TCX without altitude
Fixes #647.
2012-02-12 19:15:31 +00:00
Damien
b4102d4625 Plot relative headwind
Fixes #131.
2012-02-12 19:08:30 +00:00
Andrew Bryson
b746f86ee0 Allow more duplicate messgaes in standard mode
This should fix the current issue with Power2Max.
2012-02-12 17:41:24 +00:00
Mark Liversedge
d10769676d Fix comment in WKO ride file
We now support all the data series present
in a WKO+ file. So the comment warning about
not supporting Temp, Slope, Wind has been
removed.
2012-02-12 14:25:29 +00:00
Mark Liversedge
1cfed213f1 Merge branch 'v3' of git://github.com/rclasen/GoldenCheetah into release_3.0.0dev 2012-02-12 11:38:23 +00:00
Damien
2f9130cd76 Qwt 6.0.1 Support
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.
2012-02-12 10:43:15 +00:00
Rainer Clasen
6ff7a5e148 Download: indicate download stage
Indicate what part of download (preview/actual download) is ongoing.
2012-02-11 21:06:37 +01:00
Rainer Clasen
6a66bbb82c SrmDevice: use srmio logging callback
use srmios builtin logging functionality. Nuked code copying srmios
logging.
2012-02-11 21:04:15 +01:00
Rainer Clasen
85132fce44 SrmDevice: fix counting skipped blocks
block counter wasn't increased for skipped blocks. Just a cosmetic issue,
as block counter was used for progress and status messages, only.
2012-02-11 21:03:14 +01:00
Rainer Clasen
dda86936a1 SrmDevice: fix rideList population
oops, overwrote the startTime, accidently. Wondering how this passed any
testing as this resulted in all blocks being skipped.

Added explicit initialization of wanted field, aswell.
2012-02-11 20:57:05 +01:00
Rainer Clasen
d3184df0c6 SrmDevice: moved status reporting to open method
so that it's not limited to downloads, only. Helps investigating erase
issues.
2012-02-11 15:19:24 +01:00
Rainer Clasen
1490102e8d Device: allow status updates from all methods
turned statusCallback into a member of Device (instead of a parameter to
download() and preview(). This allows all methods to access it, directly
and provide better feedback during open/close/erase.
2012-02-11 15:07:31 +01:00
Rainer Clasen
e3d6c17288 SrmDevice: use srmio win-comm when available
srmio just introduced support for the win32 Comm API. This patch allows us
to use it.
2012-02-11 14:25:26 +01:00
Damien
8c9a5ab148 Change speed to double in Bin parser
Fixes #636.
2012-02-11 12:03:26 +00:00
Andrew Bryspn
4b040bc24a Allow videos to be in subdirectories. They can also be symlinked from the place where videos normally live.
Fixes #637
2012-02-06 20:54:59 +00:00
Mark Liversedge
56e6aa3e0e Revert "Qwt 6 support"
The patch that was applied was missing a number of critical changes
and needs to be recreated and retested. The majority of qwt was not
uplifted and remained at Qwt 5.

This reverts commit e97aac7919.
2012-02-05 22:21:55 +00:00
Andrew Bryson
cb497c7dbc Initialise stdNullCount 2012-02-05 19:36:19 +00:00
Damien
17a361fc82 Qwt 6 support
Fixes #634.
2012-02-05 18:30:55 +00:00
Andrew Bryson
04d718a76d Fix power blips from Standard Power with Quarq
Added a check to insure that we don't display the same power event more
than once.

Fixes Bug #635
2012-02-05 13:05:41 +00:00
Mark Liversedge
871e3fc918 Merge pull request #10 from glonnon/strava_fix
Greg Lonnon fix for Strava and more general GPS precision
2012-02-05 01:57:10 -08:00
Tom Weichmann
f8ae367c7b Change GcBubble time format to match Gc standard
Fixes #631.
2012-02-05 09:41:43 +00:00
Tom Weichmann
1d21e43f4c Added notes to pwx <cmt> tag
Fixes #630.
2012-02-05 09:39:04 +00:00
Mark Liversedge
8e99ec2c1b Fix SEGV on empty/dodgy FIT files
Fixes #633.
2012-02-05 09:31:34 +00:00
Greg Lonnon
40da41e31c strava map jagged fix - issue was the conversion of gps coord to string
didn't have enough precision.

Found all (most) of the gps coord to string conversions and used a constant
  to insure all conversions occur with the same precision.


Signed-off-by: Greg Lonnon <greg.lonnon@gmail.com>
2012-02-04 05:46:58 -07:00
Mark Liversedge
f42d833db4 Merge branch 'release_3.0.0dev' of github.com:/srhea/GoldenCheetah into release_3.0.0dev 2012-02-03 19:24:27 +00:00
Mark Liversedge
23d9fe51bc Fix PWX file intervals
Fixes #624.
2012-02-03 19:23:35 +00:00
Gareth Coco
e420cad753 v3.0dev - Allow ride to be added with no Average HR
Fixes #626
2012-02-02 10:49:40 -05:00
Mark Liversedge
f5087038d1 Merge branch 'release_3.0.0dev' of github.com:/srhea/GoldenCheetah into release_3.0.0dev 2012-02-02 07:14:16 +00:00
Mark Liversedge
e9c75443d2 ANTChannel Standard Power bug
Andy Bryson's fixes for quarq power spikes removed
processing of standard power messages (see commit
cc0bd29).

This was because a check was performed on ANTMessage::period
which is not set for Standard power messages and will always
be zero.

This may fix processing of power2max power telemetry.
2012-02-02 07:11:45 +00:00
Gareth Coco
8513ee3a20 Comment added and replace tabs with spaces 2012-02-01 10:35:29 -05:00
Gareth Coco
e59e02c9d4 Fixes for Manual Ride Entry
Includes:
- Resize dialog for Mac users to display all fields
- Modify display of data in fields
- Add Average HR check
- Base code formatting to remove tabs

Fixes #622
2012-02-01 10:35:19 -05:00
Gareth Coco
3955f13327 Overhaul gcconfig.pri.in and src.pro
Changes to src.pro are to make it so that anything that is set in src.pro
can be overwritten out of gcconfig.pri. This hopefully means that src.pro
will never have to be changed by someone wanting to compile the code using
a different setup to the main developers or on different platform.

Changes to gcconfig.pri.in are to allow the changes in src.pro to be used.
It also adds some new tweaks and documents how to use the changes in the file.
2012-01-31 23:44:53 -05:00
Tom Weichmann
702932f735 Makes GcBubble honor user unit preference for distance 2012-01-31 13:37:58 +00:00
Tom Weichmann
eece7afc0c Changes to make TPUpload dialog honor user unit preferences 2012-01-31 13:37:58 +00:00
Mark Liversedge
63add3ca63 Refresh mini calendar
When;
* ride added
* ride deleted
* color config changes
2012-01-30 20:07:35 +00:00
Mark Liversedge
16b3f48548 Libical is optional.
Gets me every time. libical is optional and the
new minicalendar uses the GcCalendarModel which
assumed rideCalendar was available in MainWindow.
2012-01-30 18:54:40 +00:00
Mark Liversedge
6bb1f7a40e Fix SEGV in AllPlot when smooth adjust
But only affected if temperature is available.
2012-01-30 17:10:12 +00:00
Mark Liversedge
94b0ae6376 Chart settings dialog no longer fixed size
Fixes #619.
2012-01-30 15:51:33 +00:00
Mark Liversedge
955de51a2f Fix axis display for Temperature
Fixes #617.
2012-01-30 15:46:46 +00:00
Mark Liversedge
5d58353ef3 Reinstate ride calendar
A rudimentary calendar, not customisable or resizable
and only every selects first ride for the day selected.
But it is the beginning of the widgets needed for the
new UI "look" discussed on the list.

Need to work on font sizes for Win/Mac and refining
the whole look and feel. Especially a sidebar widget
to put it in!

Fixes #369.
2012-01-30 15:29:16 +00:00
Gareth Coco
28d7780e65 Don't build QwtDesigner in qwt
We don't use it and it is commented out in master
2012-01-26 13:02:40 -05:00
Gareth Coco
3158576599 Allow CdA to lowest possible in AerolabWindow.cpp
Fixes #475
2012-01-26 13:00:38 -05:00
Mark Liversedge
1e124777dc Remove reading of .notes from LTMPopup
Last vestiges of references to the old .notes file which
is now deprecated fully and replaced with a metadata tag
"Notes".

If a .notes file exists it will be read in and used to
initialize the Notes metadata tag -- this is pre-existing
functionality and not changed with this patch, which is
just related to LTM Popup.

There are no other know references to the old .notes file
left in the active code.

Fixes #179.
2012-01-25 08:42:06 +00:00
Mark Liversedge
078a3ec450 Add Chart Menus
Allow the user to add a chart from the top-level
view menu, or by right clicking on the home page.

I did not implement as right click on toolbar since
there is already an add chart icon on the toolbar
and adding right click is kind of redundant in that
case.

Fixes #606.
2012-01-24 22:09:29 +00:00
Mark Liversedge
bacd8527c3 Fix crash if TRIMP zones > 5
Fixes #483.
2012-01-24 21:08:07 +00:00
Mark Liversedge
54414ba076 Fix Analysis quick button nits
* Wrong size, wrong spacing
* Actions broke keyboard shortcuts Ctrl-D/I/M
  for download, import, manual ride entry
2012-01-22 18:22:48 +00:00
Mark Liversedge
dcbe9f20dc Fix redclaration of macstyler in MainWindow.cpp 2012-01-22 18:04:34 +00:00
Mark Liversedge
3678dadd40 Save button enable/disable
Only enable the save button if the current ride is
dirty. Makes a good visual cue for the end-user.
2012-01-22 18:02:35 +00:00
Mark Liversedge
1802390f73 Remove quarq devices
The recent AddDeviceWizard exposed some of the
Quarq devices which are possibly experimental.

Commented them out in case they re-appear at a
later date.
2012-01-22 17:35:25 +00:00
Mark Liversedge
03529c810e Toolbar buttons for Analsysis View
Save - saves current ride
Add  - menu to download, import or manual

The icons could be nicer, need a gui wizard to help.

Fixes #492.
2012-01-22 17:18:20 +00:00
Jamie Kimberley
f2a8cf2cde Add other TRIMP metrics to performance manager-v3.
Add the ability to use the TRIMP 100 and TRIMP ZONAL metrics in the
performace manager.
2012-01-22 15:40:10 +00:00
Mark Liversedge
c98ecbd3fa Fix interpolation of GPS data for bad samples
[manually folded in commit #8e43eb31a from 2.1 branch]
2012-01-22 15:37:32 +00:00
Mark Liversedge
bce8be2471 Fix SEGV on cancel long search
A timing issue - when cancelling the background scan
it is possible for the next scan to be performed after
the controller has been deleted.

This is an edge condition and pretty rare, but since it
causes a crash pretty high impact.
2012-01-22 09:05:22 +00:00
Mark Liversedge
4a3e6e2049 Fix AddDeviceWizard AddSearch not completing
The logic for the AddSearch page (which only appears
if the user did not have the device connected when the
initial scan is performed) would find the device and then
terminate without moving on to the final page.
2012-01-22 08:58:59 +00:00
Mark Liversedge
3822940d5d Realtime Robot
If you define GC_WANT_ROBOT in gcconfig.pri then
we will compile with support for adding a null
device (robot), which is useful for developers
when testing.

See the last line of gcconfig.pri.in.

You will need to touch DeviceTypes.cpp after
modifying src.pro and before typing make.
2012-01-22 08:21:12 +00:00
Gareth Coco
943edcd78d mingw uses Sleep() 2012-01-21 21:23:36 -05:00
Mark Liversedge
96a1e30536 Fix SEGV on Finish AddDeviceWizard
Telemetry updates were trying to use the device
controller after it had been deleted.
2012-01-21 23:43:58 +00:00
Mark Liversedge
1f82dc4479 More LIBUSB problems
Last update referenced ANT::usbMode even though it
is only available if LIBUSB support is compiled in.
2012-01-21 23:14:38 +00:00
Mark Liversedge
efc79cb126 Fox initialisation of ANT::channels without LIBUSB
The initialisation of the new 'channels' member
was being set inside LIBUSB conditionals. This
means when built without LIBUSB channels would
not get initialised.
2012-01-21 22:47:23 +00:00
Mark Liversedge
2c0f5bfb32 Remember LIBUSB is optional
So don't include FortiusController.h in the new
AddDeviceWizard.h, since some folks aren't building
for that.
2012-01-21 22:16:58 +00:00
Damien
3058b3e9c6 Reorganise intervals by drag and drop
The interval view now allows the user to drag and drop intervals
up and down in the list.

We could extend the drag and drop of intervals to support analysis
of segments/intervals from multiple rides in the future too.

Fixes #405.
2012-01-21 21:16:35 +00:00
Damien
6ea13c74a2 Select active ride in the ride navigator
Fixes #545.
2012-01-21 21:00:52 +00:00
Andrew Bryson
51a6b3ffd2 Fix quarq power and cadence glitches when coasting
ANT+ telemetry data processing in ANTChannel now
checks for previous message period values.

Fixes #607.

[Tested by author on Quarq cranks, error not recreated
 on SRM or Powertap devices, but may be Quarq specific]
2012-01-21 20:54:19 +00:00
Mark Liversedge
3ca7f1a5d2 Add Device Wizard
Introduce a wizard for adding realtime devices since it
is prone to user error, is relatively complicated and is
something most users will only ever do once or twice.

There are several logical updates within this patch:

First; Fix intermittent ANT+ not working
* LibUsb     - check bufRemaining is > 0 not non-zero
* LibUsb     - Always reset the USB stick on open
* ANT.cpp    - Support > 4 channels on USB2
* ANTChannel -  Do not use pairing, but always
*               unassign, assign and set channel id.

Second; Fix device discovery
* Find and discover support in realtime controllers
* Extend Serial.cpp to cover more Serial devices
* Support for 4 or 8 ANT channels for USB1/USB2

Third; Introduce Add Device Wizard with
* General and Specific wizard pages for each device type
* Device pairing with telemetry display
* fixed compile time warnings

Fourth; Update Device Config Page
* use wizard to add new device
* remove edit fields, replaced by wizard
* remove pair, firmware buttons replaced by wizard

Fifth; Deprecate/Remove Device Types
* Null Device - used by developers only
* Quarqd client - replaced by Native ANT+
* GC Server - not implemented yet

I have also introduced a device specific wheel size
and flags for controlling the default selection and
sources for sensor data when in multi-device mode. These
are not yet supported in the code.

Fixes #611.
Fixes #497.
2012-01-21 20:28:33 +00:00
Mark Liversedge
3863b7f0a2 Fix precision error for Temp in Summary 2012-01-15 16:58:04 +00:00
Mark Liversedge
b5f979e3f8 Add Temperature to Ride Summary
More complex than I had hoped for, to add
Temperature I needed to;

* introduce two new metrics Avg/Max temperature
* adjust metric conversion to include a conversionSum
  for the C to F conversion
* handle temperature as a metadata field as well as a
  ride data series
* handle the RideFile::noTemp value rather than just
  averaging or calculating max.

Fixes #603.
2012-01-15 16:27:09 +00:00
Mark Liversedge
1d702e8958 Wattbike test rides 2012-01-15 12:54:42 +00:00
Mark Liversedge
1509cc5894 Support Wattbike TXT data exports
Thanks to Peter Norberg for the sample data export
files. This support has been written against the
two files supplied.

if the export has imperial/metric conversion options
then this support will need to be adjusted to cater
for different units.

Fixes #322.
2012-01-15 12:52:57 +00:00
Damien
0aaeb25076 Fix CriticalPowerWindow handle seasons changed
Fixes #575.
2012-01-15 09:22:45 +00:00
Mark Liversedge
eb25761557 Refresh PMC when rides added/deleted
Replots the PMC when a ride is added or deleted to make
sure the plot reflects the current activity history.
2012-01-14 22:05:46 +00:00
Mark Liversedge
53f103e64a Refresh on ride add/deleted
When rides are added or deleted the weekly statistics
are now refreshed to ensure they reflect the rides
now present within that week.
2012-01-14 21:57:49 +00:00
Mark Liversedge
6142578683 Tcx speed is Meters/Second not KPH
Recent update to support distance calculation from
speed and time erroneously assumed speed units of
kilometers per hour. The docs state that speed is
represented in Meters per Second.

Apologies, and thanks to Walter Bürki for his
perseverance with me on this one.

Fixes #598.
2012-01-14 19:30:27 +00:00
Mark Liversedge
9b4c273753 Constrain AEPF to 2500N on PfPv plot
Low cadence values (<30) lead to very high
AEPF values. In reality, these very low
cadences are sprious, since they can occur
after freewheeling (the sensor cannot
differentiate).

We restrict the AEPF scale on the PfPvPlot
to 2,500N which should be meaningful for
most humans.
2012-01-14 19:21:18 +00:00
Mark Liversedge
51d014439d Season Config - don't delete!
The seasons class emits signals to let
everyone know if the season config changes
at runtime.

The recent patch to add configuration of
seasons deleted and re-instantiated the
seasons member in MainWindow which breaks
updating across the code.

This patch fixes that.
2012-01-14 17:41:42 +00:00
Mark Liversedge
01a6e85363 ANT+ Use Cadence from Standard Power Messages
Standard power messages include an instant cadence
value which we ignored. We should use this if it is
available.

Fixes previous attempt by setting Cadence rather than
wheelRPM with the instant cadence value (!)

Fixes #556.
2012-01-14 15:48:41 +00:00
Mark Liversedge
79560d7486 Add Wheelsize Config
So we can calculate speed from wheelRPM when working
with ANT+ speed sensors in realtime.

The config screen is still ugly as hell, but there is
another bug raised to resolve that.

Fixes #529.
2012-01-14 15:38:01 +00:00
Mark Liversedge
128687ee64 Fix Crash on no ErgFile selected
Fixes #600.
2012-01-14 15:34:42 +00:00
Mark Liversedge
4c520aa69b Disable roch text in metadata
It causes significant performance issues when
pasting complex font information, we only allow
plain text since we only serialise the plain text
elements anyway.

Fixes #599.
2012-01-14 12:21:39 +00:00
Mark Liversedge
01f9b0b078 Merge branch 'release_3.0.0dev' of github.com:/srhea/GoldenCheetah into release_3.0.0dev 2012-01-14 11:54:13 +00:00
Mark Liversedge
492a113eb3 Configure Seasons in ConfigDialog
Allow the user to add,delete and reorder
seasons in the config dialog.

Although the user could create and manipulate
seasons / date ranges in the LTM chart, this
provides a more coherent place to do the same
but also adds the ability to re-order seasons.

Fixes #399.
2012-01-14 11:52:01 +00:00
Damien
00ee9bbfcf Remove Joule warings
Remove warnings for new format identifiers in the last Joule firmware
 Correct a small bug in the summary view for average metrics refresh.

 Fixes #524.
2012-01-13 22:57:54 +00:00
Damien
f308bbdf06 Correct bug #496 for longitude < -65
Fixes #496.
2012-01-13 22:36:44 +00:00
Damien
7562002e4f Correct heartrate zone labels position for X axis not beginning at 0
Fixes #426.
2012-01-13 21:42:43 +00:00
Mark Liversedge
f580157ae9 Hold down FFwd/Rewind Buttons to skip
When jumping forward and back through a workout
the FFwd/Rewind buttons can now be held down to
auto-repeat and skip quickly.
2012-01-13 19:13:47 +00:00
Andrew Bryson
63efcf50c0 Add lap time remaining data series
Fixes Feature #592.
2012-01-13 17:52:07 +00:00
Damien
4dae295b50 Correct encoding in json parser
Fixes #408.

	modified:   src/JsonRideFile.y
2012-01-13 17:52:07 +00:00
Gareth Coco
ad4ba366cf Update default chart titles - Analysis view
Fixes #596
2012-01-12 16:21:23 +00:00
Mark Liversedge
494a4adfbe Reinstate Chart Setup Dialog
It was removed when we had a serious bug
that caused a crash when adding a chart.
That turned out to be related to mouse
event processing and drop shadow graphic
effects.

We can remove this is folks don't like it.
2012-01-12 16:00:35 +00:00
Mark Liversedge
d87a9cc10b Fix QTKit Video Playback on QT 4.8 RC
QT-BUG 22574 suggests there is a problem with the
QMacCocoaContainer on 4.8 RC 0. This is a quick workaround
for those building against the 4.8 release candidate.
2012-01-12 15:18:50 +00:00
Mark Liversedge
a72f4436bf FFwd/rewind Video on Mac
Following on from update for VLC based video playback
this update add fast forward and rewind of video on
Mac where we use the Quicktime API.
2012-01-12 12:40:35 +00:00
Mark Liversedge
b0b9042ee4 FFwd and Rewind Video (VLC)
When using the fast forward and rewind buttons for
a workout we now also fast forward and rewind the
video playback on Linux/Windows.

The same feature needs to be incorporated under
Mac where we use QTKit for video playback.

Fixes #594.
2012-01-12 11:39:31 +00:00
Mark Liversedge
e83d667bf1 FitRideFile distance of zero bug
Fit ride file contains samples where the distance
is set to zero, even if the previous sample is
non-zero.

The parser has been adjusted to keep the previous
distance used when a zero value is encountered.

Fixes #544.
2012-01-11 22:23:03 +00:00
Mark Liversedge
02c761e38e Save Garmin Threshold Config Setting
Fixes #591.
2012-01-11 21:22:37 +00:00
Mark Liversedge
aeba28d286 Save Garmin Smart Record setting
Config dialog lost the code to save the
garmin smart recording setting.

Fixes #591.
2012-01-11 20:45:56 +00:00
Gareth Coco
cdda7f3a61 Add right click - Upload Activity to Calendar - functionality
If ICAL is defined allow right click to upload the Activity

Fixes #588
2012-01-11 20:28:49 +00:00
Gareth Coco
1ec16bec80 Update default Chart Titles
- Now shows last 60s, not 10s
- No workout loaded so just show Workout

Fixes #587
2012-01-11 20:27:39 +00:00
Andrew Bryson
e53ce8c392 Fixed lap averages only working with lap button
Fixes bug 590.

Lap averages will now correctly reset on a new lap from an erg file.
2012-01-11 20:23:21 +00:00
Mark Liversedge
eb50ee33b5 Merge branch 'release_3.0.0dev' of github.com:/srhea/GoldenCheetah into release_3.0.0dev 2012-01-11 20:15:33 +00:00
Mark Liversedge
4d1107dfe1 Fix Computrainer Manual Ergo Mode LOAD display
When working with a computrainer in manual ergo mode
the display does not update as the load is increased
and decreased.

Fixes #586.
2012-01-11 20:13:08 +00:00
Steven Gribble
3f9547fa0d added a new air density (rho) estimator dialog box, hooked it into the Tools menu, and updated src.pro to add compilation dependencies for it 2012-01-08 17:02:53 +00:00
Mark Liversedge
b22cb587ba Fix ANT.cpp comppile error (LIBUSB is optional)
Compile time error for USBMode in ANT.cpp when
libusb is not available.
2012-01-07 08:09:53 +00:00
Mark Liversedge
43d0452dc3 ErgFile now supports 'named' intervals
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).
2012-01-06 19:49:11 +00:00
Mark Liversedge
16ca7e4667 Further fixup for USB2 sticks
Added a usb_init() call prior to starting a workout, this
appears to clear state inside libusb.

Also added some commented code for displaying diagnostics
when sending/receiving ANT messages.

This should make the ANT+ connection more robust on first
use, since subsequent uses are now fine.

This may be related to the state the USB host controller (stick)
is left in after we first connect, more investigation is required.
2012-01-06 16:57:39 +00:00
Mark Liversedge
7f91cfe25b Fix need to 'reset' USB2 stick between sessions
It was neccessary to reset the USB2 stick between
sessions. This was due to incorrect state data
being maintained within the ANT code.

New sessions should start without requiring a USB
device reset or running ANT agent etc.

Fixes #558.
2012-01-06 11:38:20 +00:00
Mark Liversedge
891c892cd3 Restore SpinScan
The recent commit for multi device support cleared
the spinscan data, breaking the plot updates. This update
retrieves the spinscan data if a computrainer has been
selected for the workout.
2012-01-06 09:47:21 +00:00
Mark Liversedge
315fc61414 Support TrainerRoad.com TCX Files
The TCX parser ignored samples where distance
is zero even when speed and time are available.

This broke reading files from TrainerRoad.com.

Fixes #580.
2012-01-06 09:09:03 +00:00
Mark Liversedge
dd933e983d Fix JSON ride files going "missing"
The metric aggregator did not clear the "errors"
string list when refreshing metrics. This caused
the Json parser to always fail if preceding files
had warning messages.

This was quite common with fit files.

Fixes #552.
2012-01-06 09:00:41 +00:00
Mark Liversedge
6899f11e43 Cosmetic fixup to Device config. 2012-01-05 21:30:50 +00:00
Mark Liversedge
0b2f78f0f5 Clear device list before reload on config change 2012-01-05 21:22:23 +00:00
Andrew Bryson
0ba75f3f19 Lap Averages in Real Time mode
Add lap average for hr watts cadence speed.
2012-01-05 20:55:20 +00:00
Andrew Bryson
1b1fe43238 Reset the lap timer based on erg file
Resets the lap timer when we get to a new lap in a training plan.
Previously it would only reset when the user pressed lap

fixes Bug #576
2012-01-05 20:53:16 +00:00
Mark Liversedge
0a2b0f6c68 Add Multi-device support in Train View
It is now possible to select multiple devices to
workout with.

To enable multi-device support a new setting in
tools->options (preferences on Mac) allows the
user to enable multi-device selections (this just
enables the user to select more than one device
in the side bar).

When a workout is started the user can select which
devices will supply which data.

This enables ANT+ devices to override information
provided by Computrainers or Fortius devices.

Fixes #578.
2012-01-05 20:47:04 +00:00
Mark Liversedge
519e9de460 More configurable realtime plot
Allow data smoothing, which is particularly useful
during bike fit sessions to watch trends rather than
micro changes.

Also allow the user to select which data series to
plot. This allows you to open multiple plots for
each series.
2012-01-03 14:49:41 +00:00
Mark Liversedge
3d5b8faf44 AltPower gets smoothing in DialWindow. 2012-01-01 11:02:26 +00:00
Mark Liversedge
89f20baeb3 Honour line width settings in realtime plot
It was set to 2.0px rather than using the value defined
in options/preferences.
2011-12-31 21:07:37 +00:00
Mark Liversedge
88991f2b23 Dual ANT+ Power Fixups
Forgot to increment the power channels count, which
mean't that the alternate power device was not set.

Also now allow for scanning for same device types on
multiple channels.
2011-12-31 20:14:15 +00:00
Mark Liversedge
11f2ddcb29 Realtime Plot shows last 60s, not last 10s
The realtime plot was originally set to only show the
last 10s of activity to reduce CPU overhead.

In reality, the CPU overhead for the plot is minimal,
especially when anti-aliasing is disabled.

This update modifies the plot to show the last 60s of
data, instead of the rather restrictive 10s.
2011-12-30 18:39:42 +00:00
Mark Liversedge
3af0939476 BioBike Support
Add support for dual ANT+ power devices (in this case using
dual track SRM cranks). The two power devices are assumed to
represent power and alternative power.

The following changes have been made for this support:
* ANT+ device profile support multiple power devices
* Allow editing ANT+ device profile on Mac/Linux (it
  is already available on Windows)
* When a second ANT Channel is assigned to power it is
  set as alternative, and updates alternative watts
* RealtimeData now supports Watts and AltWatts
* AltWatts dial and associated color settings
* LRBalance dial to show difference between Watts and AltWatts
* Realtime plot plots watts and altWatts

Fixes #572.
2011-12-30 18:06:31 +00:00
Mark Liversedge
09824e331c Set default workout directory for Train view
Since it can be confusing to new or occasional users, the
workout directory now defaults to the top-level GC directory.

This kind of makes sense since it is shared across all cyclists
and is guaranteed to exist, and will still work when running
from a USB stick.

When we get round to implementing feature 193 and 570 we can
adjust this to suit.

Fixes #571.
2011-12-30 10:33:33 +00:00
Mark Liversedge
7a3880bbd6 Close Window or Quit all Windows
Added a menu option to quit all windows rather than
just the current one.

Each window will process a close event and so give the
user the option to save changed files and cancel closing
it.

Fixes #566.
2011-12-29 22:49:45 +00:00
Ilja Booij
bde74df0c8 Fix Heartrate support for Tacx Fortius
The heartrate value is present in byte 13 of the
received data.

Fixes #555.
2011-12-29 22:07:41 +00:00
Mark Liversedge
9c4f8edf51 Simplify Diary Window
Now only shows monthly view, since;

* qxtscheduleview (weekly) has too many bugs
* rideSummary (ride) is redundant, just add that window to the view

Fixes #546.
2011-12-25 12:09:22 +00:00
Mark Liversedge
c2602e929c Fix color array offset broken in commit 3c95f54 2011-12-25 11:53:13 +00:00
Mark Liversedge
5e53731443 Show date on CP bests tooltip 2011-12-25 11:47:37 +00:00
Mark Liversedge
a5d7121670 CP chart 'best date' doesn't fit
Aside from just expanding the sidebar to show it, this update
creates a bit more space for the display of best values in
the CP chart controls.

It would be better if the tooltip also showed the date.

Fixes #565.
2011-12-25 11:23:54 +00:00
Mark Liversedge
b604010fcb Training Dials have own Color setting
For expoediency the training dials used the qwtplotmarker
color but this often lead to things like lap, time being
displayed in black on a black background.

We now have a realtime dials default color setting in the
appearances pane. The default is gray, so will show up on
a black or white background.
2011-12-24 11:25:53 +00:00
Mark Liversedge
02aece9bb0 Fix nan/inf values for Virtual Speed. 2011-12-21 18:56:39 +00:00
Mark Liversedge
886370e79e Rolling Average Power/Cadence/HR tweaks
The slider in the controls should only be shown
for HR/Power/Cadence. Additionally, it is more
of a 'smoothing' (rolling) average, so the text
has been changed to reflect that.

This is to avoid confusion with the other series
entitled Average Power. Average Cadence and
Average heart rate - which are averages for the
entire ride.
2011-12-21 17:48:27 +00:00
Mark Liversedge
b82e744226 Virtual Speed
Tom Compton of AnalyticCycling.com has provided
a formula to calculate virtual speed based upon
slope, weight, power, cdA, crr and air density.

This is now implemented as 'Virtual Speed'.

It is expected that this new virtual speed will
be used to control streetview, video rendering
and future implementations of group riding over
a predefined course.

Fixes #527.
2011-12-21 17:22:37 +00:00
Mark Liversedge
d59ed3fa3f remove debug from Fortius.cpp. 2011-12-21 16:33:05 +00:00
Mark Liversedge
5c7f618a85 Fix Fortius Power Smoothing
Recent fixups introduced a delay of 50ms when
reading from the Fortius controller to avoid
interrupt write errors.

The smoothing of power data was not adjusted to
take into account the reduced frequency of
telemetry updates.

We now smooth at 16hz not 60hz.
2011-12-21 16:16:37 +00:00
Mark Liversedge
898c50b928 List last month, not year for TrainingPeaks.com
By default the TrainingPeaks.com download dialog will
fetch the last year of ride files. This can take a long
time for some users. We now only ask for the last month
by default.

Fixes #561.
2011-12-21 15:20:03 +00:00
Mark Liversedge
9c303dacb2 ANT+ Use Cadence from Standard Power Messages
Standard power messages include an instant cadence
value which we ignored. We should use this if it is
available.

Fixes #556.
2011-12-21 12:06:24 +00:00
Mark Liversedge
112d586063 Add Virtual Power for 1UP USA bike trainer
Fixes #560.
2011-12-21 10:42:53 +00:00
Walter Bürki
5e4e39ccfa Fix Histogram Crash
When selecting the speed tab on an imported ride-file, GC exits
with the following error on the command- line: ASSERT failure in
QVector<T>::operator[]: "index out of range", file
/usr/include/qt4/QtCore/qvector.h, line 347.

File: PowerHist.cpp on line 393
low has value -5.55111512312578e-17 which is like -0.0000000000x

This caused an out of bound error on array lookup.

Fixes #551.
2011-12-18 14:39:10 +00:00
Mark Liversedge
ce12016863 Tacx Fortius Driver Stubs
To work with Tacx Fortius on 32/64 bit platforms without
having to install the Tacx software (which requires the
user to pay to upgrade to TTS2/3/4).

Fixes #550.
2011-12-17 23:39:18 +00:00
Mark Liversedge
756b63d1b0 Remove dynamic load of libusb on Windows
It wasn't adding any value and caused problems
with static build targets and using libusb functions
in other parts of the code (e.g. EzUsb).
2011-12-17 22:21:51 +00:00
Mark Liversedge
cd07d933d8 Fix zero speed in TxtRideFile for Imperial units
When importing files with imperial units the importer
does not set distance data and the speed is reset to
zero.

This patch fixes that.
2011-12-17 21:20:19 +00:00
Mark Liversedge
3c221089ba Rename EF to Efficiency Factor. 2011-12-17 17:58:49 +00:00
Damien
8c38809838 Add ResponseIndex and EfficiencyFactor
modified:   src/BikeScore.cpp
	modified:   src/Coggan.cpp
	modified:   src/DBAccess.cpp
2011-12-17 17:54:20 +00:00
Mark Liversedge
91726c93a3 TrainTool make Fortius dependant upon GC_HAVE_LIBUSB. 2011-12-17 15:59:39 +00:00
Mark Liversedge
5c6755df33 Merge branch 'release_3.0.0dev' of github.com:srhea/GoldenCheetah into release_3.0.0dev 2011-12-17 12:36:00 +00:00
Mark Liversedge
4b9a618859 Tacx Fortius fixes for Mac OSX
Under Mac OSX the Tacx Fortius support needed
a few minor tweaks;

* sleep 60ms between read/write operations to
  avoid interrupt errors

* clear_halt on read/write endpoints before
  attempting to read/write to the device

* remove the errant usb_reset which really should
  not have been called in LibUsb since it deletes
  the device structure(!)

The LibUsb class has been modified to clear_halt
when opening ANT devices too -- since regression
testing on Mac showed that a) you need the latest
drivers to work with a USB2 stick on Lion (64bit)
and it now appears to mandate a clear_halt when
opening the device (but this may be related to the
Garmin ANT agent leaving it in an unknown state).
2011-12-17 12:31:25 +00:00
Mark Liversedge
afd32b6baa Introduce OperatingSystem global variable
The LibUsb (and possibly other classes) need to know
what operating system we are running on at runtime. In
the past this has been achieved with lots of #ifdef pre-
processor conditionals, but this makes the code quite
difficult to read in places.

This patch introduces the variable OperatingSystem and
it can be one of WINDOWS, LINUX, OSX.
2011-12-17 11:44:47 +00:00
Damien
de233e4efe Add average for Power, Cadence and Heartrate
modified:   src/DialWindow.cpp
	modified:   src/DialWindow.h
2011-12-17 10:15:19 +00:00
Mark Liversedge
9a9a587afe Mingw has not sleep(), uses WinAPI Sleep(). 2011-12-12 22:33:45 +00:00
Mark Liversedge
330ad7df42 Mingw build fixups
- #ident not supported in EzUsb.cpp
- sleep() missing <unistd.h> in LibUsb.cpp
2011-12-12 22:24:22 +00:00
Mark Liversedge
abfcf078fc Tacx Fortius Support
Initial support for Tacx Fortius devices.

Note this requires libusb support to be present and will
work on Linux, Mac and Windows.

The handlebar buttons up/down will increase/decrease the
load/intensity in a similar fashion to the +/- keys on
the Computrainer controller.

The cancel button will stop a workout and the enter key
is used to mark a lap.

Slope and Ergo modes are supported, but we do not set the
brake at all if the speed is below 10kph, this is to
ensure it does not get burnt out when users 'grind'.

SPECIAL NOTE:

   The Fortius handlebar controller is a Ez-Usb device
   and requires firmware to be loaded when it is connected.
   Since this is copyrighted by Tacx BV we do not distribute
   it, instead, when the user sets up a Fortius device they
   must also provide the file. Full instructions on how this
   should be done are given when configuring the device.

Additionally, for Linux users udev rules should be added to
ensure that the USB devices are accessible to non-root users.

Fixes #538.
2011-12-12 17:26:59 +00:00
Mark Liversedge
347e12f3fc Computrainer +/- keys and load zero
The recent patch to fix displaying load on ANT+
devices broke the same for computrainer in manual
ergo mode.
2011-12-11 14:00:24 +00:00
Damien Grauser
9c611c4b5b Add temperature icon to GCBubble 2011-12-08 22:38:58 +00:00
Damien
f59e81b634 Correct temp plot for smoothing 2011-12-08 21:29:40 +00:00
Mark Liversedge
efc7ad039d Remove need for cadence on virtual power
Since you may not have a cadence sensor available it
does not make sense to zero power when cadence is zero.
2011-12-08 21:03:52 +00:00
Greg Lonnon
053c5548a6 fixed the gps parser to take mapmyride routes
Fixes #533.
2011-12-07 22:19:34 +00:00
Damien Grauser
8d3d89d44d Add temperature to AllPlot
Fixes #536.
2011-12-07 21:55:35 +00:00
Mark Liversedge
9f25fdc6f8 Fix PfPv refresh bug
Fixes #520.
2011-12-06 10:01:58 +00:00
Mark Liversedge
58eb527fd0 Use uint8_t* not void* in memcpy()
Computrainer spinscan memcpy() used offsets
but failed to declare the datatype used by
pointers.

Interestingly, some compilers will assume a
void* points to a byte, whilst others will
rightly complain.
2011-12-04 14:31:04 +00:00
Damien Grauser
ac3112b286 Add Temperature and Slope Data Series
This patch adds support for temperature and slope
across the ridefile readers.

For the most part their is no functional change
although it is now possible to view and edit these
data series in the editor.

File formats that can provide temp or slope include;
.bin, .fit, .srm, .sync, .wko

Further updates will be required to display the data
in the ride plot and histograms.
2011-12-03 23:17:11 +00:00
Mark Liversedge
ba3c6c11d6 Remember mode in pedalstroke chart. 2011-12-03 15:29:29 +00:00
Mark Liversedge
63635d8864 Add Polar SpinScan Plot
The Power Stroke chart will now show a
bar or polar chart.
2011-12-03 15:08:23 +00:00
Mark Liversedge
a90bc301c9 SpinScan L/R different colors 2011-12-02 18:51:03 +00:00
Mark Liversedge
c71ea615ca Fix Target load Dial
When working with ANT+ devices the load dial always
showed zero, because the ANT device was not updating
the realtime data with the desired load.

In addition, the target load telemetry always showed
watts even when working in slope mode (where it should
show the gradient).

Fixes #532.
2011-12-01 21:35:39 +00:00
Mark Liversedge
ae6b8869f5 Added SpinScan Plot
I finally got round to decoding the spinscan data
from computrainers. This is now implented in train
view.

A new chart is available 'Pedal Stroke' to show the
spinscan data returned by the computrainer.

I am unsure if the decoding is 100% on the money but
have been testing for a week and it seems ok.

Fixes #530.
2011-11-30 23:26:20 +00:00
Mark Liversedge
a9d7879498 Windows URIs are file:///c: not file://c: 2011-11-27 15:33:20 +00:00
Mark Liversedge
eb468aad72 VLC Filename convert to file:// URL
Passing a filename with spaces in it causes some issues
on WinXP/2003, this patch converts all filenames to valid
URLs (which is the preferred way to reference media in VLC).

Specifically;

* The file path is prepended with file://
* backslashes in filenames are converted to forward slashes in URLs
* Spaces are converted to %20
2011-11-27 15:03:31 +00:00
Mark Liversedge
79c38a738d Better Bounds Checking in RideFile::intervalBegin()
Return value when out of bounds had a fencepost error. Annoyingly
it is exactly the same fencepost error that was fixed in a line
of code 10 lines lower in the source.

This fixes rare issues with rides where intervals start at the
end of the ride file. This can happen with rides that have been
split.
2011-11-27 00:00:48 +00:00
Mark Liversedge
aff4153ede Fix SEGV on Mac on Save Preferences. 2011-11-26 22:54:30 +00:00
Mark Liversedge
eeeaf13c75 ErgDB download should say exists not exported. 2011-11-26 21:08:14 +00:00
Mark Liversedge
2d28edcb34 Fix Serious Delay after saving Preferences
Caused by instantiating way too many copies
of the specialfields class, when one is freely
available for reference.
2011-11-26 20:51:45 +00:00
Mark Liversedge
289f8b37a4 missing src.pro 2011-11-26 18:01:16 +00:00
Mark Liversedge
c39eaf3e50 Removed accidental commented out code 2011-11-26 17:59:01 +00:00
Mark Liversedge
19b3ead80a Download from ErgDB
A new menu option added to download workout
files from the ErgDB. Will also need to look
at upload so we can share amongst the GC
community.

Fixes #521.
2011-11-26 17:57:14 +00:00
Mark Liversedge
84fc97f61d Fix double save of Configuration
The createIcons method in ConfigDialog also adds
another connect to the save button. This has been
removed.

Lame and brain-dead coding error.
2011-11-26 17:54:35 +00:00
Justin Knotzke
231de2eb3b Upload to Strava
A menu option to upload ride files to the Strava website.
Original code from Justin Knotzke ported to v3 by
Damien Grauser.

If the ride has already been uploaded the upload menu
option is disabled, once uploaded a tag is set in the ride
with the strava id.

Fixes #519.
2011-11-26 08:59:30 +00:00
Gareth Coco
1d0022e15e Initialise LAT/LON to zero (0.0) in the parser
If there is no LAT/LON data often GC will set really small numbers
to LAT/LON which the map functions will try to map.

Fixes #522
2011-11-26 07:47:33 +00:00
Mark Liversedge
d8ea426c64 Computrainer Calibration Mode on F3
Pressing F3 on the handlebar controller now starts calibration
mode and pauses all video and recording. Pressing F3 again will
resume the workout and restart.

Fixes #392.
2011-11-25 21:22:06 +00:00
Mark Liversedge
09658f679a Fix FTDI Adaptor on Linux and Mac
Eric Brandt provided a fix for the new FTDI adaptor
sold with Computrainers from late 2009. It only fixed
the problem under Windows.

This fix applies the same modification to turn off
hardware flow-control for Linux and Mac.

Fixes #523.
2011-11-25 16:09:27 +00:00
Mark Liversedge
9428205ced Add a Watts per kilogram metric
All the existing wpk metrics concentrate
on the wpk for a fixed period, which is great
but we should also support it for an interval
(where it is arguably most interesting).

This patch fixes that.

Fixes #467.
2011-11-22 20:28:18 +00:00
Mark Liversedge
5a70bc66b1 Remove Smart Layouts
They are horrible. We need a better solution. The
"smart" layout was the wrong solution and everyone
hated them.

We need some ideas about how this should work.
2011-11-21 09:49:16 +00:00
Mark Liversedge
6d28ad1e74 Merge branch 'release_3.0.0dev' of github.com:/srhea/GoldenCheetah into release_3.0.0dev 2011-11-21 08:02:53 +00:00
Mark Liversedge
7e03e82ab6 Version 3 to use metricDBv3
Some users often switch between v2 and v3 of GC. Either
because they are testing or they are transitioning from
v2 stable to v3 development builds.

But at launch the metricDB is refreshed each time, since
the v2 and v3 metrics are so different.

To avoid this, from version 3 the metricDB file will be
called metricDBv3 to avoid conflicting with the original
metricDB file.

Fixes #376.
2011-11-21 07:59:49 +00:00
Mark Liversedge
22c647f9df Use strtod() to convert text to double
To get improved precision when parsing pasted
data in the ride editor.

Fixes #477.
2011-11-20 21:47:11 +00:00
Mark Liversedge
0c029fa984 Add ToolTips to Toolbar Buttons
The show/hide sidebar, Toggle Tabbed Mode, FullScreen
and Add Chart buttons now have a tooltip to help explain
what they do.

We still need better icons too!
2011-11-20 20:46:10 +00:00
Mark Liversedge
c3570ef37c Fix FullScreen on Lion compile errors
Fix compile on Mac SDK < 10.7, silly initialisation
of fullScreen in MainWindow when it doesn't exist
and fixup gcconfig.pri.in definiton of GC_HAVE_LION.
2011-11-20 18:11:46 +00:00
Mark Liversedge
f2690b9208 Fix FullScreen Crash on Mac
When building with the latest Xcode their is a conflict
between the QtMacSegmentedButton cocoa container and the
same declared in QtMacVideoWindow.

This patch removes QtMacSegmentedButton since we do not
use it.  There appears to be a container in 4.7 anyway
so we no longer declare our own.

Video and FullScreen are fully operational now on 10.6
or higher using 4.7.4 or higher of QT.
2011-11-20 17:10:44 +00:00
Mark Liversedge
6b097dcfad Add Chart Menu fixups
The add chart menu had the ride plot on home
and charts were ordered in a relatively random
order.

This patch orders the charts by relevance for the
particular view and moves the 'Performance' chart
to the Analysis selection.
2011-11-20 15:58:45 +00:00
Mark Liversedge
19d33bc472 Add a Mac INSTALL guide
We have previously written a walkthrough for building
on Windows and Linux, we now have a walthrough for
building on a Mac.

INSTALL-MAC is in the top level directory is a plain text file.
2011-11-20 14:44:38 +00:00
Mark Liversedge
3fa1c562f8 Merge branch 'release_3.0.0dev' of github.com:/srhea/GoldenCheetah into release_3.0.0dev 2011-11-20 14:10:38 +00:00
Mark Liversedge
647ac2af3e Fix Crash in ErgFilePlot TimeScaleDraw
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.
2011-11-20 14:07:47 +00:00
Mark Liversedge
ebf66f8699 Fix crash on exit (WinIdChange). 2011-11-19 20:39:22 +00:00
Mark Liversedge
212e6e9a22 Fix missing ';' in update to MainWindow.cpp 2011-11-19 18:41:12 +00:00
Mark Liversedge
193f9e5142 Toolbar buttons didn't move on a Mac
Mostly caused by the Nazi style police in Cocoa wanting
huge margins etc. Steve knows best. Now uses the Windows
style for toolbar buttons so we get control back from
you know who.
2011-11-19 17:26:21 +00:00
Mark Liversedge
a28911b06d Use OBJECTIVE_SOURCES in src.pro
Objective C (actually in our case Objective-C++) sources
should be declared under the OBJECTIVE_SOURCES macro and
not the SOURCES macro.
2011-11-19 17:24:58 +00:00
Mark Liversedge
2f3a3d8c0d Fix bounds checking in RideNavigatorProxy
The group by model gets called by the view with a row
number -1. The code didn't check it was in bounds, which
causes a crash with Qt4.8, possibly a bug in 4.8 but a
bounds check is pretty harmless anyway.
2011-11-19 17:19:20 +00:00
Mark Liversedge
4bfca515fb Remove Activity Details from Sidebar
Instead the defaut layout now has the ride summary
and details as the first chart in analysis view.

Funny how we've come full circle back to the original
layout. Kinda reassuring I suppose.

Also fixes SummaryWindow splitter handle being rather
ugly.

Fixes #518.
2011-11-19 14:41:41 +00:00
Mark Liversedge
63994e2ac4 Add Chart from Toolbar menu
The drag and drop function for adding charts may
be functionally appropriate, but it is not intuitive
for new users.

This patch moves the add chart function to the toolbar
as a drop down menu. it also makes the chart selection
context sensitive - so on training view only realtime
charts are listed.

Fixes #517.
2011-11-19 14:27:55 +00:00
Mark Liversedge
6528a01008 Only resort to cached calendar if it exists! 2011-11-16 21:32:08 +00:00
Mark Liversedge
b04175aac0 Auto extend workout plot when no workout selected
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.
2011-11-16 21:11:48 +00:00
Mark Liversedge
225fdd6741 Fixup .pgmf support (set mode)
The .pgmf file support needed to set the workout mode but
that was missed.

Now tested the Train View with some Tacx ErgoVideos and they
work perfectly.
2011-11-15 20:13:54 +00:00
Mark Liversedge
355b759ef3 Reinstate Lap button
Recent mods to move the realtime controls to the toolbar
managed to lose the Lap function. This patch reinstates it.

Fixes #514.
2011-11-14 22:18:31 +00:00
Mark Liversedge
32c8f6d987 Fixup toolbar button spacing on a Mac. 2011-11-13 22:25:55 +00:00
Mark Liversedge
265f9c7284 Less prominent "view" icons. 2011-11-13 22:05:18 +00:00
Mark Liversedge
b60c64f963 Toggle FullScreen button on Toolbar
Added a button to toggle fullscreen on the toolbar. Not on
a Mac though since it is in the titlebar.

Also made the view buttons slightly larger. We desperately need
some nice icons / branding for the UI.

Fixes #513.
2011-11-13 21:50:25 +00:00
Mark Liversedge
3e069ce3dd Spacing around tab bar. 2011-11-13 19:41:13 +00:00
Mark Liversedge
4f1eb0aee2 Move tab/tile to Toolbar
To switch between tab/tiled mode the selector has
been moved from the homewindow to the toolbar. A
menu option to select tab/tiled mode has been
added to the view menu.

I have also added icons (that change) for show/hide
sidebar and tab/tile select. The show/hide sidebar
check was not being changed when you use the toolbar
button, this has also been fixed.

The scroll view mode has been deprecated. (But the code
has been retained in case we decide to re-introduce it).

Fixes #512.
2011-11-13 19:03:03 +00:00
Mark Liversedge
3f4d7b2741 Remove executable bit on source files
ANTMessage and ANTChannel source files are created with
the executable bit set. This patch removes that.
2011-11-13 11:16:26 +00:00
Mark Liversedge
2ac7e4c038 Fix RideFileCache taking too long on dodgy files
When the samples in a ride file start from a large offset
e.g. 6hrs is the timestamp for the first sample. The
ridefilecache will compute bests over the initial 6hr
gap.

This patch adjusts the timestamps so they always start
from zero, but only when calculating bests -- it does not
modify the ride data.

We may want to consider 'automatically' fixing this during
ridefile reading, but for now this fixes a nasty bug that
causes GC to hog CPU for large periods of time when computing
the cache.

Fixes #510.
2011-11-12 20:29:53 +00:00
Mark Liversedge
8a15a625af Linux/Win disable screensaver using VLC
VLC will disable the screensaver during playback. This patch
exploits this functionality bringing it in line with the Mac
builds.

One small nit remains; under Windows/Linux the screensaver
is only disabled if video playback is being used, whilst on
the Mac the screensaver is disabled whenever you are active
(e.g. on a basic workout or streetview).
2011-11-12 20:01:45 +00:00
Mark Liversedge
c37bb8466f Add support for Tacx/RLV Workout (.pgmf)
The Tacx ergometer has a workout file format
(.pgmf) that is similar in concept to the
Racermate .CRS/.ERG/.MRC file format.

This patch adds support for this kind of
workout file.

Further work is required to support the .rlv
file format in order to support video playback
to match the user's speed (keeping the video
in sync as you ride).

In addition, for Turbos that do not support
variable load using gradient/slope we will need
to add an algorithm to approximate speed from
power/weight/slope.

Fixes #382
2011-11-12 18:30:56 +00:00
Mark Liversedge
3796375045 Mac Video use GC_HAVE_LION
When compiling the Mac video stuff on Lion with SDK10.5
the code used a pre-processor directive to include code
based upon the max version allowed.

But if you are using an earlier SDK the max version allowed
is still higher, so instead we use the GC_HAVE_LION define
instead.

This change only really affects anyone on Lion or higher building
with an earlier version of the SDK.
2011-11-11 21:44:29 +00:00
Mark Liversedge
778f65a85d Show/Hide Sidebar toolbar button 2011-11-09 20:25:26 +00:00
Mark Liversedge
db8abed904 Windows/Linux (VLC) DVD Playback
Added the option to select "DVD" from the video/media
list to playback a DVD if one is present.
2011-11-09 18:16:08 +00:00
Mark Liversedge
40224a2b9c QTMovieView has autoresize enabled. 2011-11-09 15:57:45 +00:00
Mark Liversedge
8200a34605 VLC --no-xlib on Linux
To avoid errors related to threading during video
playback.
2011-11-08 22:46:45 +00:00
Mark Liversedge
c8bd185c87 Workout Plot remove gap on Load Curve. 2011-11-08 07:20:31 +00:00
Mark Liversedge
9dc73161b8 Allow smaller widths in tile view 2011-11-07 22:57:08 +00:00
Mark Liversedge
728201dbb1 Plot marker default color now Gray
Because black does not show up against a black background
(the default for a ride plot).

This was not a big issue, but it is used by the train view
as the color for the timer and results in black writing on
a black background.

This might be cool if you're in a band called Disaster Area
but not so cool if you want to ride your turbo.
2011-11-07 20:41:03 +00:00
Mark Liversedge
6676d249c9 signpost toggle fullscreen is F11. 2011-11-07 19:52:44 +00:00
Mark Liversedge
f224f1ca6a Fix play icon after stop pressed. 2011-11-07 19:06:12 +00:00
Mark Liversedge
892da2b47b minor alignment fix in train buttons. 2011-11-06 22:42:22 +00:00
Mark Liversedge
25ac573ea2 ToolBar even more like Flare
The "tabs" of the toolbar are now offset to the right
and fixed with a specific spacing.

Similarly, the training view buttons are fixed to the
left.

This ensures that the "tabs" don't move as toolbar
buttons are added/removed.

This removes the flickery artefacts when moving away
from train view and also gets ready for more specific
buttons on the other views.
2011-11-06 21:24:26 +00:00
Mark Liversedge
57c55926ef Fix GcToolBar paint artefacts. 2011-11-06 21:02:42 +00:00
Mark Liversedge
b0c04b6824 Train View controls in Toolbar
Updated the realtime view (Train) to put the
realtime controls in the toolbar and removed
the old realtime controls chart.  They only
appear in Train view.

Additionally, the workout list and media list
are now in the sidebar under 'Workout Library'.

Finally, the first device configured is always
selected at startup, but this is a temporary
change until the realtime device wizard is coded
to set a default device.
2011-11-06 19:34:46 +00:00
Mark Liversedge
2a380ddfa1 Mac OS X Realtime Fixups
A few minor fixups for Mac OS X;

* LionFullScreen.mm compile issues resolved by introducing
  a new define in gcconfig.pri. This will hopefully go when
  issues with Qt and AvailabilityMacros are resolved. See
  DEFINES += GC_HAVE_LION in gcconfig.pri.in

* The buttons on the realtime controls are now set to GTK to
  avoid Qt constraints regarding spacing and format of
  QPushButtons. This will hopefully go when we move the controls
  to a task bar at the bottom of the screen.
2011-11-05 23:21:28 +00:00
Mark Liversedge
609b1452a5 Further realtime improvements
A number of new features / enhancements;

* Display IF/TSS or Elevation/Grade in the controller
  when a workout is selected.

* Added buttons for forward/back which emulate the
  forward/back from a computrainer controller

* Added a slider to increase and decrease intensity/grade
  on-the-fly (during a workout), tied in with the
  computrainer controller's + and - keys.

* Unpicked the manualOverride code previously implemented

Mostly, or at least for this release, fixes #494.
2011-11-05 18:31:55 +00:00
Mark Liversedge
e6cd6e96e4 Remove Globals from ErgFilePlot
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.
2011-11-05 13:06:31 +00:00
Mark Liversedge
b3c39be5d8 Fix slow startup of Train View on Windows
The train view video/media list is constructed by attempting
to parse any file found in the workout directory. This was
a strategy to avoid missing files with odd extensions that
could be processed by VLC and also to avoid needing to
maintain a list of common extensions.

In practice, this was very slow to process and quite annoying.
VLC would load large volumes of DLLs and Codecs when trying
to parse.

In addition, the most common file types /by far/ are from
a relatively short list i.e; .mov, .avi, .mkv, .mp4 etc.

The strategy is now adjusted to search for a common list of
file types, namely;

    3GP ASF AVI DIVX FLAC FLV M4V MKV MOV MP4 MPEG MPG
    MXF Nut OGG OGM RM VOB WAV WMA WMV

The filename is checked without case sensitivity, i.e. files
will match regardless of whether they are in upper or lower
case (or combination of upper/lower).
2011-11-05 00:53:37 +00:00
Mark Liversedge
123cc43884 Remove VLC debug output console on Windows
The libvlc options setup used --extraintf=logger, which
causes a debug console window to be opened on Windows.

This patch removes this since debug output is only of
value to developers and should not be in released code.
2011-11-05 00:37:59 +00:00
Mark Liversedge
6a7c39b30a Reverse unwanted change to ErgFile::wattsAt() 2011-11-04 23:15:29 +00:00
Mark Liversedge
3b46b2fd59 Workout (ErgFile) computes metrics
When a workout file is opened, the contents are used
to calculate the NP,xPower thru TSS/Bikescore values
for the workout.

This is in preparation for on-the-fly adjustment of the
intensity of a workout and displaying the target stress
load (TSS/BikeScore) the workout will produce.

No user functional change.
2011-11-04 23:09:06 +00:00
Mark Liversedge
0de21d12f3 Disable Screensaver on Mac OS X
Update training view on a Mac to disable the screen saver
and power saver when a workout is active.
2011-11-04 18:34:18 +00:00
Gareth Coco
0166e25dee Fix Windows LibUsb compile error
declaration of int rc was missing on Windows
since it was removed by the pre-processor.

This patch declares int rc before use.
2011-11-04 16:34:07 +00:00
Mark Liversedge
10b387017a Show kJoules, TSS/BikeScore et al on Train View
The refactoring of the realtime display last year
removed the display of metrics such as BikeScore and
kJoules.

This patch adds more metrics that can be displayed;
* Averages for; power, hr, cadence, speed
* KJoules of work
* Coggan Metrics; NP, TSS, IF, VI
* Skiba Metrics; xPower, BikeScore, RI, Skiba VI

Also included is an updated default layout to
include some of these metrics.

Fixes #231
2011-11-04 16:28:36 +00:00
Mark Liversedge
b08fb90a91 Metric/Imperial bug in Realtime
Display of speed and distance is in kph, regardless of
the unit of measure user preferences. This patch fixes
that.
2011-11-04 09:12:45 +00:00
Mark Liversedge
9bda9ebdc6 LibUsb does not have usb_reset on Windows
We call usb_reset between sessions on Linux/Mac
because the USB device is left in an undetermined
state after close. In the comments I noted that
it was odd this was not required on Windows.

Well, it turns out it is not available on Windows.
This patch ensures we do not try to call it when
compiling for Windows.
2011-11-04 08:42:40 +00:00
Mark Liversedge
7589d84267 Add Support for FullScreen on Linux/Windows
Add support to toggle full screen mode on Linux
and Windows, in similar fashion to the recent
update for Mac OSX Lion.

A new view menu option to toggle full screen has
been added in lieu of the Mac titlebar icon on
either Win/Linux. Additionally, hitting Function
key F11 toggles fullscreen and hitting ESC whilst
in full screen also returns to normal.
2011-11-03 23:35:00 +00:00
Mark Liversedge
220b35d7db LionFullScreen saga. Ugh.
Even if the C pre-processor will remove a class definition
in a header file the QT moc utility will still create a
moc_Xxxx.cpp file which requires the class to be defined.

As a result the attempt to create an empty header for the
LionFullScreen class when compiling on earlier versions than
Lion causes issues.

The LionFullScreen class is now always declared and defined
but will be not do anything useful on earlier versions of
Mac OS X than Lion.
2011-11-03 21:58:21 +00:00
Mark Liversedge
c3e97c9b64 Fix HEADERS += LionFullScreen.h in src.pro
Temporary modification so non-OSX builds work (Linux/Windows).
The header was added to the main HEADERS += entry due to problems
with moc runs when added conditionally.

Will test on OSX and make further updates if needed.
2011-11-03 21:30:47 +00:00
Mark Liversedge
5510e7b731 LionFullScreen.h moc error on non-Mac
Because of a bug in qmake we add LionFullScreen.h to the
list of headers to ensure moc is called for the include.
When adding AvailabilityMacros.h to the header it needed
to check that we were compiling for a Mac.
2011-11-03 11:12:35 +00:00
Mark Liversedge
2b8cf152bf Fix MAC_OS_X_VERSION_MAX_ALLOWED
LionFullScreen used this macro to determine if the version
of the SDK is recent enough (Lion or higher).

Unfortunately, I forgot to also check if the OS was Mac OSX
and didn't include the correct header (AvailaibilityMacros.h)
to get the define. As a result all builds on anything other
than OSX Lion failed.
2011-11-02 20:50:46 +00:00
Mark Liversedge
9e4b98db24 Mac OSX SDK10.4 CALayer.h 'slots' variable
The Cocoa header defines an array called 'slots'
that conflicts with the QT macro (which replaces it
with whitespace).

Re-ordered header includes to avoid the macro clash when
compiling on SDK10.4 or earlier.
2011-11-01 22:27:19 +00:00
Mark Liversedge
52e6740ed3 Mac QTKit Video OpenForPlayback conditional
Building for versions of OSX prior to Snow Leopard
fails since QTMovieOpenForPlaybackAttribute is not
available, this patch makes this setting conditional
on build support for OS X >= 10.6.
2011-11-01 19:55:47 +00:00
Mark Liversedge
b44fbb5cd8 Ctrl-Cmd-F *toggles* fullscreen
Previous commit only cancelled fullscreen mode
when Ctrl-Cmd-F is pressed, but the common usage
is for the key sequence to toggle fullscreen
on and off.
2011-11-01 15:48:13 +00:00
Mark Liversedge
4ae18acbd2 Support Control-Cmd-F to exit full screen
It is common for many fullscreen apps to use this command
sequence to exit full-screen (e.g. Chrome, Safari).
2011-11-01 15:41:40 +00:00
Mark Liversedge
a12ee24d83 Remove QTMovieOpenAsyncRequiredAttribute
So we can build on earlier versions of OSX. To improve
things a little since we will no get QuicktimeX without
this reference we now set QTOpenForPlaybackAttribute to
get at least some optimisation.
2011-11-01 15:08:27 +00:00
Mark Liversedge
0c309d4b13 Fullscreen Support for Mac OSX Lion
Mac OS X Lion introduces support for fullscreen applications
and places a fullscreen button on the title bar and animates
etc.

This patch adds support for fullscreen mode. Since there is
no standard way of exiting fullscreen mode we have adopted
pressing the 'ESC' key, since this is inline with most of the
Apple applications (e.g. Mail).
2011-11-01 14:46:30 +00:00
Mark Liversedge
9309fbb978 Fix memory leak in Video Window on Mac (QTKit)
Need to call QTMovie::invalidate before QTMovieView::setMovie to
ensure the mmap is deleted before allocating for the new one. This
fixes mmap errors when scrolling up and down a list of videos.
2011-11-01 10:42:52 +00:00
Mark Liversedge
0d320ecf8e Fix repaint() when resizing
When resizing windows in tile view the update is a bit
wonky when you have a video window on screen. The layout
code now repaints the entire homewindow when one of the
charts are resized.
2011-11-01 08:57:52 +00:00
Mark Liversedge
0d7080aa33 Fix memory leak in Video Window on Mac (QTKit)
Need to call QTMovie::deallocate before setMovie to
ensure it is free'd by the QTMoveView.
2011-11-01 08:47:39 +00:00
Mark Liversedge
74c425b086 Fixup QTKit Video Playback
Deallocate errors when scrolling through large numbers
of videos, but otherwise functional.

The redraw of the layouts needs to be looked at, since
there are some nasty artefacts when resizing the video
window that need to be fixed separately.
2011-10-31 20:56:48 +00:00
Mark Liversedge
bdc0f6996c Mac Video Playback via QTKit not VLC
Ghetto code with video selection and all the basic
building blocks in place. Playback is only via the
quicktime controls, paint issues abound and there
is a problem with deallocation of the movie object.

But the basic stuff is there, time to refine and iron
out all the little bugs.

Written whilst on hols in Gran Canaria :)
2011-10-30 22:35:23 +00:00
Mark Liversedge
e09780aa29 missing break statement in virtual power calculation. 2011-10-26 22:59:12 +01:00
Mark Liversedge
68bac4f654 Tweak Virtual Power
If cadence is zero when calculating power then we
should set power to zero. Speed will not be zero
when freewheeling and therefore the calculation
will overstate power output.

Secondly, the NullController (for testing) did
not call the realtimeController post process
function. It does now so we can test the virtual
power calculation.
2011-10-26 22:18:37 +01:00
Mark Liversedge
c6a208b13a Add virtual power for LeMond Revolution
The LeMond revolution trainer has been analysed in
some depth by Tom Anhalt and as a happy by-product
idenitfied the power/speed curve.

Since Darren Hague had already added the ability to
approximate power from Speed when training on a turbo
this patch extends that to include the LeMond device.

All the analysis Tom performed can be read over on
wattagetraining.com here:
http://wattagetraining.com/forum/viewtopic.php?t=335

Fixes #498.
2011-10-26 21:49:12 +01:00
Mark Liversedge
f7eb562192 use # not // for comments in src.pro 2011-10-26 16:09:27 +01:00
Mark Liversedge
1a8faf73fb Support Garmin USB2 ANT+ sticks on Mac OS X
This update completes support for USB2 sticks for ANT+ devices
in train view. The code now works on Linux and Mac as well as
Windows.

IOKit is now a required framework for builds on Mac OSX and
src.pro has been updated accordingly.

I have also added a tarball of the required version of libusb
in a new 'contrib' directory. Users may wish to use a later
version or download from an alternative source, but this
version is guaranteed to work.

Fixes #310
2011-10-26 16:00:33 +01:00
Mark Liversedge
2d0d779026 Support Garmin USB2 sticks on Linux
Fixup support for USB2 on Linux via libusb. The code
is pretty ghetto with a maze of pre-processor conditionals.
But it works.

Of special note:
* You MUST build with a very specific version of libusb, the
  stock libs in Ubuntu do not work. Might pull the code into
  the main repo, since its pretty darned tiny.

* On Linux access controls for the USB devices is controlled
  by udev, and requires a rule adding to ensure the devie can
  be read/written by users other than root. A udev rule file
  has been added to a 'linux' subdirectory in src.

Some of the timeouts and usb setup/reset code has been adjusted
to ensure the device is always in a consistent state. This appears
to be more important on Linux than Windows for some reason.
2011-10-26 02:29:10 +01:00
Mark Liversedge
72727ce15f Realtime Controls tweak
Make the buttons expand to fit space, so as you resize
the controls the buttons increase in size.

This is a temporary measure as the controls are going
to move to the toolbar later anyway.
2011-10-25 00:11:35 +01:00
Mark Liversedge
37858973f2 Initial 'proper' support for Video Playback
The code to select media and then start/stop/pause
playback during a workout has been implemented.

This requires libvlc to be installed at compile time
and will also require Videolan (and desired codecs)
installed at runtime.

Since the main headaches are likely to be related to
deployment rather than coding this update has been
pushed for deployment support to be enhanced and
tested before closing the feature request on the
bug tracker.
2011-10-24 22:25:14 +01:00
Mark Liversedge
f3f7f29a70 Further SEGV on Server list
Ugh. Another SEGV related to removal of the
race server list.
2011-10-24 18:52:26 +01:00
Mark Liversedge
c7e39d8824 TrainingPeaks does not have a space in it
References to TrainingPeaks should never have a
space between the words Training and Peaks.

Modified at the request of our friends over at TrainingPeaks.com.
2011-10-24 18:38:36 +01:00
Mark Liversedge
b5731d86f7 Fix SEGV in train view
Caused by removal of race server list.
2011-10-24 18:37:08 +01:00
Mark Liversedge
edbc125681 Improvements for Train View
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.
2011-10-24 18:09:59 +01:00
Mark Liversedge
c5a6131035 More Realtime colours
Ergfile plot matches and Distance is displayed
with 3 decimal places.
2011-10-22 22:08:34 +01:00
Mark Liversedge
4399fb09d5 Realtime controls honour colors
The realtime control background now matches the rest
of the realtime charts.

This is a temporary measure before adding view specific
controls on the toolbar (see feature request 492).
2011-10-22 19:39:04 +01:00
Mark Liversedge
baecd71eea Realtime honours color settings
Updated the realtime plots and dials to use the colour
settings from the ride plot. So if you prefer plots of
light colours on dark backgrounds you can do this now.

The use of colour on the telemetry values makes it easier
to distinguish which value related to power et al .. especially
when you're pushing out that last max power interval.
2011-10-22 16:53:51 +01:00
Mark Liversedge
e252922473 Add zooming on PfPv Plot
Now we adjust the axes for large values it is helpful
to be able to zoom into areas of the chart to look
at the 'bulk' of data (or perhaps even outliers).

This patch adds a zoomer;
* mouse select to choose zoom area
* right click to zoom back out
2011-10-22 12:56:26 +01:00
Mark Liversedge
4feab67875 Tweak Split Activity Wizard
After feedback, the wizard has been tweaked so that;

* The default minimum gap to find is 1 minute
* The default minimum segment size is 5 minutes
* It is now possible to uncheck gaps in recording

Also, on a Mac the wizard style is forced to ensure
that a cancel button is available since the Mac
assistant style did not (you needed to press ESC).
2011-10-22 12:29:55 +01:00
Mark Liversedge
87ca377970 PfPv plot adjust axis for track sprinters
Higher values for AEPF/CPV have been observed with
track sprinters. The fixed axis on the PfPv (QA)
charts truncate the display.

This patch adjusts the axes to suit the data and will
also ensure the zone shading and labels are extended
to the new maximums.

The PfPv code also contained a lot of tab characters
and the general style was quite dense, making it
difficult to read and understand. I have adjusted
to use a 4 space tab-stop and adjusted to match the
general style of the rest of GC.

Fixes #463.
2011-10-22 12:06:40 +01:00
Mark Liversedge
a93d409f0c Fixup RideNavigator on Linux
Linux build using the 4.8 qt rc uncovered a couple
of bugs in the new ride navigator code. This fixes
that, but needs to be tested in earlier versions,
e.g. 4.6, 4.7.
2011-10-21 19:39:15 +01:00
Mark Liversedge
73500243c3 RideNavigator as a Window
You can now place a ride navigator on the chart layouts, this allows
the user to configure many more columns and use the navigator to
browse and order the activity history in a log/journal format.

The default diary layout now has two tabs; one for the calendar and
another for the activity history.

There appears to be a few minor bugs related to column/chart resizing
that have been present for a while, but are more obvious now the navigator
is a chart in its own right. These will be resolved later.
2011-10-21 18:43:24 +01:00
Mark Liversedge
56348457f0 missed off previous commit. 2011-10-18 18:55:10 +01:00
Mark Liversedge
c32f60230e SportTracks File Support
Added support for.fitlog file format. The reader
was written by Mark Liversedge and the writer
was written by Damien Grauser.

There is no support for manual workout files (either
exporting or importing) this can be introduced at a
later date.

SportTracks does not export speed or distance if GPS
data is available. Speed and Distance are derived from
GPS and time. This is sub-optimal and may result in
differrent values between GC and ST.

I would recommend using a common file format to exchange
data between GC and ST (e.g. TCX) to avoid these issues
with their native file format.

Fixes #481.
2011-10-18 06:46:28 +01:00
Mark Liversedge
cf099bc8a2 Fixup reset layout
Moved to the view menu and initialised 'currentWindow'
to the analysis window on startup to avoid a SEGV if
you reset the layout without having ever switched views.
2011-10-17 20:10:29 +01:00
Mark Liversedge
ef3d831ebf Merge branch 'resetlayout' of git://github.com/glonnon/GoldenCheetah into release_3.0.0dev 2011-10-17 19:59:44 +01:00
Mark Liversedge
ca49be5fda Fix interval highlighter when no power
The interval highlighter on the ride plot
uses the same axis as power, but if no
power is present in the activity the axis
is hidden, and therefore so is the interval
highlighter.

This patch will set the interval highlighter
curve axis to one that is in use.
2011-10-17 19:50:31 +01:00
Greg Lonnon
eddae9521b added reset window layout to all the HomeWindows. 2011-10-16 19:22:42 -06:00
Mark Liversedge
22ff769bfa Tile Resizing Snaps to Grid
By making the grid 'relatively' small snap to grid feels
quite acceptable as a standard way of resizing, alleviating
the need to make it a user preference.

The old 'smooth' resizing was a pain to get things lined up
nicely and thus is deprecated in favour of this scheme.
2011-10-13 21:47:02 +01:00
Mark Liversedge
c426ecce28 File Export (part 2 of 2)
Added a function for Batch Export of current
activity history. The user can select files
to export, the target directory and format to
use.

This completes the updates to improve export
functionality.

Fixes #476.
2011-10-12 18:00:58 +01:00
Mark Liversedge
047c1dd140 File Export (part 1 of 2)
The export functions in mainwindow are getting quite
cumbersome with multiple menu options.

This patch creates a single menu option "Export.." which
allows the user to select a supported format and a filename.

To support this the ridefile reader code needed to be adjusted
to allow registered readers to declare capability to write and
use a consistent (virtual) method to do so.

By modifying the base class for ride file reader we now allow
new readers to register both read and write capability.
2011-10-12 14:19:14 +01:00
Mark Liversedge
b239c21d66 Update .gitignore
* ignore qrc_RideWindow.cpp (compiled from RideWindow.qrc)
* ignore VLC log files (vlc-log.txt)
2011-10-12 14:17:50 +01:00
Mark Liversedge
4510404145 Build Config Fixups
We ask for phonon in src.pro, but it is NOT required, this
is because the video playback was rewritten to use the vlc
libraries.

Additionally, the build.pro now asks for ordered builds to
ensure the qwt libs are built before src is started. This is
useful when performing builds with multipe jobs (make -j n).
2011-10-12 09:46:40 +01:00
Mark Liversedge
12dfc5ccc5 Summary fixups
* Show time in zone as a percent
* Annotate heading to show units

Fixes #473.
Fixes #474.
2011-10-11 21:52:19 +01:00
Mark Liversedge
51bf53ae92 Better device type handling for WKO+ files
We now recognise more 'device types' in the WKO+
parser. This patch sets the devicetype for these
instead of just defaulting to 'WKO'.

* 0x00 - Powertap (for v1/v7 WKO+ files)
* 0x0E - Ergomo
* 0x1A - SRM (is actually a PC 6)

Additionally, the device type is set to WKO (xx)
when we get a device type we do not recognise to
make it easier for users to report.
2011-10-11 13:14:59 +01:00
Mark Liversedge
d075a184e7 Fix WKO+ iBike import
Fixed the iBike import. The recent commit removing the
different pausetime length for iBike had a logic error.

The iBike files are no different to any other device
and by treating gaps in recording the same as all other
devices we can now successfully parse all iBike WKO+
files.

There are still 3 files amongst the 7,000 WKO+ files I
have received that fail to parse successfully.

I will look to validate these files with WKO+ since they
may be corrupted.
2011-10-11 11:55:18 +01:00
Mark Liversedge
8f42d95ed3 WKO+ iBike fixup was wrong
reverted after testing against more files. There is something
decidedly odd about WKO+ files from iBike computers. The scheme
used to mark pauses in recording is different, but cannot work
out why.
2011-10-11 10:29:39 +01:00
Mark Liversedge
3fb32c8a79 missed off previous commit 2011-10-11 09:46:14 +01:00
Mark Liversedge
0a14afcab3 WKO+ file reader further fixups
Two minor modifications;

* iBike files now parsed correctly (they
  where handled as a special case that was
  not warranted)

* Some rudimentary bounds checking whilst
  parsing the raw data to reduce SEGV crashes
  when parsing fails / is incorrect.
2011-10-11 09:43:12 +01:00
Mark Liversedge
a9b07f5a43 Retain intervals when splitting rides
Will keep all intervals that start within a split
but will truncate for intervals that are longer
than the split so we keep any 'Lap markers'.
2011-10-11 09:24:44 +01:00
Mark Liversedge
c90f68ba46 Improved Split Activity Wizard
Updates to the version 3 split activity wizard to bring it
back in line with the original v2 functionality;

* Splits at markers, rather than extracting intervals
* Shows a small plot to show the split visually
* Will automatically mark gaps rather than work between gaps

This will not be backported to v2 since the functionality
is working, albeit difficult to understand for this casual user.
2011-10-10 20:06:17 +01:00
Mark Liversedge
8c4c9746dd Check Date/Time unique
Issue a warning if the user changes the ride date/time
to the same as an existing ride.

They can still go ahead, but when saving it will overwrite
the existing file.

Fixing the save routines to check would require significant
refactoring and can be fixed at a later date.

Fixes #466.
2011-10-06 19:50:37 +01:00
Mark Liversedge
11fa205b79 Use old split ride for now
Split ride is a bit of a radical change from the
original; more thought is needed to ensure the
original functionality is retained whilst making
the UI and workflow intuitive.

This patch reverts MainWindow back to using the
old SplitRideDialog.
2011-10-06 19:18:55 +01:00
Mark Liversedge
45c13a1602 Fix Split Ride file loss bug
In some instances split ride will refuse to overwrite existing
ride files (where they have the same date/time). This patch
increments the start time by one (or more) seconds to ensure
there is no conflict.

Fixes #165.
2011-10-06 19:08:34 +01:00
Mark Liversedge
dd0c0ac0f1 Split Activity Wizard
A new wizard to walk the user through the split
'ride' feature. It allows the user to control
the removal of the original and the minimum
gap size and segment size (when searching for
points at which to split the ride).

It also allows the user to select segments and
intervals to split and displays the actions that
will be performed to allow the user to confirm
processing.

if a new activity conflicts with an existing
activity the start time is incremented (by a
second or more) to avoid data loss.

Aside from removing the current ride it is now
impossible to overwrite or lose existing data.
2011-10-06 13:56:05 +01:00
Mark Liversedge
7c36a58db1 Fix Train mode SEGV in Course/Ergo Mode
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.
2011-10-02 11:00:20 +01:00
Mark Liversedge
ee9cf5aeac Pushed wrong version in previous commit
Nothing major, just the window sizes were a bit wonky.
2011-09-30 21:24:44 +01:00
Mark Liversedge
5722a60955 Fix default train layout
The default train-layout.xml adds a controls widget
that references the streetview window. This patch
modifies it to reference the new window id.

In hindsight, we should not have renumbered the chart
ids when introducing the streetview patch, but its out
there now and at least this fixes it for new users.
2011-09-30 21:20:13 +01:00
Mark Liversedge
c2735c24b9 Notes in WKO file format v1
For some reason the code for setting notes
in v1 WKO files was commented out, this patch
reinstates notes for this version, but will
not get Workout Code since it is not available
in this file format.

Also removed a duplicate switch statement where
sport was being set twice for some reason.
2011-09-27 21:18:16 +01:00
Mark Liversedge
3a6b5254f6 Minor fixups for RideSummaryWindow
Checking for blank values for metricColumns, and
intialising to default if no columns are selected.

Attempt to resolve bug report 445.
2011-09-27 12:47:16 +01:00
Mark Liversedge
26ffb74de8 WKO+ File sanity checks and fix v12 support
Fixed parsing of v12 files which contain ride graph
horizontal gridlines. This brings the code back into
line with all other versions and suggests the parsing
of v12 files is now robust.

Also added some sanity checks to avoid data integrity
problems;
* Magic number is correct 'WKO^Z'
* File isn't too small
* Start time is zero, will adjust if not

All files from a collection of 2,500 have been parsed
successfully and/or handled gracefully.

There is still a chance the parser will crash with a
malformed file or a protocol we haven't seen before,
but these checks protect other parts of the code.

Code comments have been adjusted to reflect the current
state of the code, which is much better after the
recent refactoring.
2011-09-27 12:09:40 +01:00
Mark Liversedge
49a6490283 Formally support v7 WKO+ Files
This patch removes the invariance for the graph tab and
uses the same protocol as v1 reliably. This has been
tested against 600 files without error.

All popular formats of the WKO format are now supported,
the warnings for v7 have therefore been removed.
2011-09-26 21:42:34 +01:00
Mark Liversedge
86e08e330e WKO+ Improved Support for v7 files
Having just recovered almost 900 v7 files I have
improved the code to support this file format. I
now have 4 files quarantined (that cannot be
parsed successfully) from a corpus of over
2,500 WKO+ files.
2011-09-26 20:42:44 +01:00
Mark Liversedge
287c5adf3f Finalise full support for earlt WKO+ file formats
With over 500 files now processed successfully for
early versions of WKO+ (Cycling Peaks) we can now
support v1 and v12 of the WKO file format.

This means we now offer full support for;
* CP 1.0 and 1.1
* WKO+ 2.2 and 3.0

The warning message has been removed and problems
related to parsing the 'graph' tab settings in v1
files is now fixed.

We need to see more v7 files (quite rate) before we
can move that version out of beta support. Looking at
the code it is unlikely that the v7 support is very
robust, but until we have more files to test this is
as good as it gets.
2011-09-26 17:40:29 +01:00
Mark Liversedge
b8e76855e1 Wko+ bitsize change lost
Re-instate Altitude bitsize for earlier version that was
undone in previous commit. This was a fixup posted in a
recent push that I reversed, but further testing showed
that the original fix was in fact valid.
2011-09-26 12:02:56 +01:00
Mark Liversedge
a26caac59e Fix recIntSecs in Wko reader
Fix bug 1s time increment bug introduced in recent
commit and replaced with a safety net check for
daft values for recIntSecs which examines the ride
file looking for the most frequent recording gap
and uses that.
2011-09-26 11:17:48 +01:00
Mark Liversedge
c604a6b2a2 Merge branch 'streetmap2' of https://github.com/glonnon/GoldenCheetah into release_3.0.0dev 2011-09-25 19:35:47 +01:00
Mark Liversedge
eca1066ed6 Improved WKO+ file support
Refactored to improve support for files created
in earlier versions of WKO/CyclingPeaks. The
changes are largely focused on parsing charts
and caches that we don't really use, but need
to be waded through to land on the data points.

This has been tested on over 1,500 WKO+ files
and found to be ok for those. Further regression
testing would be beneficial.

Better support for;
* Running / Swimming files (different chart setup)
* Where users have customised the default charts
* Earlier versions of CP/WKO+ (esp v1 and v12 format from CP v1.1/1.2)
* Latest versions (v3.0)

Specifically;
* Better support for WKO file formats v1 and v12
* Fix parsing of distribution caches and config
* Improved parsing of MeanMax caches and config
* Support for Suunto devices added
* Support for files with no time data

Fixes #457.
2011-09-25 19:27:36 +01:00
Mark Liversedge
aa9f653101 Refactor WkoRideFile reader
No functional change, but fixed up some of the coding nits
in the WKO+ ride file reader.

References to static variables removed (for thread safety)
References to global WKO_HOME variable removed (multi athlete)
WkoParser class introduced (for further code refactoring)

Updates are pending for more robust parsing when users have
customised charts or the files contain running/pace charts
since these tend to cause a crash at present.
2011-09-24 15:09:55 +01:00
Greg Lonnon
d5769b480d Added Map and StreetView charts to the TrainTool.
Following changes
* added google Map and Streetview charts.
* changed the telemetryUpdate to use a const reference instead of a value.
* RealtimeData is const correct, or more const correct than it was...
* added a new resource files to support the new charts.
* changed the NullController to return a constant speed to help with development.
2011-09-20 20:29:31 -06:00
Greg Lonnon
b7fdac990b workoutwizard: fixed the LAP feature in mrc and erg files
Signed-off-by: Greg Lonnon <greg.lonnon@gmail.com>
2011-09-19 07:30:42 -06:00
Greg Lonnon
2b688f5a15 realtime mode: during a workout, if the +/- keys are hit during a workout,
then the rider is able to control the controlller manually.

When the next Lap marker is hit, the workout continues.

Signed-off-by: Greg Lonnon <greg.lonnon@gmail.com>
2011-09-19 07:30:42 -06:00
Mark Liversedge
754e21c173 Smart Layout in Tile View
The tile view will now layout the charts in a more efficient
manner. It still attempts to run from top to bottom and then
left to right when laying out charts, but now, if there is
any space and the chart will fit in it, it will be moved.

This means you can layout the view with smaller charts surrounding
or to the left of right of a larger one. This is particularly
useful when looking at say a large summary window with a smaller
map and a route profile etc.

It can be a little disconcerting however, since charts will
suddenly 'disappear' when you resize them -- of course they
don't disappear they just move to a space that can accomodate
them.

We could make 'smart' layouts optional if users get thrown by it.

Lastly, fixed a bug when resizing charts -- if they move position
when resizing then the delta (size change) is miscalculated. This
is avoided now by ending any resize action when a chart moves.

Fixes #453.
2011-09-17 16:01:53 +01:00
Mark Liversedge
d7fa80b7b0 Bubble popup support for Vertical Orientation
Adds support for bubble popup to appear in
vertical orientation with tick at bottom
or top.

Getting ready for activity bar.
2011-09-11 00:55:56 +01:00
Mark Liversedge
d144599ef8 Activity Popup Bubble
A popup bubble when hovering over the activity
history or an entry on the calendar.

It is a pre-cursor for the activity bar for
selecting rides and is available for any
widget to call (it is a member of mainwindow).

To support the data series indicator icons a
new metadata field 'Data' has been added to
store a string to represent the data series
that are present.

In addition, the Sport code is used to decide
if a bike/run/swim icon should be shown instead
of a string (but needs translation support when
we get round to that).

Lastly, it has been coded for horizontal alignment
but will need to be updated for the activity bar
to support vertical alignment.

This is an experimental feature and will develop
over time, specifically;

* you cannot define which metrics are show in the
  bubble -- they are hardcoded at present

* the coloring is hardcoded, as is the font size

* Only the activity list and diary use it.
2011-09-10 22:36:13 +01:00
Mark Liversedge
4baf379ee1 Fix possible SEGV in RideSummaryWindow
Added logic to trap for NULL RideMetricPtr. Shouldn't
occur but trap all the same.
2011-09-10 14:18:34 +01:00
Mark Liversedge
0feae5f49b Fix RideSummaryWindow crash
Fixups for QStringList introduced a new bug
by referencing Time In Zones for HR zones
9 and 10, when in fact they do not go any
higher that 8.

They also were not computed because the
worklist used was updated to include any
HR metrics when the ride is dirty (e.g.
when selecting intervals on ride plot or
updating the metrics within metadata).
2011-09-09 19:10:23 +01:00
Mark Liversedge
bd6693efde Revert "SplitRide overwrites existing file"
This reverts commit c3cfccdfb8.

Small risk of data loss, reverting to previous behaviour.
2011-09-07 06:59:53 +01:00
Mark Liversedge
166255b3c3 Code hooks for activity tooltip bubble
No functional enhancements, just adds the code
hooks for triggering a bubble 'popover' when
hovering on the ride list or calendar view.

Will be connected to the popup balloon once
the code for that is complete.
2011-09-05 18:02:48 +01:00
Mark Liversedge
0582538626 Convert RideSummary to use QStringList
Original code had a bunch of char[] and we have
experienced problems with libc on Windows with
char array allocation in the past.

Since we have QStringList (which is threadsafe)
available to use then we should!

This may correct bug report 445. Will wait for
feedback before closing it.
2011-09-05 16:36:41 +01:00
Mark Liversedge
940d4340e8 Fix Summary SEGV no summary metrics and dirty file
If you clear all summary metrics and update the activity
ride summary will crash looking up a metric with name
"" which does not exist.

Fixes #449.
2011-09-05 16:03:00 +01:00
Mark Liversedge
9d45c100e4 Fix setByDistance bug in allplot
setByDistance was not being honored in allplot upon
startup (setting properties). Similar bug to those
affecting grid, stack etc.
2011-09-05 15:37:31 +01:00
Mark Liversedge
a119c6e55d Reinstate Colors on Calendar
The background color on the calendar now reflects
the color configration.

The color for each ride is precomputed and stored
in the metricDB (so we don't have to scan the ride
everytime we need to determine its color).

As a happy by-product the ride navigator no longer
scans the text to determine the row color and is an
order of magnitude faster when repainting (although
most users are unlikely to notice in practice).

Fixes #448.
2011-09-05 10:54:40 +01:00
Mark Liversedge
ffb556d0f0 Fix CP chart SEGV when season deleted
If the season selected is deleted then upon restart
the CP plot will crash (iSeason <0).

Fixes #446.
2011-09-04 15:43:15 +01:00
Mark Liversedge
c3211c1d9f Allow show any widget in GcToolBar. 2011-09-04 14:23:44 +01:00
Mark Liversedge
adbad84d42 WorkoutPlot reduce whitespace margins. 2011-09-04 14:23:22 +01:00
Mark Liversedge
9cffed3d16 More compact controls
The controls in the sidebar are inconsistent; the interval
selector has no spacing or border for a clean look.

This patch updates LTMTool and TrainTool to be more
efficient with the limited space.

A more extensive update is still required to unify all the
chart controls look and feel and get rid of the clunky
layouts with ugly wide buttons.
2011-09-04 01:42:36 +01:00
Mark Liversedge
f63573645f Pretty Toolbar
Fixups for a GC toolbar and the first pass at trying
to make the look and feel more professional. Whilst the
overall usefulness of the toolbar is moot, the grpahics
show the way for greater attention to detail.

Specifically;
* The sidebar should adopt a similar look/feel
* Chart title bars should adopt a similar look/feel
* Sidebar panes should be unified with the same look
* The style selector needs to move - it is cluttering
  up the general clean look.

The code is a little ghetto in places, but will fix up
as the cosmetics are sorted.
2011-09-04 00:19:26 +01:00
Mark Liversedge
9e0574ac5c Activity Intervals rename
The Best Intervals and Laps should really
be called Activity Intervals.
2011-09-03 17:15:32 +01:00
Mark Liversedge
e677409590 Extended Help menu
To add User Guide link to the wiki, and another
to log a bug.
2011-09-03 17:10:45 +01:00
Mark Liversedge
4857f49a19 MainWindow help in local browser
The help options links to the wiki page but opens a
QT webkit window. This is so rudimentary it is almost
of no value.

This patch instead opens the wiki in a local browser
session. Thus it will use Firefox, Chrome, IE etc.
2011-09-03 16:47:00 +01:00
Mark Liversedge
926bd44e3d AllPlot select left-click in stacked view
Missed off in the patch to swap zoom and select
mouse actions in LTM / AllPlot.
2011-09-03 12:17:09 +01:00
Mark Liversedge
d1e0702b94 Swap Zoom and Select on LTM/Ride Plot
This is a perennial issue for new users. The default
action when click dragging on a chart is to Zoom -- this
was probably right when we had no span sliders or stack
view (and no facility for marking intervals either).

But now, most users will expect click and drag on a metric
chart or ride plot to mark an interval or date range.

We get regular feature requests and bug reports related to
this -- basically the mouse actions are not intuitive.

Where selection is not meaningful (e.g. histogram) then
left click will zoom. This should be reasonably intuitive
to most users.

Fixes #398.
2011-09-03 11:13:45 +01:00
Mark Liversedge
a1befad28d User definable value list for Metadata fields
The user can now define a value list for the metadata
fields. This means for codes like 'Sport' they can define
values like 'Bike', 'Run', 'Swim'.

The input box uses a popup Qcompleter and will only warn
if the entry is not one of the pre-defined values (i.e.
it is not a MANDATORY list).

Fixes #444.
2011-09-03 10:59:06 +01:00
Mark Liversedge
edc495ca21 Mainwindow Menu Alt-A Alt-A clash
The Alt-key combination for the Athlete and Activity
menus were both set to ALt-A. This patch changes them
to Alt-A for Athlete and Alt-C for aCtivity.
2011-09-02 20:51:44 +01:00
Mark Liversedge
2a9c385411 SplitRide overwrites existing file
Fixes #165.
2011-09-02 18:19:23 +01:00
Mark Liversedge
5e51093a4f Start to use consistent terminology
* Rides are now Activities
* Cyclists are now Athletes

This is just a first pass, no doubt many more
lurk within the codebase. Will raise a defect
to cover the remainder.
2011-09-01 21:48:51 +01:00
Mark Liversedge
e69cd552a2 Choose Athlete not Cyclist
The Choose Cyclist Dialog now has a title bar
'Choose an Athlete' not 'Choose a Cyclist'. Missed
in previous commit.
2011-09-01 21:34:40 +01:00
Mark Liversedge
488bfca665 Be consistent 'Athlete' not 'Cyclist'
Although the codebase refers to 'cyclist' in a number
of different ways (classes, setting names, class members)
we should always use 'Athlete' when prompting the user.
2011-09-01 21:07:58 +01:00
Mark Liversedge
3f4d3c8a16 Workout Controls for Train View
Fixes broken controls on train view, so we can now start stop
with the sidebar hidden and also adjust the settings for the
realtime dials on the layout.

Will need to think about saving the properties of the controls
to use last used settings.

Fixes #439.
2011-09-01 20:59:03 +01:00
Mark Liversedge
6e0fa51bea Maximum Max replace in RideSummaryWindow 2011-09-01 19:50:22 +01:00
Damien
5f6033ee31 Add a Maximums column in the ride summary
Add maximums to the ride summary, which also required adding
max_speed and max_cadence to the basic ride metrics.

Fixes #440.
2011-09-01 19:08:53 +01:00
Mark Liversedge
1403110b1d metadata icon, missed off previous commit. 2011-08-31 21:51:20 +01:00
Mark Liversedge
1e3dd88a28 Add Activity Details to Sidebar
The metadata information is now shown within
the sidebar.

We need to implement a mechanism for the users
to configure the sidebar widgets etc pretty soon
now, since this update is useful, but the sidebar
is getting crowded out.

Minor changes to ridemetadata to allow a 'single
column' view, but mostly all the widgets were
already instantiated so there is no real cost
to this update.
2011-08-31 21:11:49 +01:00
Mark Liversedge
42f8413b8b Hide 3d plot when bad data
If the model plot cannot be refreshed when data
is invalid, the plot needs to be hidden since the
qwtplot3d api does not redraw empty plots and does
not have any methods for clearing the canvas.

This workaround just hides the plot and shows a label
when the plot is invalidated.

Fixes #429.
2011-08-30 22:01:43 +01:00
Mark Liversedge
1bf94cf799 Reinstate View and add Window menu
View menu reinstated to allow users to show
or hide the toolbar and sidebar as well as
select layout views; home, analysis et al.

Also added a window menu option to switch
between the current open windows. This is
particularly useful if the other windows
are on another virtual screen.

Fixes #367.
Fixes #29.
2011-08-29 19:53:35 +01:00
Mark Liversedge
fe4d1479c7 Add Zoom to Interval on Maps
Can now zoom to a specific interval on the map views;
* Google Map
* Bing Map
2011-08-29 13:01:53 +01:00
Mark Liversedge
cf2888f85e Zoom Interval in Aerolab
Re-instated zoom interval. It 'unzooms' when
the interval selection changes, which is no change
on version 2.1, but feels a bit odd.
2011-08-29 11:27:37 +01:00
Mark Liversedge
326c423cb7 Re-instate zoom interval in MainWindow/AllPlot
Added a new signal to MainWindow to trigger
a zoom to interval. This signal has been trapped
in AllPlot (Ride Plot), but will also need to
be supported in;

* Ride Editor - highlight/zoom to interval data
* Aerolab     - Same as ride plot
* Maps        - Zoom in to section
2011-08-29 11:08:06 +01:00
Jamie Kimberley
39946aa21e V3-force use of no elide and scrollbars in tabbed view
depending on the style used on a given system the text in the tab bar for
selection of different charts (summary, ride plot...) may be elided on
screens with small resoulution.   This overrides the use of scrollbars
which is was set explicitly in the v2.x code. this patch forces
the use of non-elided text in the the tabs so that scroll bars appear
regardless of the defaults for a selected style.

Fixes #433.
2011-08-28 23:07:55 +01:00
Mark Liversedge
b0f016c0e9 Fix Torque/Speed binning in Histogram Window 2011-08-28 15:36:54 +01:00
Mark Liversedge
07b661001d Fix PowerHist coloring bug. 2011-08-28 12:57:46 +01:00
Mark Liversedge
14b9e7f574 Prettify Histogram by Zone
When displaying histogram data in zones for
HR and Power remove the pen to make the bars
'prettier' like they are in the metric charts.
2011-08-28 10:51:13 +01:00
Mark Liversedge
8c70f99561 Stacked View honours Chart Controls
Amazingly, the stack plot does not honour the chart
controls. If you select ony a single data series it
will still display all series.

There was a //XXX 'todo' placeholder in the code for
this which has now been completed.
2011-08-28 10:08:37 +01:00
Mark Liversedge
4d9399fa2f Fix AllPlot smoothing property
Fixes AllPlot to use the chart properties for smoothing
rather than overriding with application settings (old
way of saving state in v2 and lower).
2011-08-28 00:38:35 +01:00
Mark Liversedge
db48f3732b Fix FitRideFile for header change
The header size in FitRideFile has increased from
12 to 14 bytes, but the new field is at the end of
the header, not in the middle.

Additionally, there is a new global record (79) which
we now silently ignore.
2011-08-27 23:50:32 +01:00
Mark Liversedge
660eacc595 Merge branch 'pc7' of github.com:rclasen/GoldenCheetah into release_3.0.0dev 2011-08-27 22:39:29 +01:00
Mark Liversedge
3bb397bbf2 More configurable Ride Plot
Enhanced ride plot;

* Curves can be shaded (this is particularly
  useful when only selecting a single curve)

* Span slider can be hidden (this is useful
  when you want a 'smaller' plot, e.g for a
  single curve, but multiple plots on tile view)

* Curve selection is set/unset from properties.

There is a repeated 'meme' with regards the ride
plot checkboxes for data series (hr, cad etc). They
are to choose the series to display and NOT to show
which series are available.

If you choose to display HR and HR is not present in
the ride file it is still VALID to set the checkbox,
but of course nothing will be plotted. In this way, you
can define a chart for a specific data series and it
will display whatever is VALID as you select different
rides.
2011-08-27 22:27:20 +01:00
Rainer Clasen
2215dca141 use new srmio error reporting
hopefully we'll get more helpfull error reports due to more detailed and
unique error messages.
2011-08-27 23:05:24 +02:00
Rainer Clasen
d6200ec2d9 Download: provide end time for ride blocks
for better guessing in preview ,)
2011-08-27 23:05:24 +02:00
Mark Liversedge
83431f8904 Distance 2 decimal places
Aligning to recent patch to increase decimal
places when selecting an interval, this now
sets the decimal places to 2 for distance when
displaying the metric (e.g. summary, interval
summary)
2011-08-27 18:20:39 +01:00
Mark Liversedge
df987b8d96 Fix AllPlot delete ride crash.
Fixes #431.
2011-08-27 17:19:54 +01:00
Mark Liversedge
c364ad3d2b PowerHist HR x-axis
Needed to take into account that the HR of zero
may be present (no signal) and only set the x-axis
to zero if user has selected with zero.
2011-08-27 16:46:02 +01:00
Mark Liversedge
a86f3c9fc4 Fix HR Histogram x-axis
When plotting HR on a histogram we set the x-axis
to only plot within the recorded heart rate range,
but the recent patch to fix up LogY settings meant
that values are always > 0 (1e-9), resulting in the
plots rarely being adjusted correctly. This patch
fixes that.
2011-08-27 11:33:32 +01:00
Mark Liversedge
7cd200f593 Use CascadingResizeSections in RideNavigator
Makes resizing columns smoother and more intuitive.
2011-08-27 10:10:14 +01:00
Mark Liversedge
1c1231616a Fix ErgFilPlot axis setting
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.
2011-08-27 09:48:34 +01:00
Mark Liversedge
17aa6cbd21 Support FR310xt latest firmware
Fit file format can now have a 12 and 14 byte header. This
patch adds support for 14 byte headers since this is required
by the latest 310xt firmware.

Fixes #430.
2011-08-27 09:05:04 +01:00
Mark Liversedge
a0d6689fb0 Plot Cosmetics Update
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
2011-08-26 19:22:04 +01:00
Mark Liversedge
841f3ba128 Fix set CdA from slider
Merge error removed the update of the cda lineedit
from the slider. This patch puts it back.
2011-08-25 20:07:32 +01:00
Mark Liversedge
be21f65d16 Increment MetricDB version for PeakPwrHr update. 2011-08-24 06:43:29 +01:00
Damien
34820aac36 Correct bug in the peakPowerHr formula 2011-08-24 06:41:39 +01:00
Mark Liversedge
a7121bc726 Eradicate QGraphicsDropShadowEffect from HomeWindow
Left in by mistake and is to blame for the
QTabBat redraw issues and add chart crash.
2011-08-23 22:40:51 +01:00
Damien
e51ca50720 Aerolab : Change LCD display to LineEdit
Also fixes v3 crash when changing CdA.

Fixes #423.
2011-08-23 22:40:06 +01:00
Mark Liversedge
8684cc4029 Fix Style selection change resize bug
The previous commit hide/show of QTabWidget caused
an errant incremental resize of the tab widget. Not
at all sure why, but this fixes it.

We may want to move to a QTabBar and manage the stack
of widgets separately as QTabWidget seems to be displaying
some weird behaviours.
2011-08-23 22:13:25 +01:00
Mark Liversedge
a4340d1197 Avoid QTabWidget setUpdatesEnabled bug
For some strange reason, if you startup in tiled
view and switch to tabbed view then back to tiled
view QTabWidget didn't honour setUpdateEnabled
for the QTabBar.

There is a related QT BUG number 9010 that seems
related to this but was closed without being fixes.

We hide/show the QTabWidget in HomeWindow during
a style change and it seems to avoid the screen
flicker issue.

Weirdly, if you startup in Tabbed view the problem
does not occur. It is possibly caused by having a
QTabWidget with no tabs before calling show().

Either way this patch gets 'around' the issue.
2011-08-23 20:21:21 +01:00
Mark Liversedge
c668fdd7f6 Fix HR Zone summary bug
When you do not have a CP/Zones setup for power
the ride summary does not show the HR zone summary.

Fixes #427.
2011-08-23 11:35:54 +01:00
Tom Weichmann
8ee8144674 New ints show mph and mi + extra digit for dist.
Fixes #424.
2011-08-23 09:56:47 +01:00
Mark Liversedge
b77f4385be HomeWindow block updates on rideselected
By blocking updates when a ride is selected through
to all the charts being updated we optimise the display
and reduce 'flicker'.
2011-08-22 22:04:59 +01:00
Mark Liversedge
14b26bc11c Change style turn updates off
When changing from tab to tile view the updates
are processed during the transition. This is ugly
and unneccessary.

This patch turns off updates during the transition
and then refreshes at the end. As a result it is
faster and you don't see nasty transitions to the tab
bar.
2011-08-22 21:54:30 +01:00
Mark Liversedge
7c8e19ba46 Remove Ugly Frame in 3d Plot
With v3 we have removed the sunken frames on
all the plots to make for a cleaner 'flat' feel
to the charts. The 3d plot has now been adjusted
to be in line with the rest of the plots.
2011-08-22 21:47:44 +01:00
Mark Liversedge
bfed830718 Add qwtplot3d instructions in INSTALL-LINUX 2011-08-22 21:27:49 +01:00
Damien
afa80eb9bd Modify Aerolab to add interval highlight and zoom + auto offset
[cherry picked commit 0c7abe from master into release_3.0.0dev]

Needs zoom to interval reinstated, which was lost in the v3 refactor.
2011-08-21 22:42:10 +01:00
Mark Liversedge
9e6d5b10f7 Fix Macro device data crash
If you attempt to download from a Macro device
and use wrong device or initial read fails then
it crashes, this patch fixes that.

It does not fix more general data errors but should
at least mean incorrect user selections do not result
in GC crashing.

Fixes #366.
2011-08-21 21:14:03 +01:00
Mark Liversedge
b6cf7acfda Check Duplicates when importing rides
When importing a ridefile we have never checked that the
same ride (date/time) does not already exist but in a
different ridefile format.

For example, importing a TCX file when a .RAW file already
exists for the same date/time causes conflicts with the
.cpx and .notes file (it is not possible to distinguish
which ridefile the notes/cpx file belong to).

Fixes #389.
2011-08-21 14:43:13 +01:00
Mark Liversedge
b7ab8753de Missed off last commit. 2011-08-21 14:42:35 +01:00
Mark Liversedge
dde08ceb38 Remove unneccessary methods from MainWindow
A couple of members in mainwindow should have been
removed a while back (chartFoundry trying to fix
add chart crash) and getSplitter (hack for resizing
the sidebar).

This patch removes them. No functional change.
2011-08-21 11:35:20 +01:00
Mark Liversedge
2b73dc2cf7 Reinstate CP/AWC CP curve parameters on CP plot 2011-08-20 17:24:06 +01:00
Mark Liversedge
7fb7cac6c4 Fix exit Warning dialogs
The warning dialog for unsaved files does
not appear on v3. This patch fixes that.

Fixes #417.
2011-08-20 16:26:08 +01:00
Mark Liversedge
c7d918bc02 Honour Show grid property
AllPlotWindow sometimes resets/ignore changes
to show grid. This patch fixes this.
2011-08-20 12:16:48 +01:00
Mark Liversedge
ed5dff2804 Fix AllPlot Smoothing
The AllPlot smoothing algorithm is coded to smooth
to a sample rate that is /higher/ than the sample
rate within the ride.

As a result, when a shorter smoothing rate (e.g. 1s)
is a applied to a ride with a greater sample rate (e.g. 5s)
the algorithm breaks down.

This patch ensures that smoothing is only performed when the
smoothing rate is greater than the ride sample rate.

Fixes #416.
2011-08-20 11:27:27 +01:00
Mark Liversedge
0cb5008d8e Fix title edit when no charts on HomeWindow
Fixes #409.
2011-08-19 17:57:43 +01:00
Mark Liversedge
0b00ee47aa Diary Window now uses HomeWindow Layouts
Now uses a homewindow 'layout' for the Diary view.
This means you can drag and drop other charts onto
the diary view and resize the calendar etc.

Planning functions will belong here eventually but
this patch is just to tidy up the UI a little to
make all the views configurable.
2011-08-18 21:34:56 +01:00
Mark Liversedge
dcf78eaf3a Add VAM to CP curve
Very basic start, this will now let you plot
VAM on the CP curve. VAM is a measure of climbing
speed and for comparative purposes should be
normalised to the slope climbed.

In this first pass of implementation the VAM metric
is not normalised in any way. It merely represents
the climbing rate, in meters per hour, that was
sustained over each time interval from 5mins to the
ride duration.

If the ride is undulating then only ascension is
included, any time on the flat or descending is
included but meters climbed will be zero. This is
akin to the way we handle power where we include time
when freewheeling.

More sophistication is needed, especially normalising
the value to a common gradient (e.g. 10%). But this
will prove challenging when VAM is comprised of
undulating elements (i.e. gradient is cumulatively
zero, but could contain segments with steep parts).

It may be more appropriate to only measure VAM for
sustained climbing i.e. ignore ride sections when
descending or on the flat.

More thought needed.

Fixes #414.
2011-08-18 19:15:20 +01:00
Mark Liversedge
9a523ee07c Remove drop shadows
They're dog slow and looking through the QT bug
tracker no longer developed or supported on normal
QT widgets without QT Quick.

They also break drag and drop on Win7 64bit.

Fixes #324.
2011-08-10 18:48:08 +01:00
Mark Liversedge
7fba789826 Allow user to rename chart
Control settings now have a text edit for renaming a chart
alongside all the other control settings. It might be more
intuitive to allow the user to click on the title to
rename it, that is for the future.

Fixes #397.
2011-08-10 16:28:54 +01:00
Mark Liversedge
bbc98a55bd Drag and Drop straight onto Layout
This patch removes the dialog box that pops up
when you drag a chart onto a layout and sets the
title of the chart to a default value (which is
the chart name).

This fixes the drag/drop crash on Windows 7.

However, when dragging and dropping on a 64bit
Windows 7 there is still a crash, this appears
to be in a different part of the code and will
require further investigation.

Also, since the title is now defaulted it is
important that the user has the ability to
rename charts once added. This is already
registed as bug no. 397.
2011-08-10 15:34:50 +01:00
Mark Liversedge
4c4f789d6d Guess ride date time for Poweragent CSV files
File name is in the format "name yyyy-mm-dd hh-mm-ss.csv".

Fixes #281.
2011-08-07 22:43:23 +01:00
Mark Liversedge
1dae26e580 Make tab view the default in v3
New users will have a tabbed view by default, this is
to reduce the complexity for new users.
2011-08-07 21:15:49 +01:00
Mark Liversedge
cbe3c3948c Critical Power Window delete current ride crash
The CP window tries to draw the current ride, even if it
has just been deleted (i.e. on delete event it tried to
calculate()) this fixes that.

Other widgets are fine, this is a consequence of trying to
redraw the aggregated curve and current curve when being
notified the ride has been deleted.
2011-08-07 19:25:57 +01:00
Mark Liversedge
20139f735b Fix delete ride SEGV
Bad form to delete an item and then pass a reference to it.. when
mainwindow removes the current ride it passed a pointer to the
rideitem just deleted, rather than emitting the signal before it is
deleted.

A distinction is made in mainwindow to emit the signal AFTER the
ride has been removed from disk (so metric/caches can clean up) and
removing it from memory (so charts can decide what to do).
2011-08-07 17:20:51 +01:00
Mark Liversedge
0941f8011d Histogram chart refreshes when ride added/deleted
Part of a number of fixes for bug 401. This ensures
the histogram chart is updated when a ride is added or
deleted when showing aggregated data (not a single
ride). Will set a 'stale' flag if not visible and then
refresh the data the next time it becomes visible.
2011-08-07 16:49:24 +01:00
Mark Liversedge
074128b242 Metric chart refreshes when ride added/deleted
Part of a number of fixes for bug 401. This ensures
the metric chart is updated when a ride is added or
deleted.
2011-08-07 14:39:11 +01:00
Mark Liversedge
f695bb1f93 Fix Metric Chart Fencepost Bug
The patch to support stacked charts inadvertently
broke the other chart types by adjusting 'count'
but at a different level of scope. This caused the
other styles to miss the last nth value. So, if
there is only 1 value in the date range you would
not see any data (for example).

The LTMPlot code is now getting a bit hairy, it is
almost an application in itself. Consider refactoring
in a later release.
2011-08-07 14:31:34 +01:00
Mark Liversedge
f0511755c8 Improve metricDB query performance
Remarkably, using transactions even when querying
SQLITE databases improves performance. If you have
a lot of metric charts on the home window then this
patch will make startup a lot faster.

Additionally, as we refresh the charts as rides are
added and deleted this should help to reduce the
performance impact when lots of charts are open.

There is an SQLITE performance FAQ that provides
more background here;

http://web.utk.edu/~jplyon/sqlite/SQLite_optimization_FAQ.html
2011-08-07 11:13:25 +01:00
Mark Liversedge
64f7bad325 Remove duplicate metricDB in StressCalculator
StressCalculator created a duplicate connection to
the metricDB, this was not needed since it could
reference and re-use the existing one from MainWindow.

This is a vestige from v2 code where the metricDB was
only refreshed/maintained within the metric tab.

No functional or real performance improvement here but
allows us to convert the metricDB to an in-core ":memory:"
database in the future.

Preliminary tests suggest there isn't a huge performance
gain from in-core but that may change as we do more with it.
2011-08-07 10:53:22 +01:00
Mark Liversedge
f21f3813db Refresh CP curve when rides added/deleted
This patch forces a refresh of the CP curve
plot (if it is visible) when rides are added
or deleted.

Fixes #400.
2011-08-07 09:39:13 +01:00
Mark Liversedge
316903c545 Fit files sometimes go backwards
FIT record type '253' occasionally causes time to go
backwards, this might be a decoding error, but for now
we force time to go forward anyway.

Looking at bad files GPS data with this patch suggests
this is the correct behaviour.

Fixes #104.
2011-08-06 17:45:20 +01:00
Damien
a70e8dabbe Modify TRIMP formula to use time_riding instead of workout time
Fixes #355.
2011-08-06 12:33:23 +01:00
Mark Liversedge
fc1ed9b8f9 Fix LogY Intervals on Histogram
The LogY function for histograms was overlooked
when implementing intervals. The baseline and
start/end values of the interval curve needed to
be set to non-zero values to match the main curve.

[Folded in manually from commit #a562d2 in master]
2011-08-06 12:03:19 +01:00
Mark Liversedge
2737bb131e Fix Lat/Lon precision in TCX export 2011-08-06 00:02:32 +01:00
Mark Liversedge
0a13623d8a Fix SEGV in AllPlot on empty ride. 2011-08-05 23:07:55 +01:00
Damien
2046105f46 Correct interval in SyncRideFile 2011-08-05 23:02:30 +01:00
Mark Liversedge
94e49e4fe3 Free Memory in Ride Import
... after reading a GTC export. Also zapped
the boost dependency.
2011-08-05 22:31:31 +01:00
Mark Liversedge
91fed86fa9 Fencepost Error for TcxParser and GTC Exports
Fix recent commit for multiple rides in a TCX
export. It always missed the last ride in the
export file.
2011-08-05 22:18:03 +01:00
Mark Liversedge
7a0634cdda Missed off previous commit
An errant git rebase lost these changes, this is
to support the GTC export file support and updates
the Json parser to use the new call semantics and
gets the Import wizard to clear up temporary files
when it closes.
2011-08-05 21:37:28 +01:00
Mark Liversedge
a1fa22149a Support Garmin Training Center Export Files
GTC will export all rides as a single TCX file so they
can be imported en-masse into another application.

We did not support >1 rides in a single ride file. This
patch adds support for reading multiple rides (if the ride
file reader supports it).

The ride import wizard will now extract and parse files from
a GTC export.  Many thanks to Damien for writing the TCX file writer.

Fixes #371.
2011-08-05 20:53:13 +01:00
Damien
d03038ff1c Modification to handle odd start page and compatible with qt 4.6 2011-08-05 17:22:06 +01:00
Damien
25a89ee13a Add a TCX ride exporter 2011-08-05 15:43:05 +01:00
Mark Liversedge
9718b9ceaa Fix SummaryWindow crash
When a large number of intervals are defined (>50 or so)
then the RideSummary window crashes.

It appears to be a bug in QTextEdit. It does a double free
when setHtml is called, after a 'large' text item was
set. It may be a QString bug.

To avoid the issue we use a QWebView instead of a QTextEdit
to display the summary and then try and set fonts to match
the application.

Fixes #299.
2011-08-05 14:30:25 +01:00
Mark Liversedge
d3ba439422 Don't allow Nan or Inf sample values
I thought this was introduced previously and was not. When
appendPoint adds a new sample it now sets non-finite values
to zero.
2011-08-05 12:49:40 +01:00
Mark Liversedge
62aac5a424 Fix LTM plot to always bin in Mon-Sun weeks
Fixes #120.
2011-08-05 12:06:37 +01:00
Mark Liversedge
42e8640c22 Fix Diary doesn't select ride on Mac
The metricDB columns are renamed to more friendly values
in RideNavigator, and the GcCalendarModel was looking for
a columns "Filename" when it was named "File".

This mean't the call to the model to retrieve the filename
when an entry was clicked on the table view (diary) would
return "".

Strangely, this worked fine on Linux. But it is definitely
a bug. This patch fixes that.

Fixes #330.
2011-08-04 23:34:29 +01:00
Mark Liversedge
46835d141e Reset colors to default in options
A new button now allows the user to reset colors
back to the default settings.

Fixes #76.
2011-08-04 19:43:39 +01:00
Mark Liversedge
2d24a9d360 Fix Save when old .bak exists
If you save a ride and then delete it. The re-import and save
you will end up with two copies of the ride in the ride list.

This is because when we save the first time the original file
is renamed to e.g. ride.tcx.bak and the new ride.json is then
created. All is well.

But then delete the ride and it will rename ride.json to
ride.json.bak. Again, All is well.

Now, re-import the ride. We now have; ride.tcx.bak and
ride.json.bak and ride.tcx. Again, all is well.

But now, if you make changes and save it will attempt to
rename ride.tcx to ride.tcx.bak AND FAIL. This is because
the old ride.tcx.bak file is there. It will then create
ride.json. All is NOT well, since we have two rides with
the same date and time but different extensions.

This patch fixes this by unlinking ride.ext.bak before
trying to rename the file.

Fixes #348.
2011-08-03 19:42:07 +01:00
Mark Liversedge
653f370a3c Refresh metrics without delay
Metrics are refreshed immediately now, rather than waiting
for a request for them. This approach was valid when metrics
were only used on the metrics tab -- it made sense to refresh
when the user wanted them.

With release 3, we use metrics in a number of places as a cache
and also to speed up performance (e.g. RideItem::computeMetrics
was removed a long time ago).

This also fixes a related but when deleting the last ride -- it
did not disappear from the ride list (because the refresh would
only be triggered when a new ride was selected).
2011-08-03 18:33:29 +01:00
Mark Liversedge
b9723c4052 Default dropshadows to NO
Dropshadows currently kill the CPU. This is caused by the way
they are implemented in GC and not QT. More work is needed to
make them fast.

For now, this patch makes the default to NOT have drop shadows.
2011-08-03 00:09:56 +01:00
Mark Liversedge
3f2096efde Show "hidden" metadata in an 'Extras' tab
The ride file readers will often set metadata fields
for device specific information, or just to store data
that has nowhere else to go.

In addition, when an athlete shares a ride with their
coach they would need to keep a common metadata setup.

To get around the 'hidden' nature of metadata that is
not configured and therefore not shown, the metadata
screen will show all tags, which are not shown elsewhere
in an tab labelled 'Extras'.

It is not possible to edit this data, we may change that
later. But for now the consequences of users changing
'internal' metadata is unquantified.

The overhead of creating and destroying widgets on the
extras tab mean that scrolling up and down the ridelist
with the Extra tab shown may be slow for some users. I
have optimised the refresh as much as possible (it has
zero impact if the extras tab is not selected).

In developing this I found that the homewindow
was sending two update signals when you were in tab
mode. This is fixed and tab mode should feel a tiny
bit snappier.

Fixes #385.
2011-08-02 22:37:52 +01:00
Damien
09edfdafa4 Altitude scale present with no altitude data.
Uncheck the channel if not present. Fixes #295.
2011-08-02 09:21:40 +01:00
Mark Liversedge
96144d588c Fix crash on 'dodgy' .man file in v3
This is a fix for bug 205 which is registered against v2.1 but
is also present in v3. This fix will not be relevant for v2.1
since the cpi file has been replaced with the cpx file.
2011-08-02 02:05:32 +01:00
Mark Liversedge
c82e614ed0 Deprecate .notes in WkoRideFile
The WKO+ file reader still wrote to a .notes file
rather than updating the Notes metadata tag. This
patch fixes that.

Notes files are still referenced in LTMPopup, so the
current bug request for completing the notes file
deprecation cannot be closed, yet.
2011-08-02 00:47:53 +01:00
Frank Zschockelt
9b92cba8c5 Support for Sigma SLF/SMF file formats
A ridefile reader for Sigma .slf/.smf format files.

Fixes #90.
2011-08-02 00:06:57 +01:00
Frank Zschockelt
e81fc344e7 Included 4 sample sigma files in the test/rides directory 2011-08-02 00:06:27 +01:00
Mark Liversedge
40938ca9d6 Fix RideEditor find dialog for 'between'
The find dialog expected the between values
to be small and high, this patch will find
values between regardless of whether the
search values are lo/hi or hi/lo.

Fixes #351.
2011-08-02 00:05:50 +01:00
Mark Liversedge
2f47271ace Fix Configure Pane 'on top' obscuring other windows
Notably when you select a color in the config appearances
the dialog will have modal focus but be hidden behind the
config pane, this is tedious as hell.

I have now checked across the codebase and there are no
dialogs which insist on being on top so the OS window
manager and user is now free to manage windows as they
see fit.

Although not directly related this fixes the only possible
problems with window focus that could be related to another
bug reported by Fernando.

Fixes #117.
2011-08-01 23:16:26 +01:00
Mark Liversedge
c2ee61b096 Fix delete ride to remove .notes file
Will also remove the .cpi or .cpx if it is there.
It still renames the original to original.bak so
it doesn't actually zap the file.

Fixes #115.
2011-08-01 23:07:00 +01:00
Mark Liversedge
b98e563536 Fix date/time handling when importing rides
The ride import wizard would only allow the user to
change the ride date/time if it was a .gc .json or
.csv file. This was because (wrongly) it was because
we could not update the date/time defined within the
ride file itself.

Of course, we encode the ride date/time in the filename
and so it could be changed. However, not all the RideFile
readers supported this.

To get around this, the import wizard now does let you
change the date and time for any file type and the ride
file factory method openRideFile() will override whatever
date and time is returned by examining the filename. The
user needs to double click the date or time to edit it.

Additionally, the select date... combo would only register
when you changed the selection, it now defaults back to
the 'select date..' option after each selection.

Lastly, the 'choose date' function now works as advertised
and triggers editing the date for the ride selected.

This patch needs plenty of testing and is potentially going
to resolve the 'misleading UI' bug numer 11, but will need
to be cherry-picked back to v2 master once it has been
adequately tested.
2011-08-01 21:45:00 +01:00
Mark Liversedge
f3a4c241e6 Show anomaly list in ride editor controls
The ride editor does a pretty good job of finding anomalies
in the ride data, and to help it underlines the anomalies with
a wiggly red line and adds a tooltip to explain.

But, you have to scroll up and down the file to look for them
and when you are scrolling at high speed the wavy lines are
difficult to spot.

This patch updates the ride editor controls (which previously
only had the find dialog) and adds a list of anomalies at the
bottom. You can click on an anomaly to jump to it in the ride
data.
2011-08-01 14:46:35 +01:00
Mark Liversedge
ec3c1081c1 Open cyclist show all cyclists
But only enable selection of cyclists
that are not already open. This is a
small update to commit de13fb.
2011-08-01 12:20:40 +01:00
Mark Liversedge
2e32e101a3 Do not allow user to open same cyclist twice
The choose cyclist dialog allows you to open
a cyclist that is already open. This is not
a great idea since the two windows will conflict.

This patch introduces a global vraiable to track
open windows (mainwindows) and MainWindow maintains
it as it opens and closes.

AthleteTool still needs to be updated to refresh
as new cyclists are created (and when its written
deleted).
2011-08-01 11:24:17 +01:00
Mark Liversedge
47f1e8b44e Better support for Negative, Inf, NaN and High Values
Some ride file formats use -1 to indicate sensor not
present or data loss (e.g. TPX) and on occasion a NaN
or Infinite value will be presented.

This patch handles this by converting negative data sample
values to zero and handling out of bounds values when
selecting zone ranges.

This is not a substitute for better handling of poor ride
data but it reduces the effect.

Also fixes #311.
2011-07-31 23:24:04 +01:00
Mark Liversedge
191fa0ea34 Force hide of virtual column in ride navigator. 2011-07-31 13:43:33 +01:00
Mark Liversedge
5f4d5b83f3 Microsoft Bing Map
Following on from the recent changes to the Google Map control
to support their new v3 API, this patch introduces an alternative
map view using the Microsoft Bing v7.0 API.

Remarkably, the MS and Google APIs are extremely similar. Porting the
original code to use the MS API was relatively trivial. It would
probably make sense to combine the two charts into a single chart
with an option to select a map provider.

However, at this point to help in code maintenance they are separate
charts. It is likely that they will diverge somewhat to take advantage
of the differing features offered.

The same functionality and basic colors/lines are available in the
Bing map as the Google one. We should look at adjusting, since the
Bing map styles are more detailed and go to a much higher resolution
than Googles. As a result the current theme looks quite clumsy on
a Bing map and could be changed to use more strident colors and
take advantage of dash polylines (for example).
2011-07-31 13:29:24 +01:00
Mark Liversedge
88114f9ae5 Stop Map inerfering with Chart drag & drop
The Google Map view uses a Web view which by default
attempts to handle drop events. This interferes with
the adding charts via drag and drop. This patch fixes
that.
2011-07-30 23:16:37 +01:00
Mark Liversedge
6eb5dd2789 Fixup for V3 Ride List (RideNavigator)
Multiple issues fixed related to automagic
resizing of columns as the sidebar is stretched
and shrunk.

* Geometry and Columns are now cyclist specific
  since the metadata config is cyclist specific.

* Multiple 'dynamic' bugs related to setWidth() and
  columnsChanged() calling each other or being
  triggered by a signal caused conflicts

* Column widths were incorrectly calculated when
  no vertical scrollbar is visible on the ride list
  (typically when the user has just created a new cyclist)

* Incorrectly including the '*' virtual column in calculations
  when it should always have a width of 0px

The Ride Navigator should now be relatively bug free for
column resizing. More tests are needed on the interaction
with the old context menu (i.e. delete/add/save ride). Some
preliminary tests suggest it is pretty stable.
2011-07-30 22:25:31 +01:00
Mark Liversedge
0b654f3a37 Fix WKO+ file reader GPS 'drops'
The WKO+ file format appears to record drops in
recording of GPS data with a latlon of 180,180. We
expect this to be 0,0.

This makes the WKO+ file reader consistent with the
GoogleMapControl and removes the need to clean data
there.

If it is found that 180,180 is the standard way of
recording drops in GPS signal then we can change the
code. We use 0,0 since it is conveniently at sea off
the west coast of Africa.
2011-07-30 19:24:21 +01:00
Mark Liversedge
899dc97d78 Code Cleanup GoogleMapControl
Removed superfluous code left behind after recent
updates for Google Maps JS API v3. Also removed a few
whitespace nits that sneaked through.
2011-07-30 19:04:11 +01:00
Mark Liversedge
5e4d1aa5b4 More mucking about with Ride list
Ugh. More fixups for stretching the
columns in the ride list when it is
resized. More thought needed on how
this should work.
2011-07-30 16:28:56 +01:00
Damien Grauser
2f7f69ed5c Add PeakPowerHr metric (average HR during peak power)
[c6a376 folded manually into release_3.0.0dev from master]
2011-07-30 13:11:34 +01:00
Mark Liversedge
c751712ba3 Fix right-click crash on ridelist with no rides
When there are no rides to select in the ride list (e.g. when
just created a new user) right click for a context menu will
crash since it assumes there will always be a ride selected.
2011-07-30 12:13:16 +01:00
Mark Liversedge
0756f174d7 Enhanced New Cyclist Dialog
Since a large number of user 'bug' reports and
worse, coding errors, are caused by mishandling
user setup (missing CP, HR parameters, Zones, Weight)
the new cyclist dialog now prompts the user for basic
parameters when creating a new cyclist.
2011-07-29 22:21:37 +01:00
Mark Liversedge
dbc1f152b8 Remove console error for seasons.xml
There is no need to warn about seasons.xml missing, it
is quite acceptable to have none set. Worse still sending
to the console log is next to useless for users that
don't launch from the command line.
2011-07-29 22:17:05 +01:00
Mark Liversedge
c860d39969 Merge branch 'pc7' of github.com:rclasen/GoldenCheetah into release_3.0.0dev 2011-07-28 22:06:09 +01:00
Rainer Clasen
8718e144c0 DownloadDialog: handle unset/invalid timestamps
the bad timestamp initialization in PowerTapDevice showed a lack of
error handling.

This patch makes the DownloadDialog handle bad timestamps more graceful.
Actually it falls back to the current time and allows for later fixing.
2011-07-28 22:45:55 +02:00
Rainer Clasen
0d539bfbc0 PowerTapDevice: fix date initialisation
startDate for the rideList returned after download wasn't set properly.
Use proper method instead of static fabric funcition.

Thanks to Eric Yoo for finding and fixing this.

fixes #365
2011-07-28 22:45:47 +02:00
Mark Liversedge
0af5f0befd Fix window refresh when selecting tile/scroll layout
When you switch from tab view to tile or scroll view
the charts need to be loaded/refreshed since they are
now all visible.
2011-07-28 20:15:52 +01:00
Damien
9fbaccb462 Correct crash with truncated files
Fixes #337
Fixes #354

[git cherry-pick from master into release_3.0.0dev]
2011-07-28 18:45:22 +01:00
Rainer Clasen
bb002013f6 SrmDevice: sync port support with srmio
The comm port types supported by srmio may vary depending on the build
system (no ftd2xx.h, no termios, ...).

This commit keeps GoldenCheetah from using unsupported srmio port types
based on the srmio build.
2011-07-26 10:46:01 +02:00
Rainer Clasen
f8c31271e3 SrmDevice: support D2XX with srmio, as well
added the last bits to use the libftd2xx support I just wrote for srmio.
In other words: this needs an update srmio from github, again.
2011-07-26 02:18:06 +02:00
Mark Liversedge
9a1cd73f01 Merge branch 'pc7' of github.com:rclasen/GoldenCheetah into release_3.0.0dev 2011-07-25 20:03:16 +01:00
Rainer Clasen
932bfea4f9 SrmRideFile: turned assertions into graceful fail
reading unsupported SRM files caused assertions. This shouldn't happen, as
it's no Programming error.

Changed the checks into graceful failures.

fixes #364
2011-07-25 19:34:10 +01:00
Rainer Clasen
61ade35920 download: port list comfort
if the devices have a way to identify which CommPort they support and if
CommPorts are just for this device, this is now taken into account for the
port combo box:

Unsupported ports (i.e. currently D2xx for srm) aren't shown for the
selected device type.

Serial ports that are hard-wired to a certain device type (like built in
USB2Serial adapters in PC6/7) aren't offered for other devices, as well.

As a temporary hack, this PCV claims /dev/cu.*PL2303 to be "his". Of
course this has to go, if/when we start supporting other devices with
built in prolific usb2serial adapter or native serial interface (that
might get connected to a prolific adapter).

If we find a way to gather more details for the available ports, we can
extend this quite easily. Possible ideas:
 - hald (obsolete)
 - libudev (linux specific)
 - kdelibs solid (linux specific?)
2011-07-25 17:05:32 +02:00
Rainer Clasen
54365675f4 SrmDevice: re-added data fixup
during the transition to the new API the data fixup (mostly for PCV) got
lost.

re-added data fixup.
2011-07-25 09:04:05 +02:00
Mark Liversedge
82e1c7ad7a Update gcconfig.pri.in to reflect srmio pc6/7 support. 2011-07-24 20:41:54 +01:00
Mark Liversedge
ec819845ca Merge branch 'pc7' of github.com:rclasen/GoldenCheetah into release_3.0.0dev 2011-07-24 20:26:36 +01:00
Rainer Clasen
dac52789c4 SrmDevice: switched to full API
implemented preview().

download() now gets only selected blocks.
download() splits data into several files.
2011-07-24 17:14:48 +02:00
Rainer Clasen
4213cf0041 Download: made status text scrollable
Previous commits turned the status/"Instructions" label into a log. This
allows to show a lot more information that simplify troubleshooting
download issues.

To make it behave a bit more as expected, this change turns the label
into a readonly QTextEdit.
2011-07-24 17:14:48 +02:00
Rainer Clasen
9c3bab727c allow download of multiple files - for PC7
The new powercontrols have a lot more memory and they allow you to
selectively download the recorded "rides". Looking at srmwin, this seems
to be the suggested way of operation. (i.e. record multiple workouts,
download only the "new" ones).

Furthermore, the SRM file format has some limits (timespan, total number
of records), that make it inapropriate to store "all rides" into one file
and split it later.

So download now
- tries to get a list of rides of the device
  - if it gets any, the user can get prompted to choose which to download.
- let device download (selected/all) rides, split if necessary and return
  a list with tmp filename, start time, file extension.
- download dialog builds new filename based on time, prompts user for
  overwriting when file exists and renames file.

The download Dialog now stays open, so user can read the status messages
and click "cleanup". This avoids many of the anoying message boxes we had
in the Srm download.

Cleanup's user interaction (confirmation, errors) was moved from the
individual device to DownloadDialog, as well.
2011-07-24 16:58:50 +02:00
Rainer Clasen
68398cba33 SrmDevice: re-use open code
made srmio handles attributes of the SrmDevice class and added methods to
allocate/open/close/free these handles. So download() + cleanup() can use
the same code.

As a goodie the handles stay open after download and the second
initialization on cleanup() is skipped - saving some time. Well,
assuming the caller reuses the same SrmDevice instance.

SrmDevice destructor takes care of closing/freeing the srmio handles
automagically.
2011-07-24 15:47:38 +02:00
Rainer Clasen
dbfbe50df6 split Device class to allow keeping download state
right now there's just one object for each Device type througout the whole
app. This forbids keeping actual state in the Device object during
download/cleanup.

This patch puts the list of supported Devices into a seperate class.
Actual Device objects are now created dynamically.

This is necessary for the upcoming Download changes.
2011-07-24 15:47:28 +02:00
Mark Liversedge
fb37f9877c GPS Data Precision Errors
JsonRideFile saved with 6 and not 11 digit precision
losing a lot of precision when saving.

Additionally, the Google Map used a similar precision
and this caused jaggies on the map.
2011-07-24 14:47:03 +01:00
Rainer Clasen
39e57b93fe CommPort: added isOpen method
required to allow Devices to safely close CommPorts after use.

This avoids problems when re-using a device without closing
DownloadRideDialog.
2011-07-24 13:47:48 +02:00
Rainer Clasen
02d3b6e733 use new srmio API - allowing PC7 support
srmio changed it's API completely. Adopted SrmDevice to use new API.

As a first step, we keep using the "simple" API to save everything into a
single file.

While this works fine for PCV, this will run into limitations of the SRM
file format, quite soon. This needs to be addressed in another step.
2011-07-24 13:47:03 +02:00
Rainer Clasen
0b4d46cdfe CommPort: keep device names seperate
CommPort::name used to prefix the actual device name/path with the actual
device type to make it unique. This is used in DownloadRideDialog to map
the device dropdown list to the actual device.

This patch seperates name + device type to make the hack in SrmDevice a
bit less ugly: srmio doesn't use the built in CommPort abstraction and
needs the unmodified device names. This is still ugly, but I can't come up
with anything better (... for now).
2011-07-24 13:46:47 +02:00
Rainer Clasen
0b3e8aa6d4 MacroDevice: use backwards compatible toTime_t
toMSecsSinceEpoch requires QT 4.7. And as the caluclation doesnt require
msec precision, toTime_t should be sufficient.

Well, this is mostly, because I'm currently too lazy to update my QT... I
guess, this doesn't have to be merged.
2011-07-24 13:46:02 +02:00
Rainer Clasen
14c525eb01 gitignore lex/yacc generated files 2011-07-24 12:28:13 +02:00
Damien Grauser
9c0c2581f5 O_Sync Macro X device support
Adds support for the Macro X bike computer for downloading rides
and reading/writing in the native file format (sync).

For more information on this new bike computer see:
http://www.o-synce.com/en/products/bike/macro-series/macrohigh-x.html

[git cherry-picked from master into release_3.0.0dev]
2011-07-24 10:59:10 +01:00
Mark Liversedge
f3f2768da4 Fix Map Jaggies & Stoptime
The recent update for the Google Map window reduced the
precision geo-coordinates, this patch fixes that.

Additionally, the wait time was triggered after 60s which
should be 5 minutes (left in by mistake after testing).
2011-07-24 00:50:18 +01:00
Mark Liversedge
68f104cae3 Change close window icon. Minor cosmetics. 2011-07-23 20:34:59 +01:00
Mark Liversedge
e15295a62b Fix refresh metric losing ride selection
When metrics are refreshed the ride navigator
re-reads the metric DB and loses the currently
selected ride.

This patch causes the ride to be re-selected once
the refresh completes.
2011-07-23 19:55:40 +01:00
Rainer Clasen
41fda6877b whitespace cleanup
unfortunatly my latest patches introduced some tabs. Replaced them with
spaces to meet GC indent style.

Fixes 347.
2011-07-23 19:18:54 +01:00
Rainer Clasen
cea380f381 fix reading signed values from srm files
seems, the assumption for "speed" in SRM7 files being unsigned was wrong.
Powercontrol/SRMWIN seem to use negative speed as "invalid".

Furthermore altitude may become negative, as well.

To address this, QDataStream now does the bit-swapping and speed +
altitude are read as signed values.

Fixes 346.
2011-07-23 19:18:40 +01:00
Damien
47db38a655 Add summary metrics list to preferences
Commit 05346 cherry-picked from master and merged into release_3.0.0dev.
2011-07-23 19:11:26 +01:00
Gareth Coco
e692aacdee Change start date from UTC to localtime for bin ride file
Fixes 338.
2011-07-23 14:03:18 +01:00
Rainer Clasen
f0f1823fe0 Fit: handle unknown fields gracefully
So far the FIT parser bailed out, whenever it found something
unknown/uninterested to GC. This is quite orthogonal to the FIT design, as
it's supposed to be extended.

renamed read_<foo> functions to match the FIT base_type names.

unified handling of "unavailable/invalid" values - i.e. if sensor data is
temporary unavailable. This allows easier and consistent handling -
especially for the uintXz base_types, which only differ by a different
"invalid" value. Had to change the type of the "values" list to int64 to
fit uint32/int32, as well.

added proper support for signed integer types. I'm wondering, why lon, lat
+ temperature were decoded properly...

added support for currently unsupported base types by just skipping their
bytes. This allows us to continue reading.
2011-07-23 13:56:12 +01:00
Rainer Clasen
335224cec4 Fit: support big/little endian data
... on both, big and little endian machines.

Fit reader only supported little endian data on little endian machines.

All values read from FIT files are now swapped (if neccessary) according
to file and system endianess.

fixes #287
2011-07-23 13:56:12 +01:00
Rainer Clasen
61b9f3ccd1 Fit: ignore unknown message types
do not bail out on unknown message types. This violates the design of the
Fit format of being extensible.

As this was the last thing using the global_msg_names QMap, I've nuked
this, aswell.
2011-07-23 13:56:11 +01:00
Mark Liversedge
769f92aa9f Remove carbon references on Mac in GcPane. 2011-07-23 12:49:58 +01:00
Mark Liversedge
c1ddd0a766 Summary Window Title
Summary window and friends now set the window title (subtitle)
to the ride date and the headings have been made slightly
smaller to reduce screen real estate. Minor cosmetic update.
2011-07-23 10:55:51 +01:00
Mark Liversedge
3ba486d49f Fix too many QString::arg() in GoogleMapControl.cpp/ 2011-07-23 00:41:29 +01:00
Mark Liversedge
2c0f83d470 Google Maps Enhancement
Update to the Google Map window:
* Uses Google Maps API v3 (v3 is deprecated)
* Users can now select intervals on map
* Icons for start, stop, loop, pause
* Resize refresh no longer needed

Features removed or changed:
* 30s segments are now 60s segments
* Tooltip doesn't work with v3 API

Some more updates will come through later to
add greater control on what is shown on the map
and the shading to use (e.g. gradient, HR zone) and
the time interval to use.
2011-07-23 00:08:02 +01:00
Mark Liversedge
c87cd1c17c Sidebar adjustments, wip
The sidebar activity list columns expand and
reduce as the sidebar is resized. Still a work
in progress with a number of cosmetic issues
remaining.
2011-07-16 10:58:20 +01:00
Mark Liversedge
3ee554442f Google Map UI Changes
Highlight entire route to make the route stand out
more obviously when power zone colour schemes are
subtle (or white).

Changes the window bar to the metadata field 'Route' if
it is present. This is done by introducing a new 'subtitle'
property on a GcWindow that can be set programmatically. This
is equivalent to the old 'title' above each chart.
2011-07-16 10:55:35 +01:00
Mark Liversedge
0c5b002501 Fix annoying gap in CP curve. 2011-07-09 20:18:10 +01:00
Mark Liversedge
e192313fdb #include <Windows.h> becomes <windows.h> 2011-06-13 20:37:44 +01:00
Mark Liversedge
2acc670fea More Tab / UI fixups
A bit more love for tabs and other minor cosmetic tweaks.

* View now remembers style used (tab, scroll, tile)
* Allow user to re-order tabs
* Google Map border reduced
* Google Map refresh delay (to make UI snappy when resizing)
* Minor calendar cosmetics
* Use utf8 encoding on config files (language support)
2011-06-13 16:12:16 +01:00
Mark Liversedge
8f06fc6a17 Fixup UI for Mac
Removed the horrible dock widget and uses same sidebar
as windows and linux. Removed segmented button for now
since there are a few issues, but retained the code for
the future.
2011-06-11 12:27:54 +01:00
Mark Liversedge
44ab9fc5fd Further UI fixups
More work to unify the tab view with the overall
UI look-and-feel, allowing you to remove and add
tabs via mouse over rather than the close tab
icon. Also added a number of cosmetic adjustments.

Fixed up PerformanceManager and ScatterPlot to
pick up on the chart fonts and tick size etc.

Removed some erroneous static members in the
ScatterPlot that caused a SEGV when adding multiple
charts (or cancelling an add then adding again).
2011-06-10 23:27:51 +01:00
Mark Liversedge
6fc2364d96 Remove unneccessary mutable in RealtimePlot.h 2011-06-06 08:13:49 +01:00
Mark Liversedge
674170caea Missed in last commit 2011-06-05 17:32:50 +01:00
Mark Liversedge
1462da2046 Potential fix for Add Chart crash
New charts are created in the GUI thread and
the Dialog is not deleted until after the chart
has been reparented.

This modification will need testing on Windows.
2011-06-05 15:56:48 +01:00
Mark Liversedge
c6e25a2290 Enable/disable dropshadow in appearances. 2011-06-05 15:56:29 +01:00
Mark Liversedge
acf023c973 Ride Plot Axis coloring
The legend wasted screen estate and was removed, this patch
colors the axis labels/ticks so no legend is required. This
approach could be adopted for other charts.

Also includes a fix to hide realtime view controls which
left a screen glitch because they should have been hidden.
2011-06-05 01:51:45 +01:00
Mark Liversedge
d1c9ff83b6 Possible fix for Add Chart crash
I have not been able to reproduce the crash, but reading
through the code related to the chart add dialog I have spotted
an error where the chart could be destroyed when you click the
OK button, but still referenced.

This modification also appears to fix an issue with chart
controls not working when you first add a new chart.

Requires testing before the associated defect in GoldenTracker
can be closed.
2011-06-04 21:51:56 +01:00
Mark Liversedge
e9bc1f5f2f Re-introduce Dropshadow on Win/Mac
QGraphicsDropShadowEffect needs Qt 4.7.3 to
be guaranteed to work correctly. This is inline
with the statement that Qt 4.6 is mandatory
whilst later releases are desirable.
2011-06-04 21:08:27 +01:00
Mark Liversedge
a34b52d9cb Fixup Tab mode for Mac
Style selector was not displayed and the
paint event handler allocated two painters
which is not allowed by Qt.
2011-06-04 20:05:36 +01:00
Mark Liversedge
4b567a7681 Reinstate Tab view
After discussion on the list the utility and popularity of
the original tab view was restated. This patch reinstates
the tab view and attempts to unify the Qt tab widget with
the general look and feel of the application.
2011-06-04 17:12:17 +01:00
Mark Liversedge
f737579964 UI Cosmetics & Nits
Added a dropshadow effect for window tiles and made the
title embossed for a more professional look.

Also fixed a couple more compile time nits introduced
by recent commits.
2011-06-03 18:07:01 +01:00
Mark Liversedge
8d49245e20 Fix Ride Plot Steals Focus
When scrolling through the ride list the ride plot will
steal focus which means navigating up and down the ride
list by keyboard is not possible.

This was caused by an errant setFocus() in LTMCanvasPicker
which this patch removes.
2011-06-02 10:52:59 +01:00
Mark Liversedge
55c5c27131 Remove superfluous heading
The heading on the homewindow pages is superfluous since the
user is well aware what page they are on by the fact they
selected it and also the contents displayed.

This also has the effect of making tiled view the standard
and only view. Will need to add options to maximise a chart
to fullscreen later.
2011-06-01 22:05:45 +01:00
Mark Liversedge
cb3f752fa7 Simplify and Clean UI
Less jarring UI with simple use of color and
no pixmaps to make a clean look. Will need
more work to get consistent across the code
base.

A simple and clean UI is starting to emerge.
2011-06-01 21:46:31 +01:00
Mark Liversedge
f39c3361c8 Sidebar, Ride List and Aeshetics
An update to the ride list on the left hand side
to enable the user to choose and sort or group-by
metrics, metadata fields and ride information.

In addition, the sidebar has been 'improved'
cosmetically and to require less screen estate.

Also, the ticks and frames on plots have been
adjusted to be more aesthtically appealling.

There is more to come on the look-and-feel front,
but this patch heralds some work on the sidebar
which needs to be resolved.
2011-06-01 16:34:24 +01:00
Mark Liversedge
362a1070d8 Fix WKO parser for Ergomo users
The WKO ride file reader used wrong constants for the bit
field size of the sample data when decoding files from
Ergomo devices.

merged from v2 master.
2011-05-25 20:26:37 +01:00
Mark Liversedge
d525a62f69 Fix 64bit WKO parsing GPS data
The decoding of GPS data erroneously assumed that a
signed long was 32 bits, which is not true on a 64bit
platform.

Fixes #333.
2011-05-22 20:51:00 +01:00
Mark Liversedge
e37951bdc3 Fix temp file permissions issue with Google Map
The google map control creates a temporary file to load
which is not unique for each logged in user. This causes
permissions issues.

The use of a temporary file has been removed by replacing
the webView->load() call with a webView->setHtml() call. This
allows us to pass the contents as a string rather than a URL.

Fixes #331.
2011-05-22 11:56:33 +01:00
Mark Liversedge
28ddb47917 Fix First Ride File Import Crashes
When you import the very first ride into V3 it will cause
a SEGV crash when attempting to freeMemory. This is because
the first entry added to a list does not cause any selection
to be made.

This means that the very first time someone tries to use GC
version 3 it will crash! Not the best of starts.

This bug was previously reported as being related to importing
json ride files, it occurs for ANY ride file type.

Fixes #328.
2011-05-21 21:31:12 +01:00
Mark Liversedge
0dbced0051 More compile time nits
Fix some nits missed in last nit cleanup. No
functional change, just cleans up compiler
warning messages.
2011-05-17 21:05:47 +01:00
Mark Liversedge
8d2660f565 Better rounding of time in AllPlot
With realtime data there will often be samples with
timestamps like 940.002 and 940.998. This cuases an
issue on the ride plot, where it believes there is
no sample for 941 and therefore plots a zero value.

This patch rounds the timestamps to the nearest 100th
of a second, which is consistent with the mechanism
used in the ride editor.
2011-05-16 17:54:11 +01:00
Mark Liversedge
62024d9e98 Increase margins on RideEditor
Resizing the rideeditor is a bit tricky since it does not have
any margins. This patch adds a 2px margin that makes all the
difference.
2011-05-15 22:04:06 +01:00
Mark Liversedge
6577baf768 Make toolbar color configurable
Not generally useful but allows one to make the toolbar
menu and titlebar match for a more pleasing general effect.
Most users will not use this I imagine and use the default
window colors.
2011-05-15 21:35:21 +01:00
Mark Liversedge
e641be3695 MainWindow Housekeeping
The MainWindow.{cpp,h} code was a bit messed up after a
few years of hacks from different devs. This non-functional
patch re-organises the source files, removes a couple of
unused methods and adds a few comments to help new devs
navigate through the code.
2011-05-15 20:18:09 +01:00
Mark Liversedge
6cf73ce5b5 Fix Hr numZones bug
The HR zones code was broken by the previous commit to
remove asserts from the code, resulting in the numZones
method to always return 0. This caused the Histogram and
Summary windows to fail to display zones for a specific
ride.

This patch fixes this.
2011-05-15 17:36:15 +01:00
Mark Liversedge
5e1c5897f7 Make Analysis view configurable
You can now configure the Analysis view to drag and drop
charts on the page and lay them out etc. A default setup
displays basic data such as ride summary, histograms and
ride plot.

MainWindow still needs a bit of a tidy-up as the basic
code has been edited and re-edited by a cast of thousands
and its a bit of a mess as a result.
2011-05-15 14:34:34 +01:00
Mark Liversedge
27270e8e1c Fix intermittent crash in adding charts to home
If you have not compiled in support for a particular
chart (e.g. 3d) then the drag/drop event will just
create a blank chart (base GcWindow).

The constructor for a null chart did not initialise
properties and caused an intermittend crash because
the controls pointer was occassionally not NULL.
2011-05-14 15:01:18 +01:00
Mark Liversedge
7a96823942 More Metric Refresh Performance Improvements
The DBAccess functions instantiate a local SpecialFields object in
almost every method. Profiling by Fredrik Lingvall has shown this
is rather expensive (and also unneccessary since they do not
change at runtime).

A specialFields member has been added to the MainWindow class
and is instantiated at startup and referenced in the DBAccess
methods instead.

Rough tests suggest a 10% speed improvement in metric refreshes.
2011-05-13 21:15:15 +01:00
Mark Liversedge
cee3813566 Clean compile time nits
Lots of nitty fixups, largely for uninitialised temporary
variables.

I have left the use of boost::function and boost::bind in the
DownloadRideDialog alone, so it will vomit when compiled
with boost 1.46 and gcc 4.5 or higher. Will look into this
more carefully at a later stage.

I am working up to resolving issues identified from -pedantic next.
2011-05-12 22:12:36 +01:00
Mark Liversedge
8fa171c5d8 Metric refresh performance improvement (nosync)
The SQLITE database syncs (writes) to the metricDB file after
every atomic transaction. As the size of the database grows this
becomes very expensive (suspect it is writing the entire DB).

To avoid this behaviour the Metric refresh code opens and commits
a LUW for the entire refresh. This has shown to improve the performance
of the metric refresh quite dramatically (50% reduction in overall
time to complete a metric refresh).

Big props to Fredrik Lingvall for detailed analysis and profiling
of the code to identify the inefficiencies.
2011-05-12 20:13:55 +01:00
Mark Liversedge
fc741fb9b4 Make Training View Configurable
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.
2011-05-10 18:21:08 +01:00
Mark Liversedge
e0c7560c74 Add WorkoutPlotWindow
As part of the ongoing preparation for training mode to support
a more configurable layout the workout (ergfile) plot is now
a window that can be dragged and dropped onto a layout.
2011-05-08 20:27:33 +01:00
Mark Liversedge
24f7f1ff55 Missed from previous commit. 2011-05-08 14:23:40 +01:00
Mark Liversedge
e02b4f67aa Add Realtime Plot Window
The realtime plot is now a chart than can be dragged and dropped
onto a window layout. This is part of the preparation to move
the training view to use be configurable, aka home window.
2011-05-08 13:58:53 +01:00
Mark Liversedge
164fa725e6 Add metadata window to charts
The home window layout will soon be extended to cover
realtime and analysis views. In preparation for that
some additional charts are being created.

This patch introduces the metadatawindow which only
contains the metadata fields (i.e. no ride summary).
2011-05-08 10:36:00 +01:00
Mark Liversedge
ef1df5f2c3 More 'orphaned' Widgets
RideMetadata widget in mainindow is never placed into a layout
since it is not used for user entry/display.

MetricAggregator used QWidget as a base class, this should of
course have been QObject. It uses signal/slots but has no GUI.
2011-05-07 14:10:52 +01:00
Mark Liversedge
1ebda4eb1a Remove orphaned central widget in MainWindow
Been chasing this down for ages. An orphaned widget in
MainWindow caused the tick for opening the drawer on Macs
to be 'unresponsive' and on Linux made the Cyclist and Ride
menubar options similarly 'unresponsive'.

When adjusting layouts for homeWindow and others a new
widget 'central' was introduced and then not used, but the
code was left behind.

This patch removes the errant code.
2011-05-07 13:26:13 +01:00
Mark Liversedge
073631346a Refresh CPX file when importing ride files. 2011-05-07 11:26:59 +01:00
Mark Liversedge
781f32b536 Less assert in HrZones
I guess it is a philosophical argument. HrZones is modelled on
the original power zones code. It uses assert to crash whenever
a call is made for out of bound data (e.g. range of -1).

Given these values are returned by other functions in the same
class, it seems harsh to crash when handed them back.

I have removed some of these from the critical members and am
tempted to apply to the original Power Zones code too.

Fixes #301
2011-05-07 09:44:10 +01:00
Mark Liversedge
baa4c23f0a Move CXXFLAGS -O3 to gcconfig.pri.in 2011-05-07 00:10:27 +01:00
Mark Liversedge
5b3f713a2c Enable -O3 flag for g++
As pointed out by Mark Rages, GCC/G++ support auto vectorization
optimisations with this flag (amongst others). This has quite a
significant performance impact for almost all parts of GC that
loop over ride files.

It certainly improves the mean-max routine performance dramatically.
Anecdotely it seems to improve performance on most charts when
intervals are selected and make the Metric charts particularly
snappy.

More info on auto vectorization can be found at the following
url: http://gcc.gnu.org/projects/tree-ssa/vectorization.html

Tested on intel and amd hosts running Linux and Windows.
2011-05-05 22:14:20 +01:00
Mark Liversedge
604ea8e1ed Merge pull request #4 from markrages/mark-fix
Updates the source files to add a detailed description on the new faster mean-max algorithm and a tweak to the window size to significantly improve performance.
2011-05-05 11:42:09 -07:00
Mark Rages
aad197764a Added comment explaining meanmax algorithm
Tweaked meanmax algorithm to limit the maximum window size
2011-05-05 01:33:47 -05:00
Mark Liversedge
ab3b7290ad Fix CP xPower/NP zoning. 2011-05-04 23:24:46 +01:00
Mark Liversedge
65fcf86ef6 CP Plot xPower/NP with color zones. 2011-05-04 22:27:10 +01:00
Mark Liversedge
d780719cf4 Mark Rages' Superfast Mean Max Computer
Mark Rages has developed a super fast and innovative
approach to identifying max-mean intervals. This
approach is 20% faster than the current approach and
importantly does not require "downsampling" of data
yielding much higher resolution for longer intervals.

The code has not been 'adjusted' to adopt QT style
containers (e.g. QVector) and uses malloc/free.

The primary innovations include:
* integrating the data series to reduce the operation
  for identifying an interval sum to a single subtract
  operation.

* Searching for max sum via a window-search rather
  than iterating over the entire series (divide / conquer)

Interestingly, now we have retained high resolution the
xPower algorithm still yields differing results to the
existing metric code. I have contacted Sean to get some
insight into why this might be the case, but suspect it
is related to the implementation of the xPower 25s EWMA.

Tip o' the hat to Mark Rages for this -- sometimes you
just have to accept that no matter how smart you think
you are, there are some folk who /really are/ smart!
2011-05-04 21:19:49 +01:00
Mark Liversedge
475078f548 Store pre-computed statistics as floats not longs
The .cpx file used unsigned long to reduce storage
requirements but lost precision. This patch migrates
to using floats, which in most cases are the same size.

One side effect of this update is that mean-max charts
for HR, Speed, Cadence no longer have a 'staircase' effect
and plot more smoothly.
2011-05-03 17:04:48 +01:00
Mark Liversedge
48e8b26347 Histogram plot by zone for seasons
The recent update to plot histograms for seasons or other
date ranges did not support displaying by zone since the
cache did not contain zoned data. This patch fixes that
with an update to RideFileCache to pre-compute and to the
PowerHist class to retrieve and plot.

There are some minor issues that need to be addressed:

* Handling aggregation with different zone schemes

* Deciding which zone scheme to use for the bar labels
  when multiple differing schemes have been used within
  the date range selected.

* Showing a break down of time in zone by range i.e.
  how much time was spent at Threshold when CP was X
  as opposed to when it was Y (hint: do it like we
  currently display intervals when plotting a single
  ride).

* Refreshing the Time In Zone data in the .cpx file
  when CP/LTHR changes is not implemented.

The RideFileCache now checks the version of the cache to
determine if it needs to be refreshed -- so no need to
delete old .cpx files before running GC with this patch.
2011-05-03 16:26:40 +01:00
Mark Liversedge
6b1e72a3b8 Added Gareth Coco's WIN32 build notes as INSTALL-WIN32 2011-05-02 21:21:42 +01:00
Mark Liversedge
e61d6d2c00 Added INSTALL-LINUX build notes/instructions to root of src tree 2011-05-02 21:07:27 +01:00
Mark Liversedge
b34ceaa182 Plot seasons / date ranges on Histogram Plot
The recent RideFileCache patches added functions to
pre-compute mean-max and distributions. This enabled
this patch to add plotting histograms for a date
range rather than a specific ride.

It supports all the same data series as before but will
allow you to select a season from a new combo box.

I have refactored a fair amount of the code, but kept the
original code in PowerHist as close to unchanged as I could
since I did not want to disturb existing functionality.

There is no support for Zoning historic data -- this requires
an update to the RideFileCache.
2011-05-02 19:39:39 +01:00
Mark Liversedge
820dc11d77 Ride Statistics performance improvements
The metric code for calculating NP was sub-optimal (actually
it was pretty crap). This patch improves the performance of
the calculation quite substantially (>50% improved).

Additionally, the critical durations code has been adjusted
to reduce the amount of work for long rides (>3hrs or more).
2011-05-02 10:33:58 +01:00
Mark Liversedge
abef9e76ce Tooltip in CP chart
A tooltip is now shown on the CP chart if you move
the cursor over a point in the chart. The old picker
ribbon is still shown when using left-click with
the dates and values shown in the controls.
2011-04-29 14:14:20 +01:00
Mark Liversedge
35f52fdc9e Add xPower and Normalized Power to Critical Plot
The Skiba and Coggan metrics for xPower and NP
respectively can now be plotted on the CP curve.

There are two issues;
* Downsampling of data to 5s samples skews xPower's EWMA
* Setting scale to start at 30mins breaks the x-axis scale engine

Both issues need fixing, since the first skews xPower upwards and
the second suggests that xPower/NP are meaningful for durations
less than 30 minutes.

Fixes #307.
2011-04-28 23:51:55 +01:00
Mark Liversedge
1b144e4a2f Fix typo to get cadence CP chart back. 2011-04-27 21:29:23 +01:00
Mark Liversedge
fbee480a94 Fix CP calculation for files with sub-recIntSecs samples
Peak 1s - 5s critical heartrate was way off the charts and did
not represent the data within the ride file.

Almost certainly caused by the WKO+ file importer, or possibly
by the WKO+ files themselves. It is possible to have ride files
with samples that are shorter than recIntSecs, e.g. where the
recording sample rate is 1s you might see:

Time       HR
01:21:32.0 157
01:21:32.7 157
01:21:33.0 157

In this case there are two samples between 1:21:32 and 1:21:33 rather
than the expected one sample. The code to compute averages used the
duration and recIntSecs to determine the average. This patch now
maintains a count instead.

Fixes #319
2011-04-27 20:48:39 +01:00
Mark Liversedge
d47f7bde4b Fix CP curve only shows first 6 seconds bug
Many thanks to Gary Smith for helping to diagnose and fix
this error. It is caused by ridefiles that have a gap in
recording at the very start of the ride (i.e. the first
sample is > recIntSecs).

Hopefully this means the CP code is now robust. It is also
worth noting that after fixing the erroneous copy/paste
code in compute() it is now 5 times faster than the original
code and computes 5 times more data series.

Fixes #316.
2011-04-26 21:56:05 +01:00
Mark Liversedge
aa59c0b3b3 Temporary Fix for Ride Selection after NULL ride selected
When you clicked on 'All Rides' mainwindow emits a rideSelected
signal with a ridefile of NULL. When then selecting a valid ride
a SEGV occurred.

This temporary fix removes that signal, but the underlying issue
related to actions after a NULL ride is selected need to be resolved.

Fixes #318.
2011-04-26 21:31:43 +01:00
Mark Liversedge
fc016360e9 Remove dumb cut/paste error that increased CP calc work. 2011-04-26 21:02:23 +01:00
Mark Liversedge
198cfc5d68 Fill in Gaps in recording when computing CP charts
The new implementation of CP calculation uses a different
approach to identifying critical power/cadence etc which
makes it sensitive to gaps in recording (it assumes all
samples are temporally contiguous).

This patch ensures the data series are pre-processed to
add 0 values for any gaps in recording -- it does NOT
try to smooth data, since there are tools available to
do this, and if the data as presented has gaps we will
not attempt to 'correct' them -- the user can do this
themselves.

It leaves ride data intact.
2011-04-26 20:28:57 +01:00
Mark Liversedge
543ce0b1fd merge srhea/GoldenCheetah.git release_3.0.0dev fixups. 2011-04-25 17:43:08 +01:00
Mark Liversedge
26dd0d7316 Fix CP calculation crash
Fixes SEGV in RideFileCache caused by incorrect recIntSecs setting
for a ridefile. Other reported issues with high power values for
short intervals was data related and not a bug.

Fixes #314.
2011-04-25 16:44:16 +01:00
Mark Liversedge
1288c71999 Missed from previous commit. 2011-04-25 02:58:19 +01:00
Mark Liversedge
5999fe7600 Plot more data on the CP plot and use a binary cache file
This patch enables more data series to be plotted on a CP plot.
We can now show curves for heartrate, cadence, speed and torque
as well as the original power and energy.

The CP code is refactored into the plotting functions and a new
RideFileCache that precomputes the mean-max as well as distribution
data (for a later patch to show histograms across date ranges).

The code for computing mean-max values has been re-written and
significantly optimised by;
* computing 1s intervals up to 5mins only
* computing 20s intervals for the remainder of the ride
* downsampling data to 5s samples for longer durations
* using a binary file format (cpx) for faster read/aggregation
* using multiple threads

Testing on an old Athlon dual-core showed an increase in performance
over the old cpi code of approximately x20, but since new data series
are now computed it is only x4 faster. Quad/Octo core systems will
show a greater performance increase though.

Fixes #312.
Fixes #285.
2011-04-25 02:46:53 +01:00
Mark Liversedge
c4494524fd Plot more data on the CP plot and use a binary cache file
This patch enables more data series to be plotted on a CP plot.
We can now show curves for heartrate, cadence, speed and torque
as well as the original power and energy.

The CP code is refactored into the plotting functions and a new
RideFileCache that precomputes the mean-max as well as distribution
data (for a later patch to show histograms across date ranges).

The code for computing mean-max values has been re-written and
significantly optimised by;
* computing 1s intervals up to 5mins only
* computing 20s intervals for the remainder of the ride
* downsampling data to 5s samples for longer durations
* using a binary file format (cpx) for faster read/aggregation
* using multiple threads

Testing on an old Athlon dual-core showed an increase in performance
over the old cpi code of approximately x20, but since new data series
are now computed it is only x4 faster. Quad/Octo core systems will
show a greater performance increase though.
2011-04-25 02:20:19 +01:00
Mark Liversedge
d52e676d32 No more CPU hog in Native ANT. 2011-04-18 23:01:19 +01:00
Mark Liversedge
1b25e5049b Less jarring use of pixmaps in look and feel. 2011-04-18 22:48:49 +01:00
Mark Liversedge
58b535a4b0 Merge branch 'release_3.0.0dev' of github.com:/srhea/GoldenCheetah into release_3.0.0dev 2011-04-17 22:09:27 +01:00
Mark Liversedge
c8c6c22ab7 More NULL ride bug fixes
The controls for the RideEditor (find) and AllPlotWindow
still try and do their thing when the current ride item
is NULL. This was either because it wasn't checked (or
expected) or the widgets in question were not notified. This
patch fixes this.

When I get a chance the whole codebase needs to be refactored
to gracefully handle NULL rideItems -- each plot/window should
clear state when it is notified that NO ride is selected.
2011-04-17 21:39:16 +01:00
Mark Liversedge
f1b90ced62 Fix RideEditor crash on last delete
If you delete the last ride and scroll down in the ride editor
GC will crash. This patch ensures the model is invalidated when
a ride is deleted.
2011-04-17 19:47:36 +01:00
Mark Liversedge
8003ef7f0e Fix Crash on Interval selection when last ride deleted
If you delete the last ride and then select an interval in the
interval widget Interval summary window crashes. This patch fixes
this. It should have been picked up in the Null ride files tests
from last week, but slipped through.
2011-04-17 18:59:30 +01:00
Josef Gebel
5d41b6af7c Fix AllPlot Show by Distance Bug
I discovered a crash of GC when doing the following:
* Load two rides (you can load the same ride for 2 different days)
* Go to the Ride Plot tab
* At the bottom, choose "x-Axis shows distance"
* Switch rides in the "All Rides" widget
* GoldenCheetah should crash. At least, it does for me when I load the attached ride file.

Fixes #242
2011-04-17 18:32:16 +01:00
Mark Liversedge
b173eb5ef2 Fix Crash in Histogram for show in Zones before Zones configured
Fix an assert crash in Zones if you choose to chart power by zone before the cyclist CP
configuration has been set.

Fixes #300.
2011-04-17 14:31:50 +01:00
Mark Liversedge
065602b05f Fix Workout Code null string for Bin (Joule) ride files. 2011-04-16 20:44:15 +01:00
Mark Liversedge
c2e0bbe534 Realtime checkpoint - WIN32 and Configurable Realtime
Fixups to compile video on WIN32 and added more configurability
in the realtime screens, but still not the chart and video use-case
needs to be decided.
2011-04-10 18:03:21 +01:00
Mark Liversedge
d3e0e93f5f Merge branch 'release_3.0.0dev' of github.com:/srhea/GoldenCheetah into release_3.0.0dev 2011-04-09 14:31:55 +01:00
Mark Liversedge
5e9c951ac6 Reintroduce Heartrate Zone Summary on WeeklySummary Window
The refactoring of the weekly summary window to use metricDB
and the introduction of HR zone config in options removed
the hr time in zone table on weekly summary.

This patch re-introduces it.
2011-04-09 14:30:30 +01:00
Mark Liversedge
1f2e329ee5 Merge branch 'release_3.0.0dev' of github.com:/srhea/GoldenCheetah into release_3.0.0dev 2011-04-09 14:12:02 +01:00
Mark Liversedge
34cab7ab24 Reintroduce Heartrate Zone Summary on RideSummary Window
The refactoring of the summary window to use metricDB and the
introduction of HR zone config in options removed (temporarily)
the table on ride summary.

This patch re-introduces it.
2011-04-09 14:08:28 +01:00
Mark Liversedge
a396ff6dff Merge branch 'release_3.0.0dev' of github.com:/srhea/GoldenCheetah into release_3.0.0dev 2011-04-09 12:21:27 +01:00
Mark Liversedge
361c7bece8 Fix Crash on show/hide sidebar in V3
GoogleMapControl crashes when the sidebar is hidden then shown
before a map has been drawn. This is because the resize event
attempts to redraw the map before all private data has been
initialised (in this case rideData is empty).
2011-04-09 12:15:17 +01:00
Mark Liversedge
760c89bd21 Merge branch 'release_3.0.0dev' of github.com:/srhea/GoldenCheetah into release_3.0.0dev 2011-04-09 11:42:55 +01:00
Mark Liversedge
fff3f83064 Version 3 - No Ridefiles Bugs Bonanza
When no ridefiles are available (new cyclist) or the last ridefile
is deleted the current ride will be null. In addition the ride
importer deletes the memory for a ride imported to ensure VM is not
exhausted on large imports.

This patch fixes a whole host of null errors across the codebase. They
were identified by creating a new cyclist, executing every menu option
and tab/chart and then importing a file choosing everything and then
deleting the file and choosing every option again.

This negative testing should be performed before every stable release since
it has identified at least 6 bugs which are almost certainly present in the
current V2 code.
2011-04-09 11:24:40 +01:00
Mark Liversedge
f94c2ccbe7 Fix Weekly Summary Crash
Refactoring of WeeklySummary to use the metricDB (speed optimisation)
introduced a bug where the ridefile iterator was erroneously used
whilst computing daily averages. This patch fixes this by using the
daily iterator instead.

Many thanks to John Ehrlinger for identifying, reporting and helping
to diagnose this defect.
2011-04-09 08:20:06 +01:00
Mark Liversedge
d8fe95e3a4 HomeWindow takes a name to load/save layout. 2011-04-06 21:14:36 +01:00
Mark Liversedge
37bda1efeb Fix video on startup. 2011-04-06 21:00:23 +01:00
Mark Liversedge
6c787e6e60 Training Mode Improvements - Part 1 of 3
Update to training mode to improve the UI and overall
user experience. This initial patch introduces:

* Video Window - but ghetto and not fully functional
* Congigurable - drag and drop 'dials' onto homewindow

In future updates we need to:
* Support Video fully - Only Linux in this patch
* HomeWindow - Make Training mode the same as HomeWindow
* More Dials - Support metrics (e.g. BikeScore)
* RT Charts - Make RT plot drag/drop and support other
              types of charts (e.g. Time In Zone)
* Controls - Add more controls for FFWD/REW, Skip etc

This patch has been tested on Linux ONLY. It is being committed
to support further build/deployment work for Win32 and Mac OSX.
2011-04-03 18:30:35 +01:00
Darren Hague
0d84f87265 Fix CycleOps Fluid 2 virtual power calculation
Fixes #239
There was a missing "break" after the CycleOps calc, so it went ahead
and overwrote the value with the BT-ATS calc. "break" now inserted.
2011-03-27 18:34:08 +01:00
Darren Hague
31f8add1f3 Improve stability when libusb0.dll is not present 2011-03-24 07:26:35 +00:00
Darren Hague
241be59280 Dynamic load of libusb0.dll
This means that libusb0.dll does not have to be included in the
Golden Cheetah distribution - the code will load it automatically
from windows\system32 on demand when realtime mode is invoked in
Native ANT+ mode. Insertion of a USB2 ANT+ stick will cause Windows
to download and install libusb0 automatically.
2011-03-22 07:12:29 +00:00
Mark Liversedge
245ac7be2c Fix SEGV in WorkoutWizard when no ride selected. 2011-03-19 22:54:55 +00:00
Mark Liversedge
d2d2ca24a0 USBXpress SDK fixup missed USBXpress.cpp on last commit. 2011-03-19 22:11:43 +00:00
Mark Liversedge
93ea945db9 Fixup USBXpress.h when SDK is not installed. 2011-03-19 22:01:36 +00:00
Darren Hague
0c70c98cb5 Native ANT+ part 2 - USB2 Support and minor improvements
This patch adds support for the Garmin USB2 stick using
libusb-win library. Instructions are included in gcconfig.pri.in
for configuring and installing the neccessary libs.

To enable support for USB1 and USB2 support in the same binary
stubs are created when UsbXpress/Libusb are not available and the
device i/o attempts to use USB2 before falling back to USB1.

Since I was also in the middle of some coding changes I merged
my developments (Mark) with Darren's patch whilst fixing it up
for commit, namely:

1. the configuration screen no longer demands a COMx port
   when using Native ANT+ on Windows.
2.  new signals in ANTChannel notify the ANT class when info is
   stale or lost (but they are not used at present).
3. The previous debug messages have been removed, although new
   debug messages are added for stale/drop/timeout signals.
2011-03-19 21:03:43 +00:00
Mark Liversedge
0634e3c232 Native ANT+ Part 2 - antlog.bin dignostics
A patch to create an 'antlog.bin' in the current working
directory when working with ANT+ devices. This is to enable
users to test the ANT+ support and share the received messages
to diagnose issues related to parsing messages and displaying
telemetry.

This 'antlog.bin' will ultimately become a native ant file format
and have an associated extension (.ant) and a ridefile reader.
For now it just writes a stream of fixed length messages (12 bytes)
of all received messages.
2011-03-14 21:57:35 +00:00
Mark Liversedge
c480424fc5 QMAKE_DEL should have been QMAKE_DEL_FILE in previous commit. 2011-03-10 20:08:00 +00:00
Mark Liversedge
c9e6b8ba6b Fix Flex/Bison issues on Win32
Added the QMAKE_DEL setting to gcconfig.pri.in to signpost
setting to rm -f on Win32.
2011-03-10 20:00:08 +00:00
Mark Liversedge
5af527d7ff Native ANT+ Part 2 - Improved Power Support
Fix SRM power decoding to stop requiring a new message
pair whenever a zero change occurs - this was erroneous
and severely limited the update rate. Power and Cadence
updates for SRM are now immediate.

Desk check of support for Standard Power messages showed
that the code was interfering with normal cranktorque or
wheeltorque power calculations. This did not show up with
SRM cranks since they do not send standard power messages.

This should help to resolve issues with erratic/incorrect
power readings from Powertaps. I am not sure if Quarq cranks
send standard power messages, but if they do then this should
improve power readings for those too.
2011-03-10 14:26:12 +00:00
Mark Liversedge
12c82be84d Remove RideSummary from Metadata default config in V3 2011-03-10 08:28:48 +00:00
Mark Liversedge
a6c7ce015c Fix ASSERT crash in Weekly Summary for No Zones
If you have no valid zones configured for the week being
displayed the weekly summary window crashes on an assert.
This was caused by new code for v3 which uses the metricDB
to avoid unneccessary computation -- but introduced this
error.
2011-03-08 18:07:30 +00:00
Mark Liversedge
bac3959fcc Native ANT+ Part 2 - Garmin USB1 Stick on Windows
This patch provides support for Garmin USB1 sticks under
Windows. Since the device does not present a serial port
this code uses the USBXpress API from SiLabs that the
Garmin device uses.

Support for USB2 sticks is pending.

To build you will need to download and install the SiLabs
development kit from http://www.silabs.com/products/mcu/Pages/USBXpress.aspx
and set USBXPRESS_INSTALL appropriately in gcconfig.pri. I
have provided instructions in gcconfig.pri.in.

At runtime the SiUSBXp.dll will need to be in the path, I will
assume that Gareth will fix up the windows installer for this, but
for now just copy the file manually.

Tested with a GARMIN USB1 stick on Windows 7 with SRM, Garmin HR and
a GSC-10 dual speed/cadence device.

There are other minor fixes to the ANTMessage code in this patch
related to decoding of calibration messages.
2011-03-07 13:39:17 +00:00
Mark Liversedge
926cf0263d Native ANT+ Part 2 - tweaks
Couple of little tweaks to the Native ANT support. Firstly,
data channels such as watts, hr and cadence are now rounded
to an integer (lots of grid lines in ride plot looked nasty).

Secondly, basic support for calibration messages; this has been
limited to SRM messages, but will add support for other devices
as we start to debug them.

Part 3 of this work is still pending, this patch only contains
adjustments to part 2. I suspect there will be further adjustments
as we squash bugs for Quarq and PT users.
2011-03-06 21:16:04 +00:00
Mark Liversedge
1725ca0520 Native ANT+ debug, temporary for testing. 2011-03-06 13:41:16 +00:00
Mark Liversedge
4f9a2f6f72 Fix WorkoutWizard.h use of <> instead of "" for win32 build 2011-03-05 15:23:17 +00:00
Mark Liversedge
9658378c71 Native ANT+ Support (2 of 3)
Second stage of development, refactored the quarqd sources and introduced
an ANTChannel and ANTMessage class.

This is a functional patch and should work with known ANT+ devices, but
has only been tested with a Garmin HR strap, GSC-10 dual speed/cadence
and SRM wireless cranks. It has only been tested with a first generation
Garmin ANT+ USB stick.

It *should* work with other devices (e.g. Powertap, Quarq) but this has
not been tested.

The configuration pane has not been fixed yet, so you can either add a
Native ANT+ device and leave the profile blank (it will autodiscover
whatever it can when you run) or you can copy the profile from a Quarqd
device and use that.

There are lots of bugs;
* Calibration is not supported, uses a static srm_offset
* Wheel circumference is fixed at 2100mm for speed calculations
* Timeouts are hit and miss and need to be completed
* Sensor loss / timeouts are not managed yet
* Burst data and Acks are not handled
* Device descriptions, versions and battery messages are not handled

Aside from the bugs above part 3 wil also need to include;
* Configuration screen fixups and device pairing
* Add a calibration button to the realtime window

Lastly, the refactoring of the quarqd code is incomplete, there is still
a need to use ANTMessage across the code, especially within the ANTChannel
code which still does a bit of decoding locally.
2011-03-05 15:08:41 +00:00
Eric Brandt
217cb3bb54 Added 'interval summary' window below the interval tree
When an interval (or intervals) are selected in the
interval tree, the new window below the tree now shows
summary information for the selected interval(s). This
is beneficial for example when the Ride Plot tab is shown
and the user also wishes to see summary info about the
intervals. This fixes #77.

I think there is still room for improvement on the fields
displayed and the formatting of the summary window. For now
the fields are the same as those displayed in the Ride Summary
page.
2011-02-27 13:21:58 +00:00
Mark Liversedge
6333152dec post merge master in release_3.0.0dev fixups. 2011-02-27 11:36:14 +00:00
Damien
5858be952d Remove error logs for unused datas in ride file
Fixes #173
2011-02-27 11:07:49 +00:00
Ilja Booij
32337150f5 fix 'Wrong distance on Tacx caf file import'
This fixes wrong distance on Tacx by taking distance of first data
point as the base, and basing all distances on that first point.

Fixes #204
2011-02-27 11:07:49 +00:00
kohasa
39fa61a620 enabled editing interval duration by keyboard.
Fixes #125
2011-02-27 11:07:48 +00:00
Mark Liversedge
a0170c4085 post merge master fixups. 2011-02-26 14:50:40 +00:00
Gareth Coco
0d7aa57d6f FIT file reader fixes
1. Allow FIT reader to recognise the file comes from a Garmin Edge 800
This is Garmin product ID 1169 in the decodeFileId routine.

2. Ignore global_msg_type = 72
This message appeared with the introduction of the Garmin Edge 800.
There is no FIT SDK that tells us what this message is.
It appears only once and has timestamp/device serial number.
Code now recognises the msg_type as valid but we don't process it.

3. Add all decodeEvent types and work only with "timer" events
Not all event_types were present. They are now all in the function.
Previously the decodeEvent would look at all "events"
We now only decode event_types if the event is of type "timer".

Fixes: #250
2011-02-26 14:09:30 +00:00
Gareth Coco
d896064ed4 Changes to map markers
1. Removed green begin marker
2. Change interval markers 2 and higher to be blue
2011-02-26 14:09:30 +00:00
Greg Lonnon
1a177bb1e1 Added a QFilesystemWatcher to monitor adding files to the workout directory.
This allows the TrainTool to automatically pick up any changes added to
the directory
2011-02-26 14:09:30 +00:00
Rainer Clasen
9d05aa0704 Added SRM5 file format read support
SRM5 basically is the same as SRM6, but lacks "blocks". This means, it
only has the date of the exercise and no further absolute time info.
Furthermore it can't flag periods of time, where no data was collected.

Due to lack of absolute time, Exercises start at 0:00, by default.

Fixes #208
2011-02-26 14:08:54 +00:00
unknown
bfb85b1fa2 This patch correct altitude for TCX files converted from FIT files These files doesn't have altitude for each Trackpoints. I propose to not assign 0 to altitude before each trackpoint
Fixes #60
2011-02-26 14:07:53 +00:00
Mark Liversedge
5c9f3e8ae3 post merge master into release3.0.0dev 2011-02-26 13:58:40 +00:00
Eric Brandt
9111279ea5 fix realtime mode load timer and lcd sig. digit display issues
The load timer was simply being accumulated with each firing
of the timer. This resulted in inaccuracies. The fix is to
accumulate using a timer that measures the duration between loadUpdate
calls.

The speed, average speed, gradient, and distance LCDs ought to always
display 1 significant digit to avoid bouncing. This is now fixed.

This commit fixes #262 and fixes #263.
2011-02-14 22:05:42 +00:00
Mark Liversedge
68e8a92381 Flex/Bison instructions in gcconfig.pri.in 2011-02-12 20:59:50 +00:00
Mark Liversedge
4b8d6311cd Fix TreeMap Crash & Cosmetics
The recent fix for date range selection was not applied to the
TreeMap plot and caused a SEGV on restart (when placed on home
window). This fixes that.

It also fixes a minor cosmetic related to QFrame margins.
2011-02-11 23:08:05 +00:00
Mark Liversedge
af987ed3c3 post merge master into release3.0.0dev fixups. 2011-02-07 20:11:40 +00:00
Mark Liversedge
4508a83362 Fix 'Save data' in RealtimeWindow
A previous commit stopped disk updating from working, i.e. saving
workout data to a .csv file. This patch fixes that.

Fix supplied by Greg Lonnon, Fixes #254.
2011-02-07 19:48:31 +00:00
Mark Liversedge
e7c94a3ee9 Fix Computrainer with Stereo FTDI adaptor
The newer Racermate FTDI based USB adaptor (USB-StereoJack) failed
to receive data from the Computrainer, this was due to incorrect
flow control settings.

Fix supplied by Eric Brandt.
2011-02-07 19:25:25 +00:00
Mark Liversedge
af99874b86 Fix Computrainer with Stereo FTDI adaptor
The newer Racermate FTDI based USB adaptor (USB-StereoJack) failed
to receive data from the Computrainer, this was due to incorrect
flow control settings.

Fix supplied by Eric Brandt.
2011-02-07 19:02:41 +00:00
Mark Liversedge
00e21a931f Native ANT+ Support (1 of 3)
First stage of development, folding together the
quarqd sources and creating an ANT+ worker and controller
to work with realtime window.

The basic code is folded together and compiles fine. The next
step is to address the channel management code, device discovery
channel assignment and channel event handling. This will be pushed
as part of the next commit.

The third commit will need to fixup the configuration pages to
support selection of device/baudrate, fix native discovery/pairing
in config and lastly, fix a long standing issue with the config pane
to allow editing of existing device configurations.

This is NOT a functional patch yet, but compiles and runs fine. Committed
as a checkpoint before refactoring quarqd supplied code.
2011-02-06 17:54:50 +00:00
Mark Liversedge
d3e37db859 Merge branch 'release_3.0.0dev' of github.com:/srhea/GoldenCheetah into release_3.0.0dev 2011-02-05 12:53:59 +00:00
Mark Liversedge
d4eaf99a3f Improved Season Support
This fixes issues with date range editing in the Metrics controls
and provides support for Season load planning (under development).

Creating and selecting seasons is largely managed within the
Metrics tool. This has not been changed with this patch. Athlete
seasons are now managed as a member of the MainWindow class (although
this will move to an Athlete/Cyclist class when MainWindow is
refactored).

A Season identifier (UUID) has been introduced to enable Seasons to
be referenced independently of their name or date ranges. The LTM
tool now keeps track of changes to Seasons (when new seasons are
created, changed, deleted). Additionally, the Season XML file now
supports storage of a Season Load Plan.
2011-02-05 12:46:54 +00:00
Mark Liversedge
f95916e680 merge master into release_3.0.0dev 2011-01-30 16:13:00 +00:00
Damien
a873fb12cc Modify csv import for ergomo file with comma or semicolon separator
Fixes #244.
2011-01-30 15:50:24 +00:00
Darren Hague
c40f643cfa Remove toMSecsSinceEpoch() and work around
toMSecsSinceEpoch() is from Qt 4.7. Replaced with an implementation
based on QTime:start() and QTime.elapsed() from Qt 4.6.
There is now a theoretical upper limit on turbo sessions of 24 hrs :-)

Fixes #247.
2011-01-30 15:14:13 +00:00
Mark Liversedge
2ef409fceb merge master into release_3.0.0dev 2011-01-30 15:09:27 +00:00
Darren Hague
f306c1849a Add virtual power support for BT-ATS trainer
Add "BT Advanced Training System" to dropdown.
Implement 3rd-order polynomial to get power from speed.

Fixes #246.
2011-01-30 14:43:11 +00:00
Greg Lonnon
665d97f001 Computrainer Workout Wizard
A wizard to create workouts based on absolute wattage and time
relative wattage and time (to CP60) slope and distance and import
an existing ride, and provide some smoothing to the ride data.

Also fixes NP calculation SEGV when recIntSecs is negative.

Fixes #249
2011-01-30 14:24:29 +00:00
Mark Liversedge
6a071bf2c0 merge master into release_3.0.0dev. 2011-01-22 20:42:00 +00:00
Darren Hague
a70091d282 Use realtime clock for realtime-mode clock
Instead of adding 200ms to the elapsed time on every gui update,
this patch records the timestamp of when the Start/Pause buttons
are clicked and subtracts these from the current hardware clock time
to calculate elapsed total & lap times.  Fixes bug #235.
2011-01-22 20:24:52 +00:00
Darren Hague
06b66320e4 Corrected - to + in CycleOps formula
Fixes #239
2011-01-22 20:24:52 +00:00
Mark Liversedge
c72a924a7e Translations Bonanza!
Russian Translation from Gwelu
Czech Translation from Beeda
Updated Japanese Translation courtesy of Key
Updated German Translation courtesy of Luke

Golden Cheetah now supports 7 languages!
2011-01-22 20:19:42 +00:00
Mark Liversedge
ef4fc0781e Improved Calendar Support
Fixes previous CalDAV support, as MobileMe based calendars
now work ok. Additionally, a new 'id' field has been created
to provide a persistent and immutable identifier for a ride
file (regardless of changes to date/filename).

The URL provided in the Calendar config pane can now include
'@' symbols (they are translated to %40).

The CalDAV URL should be provided for a calendar collection and
not for a principal. Examples being (trailing slash is significant):

Google  : https://www.google.com/calendar/dav/xxxx@gmail.com/events/
MobileMe: https://cal.me.com:8443/calendars/users/x.xxxxxxxxxx/home/
2011-01-22 18:54:05 +00:00
Mark Liversedge
56d7f448c3 Cosmetic tidy on DiaryWindow, tidy CalDAV code. 2011-01-16 20:09:29 +00:00
Mark Liversedge
e2eb62fb85 Upload Ride to calDAV based calendars
A new menu option and associated config to integrate the
diary window (and ridefile history) with a calendar server
that supports CalDAV (iCal, Google, MobileMe).

This patch introduces an upload to calendar function and is the
first step towards adding calendar based planning functions.

It is important to note that no local calendar is maintained, we
are simply integrating with an existing calendar service.

It has been tested with Google Calendar, further testing and
enhancements are ongoing for users of Apple's MobileMe.
2011-01-16 15:04:40 +00:00
Mark Liversedge
0c65600e66 Fix gcc 4.5 compile error/warning in HrPwPlot.cpp
A couple of nits in the code were picked up by
gcc-4.5; const in a function returning non-const
and an unneccessary initialisation of a QList calling
the constructor directly.

Fixes #236.
2011-01-11 21:11:28 +00:00
Mark Liversedge
60764d4e62 Export Metrics to CSV
A new menu option to export the ride metric data
as a CSV format file for manipulation in tools like
Excel.

It exports all rides (no date range) and outputs the
date in US format month/day/year, with time in 24hr format.

Additionally, a 'hack' to export all rides in GC format has
been removed since it was erroneously included in the initial
v3 branch.
2011-01-11 19:28:35 +00:00
Mark Liversedge
d814e78c01 Drag cursor support Qt < 4.7 2011-01-11 17:15:58 +00:00
Mark Liversedge
89af266773 fix homewindow resize cursor bug. 2011-01-11 13:33:26 +00:00
Mark Liversedge
bf3f273ca4 Segmented button on Mac fix show selected. 2011-01-10 20:33:38 +00:00
Mark Liversedge
ff0a1cfbc3 Single click moves chart to end of homewindow
If you click on a title bar to stick the controls
for a window it was getting moved to the end of the
charts (the default action for move chart).

This patch fixes this.
2011-01-09 21:56:29 +00:00
Mark Liversedge
63bc06d33f Fix addchart crash on empty homewindow
Silly bounds error when there are zero charts on
the homewindow.

Fixes #232.
2011-01-09 21:01:50 +00:00
Mark Liversedge
6fdffb5a4d Merge Master into V3 Branch
- German translation update
- Virtual power in realtime

Conflicts:
src/DeviceConfiguration.cpp - needed to adjust
to use appsettings for read/write of application
settings.
2011-01-09 19:37:05 +00:00
Darren Hague
6e449b2d30 Virtual Power; Better GSC-10 pairing support.
Virtual Power - included patch from Mark Liversedge & corrected bug
with his help.

GSC-10: Check dual sensor 4th and speed-only sensor (which is rare) as
5th.
This means that an all-Garmin setup (ANT+ stick, GSC-10 sensor) will
always work. A speed-only sensor is almost useless in GC real-time
mode anyway, because speed-only sensors tend to run off the front
wheel which will be stationary on a trainer. Fix pointer problems with
device controller/config.

Fixes #219
2011-01-09 19:15:20 +00:00
Mark Liversedge
500b58334b Merge branch 'realtime3' of https://github.com/glonnon/GoldenCheetah into release_3.0.0dev 2011-01-09 19:04:49 +00:00
Mark Liversedge
f433bdacd2 HomeWindow chart move/drop
The previous commit enabling tile 'bumping' as
you move them around proved impractical with
charts that largely filled the screen.

This patch replaces this approach (original code
is retained though) by using a 'cursor' to show
where charts will be dropped / moved to and moving
or dropping to this position.

This means the layout code is complete, except for
potentially adding support for multiple layouts (e.g.
have saved layouts for different purposes like
LTM charts for last 6 months or 28 days or an
agenda view that shows past week next week calendar).
2011-01-09 18:47:02 +00:00
Greg Lonnon
0de0e7eb40 kJoules, BikeScore, xpower displayed, fixed length speed/avg speed, refactored grid layout.
kJoules : take the avg power and multiple it by the number of seconds.

bikescore, xpower : added a rideFile object to calculate the bikescore, xpower on a 5 second
period.  It has it's own timer.

fixed display of speed and avgSpeed:
old aglorithm would not display the tenths place if it was zero.  New aglorithm
always displays the tenths place.

Signed-off-by: Greg Lonnon <greg.lonnon@gmail.com>
2011-01-09 10:20:35 -07:00
Damien
3b6085f47e enhancement for HrPw 2011-01-09 10:30:35 +00:00
Mark Liversedge
3f13091a2f Move tiles on HomeWindow
More work to support moving tiles on HomeWindow. This update
adds tile movement and 'pushing' other tiles out the way as
you move them around.

Tile ordering/positioning is still todo, but this introduces
the visual feedback during a move for the user.
2011-01-08 20:06:29 +00:00
Damien Grauser
5e456d0cd3 SRMWIN Style HrPw Plot
Added a plot of heartrate to power showing
histograms of power on y-axis, heartrate on
the x-axis and overlaid hr/power scatter.
2011-01-07 22:07:23 +00:00
Justin Knotzke
c613297435 Update of German translation by LukeNRG 2011-01-06 17:36:20 -05:00
Mark Liversedge
46c856e53b Tidy up bar chart in metrics
Simple, but oh my, what a difference. This two line
patch removes the nasty line artefacts on a bar chart.
Those are the lines that get 'left behind' when a bar
is drawn next to another one.
2011-01-04 20:10:21 +00:00
Mark Liversedge
0c35d980a1 fix close chart crash. 2011-01-04 19:16:45 +00:00
Mark Liversedge
3f8fa631a2 Allow user to drag/resize tiles on homewindow. 2011-01-03 19:47:37 +00:00
Mark Liversedge
65b79d264a Make libical optional
If ICAL_INSTALL is not defined in gcconfig.pri
then diary/calendar functions are not compiled. This makes
libical an optional dependency, like libkml, libqwtplot3d et al.
2011-01-03 11:30:56 +00:00
Mark Liversedge
67543a516e merge origin/master fixups. 2011-01-02 18:12:27 +00:00
Greg Lonnon
73e1373dc0 changes to the markers in google maps.
blue marker = start of ride
red marker = end of ride
green markers = interval markers.

interval markers has the interval metrics displayed.
end marker has the ride summary displayed.

Fixes #169.
2011-01-02 17:21:17 +00:00
Mark Liversedge
19440ca372 Fix homewindow bugs
Fixes;
- drag and drop ride works again
- segv on an empty measures curve in metric plot
- remembers all LTMsettings
- further cosmetic/visual tweaks
2011-01-02 13:14:34 +00:00
Mark Liversedge
d0d16649f4 Julian Candy 2011-01-02 13:14:30 +00:00
Mark Liversedge
805e74de5a Inital V3 Branch 2010-12-30 17:35:23 +00:00
Mark Liversedge
07af116215 Merge branch 'master' of github.com:/srhea/GoldenCheetah 2010-12-25 23:08:40 +00:00
LukeNRG
7020179433 German Translation
Provides 100% coverage of language texts*

* a couple of texts for WeeklySummary window containing html
  codes (gt,lt et al) had not retained their encoding using
  &gt, &lt, whilst I edited a few of them in the file, these
  two were particularly complex and challenging. We can fix
  them later. [Mark Liversedge]
2010-12-25 23:07:25 +00:00
Justin Knotzke
4b61516d86 Cycleops Test Ride 2010-12-21 18:13:49 -05:00
Roberto Massa
6c4b3b2d3e Italian Translation
Provides translation for 47% of language texts.
2010-12-19 14:48:41 +00:00
Bruno Assis
ab08c00166 Portugese (Brazil) Translation
Provides 64% coverage of language texts.
2010-12-19 14:38:38 +00:00
Mitsukuni Sato
7c2ff35bee Japanese Translation
Provides 100% coverage of translatable texts.
2010-12-19 14:21:47 +00:00
Greg Lonnon
19a7c23ca4 GPX RideFile Support
The current format will parse time, and gps data.  It will interpolate
distance and speed based on time and gps.
2010-12-17 21:05:29 +00:00
Jamie Kimberley
44c8851543 Update download page to reflect build of mac 10.4 2010-12-12 21:07:41 +00:00
Mark Liversedge
e78e3fc4c0 Mac PPC binary added to downloads page. 2010-12-12 18:14:14 +00:00
Mark Liversedge
c820746ba3 Add link to wiki from the website. 2010-12-03 08:38:12 +00:00
Mark Liversedge
3ea0918321 Joule support fixed on download page. 2010-11-30 21:18:24 +00:00
Mark Liversedge
774b503cb9 Updated www.goldencheetah.org for v2.0 release. 2010-11-30 20:52:39 +00:00
Mark Liversedge
76d4e48f71 New screenshots for the website. 2010-11-29 21:08:43 +00:00
Mark Liversedge
502e4f4335 tweak LTM bar chart gaps. 2010-11-29 10:42:16 +00:00
Mark Liversedge
cffba9d3c8 Plot bars side-by-side on Metric charts
This patch plots bars next to each other, rather than overlaying
them making the data much easier to interpret. The code is inspired
from Robert Carlsen's weekly summary.

The "transparency" for the bar colors has been adjusted to make
the coloring more vobrant since we no longer need to 'see through'
bars to see what is underneath.
2010-11-29 10:08:06 +00:00
Mark Liversedge
706a58a147 Disable Ride Editor for manual or null rides. 2010-11-27 22:00:23 +00:00
Mark Liversedge
3f9321796a Fix CSV parser and more checks for NULL ride
The CSV ride parser now checks for empty rides and returns
a NULL ride if there are no samples. In addition, the rideEditor
tries to set editorData even if the ride is NULL. Lastly, the
RideItem code for lazy reads of RideFile data didn't check for
NULL values (!).
2010-11-27 21:52:02 +00:00
Mark Liversedge
9ba3f0abee Fix Stop(DEVICE_OK) connect error in RealtimeWindow
The signal/slot connection in RealtimeWindow for the 'stop'
button fails. The code wants to pass DEVICE_OK to the slot
but the QWidget connect method wants a SLOT signature.

This patch sets a default of DEVICE_OK for the newly
introduced 'status' parameter to the Stop() method and
corrects the signature used in the connect statement. As
a result, if the Stop() button is pressed the status will
be 0 (DEVICE_OK).

If you press start then stop really quickly and there *is*
a device error then it will still create a CSV file with no
samples. The CsvRideFileReader should be fixed to parse
these files correctly.
2010-11-27 21:32:58 +00:00
Justin Knotzke
d259f1dbf8 Fixed bug whereby CSV file was corrupted.
When Device was not available, Realtime was creating a corrupted CSV.
If Device is not availble at startup, the ride file is removed.
2010-11-25 10:22:59 -05:00
Mark Liversedge
0d3caf923a Prettify Bar Charts in LTM
The bar charts on the metrics tab are a bit on the
quirky side. This is an artefact of the qwt library's
lack of a bar chart style.

This patch adopts the same approach used in weekly
summary charts and the histogram 'by zone' plots.

Fixes #185.
2010-11-09 19:53:02 +00:00
Mark Liversedge
42b57cf9ce TRIMPPoints use workout_time not time_riding
TRIMP was using time_riding to calculate points
even though the HR average is for the entire ride.
In addition, time_riding may be zero when only
HR data is present (there is no way of determining
time spent or not spent riding).

Fixes #187.
2010-11-09 19:43:12 +00:00
Mark Liversedge
7d2703fcd6 Workaround for hidden files on Win32
Ride files may be created as hidden files in some
instances on Windows 32. This patch ensures that
they are subsequently included in the ride list
(i.e. ride files can be hidden files).

Fixes #176
2010-11-06 08:28:45 +00:00
Mark Liversedge
4e43b4bd10 Too many TRIMP metrics on Summary
This patch removes the additional TRIMP metrics
on the ride summary, plain old TRIMP points are
shown but not the zonal and 100 versions.
2010-11-06 08:25:39 +00:00
Damien
95a495a5e9 Correct TRIMP HR equation.
Fixes #177
2010-11-06 08:23:54 +00:00
Damien
975ee8d80b Fix HR add zone crash
Fixes cannot add new HR zone (v2.0-RC1)

Fixes #172
2010-11-03 06:01:38 +00:00
Rainer Clasen
b1b2d1a2de Fix SRM interval start/end
While the last patch for misaligned SRM Intervals did fix the out of
bounds indices (and thereby fixed the crash), it got the start/end
swapping wrong. In other words: It swapped start/end where it shouldn't
and therefore broke all interval handling.
2010-11-02 06:19:18 +00:00
Gareth Coco
69d2636a3e Font issues in 3D plot on Linux
Updated gcconfig.pri.in to advise Linux users who have font issues
with the 3D plot tab, to download the latest 0_2_x code for qwtplot3d.

Fixes: #88
2010-11-01 17:23:27 +00:00
Ilja Booij
907e0c40bf Fix Polar ride parser crash
Tacx HRM exporter does not create an [IntTimes] section.
When the [HRDate] section is encountered, This patch creates
a single interval in the intervals list, which has the
length of the complete ride.

Fixes #23
2010-11-01 14:12:56 +00:00
Mark Liversedge
3648418c62 Typo in HistgramWindow for checking HR/Power ranges
The code in HistogramWindow::rideSelected() to check
HR and Power zones have been configured for the
ride just selected contained a typo; the power range
would be set to HR and the hr range would be set to
power. This resulted in the wrong options being shown
in the drop down box.

This patch fixes this behaviour.
2010-11-01 13:26:44 +00:00
Mark Liversedge
0ebe96c4f6 HR Zone Shading on Histogram
Last piece of the TRIMP/HR enhancemens to the
hisogram plot; enables HR zone shading, HR zone
colors in options and also fixes the axis to
start at the lowest HR value present rather than
zero.
2010-11-01 11:26:10 +00:00
Mark Liversedge
2106ec6458 Fix PM day offset by 1
Almost certainly caused by a fencepost errors somewhere else
in the code. This fixes the offset by subtracting one from the
offset used.

Fixes #28
2010-11-01 06:47:40 -04:00
Mark Liversedge
e82b081f51 Fix config pane ugly scrollbars on Linux. (twitter icon) 2010-10-31 23:52:15 +00:00
Damien
ddcb5882a3 Zonal TRIMP 0 if no HR. 2010-10-31 23:31:55 +00:00
Mark Liversedge
ea80ec714b Fix WKO+ files with Alt, Wind or Slope
The logic in the WKO+ ridefile parser tried to
re-use code blocks for working with alt, wind
and slope but as a result ended up overwriting
variables and losing data as a result.

It also mishandled negative values for those
data series.

It also falsely reported iBike files as Ergomo.

Fixes #164
2010-10-31 21:45:50 +00:00
Damien GRAUSER
d2e8c63ed2 HR Zones and TRIMP Metrics
This patch introduces new functionality for working with
Heartrate based data.

* HR Zones can be defined, from Resting, Maximum and Lactate HR
* TRIMP metrics are calculated; TRIMP, TRIMP100 and Zonal TRIMP
* TRIMP metrics can be used to drive the PMC
* Time In Zone metrics for HR have been added
* Histogram window will now work with Power/HR zones
* User Settings have been added to record gender, weight and others
* RideFile has a new tag "Athlete" which is set to the athlete name

Fixes #140
2010-10-31 18:08:48 +00:00
Justin Knotzke
a5b9af6fa4 Removed superfluous call to creating a CSV file. 2010-10-31 07:02:52 -04:00
John Ehrlinger
05787cdcdc Update the Polar hrm file import to include a conversion for files recored in english units.
S-series records in english
CS-series records in metric.
2010-10-26 19:25:18 -04:00
John Ehrlinger
58c253f934 Add a collection of polar hrm files for testing purposes.
These files include english and metric units. Files are imported from s610/s725x/cs400 units. Include different data types.
2010-10-26 19:23:35 -04:00
Ilja Booij
3c330725d7 Some .caf files have data blocks which have an extra 8 bytes per record. I do not know what the contents of these 8 extra bytes are, but to make things work, we need to at least take them into account when parsing the files.
The caf parser now checks what version the file is (100 or 110) and
handles data records accordingly. Files with version 100 have 10
bytes per data record, all of which are known. For version 110, the
first 10 bytes are the same as version 100, followed by 8 bytes per
data record.
2010-10-26 19:17:01 -04:00
Gareth Coco
ecbd07fd6e Resolve Lat/Long issue on FIT file import
The FIT parser will attempt to interpolate data when filling in for smart
recording or if a record is missed. A problem occurs if one of the lat/long
points is missing or 0,0.

This patch will record a 0,0 lat,long if the record is missing in the FIT
file and when interpolating, will set any interpolated data points to 0,0
if the start or end record is also 0,0.

A 0,0 record is not plotted on the MAP tab.

Fixes #111
2010-10-26 19:12:37 -04:00
Gareth Coco
73dae0cdbc Correctly plot lat/long for CSV files
When writing out data point, lat/long were transposed.

Fixes: 136
2010-10-26 19:06:20 -04:00
Jamie Kimberley
a1970acb55 Fix gaps in ride now keeps previous altitude
The patch changes the behavior of the "fix gaps in rides" function. This
now fills stops in rides with the last recorded altitude rather than zeros
as was previous behavior.

fixes #158
2010-10-26 19:02:53 -04:00
Mark Liversedge
e157ac4c53 Fix WKO+ with Powercontrol VI RideFile reader crash
Files kindly supplied by Alex Simmons have demonstrated a bug in the
parsing of WKO+ files that contain data downloaded from an SRM
Powercontrol VI. The files are parsed incorrectly and often lead
to crashes or absurdly high summary values.

This might be version specific, since the files were WKO v3 files, we
should watch for WKO+ v2.2 files that contain Powercontrol VI data and
potentially make this version specific if needed.
2010-10-25 21:20:50 +01:00
Jim Ley
c461c5fa2c More help/feedback during entry of manual workout
Improve fix of #132 so that it doesn't require you to enter
a bikescore or daniels point or distance if you do not want to.

Add hints to the appropriate values for the entries.

Fixes #132
Fixes #146
2010-10-25 17:45:08 +01:00
Mark Liversedge
d024185b7a Make ride file pattern case insensitive. 2010-10-22 21:46:19 +01:00
Rainer Clasen
65af42ccce 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
a2cdd1405d 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
801178a3e9 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
d55679b0cc 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
7d7d4c88f6 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
1135dfd0fc 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
d8daa33ffb 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
1ab44370b3 Fix SEGV in connect error for QT4.6
Fixes #80.
2010-09-28 22:21:04 +01:00
Jamie Kimberley
34dc30d1fc 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
da8b6aad61 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
55375acba3 Missing #ifdef if not building with Twitter support. 2010-09-05 14:37:07 -07:00
Justin Knotzke
c9934ae9e4 Missing #ifdef if not building with Twitter support. Thanks John Ehrlinger 2010-09-05 14:24:35 -07:00
Justin Knotzke
6434e6ed3e Support for OAuth for the Twitter feature. Metric adjectives by Robert Carlsen. 2010-08-26 14:06:25 -04:00
Mark Liversedge
b83c08ca12 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
583e816a8a Fix blank space on right of AllPlot. 2010-08-14 13:00:05 +01:00
Damien Grauser
2cd05ea3da Support for Joule BIN File Format
The new source files, missed from previous commit.
2010-08-10 18:55:55 +01:00
Damien Grauser
a5fc7d1c6b Support for Joule BIN File Format 2010-08-10 18:54:07 +01:00
Mark Liversedge
f0e9d72576 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
bb1bfe1ac1 When DFPM watts were detected, GC was still using fake iBike watts. 2010-08-05 16:08:51 -07:00
Mark Liversedge
7934bd1e34 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
d415fa4ee5 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
b56eb0b455 Fix lots of SEGV in AllPlot for new cyclist (rideItem is null). 2010-07-30 06:43:54 +01:00
Robert Carlsen
d89520079d Updating stack zoom control enabling logic. 2010-07-29 21:16:22 -04:00
Robert Carlsen
91f3c54821 Disable stack zoom controls when stacked view is disabled. 2010-07-29 02:16:22 -04:00
Mark Liversedge
578c5ccbbd 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
a06084a2ef link to Gareth's devel builds from main site 2010-07-28 19:48:05 -07:00
Mark Liversedge
94bdd38f7d 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
67293724f7 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
f29b0244ec Fixed a small typo in QHttp. 2010-07-26 06:51:29 -07:00
Justin Knotzke
fd52d79cac Merge branch 'origin' 2010-07-25 07:54:29 -04:00
Justin Knotzke
001d842a7e Twitter image for the Config Dialog page. 2010-07-25 06:59:53 -04:00
Justin Knotzke
4450154a60 Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-07-25 06:57:23 -04:00
Justin Knotzke
76cd8c0a4e Tweet your ride. You can now tweet your ride from GC 2010-07-18 15:15:26 -04:00
Mark Liversedge
d904789585 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
76bf27959d Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-07-17 14:45:45 -04:00
Mark Liversedge
3fd6f05850 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
f786e2985c Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-07-06 17:35:20 -04:00
Mark Liversedge
8d8908d177 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
d7fe58268e Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-06-07 06:32:18 -04:00
Mark Liversedge
44970b6c3a 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
8bd257f73d 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
959e72dd42 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
5742f37712 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
e8db2b09de 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
46606700b3 Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-05-01 16:01:48 -04:00
Mark Liversedge
e94ae95f64 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
bf2fd1b7cc 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
effeb0f43b japanese translation 2010-05-01 10:22:25 -07:00
Mark Liversedge
1a1c7f13ab 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
b7d3d12485 fix SEGV in AllPlot on manual/null rides
fixes #71
2010-05-01 10:19:46 -07:00
Mark Liversedge
ae0962edc6 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
f0f762b8bc Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-04-11 17:42:24 -04:00
Mark Liversedge
851e60a858 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
8c9177a57d added the javascript routine to do mouse overs 2010-04-11 17:22:34 -04:00
Sean Rhea
1007ab3035 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
2c00dc0a41 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
c54d45643a fix Daniels EqP when Time Riding == 0.0 2010-04-06 21:37:27 -04:00
Sean Rhea
df3a13c2ed fix ugly formatting 2010-04-06 21:36:58 -04:00
Mark Liversedge
0f0f7bed98 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
e2ae607bad Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-04-02 09:53:47 -04:00
Sean Rhea
846f1fc487 fix metrics for missing data
...by avoiding divide-by-zero errors.
2010-04-02 09:45:19 -04:00
Justin Knotzke
606de3d6b4 Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-04-02 06:39:55 -04:00
Mark Liversedge
852a2bdcf1 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
a6a3c90c54 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
74636b53e5 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
cac5c17706 Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-03-25 16:37:59 -04:00
Mark Liversedge
5d833822e4 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
Mark Liversedge
79862d537f NULL/Empty ride checks
RideItem or RideFile or dataPoints() may be null or empty. This
is especially true of manual ridefiles. This patch adds some
checks for this situation and acts accordingly. Additionally, the
disable/enable of tabs depending upon ridefile type has been
adjusted to also include files with not dataPoints.
2010-03-25 09:16:29 -07:00
Mark Liversedge
75074d1430 Honour RideFile::startTime
When saving the value of startTime should be checked to see
if the filename/notes need to be renamed. In addition, RideItem
now allows the startTime to be modified and reflected in the
ride list. When importing .gc ridefiles the file is serialized
with the correct startTime if the user edited it during import.
2010-03-25 09:16:28 -07:00
Mark Liversedge
58e7e3f914 Simplify RideMetric by using less pure virtual functions
Primarily to make override() a base class function that can be
used for any metric rather than expecting each metric to provide
a local version.

Also, add explicit notion of "average" vs "total" ride metrics, as
it will let us improve how the metrics DB handles averages later.
2010-03-25 09:16:22 -07:00
Justin Knotzke
21fb542a35 Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-03-24 06:03:49 -04:00
Sean Rhea
a1ff57f400 quiet possibly meaningless warning 2010-03-23 21:06:45 -07:00
Sean Rhea
16ff84859f the FIT saga continues
New idea: only linearly interpolate between two consecutive "record"
messages.  I don't know what else to do.  My FIT files have all sorts
of weirdness I can't explain.  One, for example, has two consecutive
start events with the same timestamp.  What does that mean?

This is all proof that just having the file "format" isn't really
enough.  What you need is the file *semantics*, and we don't have that
for FIT yet.
2010-03-23 20:59:58 -07:00
Sean Rhea
ac0876ac3c combine setActive and rideSelected
And pay attention to MainWindow::activeTab, such that only the active
tab redraws itself when changing rides.  This change really increases
GC's responsiveness when scrolling through the ride list.
2010-03-21 22:03:12 -07:00
Sean Rhea
a95f374195 ignore records when time is stopped
I'm not really sure what these are doing in the FIT file Jamie sent
to the list, but there's only one of them, and it's at the end of a
long rest period, so it seems safe to ignore it for now.
2010-03-21 21:59:25 -07:00
Justin Knotzke
398be92dbd Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-03-21 12:57:34 -04:00
Sean Rhea
0631712b00 assert.h is my nemesis 2010-03-21 08:57:45 -07:00
Mark Liversedge
f8d11e1d42 Add Headwind from WKO files
The attached exracts windspeed (+/-) from WKO files to
support the recent patch for headwind.

fixes #57
2010-03-21 08:41:11 -07:00
Mark Liversedge
b29e65b0d1 Honour metric precision in LTM
The metrics plot did not honour the metric precision setting
when displaying a hover tooltip. This resulted in BikeScore and
other values being rounded inappropriately and inconsistently.

This patch utilises the metric->precision() setting and displays
values consistently when compared to the ride summary. In addition,
the precision for LTS/STS on the LTM PM has been set to 1 decimal
place where previously it was zero.

fixes #50
2010-03-21 08:39:14 -07:00
Mark Liversedge
254c704939 MRC File Format Fix
The Racermate MRC file format for workout files did not
honor TIME/PERCENT format files correcty. The code is a
little confusing because it mixes the device mode and
workout file format. Ideally, the file format and device
mode would be kept as separate state settings, but this
patch at least fixed the bug.

fixes #40
2010-03-21 08:35:22 -07:00
Mark Liversedge
3e23e26c9a Remove 'None' option from 3d
The none option for data selection on the 3d plot is a
misnomer. It suggests that dimensions can be removed. For
example plotting x/y only. In reality, the 3d libs and the
code for managing the plot go to great lengths to ensure a
plot is rendered across all dimensions.

The None option has been removed for this reason. A 2d
scatter plot with user selectable data series should be
coded specifically to render 2d scatter plots.

fixes #30
2010-03-21 08:34:17 -07:00
Sean Rhea
d4fe890af8 fix FIT files with smart recording
Linearly interpolate missing points *except* between a pair of stop
and start event records.
2010-03-19 09:12:16 -07:00
Sean Rhea
cbff97e7bc fix HR in FIT files with no HRM
The value 255 means, "no heart rate".
2010-03-18 08:03:56 -07:00
Mark Liversedge
fa8ea4ef61 FitRideFile Linux fixups
Small mods to changed the capitalisation of the Qt includes and
add stdint.h uint16_t et al.
2010-03-17 22:48:41 -07:00
Sean Rhea
f1f8b1b6cf read Garmin FIT files
There is still the mystery of what global message type #22 is, but
other than that concern, this code seems to work pretty well now.
2010-03-17 08:22:31 -07:00
Justin Knotzke
305cb4cc9e Merge branch 'master' of git://github.com/srhea/GoldenCheetah 2010-03-15 17:26:51 -04:00
Sean Rhea
2749794c2a fix uninitialized 'ride' variable in ModelWindow 2010-03-14 19:26:07 -04:00
Mark Liversedge
d5bba48213 Fix UTC to Localtime Error in GcRideFile
The GcRideFile stores the ride start datetime in UTC, on write the
datetime is correctly converted to UTC.

This patch fixes the GcRideFile reader to convert in the oposite
direction. Currently the code reads the UTC date as a local format
date - as a result the convert to localtime call does nothing.
2010-03-14 19:19:40 -04:00
Sean Rhea
aaf69863f7 fix SRM interval alignment
SrmRideFile was setting RideFilePoint::interval correctly for
each RideFilePoint, but it was setting the start and stop of each
RideFileInterval it created to 1 RideFilePoint later than they
should be.  This patch fixes things so that RideFilePoint::interval
and RideFileInterval::start|stop agree about the interval bounds.
2010-03-13 11:26:02 -05:00
Damien Grauser
3fbe3a96ab update French translation 2010-03-13 10:44:30 -05:00
unknown
f3db29c222 Update french translation Committer: Damien Grauser modified: src/translations/gc_fr.qm modified: src/translations/gc_fr.ts 2010-03-12 17:54:14 -05:00
Mark Liversedge
e84e0f1293 make calendar font 2pts smaller than default 2010-03-12 11:30:47 -05:00
Damien Grauser
32c52a02ca remember user's preference for stacked view
...and add zoom.

fixes #58
2010-03-12 10:45:08 -05:00
Sean Rhea
811cbb26b1 maybe fix problem with Set CP button not enabled 2010-03-12 10:45:08 -05:00
Justin Knotzke
e1de1fb2b1 #includes need to be in quotes to build under Windows. 2010-03-11 09:08:24 -07:00
Sean Rhea
8054541541 allow the user to hide tabs
...and remember their tab hiding preferences across restarts.
2010-03-09 20:59:34 -05:00
Greg Lonnon
60e5dd9879 fixed the maps refresh issue 2010-03-09 13:14:03 -05:00
Greg Lonnon
63665493cc metrics are now displayed correctly, alt isn't working right
fixed the avg speed and alt

added a possible change for the maps issue

Maps tab is always showing, it will either show the ride data, or No GPS Data Present
Page loading is async with the ride being selected.
Weird WKO gps data issue reported by Mark L is fixed (hopefully)  I see different results than Mark L
moved Sean's cp patch to the new location

Signed-off-by: Greg Lonnon <greg.lonnon@gmail.com>
2010-03-09 13:14:03 -05:00
Sean Rhea
4f2a4ad76d fix maps crash when no CP is set
The check in the maps code for whether a CP is set was backwards, causing
a segfault on the subsequent call to Zones::getCP().  To reproduce, create
a new cyclist and import a ride with lat/lng data.  The import succeeds, but
GC crashes when you click "Save" and on all subsequent restarts.
2010-03-07 08:24:20 -05:00
Andy Froncioni
79b6506004 Added headwind to Aerolab calculation for iAero
Added a headwind data field, which is available when using
an iAero head unit, to dramatically improve the calculation
of Chung analysis for users of more recent iAero devices.

All other data files than the iAero have the headwind term set to
zero when they append a point.
2010-03-06 13:11:36 -05:00
Damien GRAUSER
9f81d92088 add ride plot stacked view 2010-03-06 11:47:55 -05:00
Sean Rhea
6acfb0926b add an xml pretty-printer
This makes it a lot easier to see what's going on in a TCX file.
2010-03-03 10:54:30 -05:00
Sean Rhea
6e7f543e33 remove eol space 2010-03-03 09:32:43 -05:00
Sean Rhea
d0181503f2 always build with maps support 2010-03-03 09:32:43 -05:00
Sean Rhea
84bb5f8964 fix up tabs 2010-03-03 09:32:43 -05:00
Greg Lonnon
429bff8593 untabify the GoogleMapsControl files 2010-03-03 09:32:43 -05:00
Greg Lonnon
c9b0b2179a fixed the zone == -1 defect 2010-03-03 09:32:43 -05:00
Greg Lonnon
beeb87c793 fixed the bounds box and the zoom to center correctly 2010-03-03 09:32:43 -05:00
Greg Lonnon
0db5ffe041 added resizeEvent back in, fixed a few variable names to be more standard and added some of Mark L's suggestions. 2010-03-03 09:32:43 -05:00
Mark Liversedge
bd9a69684f added Mark's fixes 2010-03-03 09:32:43 -05:00
Greg Lonnon
2af828f654 added googlemaps, took a couple of suggestions from Julian on map defaults. 2010-03-03 09:32:43 -05:00
Justin Knotzke
455ad742f9 New Logo and Icons by Dan Schmalz 2010-03-02 20:48:25 -05:00
Sean Rhea
49706cc7a3 better axis labels in PM plot 2010-03-02 09:45:21 -05:00
Mark Liversedge
736279ed0d Change WKO+ version error to warning
The WKO+ file format version is changing version numbers
at a fairly accelerated pace, but the general structure of
the files are still readable by the WkoRideFile reader.

This patch issues a warning rather than an error on new
files. Recent v29, v30 and v31 of the WKO+ file format have
all been parsed successfully.

fixes #47
2010-02-28 08:13:01 -08:00
Mark Liversedge
61acce87f4 Typo in Save Dialog
The dialog message spelt change as chage. This patch fixes that typo.

fixes #45
2010-02-28 08:11:08 -08:00
Mark Liversedge
0288579ce0 Long Term Metrics
A user configurable chart for showing ride metrics and
other calculated values over time.

* Uses SQLITE database to store metrics
* Supports any metric available from the metric factory
* Adds new MaxHr, VI, Peak Power and Time In Zone metric
* Also includes LTS/STS/SB for PM charting
* Aggregates in days, weeks, months or years
* Reads and Updates seasons.xml
* Adds cycles and adhoc date ranges in seasons.xml
* Date ranges can be selected on the plot with shift-left click
* Allows users to customise preferences for color, symbols et al
* Allows user to customise metric names and unit names
* Supports smooth curves and topN highlighting
* Has a linear regress trend line function
* Allows users to save charts to charts.xml
* A default charts.xml is built-in
* A chart manager to import/export/rename/delete charts etc
* Provides a tooltip to provide basic datapoint information
* Performance Manager adjusted to use the MetricDB
* User configurable setting for SB calculation (today/tomorrow)
2010-02-25 08:01:43 -08:00
Greg Lonnon
cb8e2cbc84 returned error for encrypted files
Also fix compiler warning.
2010-02-24 08:47:38 -08:00
Thomas Weichmann
3b704dd2bf fix min window width problem caused by fixed width sliders in aerolab 2010-02-20 16:18:32 -08:00
Dag Gruneau
02b4eedf1e quarqd - cadence, wheel rotation, error checking
Fixed a number of issues with data from quarqd inf and nan values where
inserted as valid data points and thus destoying all plotting in the
realtime window and in later analysis.

The unit was used to distinguish between the entities, thus rpm was
erroneously used as a cadence, rpm is used as the unit for wheel
rotation and for cadence.  This made the cadence useless together with a
PowerTap hub which reports both cadence and wheel rotation.

No error checking was performed on the received data, bad data is
ignored now.
2010-02-12 06:07:30 -08:00
Andy Froncioni
7849d4472a iBike test rides for use with Aerolab 2010-02-12 05:36:44 -08:00
Sean Rhea
c77fa523c2 remove unused settings ptr 2010-02-12 05:27:40 -08:00
Sean Rhea
24b265fe1f remove eol spaces -- no functional change 2010-02-12 05:23:55 -08:00
Andy Froncioni
a68a147609 Adds Aerolab tab
This patch adds Aerolab, a virtual elevation module.  A
new tab is added in which the user can perform virtual
elevation analysis.  This version is a manual Aerolab,
where user can use the following sliders to elevation-match
to a known elevation profile:
Crr  -coefficient of rolling resistance
CdA  -aero coefficient of drag * frontal area
Eta  -drivetrain efficiency (to be used when using a crank-
      or bottom-brack-based power meter)
Mass -total mass of bike + rider
Rho  -density of air
E_offset -an elevation offset to align elevations
2010-02-12 05:19:59 -08:00
Andy Froncioni
57c9df0b25 Adds DFPM functionality to iAero
Uses the iAero native "guesstimate" power value until a
non-zero dfpm value is seen.  From then on, uses dfpm as "watts".
2010-02-08 06:49:01 -08:00
Sean Rhea
0de0b88a2b remember chosen histogram bin width across restarts 2010-02-07 09:41:52 -08:00
Sean Rhea
7125771a1b shorten tab titles
Making room for the long-term metrics tab.
2010-02-07 09:26:44 -08:00
Sean Rhea
be363ab103 remember chosen PM metric across restarts 2010-02-07 09:13:04 -08:00
Sean Rhea
f8d5bb2e15 fix linux file names for 1.3.0 2010-02-07 09:13:03 -08:00
Sean Rhea
d062ac43c7 update contrib and download pages for 1.3 2010-02-06 11:38:57 -08:00
Sean Rhea
e6cb21e7ea release notes for GC 1.3 2010-02-06 11:38:57 -08:00
Sean Rhea
ebac18144a fix FTDI required for SRM download bug
GC supports two download port types: serial ports and D2XX.  Before, if
either of these failed to load, the download dialog wouldn't show either
port type.  With this patch, if both fail, GC displays a warning, but if
either one succeeds, GC will proceed with only that port type.  This
change should fix the problem that users were having to download and
install both the FTDI drivers and the PL2303 ones in order to download
from the SRM PCV.
2010-02-06 11:38:57 -08:00
Robert Carlsen
8361e354d1 Added sanity checking to ignore missing metrics
There is a possibility that ride metrics may become unavailable yet
remain requested by QSettings (stored in
~/Library/Preferences/org.goldencheetah.GoldenCheetah.plist on OS X).

This patch ignores any metrics listed in the preferences yet are not
supported by the running version of Golden Cheetah.
2010-02-06 11:38:57 -08:00
Sean Rhea
3b0c4e635e add Erase Ride(s) button to download dialog
This is a workaround for the SRM erase bug.  It gives the user a way to
try erasing the device's memory without re-downloading a ride.
2010-02-06 11:38:56 -08:00
Sean Rhea
f4769f5fd6 regenerate stress cache after config change
fixes #32
2010-02-04 05:10:57 -08:00
Sean Rhea
c415490a17 don't check dependencies until newMetric is called
Before, we checked them during addMetric, and that left us vulnerable
link-order errors.  With this patch, we wait until someone actually asks
for an instance of a metric, and then we check all metrics' dependencies.
That way, since the Ride Summary always creates at least one metric, we'll
still check the dependencies of them all.  We just do it a little later in
the program's execution than before.
2010-02-04 05:08:49 -08:00
Mark Liversedge
bd95d87948 Frame PvPf Plot
When working with smaller intervals it is difficult to see the
highlighted points when all the points are shown in black. This
patch adds a 'Frame Intervals' checkbox to enable the user to
turn off all the points when looking at specific intervals.

If no intervals are selected then this setting has no net effect.
All datapoints are shown.
2010-02-01 08:01:02 -08:00
Sean Rhea
8e8dd41133 add Daniels Equivalent Power metric 2010-01-26 08:31:05 -08:00
Sean Rhea
92b4536700 stop coddling 705's firmware
In other words, we're no longer going to support files from broken 705
firmware in GC.  However, GC 1.2 contains the check, so people with bad
files can open them in 1.2, export to CSV, and then import into a more
recent build.

Alternatively, if someone comes up with a good way to distinguish files that
need this check from those that don't, I'd be happy to use that.
2010-01-25 20:21:54 -08:00
Robert Carlsen
f27b0c1ca6 Updated doc/Makefile for new content.
Added cyclist-info.png to the install directive.
Edited the rsync path to reflect the absolute rather than relative path
to the www root for the goldencheetah website.
2010-01-24 13:22:34 -05:00
Jamie Kimberley
a919fd88ec Update power.zones info in users guide
Updated web documentation to describe the three methods that we have in
place to set the CP value in the power.zones files.
2010-01-24 13:17:22 -05:00
Mark Liversedge
9da6488d53 True Interval Patch, second part
The best interval dialog rounded intervals to the nearest second
due to a casting of a double to int. This was introduced by Mark L
during the intervals code patch and is an error.

All the plots have now been adjusted to correctly determine if a ride
point is within an interval. Related cropping and binning issues in
3d plot an Histogram plot have also been corrected.

fixes #15
2010-01-20 08:28:42 -08:00
Sean Rhea
cc441cc98a fix BestIntervalDialog
The small test file doesn't catch this bug, but just about
any real file does.  Grrr.
2010-01-19 10:55:54 -08:00
Sean Rhea
fdc7e0b2a9 fix fencepost errors in Ride->Find Power Peaks
Also removes nasty cut-and-paste from BestIntervalsDialog.

Tested successfully on test/rides/2010_01_13_*.gc.
2010-01-18 11:56:35 -08:00
Sean Rhea
81b1190f4f extract core functionality into static function
...so that we can use BestIntervalDialog::findBests elsewhere in the code.
2010-01-18 11:54:42 -08:00
Sean Rhea
91f2d662e3 fix fencepost errors in BestIntervalDialog
This is almost a complete rewrite of the functional part of the dialog.
I've tested it on both test files (2010_01_13_*.gc in test/rides).
Thanks to Mark L for pointing out a number of the problems.
2010-01-18 11:34:01 -08:00
Sean Rhea
46ef47d254 remove eol spaces -- no functional change 2010-01-18 11:32:07 -08:00
Sean Rhea
d28c262d5c test file for finding interval fencepost errors with recInt=1.0 2010-01-18 11:32:07 -08:00
Mark Liversedge
8fd2543e6b test file for finding interval fencepost errors with recInt=1.26 2010-01-18 11:31:57 -08:00
Mark Liversedge
45277ff572 replace import pragmas with includes
import is deprecated and is almost certainly not what was originally
intended, since it is used to include Qt and GC header files.

fixes #22
2010-01-18 08:27:42 -08:00
unknown
15197ed1b3 Add OpenGL, GCC4 and 3d DLLs to Win32 nsi
When building an installer the nsi file needed to be
updated to reflect new DLL dependencies introduced by
the Model plot.

Additionally, Qt 4.6 is built using gcc 4.4 and now
requires the associated runtime dll.

fixes #21
2010-01-18 08:26:50 -08:00
Sean Rhea
acafc616f0 appsettings can't be false
Also note the use of a default value as the second
argument to appsettings->value().
2010-01-17 21:19:10 -08:00
Mark Liversedge
d266ffa9b3 fix 3d plot performance issues
Scrolling up and down the ride files is painfully slow when
3d is compiled in. This patch uses a setActive mechanism in
the same fashion as the pfpv and performance manager tabs.

Additionally, a recent patch to support user preferences for
units added a settings lookup that was called for every point.
This is also fixed.

fixes #16
2010-01-17 21:18:53 -08:00
Sean Rhea
64209c8cab ignore intervals that start after the end of the ride
fixes #17
2010-01-17 21:02:12 -08:00
Sean Rhea
d8fc560dac remember smoothing across restarts
fixes #18
2010-01-17 20:54:47 -08:00
Sean Rhea
5c6cbd0f1f mark warnings as such in import wizard 2010-01-17 20:40:32 -08:00
Sean Rhea
0f81a6e0f9 no decimal point for elevation gain metric
Thanks to Tom W for pointing this out.
2010-01-17 20:19:45 -08:00
Rainer Clasen
2a91250a08 Don't reread downloaded SRM files
Get the start timestamp directly from the downloaded data. No need to read
the written data, again.
2010-01-16 13:04:09 -08:00
Rainer Clasen
1961b6bfe4 fix SRM download when there is no data
When you're trying to download data from an empty PCV, srmpc_get_data()
returns a data structure without chunks. This will cause srm_data_write()
to fail.
2010-01-16 13:01:21 -08:00
Keisuke Yamaguchi
01de09e69c Added translation support for RideImportWizard Finish/Abort button
fixed bug "when non-English language is selected, Import Wizard
cannot be closed/aborted with abortButton".
2010-01-16 10:35:48 -05:00
Rainer Clasen
bc61223729 report error detail on SRM download failure
While SrmDevice is catching errors returned by srmpc_get_data, it doesn't
decode + report what kind of error (errno).

Adjusted message to include the returned error.
2010-01-15 23:14:37 -05:00
Robert Carlsen
a22fa874a9 Adding slash in default library path for Windows 2010-01-15 09:13:26 -05:00
Robert Carlsen
7fc281d864 Modify .gitignore to omit "tags" dir created by ctags for vim 2010-01-15 08:49:47 -05:00
Thomas Weichmann
22bdcc1120 respect user's units pref in 3d plots
fixes #14
2010-01-13 08:28:15 -08:00
Jamie Kimberley
051b7cd0c6 Show power and cadence in stationary tcx files
Minor change to handle how duplicate records in tcx files are handled.
This allows for power and cadence to be properly displayed for rides
with no distance information (e.g. trainer rides).
2010-01-13 08:23:41 -08:00
Mark Liversedge
5b547fcce0 support Windows in Serial.h|cpp
The serial code was Linux/Mac only and utilised termio/tcsetattr
functions that were not available on Windows platforms. This patch
ports the serial code to the Windows APIs using the same approach
as the Computrainer.cpp code.  It allows us to support old-style
serial download cables on Windows.  (We already supported them on
Mac and Linux.)
2010-01-11 08:01:38 -08:00
unknown
cd391b1b8e update french translation 2010-01-10 11:07:57 -08:00
Mark Liversedge
b605e23d27 Fix 3d cosmetics and CPV/AEPF channels
The pedal force channel was incorrectly named - it should have been
the torque value. The AEPF/CPV values are derived from the power
cadence and cranklength. This is corrected with this patch.

Additionally, the axis labels positioning has been amended to be
more appealling and position more appropriately.
2010-01-10 10:45:15 -08:00
Sean Rhea
befb7213db bug fix: don't lose intervals when spliting rides 2010-01-10 10:42:52 -08:00
Sean Rhea
31a672e0bc fix unused variable warning 2010-01-10 10:07:57 -08:00
Mark Liversedge
23c0ea19ef WKO Parsing Dist Chart Fix
The bodge to manage so-called 'optional padding' which led to the
need to keep updating constants like 0x8014 et al was caused by a
misunderstanding of how Distribution Charts are recorded in a WKO
file.

This patch correctly decodes these segments of a WKO file and as
a result remove the need for the optpad2 function. There are still
some 'weird' constants that are parsed, but these are limited to
the artefacts resulting from the fact that the WKO software uses
MFC persistent object format to write the file data and these
constants reflect the POF Archive PIDs.
2010-01-10 10:06:18 -08:00
Mitsukuni Sato
3696abcaab translate to japanese (5 Jan 2010) 2010-01-10 10:03:08 -08:00
Chris Cleeland
90f95bcba9 allow a calendar popup
Interestingly, Chris Cleeland, and apparently only Chris Cleeland, can't
enter manual rides for dates in the past without this patch.

Fixes #7.
2010-01-06 08:21:07 -05:00
Jamie Kimberley
bbc52b3182 website now has developer guide for tracker
Updated the documentation on the website to include some guidelines
for developers worknig with the issue tracker.
2010-01-06 08:11:52 -05:00
Steve Gribble
eabcf0ba2f Fix float parsing bug that manifests on Qt4.6 and later.
This file relies on Qt's QDataStream to handle the parsing
of primitive C types from Computrainer .3dp files, including
floats.  In Qt4.5 and earlier, Qt defaulted to 32 bit
floats.  In Qt4.6 and later, Qt started using 64 bit
floats by default.  As a side-effect, parsing broke on
Qt4.6, leading to a crash when importing or using .3dp files.

This patch fixes the issue by using QDataStream's
"setVersion()" method to tell Qt to use the Qt4.0 serialization
format for the QDataStream used in this file.  This
patch does not affect any other files.  This patch
should make the formatting assumptions both backwards
and forwards compatible.
2010-01-05 22:56:59 -05:00
Sean Rhea
4849a5981c remove ride map from RideCalendar
I think the previous implementation could have referenced already-deleted
RideItem objects during calls to Split Ride.

This commit removes the calendar's own map of RideItems, and instead
uses the list of rides in MainWindow::allRideItems.  Because I use
binary search on that list, this implementation should be just as fast
as the old one.  But because I don't hang on to any RideItem pointers
beyond a single call to RideCalendar::paintCell, it shouldn't be
vulnerable to referencing already-deleted RideItem objects.
2010-01-04 09:00:43 -05:00
Jamie Kimberley
f07e1b01a6 Add documentation for our issue tracker
Added instructions and links for submitting bug reports and feature
requests to the website documentation.
2010-01-03 17:24:23 -05:00
Sean Rhea
702e39c201 mark prefers red, too 2010-01-03 12:41:17 -05:00
Mark Liversedge
de86047992 Show Daily Stress on Performance Plot
Since the daily stress values are readily available
from the stress calculator this patch shows them on the
chart to show the make-up of the training that has resulted
in th short term and long term stress scores.

Ideally, we would also show the relative intensity for each day
too so you can view, at a glance, the intensity AND volume of the
ongoing training load -- but the intensity is not readily available
in the calculator or the stress.cache file.
2010-01-03 11:36:20 -05:00
Sean Rhea
1b849c501b use ExtendedSelection in intervalWidget 2010-01-02 19:00:02 -05:00
Sean Rhea
9e6e9834c7 bug fix: integer division error
I introduced this bug in commit 23b2ff4.
2010-01-02 17:06:41 -05:00
Sean Rhea
dd295ea8f7 note about version 1.7 of ftdi drivers 2010-01-02 15:43:16 -05:00
Sean Rhea
efe99e0a2b add Daniels Points to manual ride entry
And estimate them based on time/distance just like we do with BikeScore.
2010-01-02 13:17:31 -05:00
Sean Rhea
ea4dacb516 remove unused variables 2010-01-02 13:01:31 -05:00
Sean Rhea
69559e6a5e float --> double 2010-01-02 12:59:35 -05:00
Sean Rhea
8ccb138ff2 ignore manual rides when estimating BikeScore 2010-01-02 12:55:33 -05:00
Sean Rhea
987eac9951 ignore rides that don't load properly
Need to call item->ride() in order to load the ride, and should ignore those
for which the result is NULL.  Do this after checking the date, though, so
that we don't load older rides into memory.
2010-01-02 12:52:58 -05:00
Sean Rhea
ecb92349ef bug fix: segfault on manual ride entry if no rides 2010-01-02 12:47:50 -05:00
Sean Rhea
cef8d85be3 remove tabs and eol spaces, no functional change 2010-01-02 12:45:31 -05:00
Sean Rhea
4976a212c7 support arbitrary ride metrics in manual ride files 2010-01-02 12:36:31 -05:00
Sean Rhea
c2eed4b220 use split instead of section
This will be useful for my next commit.
2010-01-02 12:36:31 -05:00
Sean Rhea
75d59ff84a nit: don't store cp as a member variable 2010-01-02 12:36:22 -05:00
Sean Rhea
82fa66a226 implement DanielsPoints::override 2010-01-02 12:36:17 -05:00
Sean Rhea
da61409e72 bug fix: manual ride time always counts towards weekly summary
Before, if distance and speed were both zero, time_riding was set
to zero, and the manual ride time would not be included in the
weekly summary.  This patch fixes that by overriding time_riding.
2010-01-02 11:50:00 -05:00
Sean Rhea
8fc9e9b399 don't include final decay in xPower
RaceDay doesn't do it, and RaceDay is the reference implementation
for xPower/BikeScore.
2010-01-01 19:05:41 -05:00
Sean Rhea
bf91072252 add new mailing list info to web page 2010-01-01 12:28:41 -05:00
Sean Rhea
ae52e3439e use foreach to eliminate explicit iterator type
Also switch to const RideItem pointer.
2009-12-31 10:15:14 -05:00
Berend De Schouwer
491b0ba0a7 Support two rides at the same date and time 2009-12-31 10:08:44 -05:00
Berend De Schouwer
ac4602c8c4 Calendar move defaults to constructor 2009-12-31 10:08:44 -05:00
Sean Rhea
46bad239a3 read intervals in iBike CSV files 2009-12-30 22:08:10 -05:00
Berend De Schouwer
68bd575edc Multiple rides per day in the calendar 2009-12-30 18:41:37 -05:00
Sean Rhea
137da52457 bug fix: remember user's curve preferences
Fernando Maldonado pointed out that if he deselected, for example, Cadence on
the Ride Plot, then switched to another ride, the Cadence check box remained
unchecked but the Cadence curve showed back up on the plot.  To hide the
curve, he had to check and uncheck the box again.  This commit fixes that bug.

I'm not entirely happy with this fix.  I'd rather AllPlot had access to the
QCheckBox objects in AllPlotWindow, but I can't think of a clean way to do
that.  This patch at least seems to work.
2009-12-30 17:52:13 -05:00
Sean Rhea
1bbe58e7c5 fix indentation -- no functional change 2009-12-30 17:15:14 -05:00
Sean Rhea
e8ec1c8009 respect user's unit pref in import wizard
Based on a patch by Thomas Weichmann.
2009-12-30 17:13:28 -05:00
Sean Rhea
cb204f5bd8 about dialog nits: add line breaks, remove italics 2009-12-30 10:17:55 -05:00
Sean Rhea
72a2053c5d show home path in about dialog 2009-12-30 10:13:23 -05:00
Sean Rhea
d9f38f57bb fix segfault in ModelPlot on bad ride files 2009-12-30 09:42:49 -05:00
Mark Liversedge
db3d504efd 3D Modelling
A new tab on the ride analysis view for analysing ride data in three
dimensions. Interval selection is supported and a z-axis slider is
available for helping to identify data in the z-plane. A color legend
is displayed since coloring is independent of x/y/z values.

Coloring and Z axis values are averages for associated values of x/y.
The code requires qwtplot3d to be installed (see gcconfig.pri.in) and
with older Mac dev envs you will need to add -lz to LIBS too. (LIBS += -lz).

On Linux qwt3d_function.h needs a #include <stdio.h> added to compile.

Greg Steele helped design and test.

There are 2 open issues x/y/z axis labels occasionally appear in the
wrong place. lastly, the bin selection is for X&Y bin sizes and it
would be better to have separate sliders.
2009-12-30 09:41:33 -05:00
Sean Rhea
7c17d8df32 split ride saves in .gc format 2009-12-28 11:36:38 -05:00
Sean Rhea
571e5cc3bd bug fix: set ride start time correctly in .gc files 2009-12-28 11:36:38 -05:00
Dag Gruneau
825b058955 bug fix: don't crash when computing metrics on empty intervals 2009-12-28 11:02:08 -05:00
Sean Rhea
dfe218590f add hysteresis to ElevationGain metric 2009-12-25 10:43:13 -05:00
Sean Rhea
6d86260c53 fix neg alt bug in ElevationGain metric 2009-12-25 10:40:54 -05:00
Sean Rhea
62876e583a choose your own metrics for intervals
This commit adds a page to the config dialog in which the user can choose
which metrics GC will show for intervals.  The GUI design could use some work,
but the functionality is there.  All implemented metrics are available to
choose, and choices are saved across restarts.
2009-12-24 17:51:50 -05:00
Thomas Weichmann
f2a64a2aeb Fixed unit conversion in CSV importer 2009-12-24 10:38:56 -05:00
Sean Rhea
3cea455c90 fix compile error with std::sort on Linux 2009-12-23 07:57:46 -05:00
Sean Rhea
51b50c4343 remove old intervals code 2009-12-22 18:11:02 -05:00
Sean Rhea
8cac93171d use RideMetrics for intervals in RideSummaryWindow 2009-12-22 17:54:50 -05:00
Sean Rhea
0d0ebea61a add ninety_five_percent_hr metric 2009-12-22 17:54:50 -05:00
Sean Rhea
1649ab505e add max_power metric 2009-12-22 17:54:38 -05:00
Sean Rhea
122a42a6fb fix metrics for interval use 2009-12-22 17:53:40 -05:00
Sean Rhea
65ac0ceb3b figure out zoneRange from RideFile::startTime 2009-12-22 15:40:30 -05:00
Sean Rhea
9e0d4e562b compute metrics in RideMetric
Move the logic for how to compute RideMetrics from a RideFile, including
dependency tracking, out of RideItem and into RideMetric.  I'm going to start
using them for intervals as well as rides, and I don't want to construct a
RideItem for each interval.  It also seems more natural here.  For
performance, RideItem still caches the computed metrics for a RideFile.
2009-12-22 15:23:02 -05:00
Sean Rhea
19b77c7bdb aggregateWith takes a const reference 2009-12-22 15:23:02 -05:00
Sean Rhea
35756d1c63 get rid of PointwiseRideMetric
It's no shorter than just calling foreach, and I feel it just confuses things.
2009-12-22 15:23:02 -05:00
Sean Rhea
1457bb78c1 add more comments to RideMetric.h 2009-12-22 15:23:02 -05:00
Sean Rhea
e547709e20 don't repeat "Average"
In the average column of the RideSummary, we don't need to re-emphasize that
the averages names' start with "Average ".  I hope this doesn't cause
problems for translation.
2009-12-22 15:23:02 -05:00
Sean Rhea
3e7c984875 get rid of metricsXml
Instead, just list the symbols of the RideMetrics for each column, then get
the name and precision of each metric from the RideMetric object.  This change
builds the groundwork to letting the user specify which metrics to show.
2009-12-22 15:23:02 -05:00
Sean Rhea
c09039c7e9 add RideMetric::precision
...which specifies how many digits after the decimal we should show when
displaying the value of a RideMetric.
2009-12-22 15:23:01 -05:00
Sean Rhea
9af9232caf add RideMetric::name
The name of a RideMetric is a short string suitable for use as a label in the
ride summary.  It should be translated using QObject::tr().
2009-12-22 15:23:01 -05:00
Sean Rhea
1618e57ba3 rename RideMetric::name to RideMetric::symbol
The symbol of a ride metric is the string by which we refer to it in the
code, configuration files, and caches (like stress.cache).  It should not
be translated, and it should never be shown to the user.
2009-12-22 15:23:01 -05:00
Sean Rhea
ed98f8497e srm interval end bug fix
If the user forgot to end an interval before downloading a ride, GC
would crash due to an assertion failure.  The included ride file
demonstrates the bug.
2009-12-22 14:49:54 -05:00
Mark Liversedge
d85c5dc8b2 add bring to front/send to back to PfPvPlot
Another rightclick menu for intervals, adding a bring to front and send to
back option but only when viewing the pfPvPlot, additionally the algorithm in
PfPv plot for determining which interval a point is used for has been adjusted
to fully populate every interval curve where appropriate (and incorrect
comments and redundant code have been removed).

IntervalItems now have a display sequence number so when you have
overlapping intervals you can bring to front and send to back on the
PfPv plot. The display sequence could be used on other plots if/when
they distinguish between intervals.

Previously, the coloring of intervals on PfPvPlot was determined solely
by the order they were defined which could be quite confusing.
2009-12-22 09:51:02 -05:00
Dag Gruneau
d2046bb6cd use setting for imperial/metric in interval dist
Before, the heading showed "Distance (km)" but the actual value was always
displayed in miles.  This patch fixes it.
2009-12-22 09:44:09 -05:00
Thomas Weichmann
876ed198b5 add context menu to ride tree
Includes save, delete, split, find peaks and best interval functions.
2009-12-22 09:35:20 -05:00
Mark Liversedge
56b2830fc0 switch from QToolBox to QComboBox
This patch removes the QToolBox from commit e93970 and replaces it with
a QComboBox instead. A new object ViewSelection can be included in any
new views and will manage the interaction with MainWindow to switch
between views. It is essentially a QComboBox with some code to interact
with MainWindow.

A new signal viewChanged(int) has been implemented in MainWindow to
notify of a view change. The parameter will be set to VIEW_ANALYSIS
or VIEW_TRAIN depending upon which view was selected.

In addition, a new TrainWindow object has been created which implements
the Realtime code and is comprised of the TrainTool and TrainTabs
implemented in e93970. It also sets its splitters from remembered values
in the same fashion as the central splitter on the Analysis view.
2009-12-21 13:34:28 -05:00
Mark Liversedge
ebce7c6e7d Support for WKO v3 file format
Summary analysis suggests the new (v29) of the WKO 3.0 file format does
not contain any differences (or noticeable) to the previous version.
This patch enables files to be imported using the existing code instead
of being rejected because they are 'newer than the supported format'.

Further testing and analysis will be performed on the WKO 3.0 file formats
but this patch should enable users of v3 to import there files into GC.
2009-12-21 12:56:23 -05:00
Mark Liversedge
eec69f3f54 Introduce Toolbox to GUI
The left side of MainWindow is now a toolbox which contains
Ride Analysis and Racing and Training options. The Right side
tabs have been reorganised and associated with the toolbox.

To support the population of the Racing and Training left tool
the config dialog has been updated to enable the user to configure
the location of their workouts.

In addition, the config dialog now calls upon MainWindow to issue
a configUpdate() signal to notify widgets when config has been
updated. This is a refactoring of the existing mechanism that
only called realtimeWindow->updateConfig, now any widget can
connect to the MainWindow signal and re-read its config appropriately.
Currently, the TrainTool and RealtimeWindow widgets have been coded to
use this.
2009-12-20 21:39:38 -05:00
Sean Rhea
5dc3cb7a7f introduce "metric overrides"
This commit allows every ride file to specify a set of "metric overrides":
values to use in place of those for RideMetrics we would otherwise compute.

The most gratifying immediate result of this change is that we can associate a
"skiba_bike_score" metric override with each Manual CSV file, thereby
eliminating the need for a bogus "bs" parameter in RideFilePoint.

In the future, though, we can also save these overrides to a GcRideFile using
a syntax something like this:

  <override>
    <metric name="skiba_bike_score" value="100"/>
    <metric name="average_speed" secs="3600" km="30"/>
  </override>

(Note that average_speed needs to store time and distance in order to
aggregate properly.)

Then we can add a dialog that allows the user to override the computed value
of a metric for any given ride.  For example, if my HRM was on the fritz
during a ride, I could estimate my average HR and override that metric.
(We might want to show these overrided metrics in a different color, so that
it was clear they weren't the computed values.)

Finally, I think we could actually use this feature to eliminate the Manual
CSV format altogether, and just use GcRideFiles without any samples or
intervals, but with metric overrides for all the available metrics.
2009-12-20 12:29:33 -05:00
Sean Rhea
843907a099 don't explicitly specify bs
It's going away soon.
2009-12-20 12:29:25 -05:00
Thomas Weichmann
7abe449826 reorder ride menu, add separators, capitalization 2009-12-19 19:09:26 -05:00
Mark Liversedge
75f616f8c1 Stress Calculator loses pending changes
The stress calculator works through every ride and updates stress.cache.
After each file is processed its details are wiped with a freeMemory, this
causes unsaved changes to be lost (isDirty is ignored).

This patch adds a check to make sure the file is not dirty before the
in-core values are deleted.
2009-12-19 18:58:17 -05:00
Mark Liversedge
470fef44ab Support Metric/English units in realtime mode
Realtimode mode now supports miles and kilometers for speed, average
speed and distance telemetry.
2009-12-19 18:54:17 -05:00
Mark Liversedge
138118864c Computrainer code to open COM ports above 9 on Windows
The docs for CreateFile indicate that to open a comm port above
COM9 you must use a filespec of "\\.\COMX". The original code
did not apply this rule and failed to open ports above COM9 as a
result. This is especially important since it is quite common for
the USB->Serial converters to assign an assignable comm port number.
2009-12-19 18:50:40 -05:00
Mark Liversedge
054df86699 New Cyclist set first CP SEGV fix
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.
2009-12-19 18:48:54 -05:00
Mark Liversedge
c01d0f969e RideFile reading refactoring
With the introduction of the rideSelected signal the RideFile was
opened (as previously) by the RideSummaryWindow::htmlSummary()
member. In some cases, this signal was processed by RideSummary window
AFTER the other charts (AllPlot etc) this results in 'No data' being
shown on other charts.

This patch moves the file reading to RideItem::ride() which was previously
a public RideFile * (that is now a protected member ride_). As a happy by
product it removes the need to check if the file has already been read
across all other functions ensuring in-core values are not accidentally
overwritten. The read errors are made available by a new RideItem::errors()
member.

This modification is required to support the RideImportWizard in freeing
loaded RideFiles during batch import to ensure virtual memory is not
exhausted when large numbers of files are imported at once. This modification
is also included in this patch.
2009-12-18 19:39:29 -05:00
Sean Rhea
37ebda9d01 check that cp > 0
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.
2009-12-18 09:38:22 -05:00
Mitsukuni Sato
93937badee add calls to tr() for translation 2009-12-17 19:10:36 -05:00
Mitsukuni Sato
1f4e9cc3fe add japanese translation resource 2009-12-17 19:10:17 -05:00
Sean Rhea
e424c0ba3f read lat/lon from iBike csv 2009-12-17 18:08:16 -05:00
Sean Rhea
00b81be22e revert bad zones I accidentally added in 97156c3 2009-12-17 18:02:08 -05:00
Sean Rhea
4c2708dc17 read ride date and time out of iBike csv files 2009-12-17 17:52:23 -05:00
Sean Rhea
1b9d113d16 fix tabs and spaces -- no functional change 2009-12-17 17:43:54 -05:00
Mark Liversedge
bd3581819b Fix new Cyclist SEGV on open options dialog
The code to set the critical power for the cyclist page in the
config dialog calls zones->getCP(currentRange) when currentRange
is -1 (out of bounds). This caused a SEGV. This patch checks for
a -1 value and sets CP to 0 rather than calling zones->getCP.
2009-12-17 17:37:51 -05:00
Sean Rhea
c41ce6e723 check that zone.hi > zone.lo 2009-12-17 17:34:48 -05:00
Sean Rhea
f655ce066e auto-select SRM for downloads
Hack: SRM PCV download cables use the PL2203 chipset.  If the
first device name contains "PL2303", then, we're probably dealing
with an SRM, so go ahead and select the SRM device.  Generalize?
2009-12-17 11:36:19 -05:00
Ned Harding
afd609711f win32: added new dependency to installer 2009-12-15 18:22:37 -05:00
Mark Liversedge
a529a83cae Find Peak Intervals fix 0 distance bug
The find peak intervals added intervals with 0km for start and stop. They
now get set appropriately, so peak intervals display correctly when viewed
in byDistance on AllPlot.
2009-12-14 19:22:17 -05:00
Mark Liversedge
840d8e8812 GPS support in RideFile
RideFile data points now include lon and lat members for the longitude
degrees and latitute degrees from the source ride files. As a result
most of the RideFile readers now set longitude and latitude to zero for
each data point, except for:

* Gc Format Files - now support read/write
* Wko Format Files - now support read
* Tcx Format Files - now support read (smoothed if smart recording)

Although there are no features within GC at this point in time that use
positioning data this may change over time. Critically, as users save
files to the new GC file format whilst adding interval data it is
important that this positioning data is not discarded before new
features arrive.
2009-12-14 19:13:45 -05:00
Mark Liversedge
3765e7982b Find Peak Powers only for Intervals smaller than entire ride time
The find peak powers functions was previously adding peak intervals for
durations that were longer than the entire ride, for example a 20 minute
ride would still have a 30min and 60min peak power interval added.

The duration of the ride is now checked and only peak intervals that
are shorter or equal to the length of the ride are added.
2009-12-14 10:34:53 -05:00
Mark Liversedge
95f5af49cb Add Average Power in Brackets to Selection Name
When a user creates a new interval by selecting a section of a ride
on AllPlotWindow the newly created selection now has the average power
for the selection placed at the end of the selection name in brackets.
2009-12-14 10:34:46 -05:00
Sean Rhea
4c7793524b up the power
...to accomodate Greg Steele's monster quads.
2009-12-13 21:26:21 -05:00
Sean Rhea
f0fda23b10 bug fix: don't let high go negative
You can recreate the bug by creating a new cyclist with only one
relatively slow and short ride, then clicking on the CP plot.
2009-12-13 18:21:05 -05:00
Sean Rhea
adc67d8884 don't show axes for non-existent curves
If you don't have altitude, you'll no longer have an axis for feet/meters.
Thanks to Gary Smith for pointing out that the previous behavior was silly.
2009-12-13 18:06:05 -05:00
Sean Rhea
31c2658719 add altitude for iBike CSV format
Thanks to Fernando Maldonado for the test file.
2009-12-13 17:40:33 -05:00
Mark Liversedge
7307f41344 Use Standard Library Binary Search
Replace handcoded binary search in RideFiletimeToDistance() method
in RideFile with lower_bounds, since it is more efficient. The
distanceToTime() method has been removed since it is not used.
2009-12-13 17:22:49 -05:00
Sean Rhea
dea09539cd move IntervalPlotData into .cpp and fix mem leak 2009-12-13 15:16:57 -05:00
Damien Grauser
edac2110b5 add tr() for some QString and add french translation 2009-12-13 15:04:51 -05:00
Mark Liversedge
76850c4484 Free references in WkoFileReader 2009-12-13 14:57:00 -05:00
Mark Liversedge
0e69a192b9 Misleading code comments adjusted
Attribution in header of IntervalItem.{h,cpp}
Commented out code removed
2009-12-13 14:45:25 -05:00
Mark Liversedge
9e403289fc IntervalItem::name removed
The class member IntervalItem::name is redundant since it is a duplicate
of the text() member of the base class QTreeWidgetItem. By removing it
we both simplify the code and remove the need to keep name and text in
sync when renaming and creating intervals.

As a result the itemChanged signal that was connected for renames and
then disconnected when the items are cleared can be connected once
and no disconnect is neccessary.

This connect/disconnect oddity was originally to avoid a SEGV that
resulted from accessing text() whilst the QTreeWidgetItem was being
destroyed. The code for removing intervals when a new ride is selected
no longer destroys and recreats MainWindow::allIntervals (which was also an
artefact of the original code to avoid a SEGV).
2009-12-13 13:07:17 -05:00
Sean Rhea
102e83a4db delete MainWindow on close 2009-12-13 12:53:57 -05:00
Sean Rhea
9933358f6d remove global mainwindow ptr 2009-12-13 12:50:09 -05:00
Sean Rhea
19d7815836 remove global ptr to main window from PfPvPlot 2009-12-13 12:46:50 -05:00
Sean Rhea
81fef5104c remove global ptr to main window from ErgFile 2009-12-13 12:42:09 -05:00
Sean Rhea
e889ac41a6 stop using global pointer, remove const cast 2009-12-13 12:34:32 -05:00
Sean Rhea
f34e0c8b22 fix leaked ConfigDialog and memory errors
The ConfigDialog is modal, so it needs to delete itself.  However, the
existing code contained a bunch of destructors with calls to delete on
widgets.  That's wrong.  Widgets are automatically parented on being added to
layouts, the parent widgets delete their children in their own destructors.
So remove all the explicit deletes.
2009-12-13 12:10:58 -05:00
Sean Rhea
0c79af34c3 remove global mainwindow pointer from ConfigDialog 2009-12-13 11:32:39 -05:00
Sean Rhea
b5be5867ef change case of mainwindow to distinguish from global ptr 2009-12-13 11:24:26 -05:00
Sean Rhea
6d1aec1a6f remove global mainwindwo ptr from save dialogs
Also, allocate dialogs on stack to make free explicit.  I find
Qt::WA_DeleteOnClose to be really non-intuitive for modal dialogs.
2009-12-13 11:21:48 -05:00
Sean Rhea
c79f4e6497 remove global mainwindow pointer from PowerHist 2009-12-13 11:02:33 -05:00
Sean Rhea
f45ea33f73 remove global mainwindow pointer from AllPlotWindow.cpp
Also remove ugly const cast by introducing MainWindow::mutableIntervalItems.
2009-12-13 11:02:32 -05:00
Sean Rhea
067a012ff3 remove global mainwindow pointer from AllPlot.cpp 2009-12-13 11:02:32 -05:00
Mark Liversedge
7170b6d5df PfPvPlot Display Fixes
The new intervals code removed some replots() to stop flickering but
they also removed critical refreshes after CP and Cadence values
are updated by the user using the entry fields on PfPvWindow.

Additionally, the setData() function was used to refresh all curves
when intervals were selected which caused user entries to be reset.

This patch introduces PfPvPlot::showIntervals() to only refresh the
intervals curve and fixes replots() to a) replot when neccessary
after a user entry but b) to not replot mid-refresh in the zones
background function.

The PfpvPlot::setData() function only sets the main curve (all the
black points).

When the user changes CP, CAD, CL in the window dialog they call
replot() explicitly rather than assuming the utility functions will
do it for them, since the utility functions are called within
setData (amongst others) and results in multiple replots() that are
ugly, but more importantly make it difficult to spot the deltas on
the plot as new intervals are overlayed because they all disappear
for a split second.
2009-12-13 10:59:10 -05:00
Sean Rhea
abeafb75be adjust BS to DP scaling factor
This should have been part of commit 6a514f3.
2009-12-12 22:31:05 -05:00
Sean Rhea
e7fcf941f1 add parent pointer 2009-12-12 22:08:29 -05:00
Sean Rhea
f9a29f7816 use more const 2009-12-12 22:07:53 -05:00
Sean Rhea
5a51b55915 don't need to call "return;" at end of function 2009-12-12 22:02:59 -05:00
Sean Rhea
e5df8b6401 just call MainWindow::rideItem 2009-12-12 22:02:02 -05:00
Sean Rhea
a9becedd86 include AllPlot.h first 2009-12-12 22:00:35 -05:00
Sean Rhea
5682d4ed6d add combo to switch PM plot between BS and DP 2009-12-12 17:44:12 -05:00
Sean Rhea
2f599a0a8d store ptr to MainWindow in PMWindow
I'm going to need it later when I add the ability to switch
from BikeScore to DanielsPoints.
2009-12-12 17:35:04 -05:00
Sean Rhea
c811bcd813 store both BikeScore and DanielsPoints in stress.cache 2009-12-12 17:00:17 -05:00
Sean Rhea
5bd91e55d3 scale DanielsPoints so that 1 hr @ FTP == 100 2009-12-12 16:40:37 -05:00
Damien Grauser
b0c60cbced add language selector and French translations 2009-12-12 15:23:46 -05:00
Mark Liversedge
7663f220a8 Interval features and new GC file format 2009-12-12 11:41:35 -05:00
Sean Rhea
a4109494bd introduce MainWindow rideSelected signal
...and use it to update the various tabs when a ride is selected.
2009-12-10 13:13:10 -08:00
Sean Rhea
703a2aa89b move htmlSummary into RideSummaryWindow 2009-12-10 11:50:50 -08:00
Sean Rhea
3d92d49308 call computeMetrics, not htmlSummary 2009-12-10 11:11:24 -08:00
Sean Rhea
a2b21fb908 add RideSummaryWindow
This change allows us to connect the zonesChanged signal to the ride summary,
so that we don't have to call ride->htmlSummary as a special case whenever
we call zonesChanged.  It will also come in useful later when I introduce a
rideSelected signal.
2009-12-10 11:05:10 -08:00
Sean Rhea
96671b5cf3 rename function 2009-12-10 10:16:58 -08:00
Sean Rhea
381d146428 new zonesChanged signal 2009-12-10 10:16:58 -08:00
Sean Rhea
de854eb79a public zones in MainWindow is const 2009-12-10 10:16:58 -08:00
Sean Rhea
7446be0c24 MetricAgg gets const Zones 2009-12-10 10:16:58 -08:00
Sean Rhea
a48044351c ConfigDialog gets ptr to zones, not ptr to ptr 2009-12-10 10:16:58 -08:00
Sean Rhea
256c696eb3 CyclistPage gets const Zones ptr 2009-12-10 10:16:57 -08:00
Sean Rhea
8931d84f39 make zones ptr const 2009-12-10 10:16:57 -08:00
Sean Rhea
ed4550d23f make some functions const 2009-12-10 10:16:57 -08:00
Sean Rhea
41ec865985 cp plot gets zones in its constructor 2009-12-10 10:16:57 -08:00
Sean Rhea
20efa0ee90 make some functions const 2009-12-10 10:16:57 -08:00
Sean Rhea
327cc57c1c RideItem::zones is just a pointer
...not a pointer to a pointer.
2009-12-10 10:16:57 -08:00
Sean Rhea
ed0fc60783 zones ptr is never null 2009-12-10 10:16:56 -08:00
Sean Rhea
3bf3498e32 whitespace and other nonfunctional cleanup 2009-12-10 10:16:56 -08:00
Sean Rhea
eba4b30de3 remove duplicate addZoneRange function
The cp argument wasn't being used, so just call the one that
doesn't take a cp argument.
2009-12-10 10:16:56 -08:00
Sean Rhea
c4b7421148 nit: cleanup function 2009-12-10 10:16:56 -08:00
Sean Rhea
43da2ecc14 QList<ZoneRange*> --> QList<ZoneRange>
Again, get rid of deletes at the slight expense of a few cheap copies.
2009-12-10 10:16:56 -08:00
Sean Rhea
b2017b15a3 QList<ZoneInfo*> --> QList<ZoneInfo>
Gets rid of some deletes, and shouldn't be much slower,
as QStrings are copy-on-write.
2009-12-10 10:16:56 -08:00
Sean Rhea
9cbc6d3ef5 remove printfs and cleanup whitespace
No functional change.  Note, however, that removing the printf from
addZoneRange(int cp) revealed that the cp argument was unused.
2009-12-10 10:16:55 -08:00
Steve Gribble
1c21630c98 Another bug fix to handle rides that start in the middle of a course.
Computrainer 3D software lets you start your ride partway into
a course.  But, if you do this, the first distance recorded
in the log file is the distance you started at, rather than zero.
GC expects the first data point to be at distance zero, however,
and therefore this causes total distance to be reported incorrectly.

This patch fixes the bug by remembering the distance of the
first data point, and subtracting that from all distances
reported to GC, so that distances are zero-based (i.e.,
so that the first data point is always at distance zero.)
2009-12-08 08:51:55 -08:00
Sean Rhea
d52934ff3d remove gratuitous returns 2009-12-08 08:51:13 -08:00
Justin Knotzke
51481e15bc Fixed a SEGV when user clicked stop in Realtime.
Fixed a crash due to threading of the socket.
Improved performance of discovery()
Improved ability to recover from a lost channel
Fixed bug where channel ID's weren't being correctly sent.
GC wasn't waiting for Qt to return from connecting to the host. It now is.
Fixed When the user hit stop then start, the realtime thread did not start.
2009-12-08 08:45:10 -08:00
Steve Gribble
caca0e229b fix bugs and add features to Computrainer3dpFile
Specifically:

1.  The previous code assumed the wrong units while extracting
    speed and distance from a .3dp file.  Computrainer stores
    speed in (miles per hour / 160), and distance in kilometers.
    This patch converts .3dp speed/distance data points into
    kph and km correctly.  As a side-effect, speed and distance
    are displayed correctly in GC windows and calculations.

2.  This patch adds code to extract altitude data from a .3dp
    file and include it in a ride.

3.  .3dp files do not have a consistent inter-datapoint time
    interval.  Since GC expects one, the earlier version of this
    code averaged 1000 data points from the middle of the ride to
    estimate this interval.  Unfortunately, this approach caused
    a bunch of problems for various calculations that GC does,
    such as calculating the riding time (vs. workout time),
    average speed, xPower, critical power plot and FTP, and so
    on.  [GC assumes that # data points * inter-datapoint-interval
    = workout time, but this isn't true when you used an estimated
    interval.]

    To fix this, this patch adds averaging and interpolation code
    to covert the data point sequence in the .3dp file to an
    averaged sequence with a data point every 250ms.  Since the
    inter-data-point interval is now fixed, these calculation bugs
    went away, and correct values are now calculated and displayed
    by GC.

4.  Fix (3.) has another useful side-effect:  the number of data
    points per ride given to GC goes down by 10x.  (Raw .3dp files
    have a data point every 30-50ms.  This averaging/smoothing
    code emits a data point every 250ms.)  Since the critical
    power calculation is an O(n^2) calculation, the time for
    this calculation is reduced by 100x.  Instead of an hour
    to do the calculation for a typical 2hr ride, it now takes
    less than a minute.

5.  The code was cleaned up in several regards:  comments
    were added to help document the .3dp format and explain
    the averaging/smoothing code, and types from boost/cstdint.hpp
    were used instead of native C types when using a variable
    of a specific size  (e.g., the code now uses uint16_t instead
    of unsigned short, etc.).

This patch was built by Steve Gribble and Daniel Stark.
2009-12-03 20:25:33 -08:00
Sean Rhea
b8141c85aa don't add interval 0 if it's the only one 2009-12-01 06:22:48 -05:00
Sean Rhea
a5f4b378c3 fix compiler warning
A class with virtual functions needs a vitual destructor.
2009-12-01 05:37:51 -05:00
Sean Rhea
cc5d33c85f fix unused variable warning 2009-12-01 05:37:46 -05:00
Mark Liversedge
51c52bd312 Fixed SEGV when no devices are configured and workout mode is selected 2009-12-01 05:19:29 -05:00
Sean Rhea
d2bd77a050 temporary patch to estimate dp from bs
I want to add Daniels Points to the ManualRideFile format, but until then,
simply estimate them from the BikeScore based on a weighting I took from some
of my long rides.  It's mostly on long steady rides that I estimate BikeScore
as part of a ManualRideFile, so hopefully this isn't too terrible as a
temporary patch.  A better fix is in the works.
2009-11-28 18:50:49 -05:00
Jamie Kimberley
4745fecc98 update developers guide for patch qwt
Removed qwt from the list of dependencies. Changed build instructions to
reflect the use of the patched version of qwt.
2009-11-28 18:50:47 -05:00
Mark Liversedge
fa2717bd67 Fix Stress.Cache refresh on wrong tab 2009-11-28 11:51:11 -05:00
Sean Rhea
cce25cc05c bug fix: xPower shouldn't count coffee breaks
Commit 420b2b6 introduced a bug whereby it used the total workout time,
rather than the time riding, to compute xPower.  This should only affect
your data if you take long breaks during rides, like to stop for brunch,
or if you store multiple rides in the same ride file--i.e., you don't
use the split ride feature.  Nonetheless, it's worth deleting your
stress.cache file after applying this commit, just in case.

I've also added three rides, notes, and a zones file to the test directory to
illustrate the differences discussed above.  The first ride is just an hour at
CP/FTP.  It should have a BikeScore of very close to 100, and Daniels Points
very close to 33.  The next ride is the same as the first, but followed by 20
minutes of coasting.  Its Daniels Points should be the same as the former,
but its BikeScore should be a good bit higher.  The final ride is the same as
the first, but interrupted partway through by 30 minutes of no riding at all,
as though the cyclist stopped for coffee and a pastry.  It should have
nearly identical BikeScore and Daniels Points to the first ride.  In the
broken implementation of xPower that this commit fixes, it did not.

Dan C: I reverted your changes to the xPower calculation in this commit and
went back to my implementation.  It's just easier for me to think about the
code that way.  My apologies.  I kept the other changes you made, though.
2009-11-28 11:42:34 -05:00
Sean Rhea
0b30eb10a7 bug fix: don't compute Daniels Points if no CP set 2009-11-27 22:55:41 -05:00
Sean Rhea
872411fa3c add DanielsPoints metric
Fit a curve to the points system in Table 2.2 of "Daniel's Running Formula",
Second Edition, assume that power at VO2Max is 1.2 * FTP, further assume that
pace is proportional to power (which is not too far off in running), and scale
so that one hour at FTP is worth 33 points (which is the arbirary value
Daniels chose).
2009-11-27 18:23:52 -05:00
Mark Liversedge
257c53b04f Remove Notes Tab and place notes on Summary Tab
Adding splitter for the ride summary/notes layout
2009-11-27 18:19:18 -05:00
Sean Rhea
359fef980b fix season selector in cp plot 2009-11-27 16:46:09 -05:00
Sean Rhea
ba78b97550 stop PM chart at max(today, latest ride)
I've been using the manual ride feature to plan my weeks in advance, so it's
helpful to have the x-axis on the PM chart extend past today's date.
2009-11-27 16:46:09 -05:00
Mark Liversedge
78e0d004b8 add realtime mode
Joint work between Mark L, Justin, and Steve Gribble.
2009-11-23 10:42:48 -05:00
Mark Liversedge
fba3dba384 win32 and linux build fixes
- change SeasonParser include from <> to "" for Windows
- include stdio.h in PowerTapUtil for Linux
2009-11-21 17:21:47 -05:00
Sean Rhea
d473ba162b link to msg about building on windows 2009-11-21 15:27:41 -05:00
Sean Rhea
2e30b175da ugly fix for zones file without a BEGIN
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.
2009-11-21 15:23:04 -05:00
Sean Rhea
4795cd7681 rest during intervals counts against averages
This seems like the right call to me.  If I'm doing an interval and I stop
riding for some reason, I'm resting, and that should affect my average power.
I thought it was always this way, but apparently not.
2009-11-21 14:34:49 -05:00
Jamie Kimberley
25f7208859 test file with two intervals in first 10 secs
Good for testing what happens in the Ride Plot when there are interval
markers within the first smoothing period.
2009-11-21 14:33:36 -05:00
Sean Rhea
86a5935e27 don't plot intervals before first smoothing window 2009-11-21 14:27:13 -05:00
Sean Rhea
a585763450 rename ergomo csv files 2009-11-21 14:03:43 -05:00
Sean Rhea
f51649fd25 fix intervals for ergomo csv 2009-11-21 14:02:37 -05:00
Sean Rhea
19dbf56b15 fail gracefully if rec_int changes mid-ride
Includes test ride that demonstrates the problem.
2009-11-21 13:48:23 -05:00
Sean Rhea
6105c37c58 inject a little philosophy onto the front page 2009-11-15 20:03:14 -08:00
Sean Rhea
3b781ba89f need <algorithm> for std::lower_bound in Linux
Thanks to Mark Liversedge for pointing this out.
2009-11-15 19:53:18 -08:00
Sean Rhea
706fa13cf3 fix Ride Plot shading bug introduced in 79ced76
The default position of the power combo box in the Ride Plot is to shade
power.  Change the default value of the shade_power variable to match.  This
didn't matter before 79ced76, since prior to that commit we (mostly
redundantly) called showPower from setAllPlotWidgets, whereas now we only call
showPower after a change in the combo box.
2009-11-15 08:52:23 -08:00
Sean Rhea
23ae2925aa make ride plot work for manual rides
I don't like disabling the ride plot tab when I select a manual ride,
because I frequently scroll through the ride list to search for a ride
by the shape of its ride plot, and every time I hit a manual ride I get
bounced to the CP plot tab.  So rather than disable the ride plot tab,
just make it show an empty plot.
2009-11-09 09:20:24 -08:00
Sean Rhea
2ca6096b0e add y-axis shows work mode to CP plot
This mode is fun because the "CP Curve" is a straight line,
just like in the model:

  work = CP * time + AWC

You can also see that the AWC is the y-intercept.
2009-11-09 09:05:03 -08:00
Sean Rhea
29164f6684 "Tools"->"Critical Power Calculator" 2009-11-09 10:21:43 -05:00
Sean Rhea
29a9919dbd don't show CP values off the end of lines
I.e., if the user selects a time to the left of the red dashed CP line,
we shouldn't show a value in the "CP Curve" box.
2009-11-09 10:03:50 -05:00
Sean Rhea
e7dd9dcd16 use foreach 2009-11-09 09:56:48 -05:00
Sean Rhea
7ed6c99a85 prefer most recent season in CP plot 2009-11-09 09:54:34 -05:00
Sean Rhea
1de1120cd8 fix bug in 2f8d101, need to strip path
The filename argument actually contained the whole path.  This fix passes
the filename and directory separately, so that the anchored regex works.
2009-11-09 09:50:51 -05:00
Sean Rhea
ff69fe4286 whitespace cleanup -- no functional changes 2009-11-07 14:42:14 -05:00
Sean Rhea
d2c108c296 misc cleanup 2009-11-07 14:42:09 -05:00
Sean Rhea
7394df755f delete NULL is a no-op 2009-11-07 14:27:01 -05:00
Sean Rhea
6150d4435f drop read_cpi_file, cleanup read_one 2009-11-07 14:23:51 -05:00
Sean Rhea
935d5846d9 don't fill in bestDates for today's ride 2009-11-07 14:19:46 -05:00
Sean Rhea
5c206f7b26 errors should be QMessageBoxes, not printfs 2009-11-07 14:15:36 -05:00
Sean Rhea
0b5cc3591c simplify very confusing code 2009-11-07 13:53:33 -05:00
Sean Rhea
0a411a6e4f little bits of CpintPlot cleanup
Cleanup whitespace, use scoped_ptr, prefer QVector over QList, etc.
2009-11-07 13:52:22 -05:00
Sean Rhea
eb17f53c08 progress dialog doesn't need to be a class member
We can also allocate it on the stack.
2009-11-07 13:52:09 -05:00
Sean Rhea
2eca0d97af setAllPlotWidgets doesn't need to call show*
It's only called from setData, which calls AllPlot::setData right afterwards,
and the latter will do all the things that the show* functions do.
2009-11-07 10:32:00 -05:00
Sean Rhea
4373e89617 anchor regexp
Anchoring this regexp (i.e., making it start with a "^") reduces the time
it takes to load the first CP plot from 10 seconds to 6.5 seconds on
Sean's three years of rides.  Unbelievable, but repeatable.
2009-11-06 23:43:35 -05:00
Sean Rhea
46e87837a9 clean up and sorten cpi_filename_to_date 2009-11-06 23:36:43 -05:00
Sean Rhea
b72c32dc1a ~qwt_plot_item calls detach 2009-11-06 09:13:59 -05:00
Sean Rhea
9699e2d0c5 use foreach, tidy up code 2009-11-06 08:49:54 -05:00
Sean Rhea
252a19c9d5 fix leaked CPCurve 2009-11-06 08:38:38 -05:00
Sean Rhea
de7fa20d96 allocate QPen objs on the stack
This fixes a memory leak.
2009-11-05 20:01:02 -05:00
Sean Rhea
e2f5ee2184 use QVector<double> 2009-11-05 19:59:00 -05:00
Sean Rhea
38101e5903 fix tabs and eol spaces -- no functional change 2009-11-05 11:40:07 -05:00
Sean Rhea
f0b20643d1 compute time in zones in computeMetrics
...not in htmlSummary, so that the WeeklySummaryWindow doesn't have to
generate the full htmlSummaries for a week.
2009-11-01 22:01:53 -05:00
Sean Rhea
8687957f41 use colors from RideList in htmlSummary
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.
2009-11-01 21:03:30 -05:00
Sean Rhea
6e5e44a720 highlight every other interval 2009-11-01 20:05:09 -05:00
Sean Rhea
1f0e0c6763 srm intervals names match those on PowerControl 2009-11-01 20:01:20 -05:00
Sean Rhea
4e93c6b22a switch to QVector and fix a memory error 2009-11-01 20:00:24 -05:00
Sean Rhea
9acb0819dc combine SrmFileReader::openRideFile and readSrmFile 2009-11-01 17:43:49 -05:00
Sean Rhea
0295395e9e remove commented-out code 2009-11-01 17:27:48 -05:00
Sean Rhea
94eb3b2f95 srm.h|cpp >> SrmRideFile.cpp and rm the former 2009-11-01 17:24:55 -05:00
Sean Rhea
9a4130a52d fix eol spaces -- no functional change 2009-11-01 17:21:46 -05:00
Sean Rhea
26b11c1157 only fill in intervals if the RideFile hasn't already 2009-11-01 17:19:11 -05:00
Sean Rhea
70db610c86 use RideFileIntervals in SplitRideDialog 2009-11-01 12:47:59 -05:00
Sean Rhea
872f882d0d let the factory call fillInIntervals 2009-11-01 12:45:43 -05:00
Sean Rhea
64bf0aeacf bug fix: check that rideItem->ride is not NULL 2009-11-01 12:44:11 -05:00
Sean Rhea
5dbe77bab5 use RideFileIntervals in htmlSummary 2009-11-01 12:01:52 -05:00
Sean Rhea
35c102561c use RideFileIntervals in AllPlot 2009-11-01 12:01:52 -05:00
Sean Rhea
7a9cb4080b add RideFileInterval
Eventually, I'm going to remove interval as a member of RideFilePoint, and
only use RideFileIntervals.  But I have to rework a bunch of other code first,
so for now the two will coexist.
2009-11-01 12:01:42 -05:00
Sean Rhea
14dc740636 switch RideFile::dataPoints to QVector
...so that we can binary search within them.  Also, switch a lot of
QListIterators to Qt foreach.
2009-11-01 11:51:26 -05:00
Sean Rhea
4eba24ee14 oops: add units for 95% hr 2009-11-01 11:51:26 -05:00
Sean Rhea
82d6a26bc1 fix tabs and eol spaces -- no functional change 2009-11-01 10:58:12 -05:00
Sean Rhea
7e4f5b222f remove writeAsXML declaration
This should have been part of 868e3d4.
2009-11-01 07:35:08 -05:00
Robert Carlsen
cad0d2dc18 Updating description for Comma-Separated Values files. 2009-10-31 17:22:37 -04:00
Sean Rhea
2559f3eaed add Joe Friel's "aerobic decoupling" metric to ride summary 2009-10-31 16:22:06 -04:00
Robert Carlsen
376f7ddf66 Grammatical corrections to ride file format descriptions. 2009-10-31 15:42:16 -04:00
Eric Murray
71174eb961 Fixed "shaking" bug with PerfPlot sliders. 2009-10-31 15:14:37 -04:00
Sean Rhea
f31453864a remove XmlRideFile and "Export to XML"
These were part of an earlier attempt at a GC-specific ride file
format.  They aren't in use now, and they'll be replaced by the new
one when it's done.
2009-10-31 15:12:48 -04:00
Sean Rhea
d3f8ad3a03 add descriptions to RideFile types
...and use these to get rid of the explicit list of ride file type
descriptions in the import wizard.
2009-10-31 15:00:37 -04:00
Sean Rhea
bdcd24af5b add RideFileFactory::suffixes() and use it
...to eliminate the problem of enumerating all possible file suffixes
all over the code.
2009-10-30 19:13:37 -04:00
Sean Rhea
8357a3bb6c fix absolutely atrocious use of tabs 2009-10-30 19:08:29 -04:00
Sean Rhea
566dff8b70 hist much prettier with 5W-wide bins 2009-10-30 11:55:08 -04:00
Sean Rhea
c4de3a0eff last mod times depended on svn, remove them 2009-10-30 11:52:34 -04:00
Sean Rhea
16eb74fda0 goodbye 2000 W in cp screenshot 2009-10-30 11:50:51 -04:00
Sean Rhea
7d8bb7716c nit: we also import PowerTap CSV 2009-10-30 10:54:59 -04:00
Sean Rhea
dd6a287f02 update link to mailing list 2009-10-30 10:53:59 -04:00
Jamie Kimberley
12dfd14f1f Add support for 3dp comutrainer files in the cp plot 2009-10-29 09:47:53 -04:00
Greg Lonnon
650cee7051 Computrainer 3dp file support 2009-10-29 09:47:45 -04:00
Sean Rhea
76be2b148f fix memory leak in CsvRideFile 2009-10-28 21:05:18 -04:00
Sean Rhea
fc9a2f2ebf areDataPresent should return a const ptr 2009-10-27 23:38:57 -04:00
Robert Carlsen
5b286f3318 fix SeasonParser.cpp::EndDocument() - return value was missing 2009-10-27 01:32:56 -04:00
Sean Rhea
3f19060399 add cp curve value, make room in best value
I am so not a UI designer, but it least now all the information is there and
visible.  UI types: please dive in at any time.
2009-10-26 20:29:20 -04:00
Sean Rhea
e2512a72fc remove printf and comment 2009-10-26 19:39:29 -04:00
Robert Carlsen
fe19a946c6 fix performance manager to deal with descending ride list preference. 2009-10-25 20:00:06 -04:00
Robb Romans
65f5014351 comments about QDates in SeasonParser.cpp 2009-10-25 19:47:47 -04:00
Sean Rhea
1a4eed292f update README to include build instructions
...in particular, what to do with the .pri.in files.  Also move README
to the toplevel directory.
2009-10-25 19:45:11 -04:00
Sean Rhea
149a04e8ff reduce memory footprint of StressCalculator
After processing each RideItem, call freeMemory to deallocate the RideFile
object inside it, since we're done with the RideFile once we have the
BikeScore.  Also call computeMetrics instead of htmlSummary, since we only
need the BikeScore and computeMetrics is faster.

After computing the stress cache from scratch on Sean's ride library
(3 years of rides), this change reduces the process virtual memory size
(VSIZE) from 769 MB to 412 MB.  Even more dramatically, it reduces the
resident set size (RSIZE) from 389 MB to 36 MB!

On Sean's MacBook, which has 4 GB of RAM, this change results in a modest
reduction in the time to compute the stress cache, from 17 seconds down to
14.  On machines with more limited memory footprints, or when dealing with
a larger ride library, the speedup could be very dramatic.  (Once the
process starts paging, it's going to crawl.)

Now that it only takes 14 seconds to calculate, it's really not clear to
me that we need store the stress cache on the filesystem at all.
2009-10-25 17:40:34 -04:00
Sean Rhea
c00ab66236 add computeMetrics and freeMemory functions
computeMetrics computes the RideMetrics without building up the htmlSummary.
freeMemory frees the rideFile object associated with this ride.
2009-10-25 17:40:03 -04:00
Sean Rhea
26d3706cd8 assert.h to make Linux happy 2009-10-24 14:19:48 -07:00
Justin Knotzke
35e5ad6e7c Filtering of data in Critical Plot based on Seasons
Based on the defined dates per season, CP displays all plot only
for that Season.
2009-10-22 21:45:07 -07:00
Justin Knotzke
d75ffa9454 Added Season support via xml file.
Using seasons.xml, support now for a season name, start date and end date.

Fixed some memory leaks.
2009-10-22 21:45:03 -07:00
Mark Liversedge
db3352d4fc fix angle brackets in include
They break the build on win32.  Use quotes instead.
2009-10-18 18:40:22 -07:00
Justin Knotzke
69c1f562c5 Support for Qollector in Critical Power Plot
is_ride_filename wasn't filtering for qla files.
2009-10-18 08:32:11 -07:00
Eric Murray
820d391c79 fix PM to use exp weighted avg
Also limit decimal places in STS, LTS, and SB display fields.
2009-10-16 20:46:30 -07:00
Sean Rhea
1bc6f01e9f drop ancient PowerAgent compatibility mode
This old compatibility mode was only used to verify that we could match the
output of an old version of PowerAgent, and it hasn't been used in GC in a
long time.  I can't see us ever using it again, either.
2009-10-10 12:35:35 -04:00
Sean Rhea
9f81e1f80c put all our unit conversions in one header file 2009-10-10 12:27:42 -04:00
Sean Rhea
7fba6beba2 sort file names -- no functional change 2009-10-10 08:58:48 -04:00
Eric Murray
e939722807 add performance monitor 2009-10-08 16:42:55 -04:00
Sean Rhea
6f6f891fd7 abstract "Critical Power Plot" tab into its own class 2009-10-07 09:47:17 -04:00
Sean Rhea
8bad2b4080 minor AllPlotWindow cleanup 2009-10-07 08:20:35 -04:00
Sean Rhea
8dad7740d9 abstract "Weekly Summary" tab into its own class 2009-10-07 08:10:26 -04:00
Justin Knotzke
dac71def39 Added missing recIntSecs to Qollector
The interval time was not being recorded.
2009-10-05 09:24:48 -04:00
Mark Liversedge
5730ce568d more WKO file constants
New optional padding data 0x0e 0x80 and data cache marker 0x1d 0x80.
2009-10-05 09:20:12 -04:00
Sean Rhea
50cf0b98f8 don't plot points before first smoothing interval
Otherwise, the zeros we average distort the starting values.
This effect is particularly noticeable with altitude.
2009-10-04 06:32:25 -04:00
Sean Rhea
de97645f29 include assert.h in HistogramWindow.cpp 2009-10-03 21:57:02 -04:00
Sean Rhea
64a975cbcc remove some calls to saveAndOpenNotes
I don't think that our zones or CP changing should require re-opening the
notes file.  Only changing which ride is selected should do so.

This commit is the follow-on to a85c4f.  Please review.
2009-10-03 21:54:27 -04:00
Sean Rhea
2eb18995af unfuck generateWeeklySummary/saveNotes confusion
I have no idea why we were saving the current notes file and opening a new one
every time we called generateWeeklySummary, but it seems totally wrong to me.
This commit merely separates the two concerns into two separate functions,
generateWeeklySummary and saveAndOpenNotes, and calls the latter everywhere
the former is already called.  As such, there should be no functional change.
We can work out whether we should really be saving (possibly empty) notes
files in all these places as part of a future commit.
2009-10-03 21:46:06 -04:00
Sean Rhea
3486c0d037 abstract "PF/PV Plot" tab into its own class 2009-10-03 21:01:47 -04:00
Sean Rhea
c9c3124f56 abstract "Histogram Analysis" tab into its own class 2009-10-03 19:16:30 -04:00
Berend De Schouwer
482c0e2850 fix PowerHist zoom out with a call to setZoomBase 2009-10-03 18:13:09 -04:00
Berend De Schouwer
ff5da5cd33 fix AllPlot zoom out with a call to setZoomBase 2009-10-03 18:11:00 -04:00
Berend De Schouwer
7d1092e748 fix CSV date autodetect
There were some missing calls to set Qt::CaseInsensitive.
2009-10-03 18:06:37 -04:00
Sean Rhea
02ccdb9a07 take qwtconfig.pri out of git
Provide a qwtconfig.pri.in that you copy to qwtconfig.pri, instead.
2009-10-03 17:57:22 -04:00
Ned Harding
20ba8d1293 remove qwt5.dll from windows install
...since it is now staticly linked.
2009-10-02 11:44:08 -04:00
Mark Liversedge
46a53d3529 add additional wko padding value
...including test file from Jim Baker.
2009-10-02 09:31:23 -04:00
Justin Knotzke
27a222b3fd fix typo in QuarqParser
"Watts" shouldn't be capitalized.
2009-10-01 10:10:22 -04:00
Justin Knotzke
72e81ac5ca fix interval '9' bug in QuarqParser
I'm assuming this was a typo.  '9' should be '0'.
2009-10-01 10:10:22 -04:00
Mark Liversedge
0630c8350c more messing around with dates in ride import
- Allow user to edit any file date during import.
- WKO reader uses filename date over metadata in the file after import.
2009-09-30 08:59:59 -04:00
Sean Rhea
481e33d3ce move bikescore up in ride summary
...so that the intervals summary is "above the fold".  That may be a little on
the wide side for small screens, but it's still less wide than the intervals
summary, so it's not the worst offender in that regard.
2009-09-28 19:52:05 -04:00
Sean Rhea
0027fab400 add Eric Murray to list of contributors
It's pretty inexcusable that I forgot this before.  I'm sorry, Eric!
2009-09-28 14:47:23 -04:00
Sean Rhea
c4e8284b71 abstract "Ride Plot" tab into its own class 2009-09-27 21:40:03 -04:00
Sean Rhea
572c520711 less public variables in AllPlot
Also clean up includes and pre-declared classes.
2009-09-27 21:11:53 -04:00
Sean Rhea
84935d50af allocate MetricAggregator on stack 2009-09-27 20:16:55 -04:00
Sean Rhea
f4927be393 use QSharedPointer for daily RideMetrics 2009-09-27 20:11:44 -04:00
Sean Rhea
9df0a3effd use QSharedPointer for weekly RideMetrics 2009-09-27 20:05:20 -04:00
Sean Rhea
f13a645d18 use a QVector for time_in_zone 2009-09-27 20:00:47 -04:00
Thomas Weichmann
1005f528e2 allow for less wide MainWindow
- Moved Allplot time/distance combobox down next too smoothing slider.
- Rotated allplot plot scale lables to save a little space.
2009-09-27 13:14:17 -04:00
Greg Lonnon
b1a08c1662 added smart recording support to TcxParser.cpp
The recording interval can vary. If the recording interval is not 1
second, then the data is linearly interpolated for the time period at
1 second intervals. This allows for smart recording or garmin 705 data
drops to work correctly with GC.
2009-09-27 13:05:09 -04:00
Jamie Kimberley
00515a3832 powertap .csv file with speed/cad/hr/power data
Powertap .csv file containing data for speed, cadence, hr, and power.
2009-09-26 16:28:23 -04:00
Jamie Kimberley
1be6b71658 Powertap .raw file with speed/cad/hr/power data
Powertap .raw file containing data for speed, cadence, hr, and power.
It also has a few intervals markers which may be useful for verifying
that we handle intervals correctly.
2009-09-26 16:28:23 -04:00
Jamie Kimberley
ac4871cc96 Powertap .raw file with speed/cad/hr, no power
Powertap .raw file generated when using the powertap as a cyclecomputer.
it contains data for speed, cadence, HR but no data for power.
2009-09-26 16:28:23 -04:00
Mark Liversedge
3c43353097 report errors up from WkoRideFile 2009-09-26 16:15:59 -04:00
Berend De Schouwer
0bf396debf do not load wko files with zero records
Includes a test wko file that previously caused a crash.
2009-09-26 16:15:06 -04:00
Greg Lonnon
1eeb0346ad fix the flashing windows on startup
As it turns out, the show call for tab widgets are handled by the tabwidget
container, so we don't need to call them explicitly ourselves.
2009-09-26 16:00:57 -04:00
Mark Liversedge
28df7fee28 Parse ergomo csv filenames for date 2009-09-21 21:57:31 -07:00
Mark Liversedge
3871cb9305 Allow upper and lower case suffixes in filenames when importing 2009-09-21 21:57:31 -07:00
Jamie Kimberley
ae9afc30eb Add ergomo CSV ride files to src/test/rides/ 2009-09-21 21:41:44 -04:00
Sean Rhea
952348b4d1 new screenshots
Show off all the cool stuff we've been doing.
2009-09-20 22:26:47 -07:00
Sean Rhea
d86adfa320 altitude is always zero in .raw files 2009-09-20 21:56:00 -07:00
Sean Rhea
97f4bdea3a delete main window on close
...and set AllPlot's parent so that it gets deleted, too.
2009-09-20 21:34:31 -07:00
Sean Rhea
eff6225566 allow altitude plot to go below zero
Also ensure that altitude axis is at least 100 feet/meters tall to avoid
making a flat course look hilly.
2009-09-20 21:22:52 -07:00
Julian Simioni
ed03880376 Added ride file with altitude below sea level
Added a ride file to the tests where some altitude values are below sea
level.
2009-09-20 21:08:05 -07:00
Sean Rhea
ae72fcb796 fix spelling of Kimberley 2009-09-20 15:32:57 -07:00
Sean Rhea
8d29cd8d31 fix weekly summary bug where ride fails to appear
Without this patch, it will occationally be the case that a ride won't appear
in the weekly summary until the ride is itself selected (as opposed to just
selecting some other ride in the same week).
2009-09-20 14:25:52 -07:00
Sean Rhea
7bd0bd057b don't crash cpint plot when time < 0 2009-09-20 14:14:56 -07:00
Julian Simioni
f55655b96c tcx file with time < 0 causes cpint crash
Also added a file for descriptions of test cases.
2009-09-20 14:14:53 -07:00
Sean Rhea
3e76c6fed0 put power and altitude on their own axes 2009-09-20 11:52:35 -07:00
Sean Rhea
612a860bfd use local version of qwt
Add top-level build.pro, gitignore top-level Makefile, point src.pro at our
own qwt dir, and adjust gcconfig.pri.in accordingly.
2009-09-20 11:13:11 -07:00
Sean Rhea
0dfed2c7b6 apply many axes patch 2009-09-20 11:09:19 -07:00
Sean Rhea
2c138edbc6 build static qwt lib 2009-09-20 11:09:19 -07:00
Sean Rhea
68fbe04441 add .gitignore files for qwt 2009-09-20 11:09:19 -07:00
Sean Rhea
13bd8a1f52 check qwt-5.2, r588 into repository 2009-09-20 11:07:49 -07:00
Sean Rhea
e906b76fa5 clarify no SRM download support under Windows 2009-09-20 09:50:22 -07:00
Sean Rhea
c9391c8500 update web page for release 1.2.0 2009-09-20 08:29:45 -07:00
Jamie Kimberley
7b782a18d2 clean up wildcard filters in import wizard
Show all supported files as the default and each specific format as a
separate option.
2009-09-20 08:26:01 -07:00
Mark Liversedge
f25e4992b6 wko test file with non-metric units in charts 2009-09-19 19:06:29 -07:00
Mark Liversedge
686573d190 minor fix to wko chart data processing
Only affects users with non-metric units on standard charts in WKO.
2009-09-19 19:02:07 -07:00
Mark Liversedge
6eabaa1709 unified ride import wizard
All the file import options are now supported by one dialog.  As an extra
special bonus, GC now supports dragging and dropping files to import them.
2009-09-19 18:05:43 -07:00
Eric Murray
c65a9a8445 fix manual ride BS estimates for rides under 1 hour
also added progress box while calculating BS estimating factors
2009-09-19 09:32:39 -07:00
Eric Murray
fc19431f79 fix manual ride entry crash when no zones file
This is a partial patch based on code from Eric Murray.  It changes just
enough of ManyalRideDialog to fix a crash that otherwise occurs when the
user doesn't have a zones file.
2009-09-19 09:21:53 -07:00
Sean Rhea
344678fca3 add 95th percentile heart rate to interval summary 2009-09-16 07:24:12 -07:00
Sean Rhea
161f7745b0 store DataPoints themselves, not pointers, in list
Gets rid of one more pair of new/delete.
2009-09-16 07:22:27 -07:00
Sean Rhea
c5950c4076 change xyzArrays into QVectors
To match coding conventions and simplify memory management.
2009-09-16 07:22:20 -07:00
Sean Rhea
bda9373e91 change smoothXYZ arrays into QVectors
To match coding conventions and simplify memory management.
2009-09-16 07:22:10 -07:00
Sean Rhea
a6466abbd2 cleanup zone label deletion
Use foreach function to shorten and clarify code.
2009-09-16 07:22:04 -07:00
Sean Rhea
8682cb6da3 fix memory error in interval marker code
The previous version of this code contained a memory corruption bug.
QwtPlot deletes all of the items that are attached to it in its
destructor, but the QwtPlotMarkers for intervals were being allocated as a
group with array new.  If we deleted an AllPlot object, then, it would
have tried to delete each of the marker objects individually, rather than
with array delete, which causes memory corruption.  We haven't seen this
bug before because we don't ever delete AllPlot objects (which is a memory
leak in MainWindow).
2009-09-16 07:21:56 -07:00
Sean Rhea
fc90ce23ee allocate altitude pen on stack
Since it's only used for the duration of this function.
2009-09-16 07:20:58 -07:00
Sean Rhea
3d10906455 allow different interval lengths in tools dialog
Also switch it to being a modeless dialog, so that the user can search through
his/her CP graph to find values to use, and clean up the code a little.
2009-09-12 21:20:53 -04:00
Sean Rhea
7875347b8d fix secs range in best intervals 2009-09-12 21:11:50 -04:00
Sean Rhea
822dd61ab9 explain "git commit ." 2009-09-12 16:45:52 -04:00
Sean Rhea
28ba83490f correct commit msg guidelines
first line should be *50* chars or less, not 40
2009-09-12 15:05:28 -04:00
Sean Rhea
0f50b2bca9 update d/l page to point to devel guide 2009-09-12 14:37:59 -04:00
Sean Rhea
32f6abcffb update faq
- update which version of OS X GC requires
- remove links to books (may add them back elsewhere some day...)
- remove old question about ptunpk
2009-09-12 14:32:34 -04:00
Sean Rhea
3d303f3bad remove done items from wishlist 2009-09-12 14:31:30 -04:00
Sean Rhea
7d069be6e9 add new developer's guide 2009-09-12 14:26:42 -04:00
Sean Rhea
7c613e81b8 remove google ads 2009-09-12 14:26:42 -04:00
Mark Liversedge
46afb44c05 Optional padding data with value 0x8012 discovered 2009-09-12 11:57:14 -04:00
Berend De Schouwer
672b2fcb34 SplitRide altitude matches CSV2 2009-09-12 11:54:33 -04:00
Sean Rhea
adbcfacdb6 simplify GC_BUILD_DATE and GC_VERSION
Use gcc macros for __TIME__ and __DATE__ to compute build date.  This has the
advantage that we don't have to shell out to find the date, though it has the
disadvantage that it doesn't give us any control over format, nor does it
report the time zone.

By default, set GC_VERSION to "(developer build)".  For release versions,
specify GC_VERSION explicitly in gcconfig.pri like this:

  QMAKE_CXXFLAGS += -DGC_VERSION="'\"1.2.0\"'"

It would be nice to specify the git commit id in developer builds.  On the
other hand, the developer could always have uncommitted changes, so the git
commit id doesn't really make for a completely reproducible build.  It's also
a pain to get ahold of in Windows.
2009-09-11 09:13:20 -04:00
Mark Liversedge
28c54484de WKO Import no longer aborts bulk import on first file error. 2009-09-11 09:13:20 -04:00
Justin Knotzke
d8f5a13069 main and RideItem now use the global function that returns the correct QSettings. 2009-09-11 08:49:20 -04:00
Justin Knotzke
d5c7fe2f8d Added to what Greg has done in regards to GC's settings. Fixed a bug regarding where power.zones file was being saved to. 2009-09-11 08:49:20 -04:00
Greg Lonnon
178fa8278d the settings code was leaking and it was copy/pasted in a few files.
created a method to find QSettings (settings.h) and stopped it from leaking.

The leak looked like this...

==7800==    at 0x4C2726C: operator new(unsigned long) (vg_replace_malloc.c:230)
==7800==    by 0x64FD232: (within /usr/lib/libQtCore.so.4.5.0)
==7800==    by 0x64FDB62: QSettings::QSettings(QString const&, QString const&, Q
Object*) (in /usr/lib/libQtCore.so.4.5.0)
==7800==    by 0x4738E5: PfPvPlot::setData(RideItem*) (PfPvPlot.cpp:361)
2009-09-11 08:49:20 -04:00
Julian Simioni
563d19e246 tcx ride requiring AltitudeMeters 2009-09-10 21:27:04 -04:00
Julian Simioni
5840626e56 Fixed altitude in .tcx files.
One-liner to correctly parse altitude in Garmin .tcx files.
2009-09-10 21:21:59 -04:00
Mark Liversedge
a88029e793 Added support for Cycleops 300PT in WKO import 2009-09-10 21:14:55 -04:00
Justin Knotzke
9595e6c188 Changed the label from mm to m as that's what is displayed. 2009-09-09 07:25:57 -04:00
Berend De Schouwer
c9a7669046 Fix PfPV divide 1000 2009-09-09 07:17:43 -04:00
unknown
b82f7be7e9 Fixes editing of notes
Signed-off-by: Robert Carlsen <robert@robertcarlsen.net>
2009-09-08 18:25:50 -04:00
unknown
d85fba860e Fixes major bug putting AppData in wrong place on Vista & Win7
Signed-off-by: Robert Carlsen <robert@robertcarlsen.net>
2009-09-08 18:25:42 -04:00
Robert Carlsen
179ee500f5 Update version number to 1.2.0 for imminent release. 2009-09-07 19:45:48 -04:00
Greg Lonnon
8e3eb2f300 fixed the following use of a uninitialized variable
==30062== Conditional jump or move depends on uninitialised value(s)
==30062==    at 0x49070E: ElevationGain::perPoint(RideFilePoint const*, double, RideFile const*, Zones const*, int) (BasicRideMetrics.cpp:114)
==30062==    by 0x491592: PointwiseRideMetric::compute(RideFile const*, Zones const*, int, QHash<QString, RideMetric*> const&) (RideMetric.h:54)
2009-09-07 12:27:08 -04:00
Rhea@.(none)
1e1c0728a5 rearrange src.pro for Windows 2009-09-06 19:30:03 -04:00
Berend De Schouwer
b7fa71f11e Use CSV filename as timestamp 2009-09-06 18:35:49 -04:00
Sean Rhea
13575143e8 try three times to get PT version string
Sometimes we miss the 'V' in 'VER' on the first one, but a subsequent one
lines up right.  Patch from Dan Connelly.
2009-09-06 18:25:43 -04:00
Sean Rhea
212a59c3d1 turn off tooltips in PowerHist
With some versions of Qt/Qwt, tooltips cause an infinite recursion.  We don't
know why this happens yet, but this patch at least prevents crashes while we
figure it out.
2009-09-06 14:13:31 -04:00
Sean Rhea
5d45793b27 remove unused functions 2009-09-06 14:08:19 -04:00
Justin Knotzke
d5605dab66 This should never have made it to github
Revert "Revert "First line of Notes in WKO imported file now has sport followed by workout code. Improves Calendar display.""

This reverts commit 3567012046.
2009-09-05 22:32:33 -04:00
Justin Knotzke
291a6821a3 This should never have made it to github.
Revert "Revert "guard against all negative values in PowerHist""

This reverts commit d785ca5a0f.
2009-09-05 22:31:47 -04:00
Justin Knotzke
3fcd51de3d Test files for the qollector. 2009-09-05 22:27:32 -04:00
Justin Knotzke
ba0f84ef74 Revert "guard against all negative values in PowerHist"
This reverts commit df33fe2301.
2009-09-05 22:24:01 -04:00
Justin Knotzke
63c28995da Revert "First line of Notes in WKO imported file now has sport followed by workout code. Improves Calendar display."
This reverts commit 325140af26.
2009-09-05 22:24:01 -04:00
Mark Rages
08a23c6faa Add support for Quarq ANT+ log import.
The Quarq ANT+ log contains a hex dump of raw ANT+ messages.  This
importer uses the closed-source program "qollector_interpret" to convert
the ANT+ log file into an XML format, then parses that into a RideFile.

qollector_interpret binaries for several platforms may be downloaded from
http://opensource.quarq.us/qollector_interpret

If the qollector_interpret program is not available, the menu selection
for importing Quarq ANT+ will not appear, nor will .qla files be
imported.
2009-09-05 21:28:12 -04:00
Sean Rhea
3ddb693713 guard against all negative values in PowerHist
This patch unifies the way in which we handle negative values in the Power
Histogram by ignoring all values (speed, hr, cadence, power, and torque)
less than zero.

I'm not sure if this is the right way to handle such values long term, but
it sure beats dumping core.
2009-09-04 19:52:33 -04:00
Mark Liversedge
2445eddf2d First line of Notes in WKO imported file now has sport followed by workout code. Improves Calendar display.
Signed-off-by: Robert Carlsen <robert@robertcarlsen.net>
2009-09-04 10:52:10 -04:00
Mark Liversedge
ff78d88afe WKO Fix for 64bit, Big Endian and Interval should be 0
Signed-off-by: Robert Carlsen <robert@robertcarlsen.net>
2009-09-04 10:00:03 -04:00
Sean Rhea
49cb26c837 fix include <> --> "" 2009-09-02 21:25:58 -04:00
Rhea@.(none)
6db4917ff9 fix newlines 2009-09-02 21:17:35 -04:00
Berend De Schouwer
1523bbcd37 Resize for small screens 2009-09-02 12:46:17 -04:00
unknown
5b332e2caa Fixes stack overflow crash bug 2009-09-02 10:54:13 -04:00
Sean Rhea
9967caed69 move 'CONFIG += static debug' into gcconfig.pri 2009-09-02 10:45:13 -04:00
Thomas Weichmann
a65b028b04 Changed title of Power Histogram Tab to Histogram Analysis 2009-09-02 10:38:28 -04:00
Sean Rhea
662dee10db don't compile/link D2XX.cpp if isEmpty( D2XX_INCLUDE )
As suggested by Berend De Schouwer.
2009-09-02 10:36:02 -04:00
Claus Assmann
0cf1b8e0ef Need unistd.h for unlink(2). 2009-09-02 10:30:33 -04:00
Justin Knotzke
1d6ff64809 Took out a RideCalendar::addRide() Adding a ride debug statement. 2009-09-01 06:38:07 -04:00
Sean Rhea
74ea77d6c5 PowerHist cleanup: trust QVector::resize()
QVector::resize() already does exponential capacity growth and zero fills new
elements, so there's no reason for us to be doing either by hand.  This change
simplifies our code substantially.
2009-09-01 06:19:54 -04:00
Berend De Schouwer
bcb12e214f RidePlot/ErgomoCSV/ErgomoHU Interval consistency 2009-09-01 06:12:34 -04:00
Berend De Schouwer
90912947d7 Calendar add-remove rides 2009-09-01 06:12:34 -04:00
Sean Rhea
819235ebd7 bug fix: no altitude in srm files
This bug was introduced in 5c0bdd89, which added an alt member to
SrmDataPoint without initializing it.
2009-09-01 05:38:18 -04:00
Claus Assmann
97295524aa There are more than just 3 OSs, make "Unix" the default. 2009-09-01 05:29:36 -04:00
Robert Carlsen
435cb847d4 Changed declaration of QMAKE_CXXFLAGS to include possible settings from gcconfig.pri. ( = --> += ) 2009-08-31 11:16:43 -04:00
Sean Rhea
ac12a29f4c ignore empty include paths 2009-08-31 05:36:17 -07:00
Sean Rhea
dfecaa9e50 add D2XX_INCLUDE path
Also remove Windows-specific include path in D2XX.h, as setting
D2XX_INCLUDE in gcconfig.pri will accomplish the same thing.
2009-08-30 15:08:48 -07:00
Berend De Schouwer
884c3d0eea Add Calendar 2009-08-30 14:49:25 -07:00
Berend De Schouwer
37f7563984 Add altitude for Ergomo CSV 2009-08-30 09:35:10 -07:00
Sean Rhea
97d9387245 test csv file with -1 hr values
This cvs file from Phil Skiba contains -1 values for hr that were
crashing the power histogram plot.

This is also the first entry into the test/rides directory, in which I
hope to store all ride files that have ever crashed any version of GC.
2009-08-30 09:25:08 -07:00
Sean Rhea
b6cef3cd83 handle non-standard include/lib paths 2009-08-30 09:03:16 -07:00
Robert Carlsen
9a59d7f3a6 Restoring src.pro to use Mac Carbon framework 2009-08-29 18:34:18 -04:00
Mark Liversedge
ecd28b2de1 Fix .notes created in ~/Library/GoldenCheetah rather than ~/Library/GoldenCheetah/<cyclist>/
Signed-off-by: Robert Carlsen <robert@robertcarlsen.net>
2009-08-29 18:30:27 -04:00
Mark Liversedge
62720a02a9 Stop .notes file being created in / when browsing through WKO files.
Signed-off-by: Robert Carlsen <robert@robertcarlsen.net>
2009-08-28 18:40:01 -04:00
Mark Liversedge
59f3259792 Rudimentary calculation of Distance from Time/Speed when Distance is not available as a graph
Signed-off-by: Robert Carlsen <robert@robertcarlsen.net>
2009-08-27 10:54:56 -04:00
Mark Liversedge
8df88d3c38 Added Fix for Garmin 205/305
Signed-off-by: Robert Carlsen <robert@robertcarlsen.net>
2009-08-26 14:23:16 -04:00
Robert Carlsen
d36f5ad52f Fix for PowerHist crash with HR of -1 2009-08-26 10:47:50 -04:00
Mark Liversedge
524435cc5e Updated WKO import to support Altitude in RideFile->appendPoint()
Signed-off-by: Robert Carlsen <robert@robertcarlsen.net>
2009-08-25 13:35:21 -04:00
Mark Liversedge
e3c523f365 Adjustments to wko specific source files 2009-08-25 09:59:23 -04:00
Mark Liversedge
ac6b3ca774 Added WKO RideNotes, applied style guide, fixed CP calc, check version of file 2009-08-25 09:59:22 -04:00
Mark Liversedge
9bd9482971 Src.pro and MainWindow.h changes for WKO import 2009-08-25 09:59:22 -04:00
Mark Liversedge
ff13630d6c Changed MainWindow.cpp to attach WKO file import 2009-08-25 09:59:22 -04:00
Mark Liversedge
c30271fa2b Initial support for WKO file import 2009-08-25 09:59:22 -04:00
Robert Carlsen
7afbe0b1d0 Fix for swapped cadence and altitude data 2009-08-25 09:22:52 -04:00
Thomas Weichmann
030e2c0820 Changes to add altitude data to allplot & elevation gained to ride metrics 2009-08-25 06:18:20 -04:00
Sean Rhea
e47ef623ca fix inexplicable naming conflict
Somehow this SrmData conflicts with the one in srm.h.  I would have expected
the compiler to flag that, but it didn't.  Weird.
2009-08-24 21:21:44 -07:00
Sean Rhea
6926437dcc use gcconfig.pri for local config 2009-08-24 20:08:55 -07:00
Sean Rhea
fc80df4040 restructure srm d/l code to improve clarity
Use class wrappers around the srmio library to insure that we always
close every opened device and free all allocated data.  Includes other
little bits of stylistic cleanup.
2009-08-24 20:03:07 -07:00
Sean Rhea
e5ef8c5168 naked new okay for Qt classes with parent pointers 2009-08-24 19:54:32 -07:00
Sean Rhea
15e41d865f coding style guidelines 2009-08-24 19:42:12 -07:00
unknown
0136d27996 Fixes Win32 Build again 2009-08-22 12:13:06 -04:00
Justin Knotzke
2434a8ea30 This adds timezone support for TCX files. - Julian Simioni 2009-08-21 20:26:47 -04:00
Justin Knotzke
4c1c0233fc Misc fixes by Julian Simioni.. Thanks. 2009-08-21 20:22:59 -04:00
Justin Knotzke
ba754d08fe Julian Simioni's patch that uses standard OS directories for storing settings and libraries as well as settings.
USB Stick support still supported.
2009-08-21 19:34:19 -04:00
Sean Rhea
f223e9c2e8 don't clear/close device if open fails 2009-08-18 04:51:48 -07:00
Sean Rhea
5c0ad5da25 add option to clear srm memory after download 2009-08-18 04:37:50 -07:00
Sean Rhea
d62a9cf1b2 fix include path to srmio.h 2009-08-18 03:12:19 -07:00
Sean Rhea
af97b36a11 add include path for srmio 2009-08-15 17:55:11 -07:00
Sean Rhea
3fcca7f685 use local install of libsrmio.a
Rather than committing the srmio code to the GC repository, let the user
download and build it on their own.  It can be found at

  http://www.zuto.de/project/file/srmio/

or

  git://github.com/rclasen/srmio.git
2009-08-15 17:28:31 -07:00
Sean Rhea
264d565968 direct srm d/l -- ghetto, but working
The ghetto part is that we just read the device path out of the device name,
then pass that path directly to Rainer's srmpc_get_data, rather than passing
it an abstraction of a serial port.  As such, this code will only work on
Unix-like operating systems.  But it does work, and that's a good start.
2009-08-15 14:15:46 -07:00
Sean Rhea
da3351c71d add Prolific 2303 to serial device paths 2009-08-15 14:15:45 -07:00
Sean Rhea
f87426dc62 fix segfault on very short rides 2009-08-15 14:15:45 -07:00
Sean Rhea
005e0ef592 add qmake file to build static lib 2009-08-15 14:15:45 -07:00
Sean Rhea
e055287334 srmio version 0.0.3 2009-08-15 14:15:45 -07:00
Justin Knotzke
fce99c98e7 Fixed a bug where MPH was always shown in the AllPlot even when Metric was selected. 2009-08-15 07:26:38 -04:00
Eric Murray
e399bc8920 Manual ride entry updates
fix to use last N days worth of rides for BiksScore estimates
fix for skipping some rides in BikeScore estimates
skips rides with zero Bikescore for BikeScore estimates
hitting enter on ManualRide entry dialog doesn't write file
better checking for inputs on ManualRide dialog

Signed-off-by: Robert Carlsen <robert@robertcarlsen.net>
2009-08-12 21:04:36 -04:00
Robert Carlsen
21d9a3e332 Fixed constructor bug when using a NULL value and qwt5. ie. unit(NULL) -> unit(0) 2009-08-11 17:15:54 -04:00
Justin F. Knotzke
46d6001896 This code should now allow GC to be run off a USB stick.. or the Qollector. If GC finds a Library/GoldenCheetah next to the executable, it will use that location to store all of its settings and Libraries. Otherwise, it reverts to how GC handled settings previously. 2009-08-11 06:07:36 -04:00
Sean Rhea
774a0f02a2 avoid static constructor ordering bug 2009-08-10 21:45:46 -07:00
Sean Rhea
879fb2f8f2 QString.h --> QString 2009-08-09 22:04:59 -07:00
Sean Rhea
64f14c6fa6 treat hsecsincemidn as a signed integer 2009-08-09 22:04:51 -07:00
Eric Murray
b1c49e92da Fixed calculation errors in manual ride BikeScore estimates 2009-08-09 15:43:07 -07:00
Sean Rhea
9e765525dd abstract instructions; use combo for port, too 2009-08-09 15:34:53 -07:00
Sean Rhea
e2e4513647 add combobox to select device type 2009-08-09 15:34:46 -07:00
Sean Rhea
47cdc3b62d abstract Device to support multiple device types 2009-08-09 15:34:39 -07:00
Sean Rhea
d8b7aceb1e move all PT-specific code out of DownloadRideDialog 2009-08-09 15:34:32 -07:00
Sean Rhea
9138f98b1d localize PT-specific code in DownloadRideDialog 2009-08-09 15:33:49 -07:00
Sean Rhea
25156c263c clean up headers 2009-08-09 15:33:41 -07:00
Sean Rhea
6881b6f7c0 move calc of d/l status str to PowerTapDevice
...thereby making DownloadRideDialog a little more device-agnostic.
2009-08-09 15:33:35 -07:00
Sean Rhea
c64fae5165 move filename calculation to downloadClicked()
...in preparation for moving more of DownloadRideDialog into PowerTapDevice.
2009-08-09 15:33:23 -07:00
Sean Rhea
9e7de150e9 move PT download code into PowerTapDevice.(h|cpp) 2009-08-09 15:33:16 -07:00
Sean Rhea
d438444190 rename PowerTap.(h|cpp) to PowerTapUtil.(h|cpp)
...in preparation for separating out a PowerTapDevice class.
2009-08-09 15:33:02 -07:00
Sean Rhea
d03a48587a ManualRideDialog doesn't need PowerTap functions 2009-08-09 15:32:54 -07:00
Sean Rhea
d898b6831b rename Device to CommPort
I hate to change so many lines of code just for a little rename, but I want to
distinguish between "devices", like the PowerTap and SRM, and "communications
ports", like the serial port and the native D2XX drivers.  This work is in
preparation for adding direct download support for the SRM.
2009-08-09 10:01:00 -07:00
Sean Rhea
1cda4cb4da fix unused parameter warning 2009-08-09 09:29:11 -07:00
Sean Rhea
4910da9120 fix unused variable warnings 2009-08-08 10:39:22 -07:00
Sean Rhea
7f53da257c add support for .srm version 7 2009-08-08 10:39:12 -07:00
Justin Knotzke
83b547908f Manual patch entry by Eric Murray. Users can now enter in a manual entry
based on distance or time.
2009-08-07 21:31:06 -04:00
Justin Knotzke
59a7d763d8 Manual patch entry by Eric Murray. Users can now enter in a manual entry based on distance or time. 2009-08-07 21:25:22 -04:00
Sean Rhea
94024366ee git replaces svn 2009-08-01 19:33:26 -07:00
Sean Rhea
1b190a7ada reminder to update web page about git 2009-08-01 14:51:30 -07:00
Sean Rhea
924d9483f3 Merge branch 'master' of git@github.com:srhea/GoldenCheetah 2009-08-01 14:23:00 -07:00
Sean Rhea
94fe69d049 fix zero-torque bug in PowerHist 2009-08-01 14:04:48 -07:00
Justin Knotzke
6f86033df6 Fixed a small bug whereby we weren't deteting Linux correctly (or at all for that matter)
It now uses the standard QMAKE -spec for #ifdefs
2009-08-01 16:52:49 -04:00
Justin Knotzke
edb6910444 Try to deduce Ergomo filenames when importing into GC as CSV.
Berend De Schouwer

Instead of importing with the creation time -- which is when the file
was downloaded -- attempt to get a more useful time.
2009-07-01 09:28:18 -04:00
Justin Knotzke
3a3a96e311 Ergomo CSV files list both a TIME field at column 0, and a PAUSE field
at column 10.

The TIME (L_SEC) field appears to always increment one recording
interval at a time -- however it always increment consistently.  When
there is a pause, the TIME field increments as if there was NO pause.

For example:

   11,   0.015,    0,   0, 12.7,   0,1350.2, 11.7,  0,     0
   12,   0.015,    0,   0, 12.7,   0,1350.0, 11.7,  0,     0
   13,   0.015,    0,   0, 12.7,   0,1350.0, 11.7,  0, 35607
   14,   0.015,    0,   0,  2.9,  70,1095.2,  4.7,  0,     0
   15,   0.021,    0,   0,  2.9,  70,1094.0,  4.7,  0,     0

At the 13th second, there was a pause for 35607 seconds.  The 14th
second is actually the 14+35607 second.

The attached patch loads those files correctly.  This allows the "Ride
-> Split Ride..." menu option to work as expected.

Thanks Berend De Schouwer
2009-07-01 09:20:34 -04:00
Robert Carlsen
030bf8d082 PfPv patch for missing cadence data from Dan Connelly 2009-06-30 00:33:10 -04:00
Robert Carlsen
f17c14b6d2 added .gitignore for doc dir 2009-06-26 18:44:41 -04:00
Robert Carlsen
65bb24921b updating FTDI instructions on user guide page 2009-06-26 18:12:40 -04:00
Robert Carlsen
395474f1d6 Adding missing assert.h include 2009-06-24 14:43:56 -04:00
Robert Carlsen
ab77aab620 Restoring ifdef for D2XX on win32 2009-06-23 13:18:00 -04:00
Robert Carlsen
72af46d908 Merge branch 'clean' into hub 2009-06-23 12:48:44 -04:00
Sean Rhea
f9919f57a6 update title again, rewrite introduction text
Say more about what GC actually does, rather than talking about future goals.
2009-06-23 09:23:30 -07:00
Robert Carlsen
dd14b28a7d Adding .gitignore files. Feel free to tweak them for your environment 2009-06-23 12:20:56 -04:00
Robert Carlsen
96bca441a0 Bug fixes for PfPv and TCXParser from Ned 2009-06-23 12:19:56 -04:00
Sean Rhea
e67dcb514b web page edit: more inclusive title 2009-06-23 08:48:54 -07:00
Robert Carlsen
8d7c680cc0 Adding in PolarRideFile.cpp/h 2009-06-23 09:20:00 -04:00
Justin Knotzke
6c65e54f18 Damien's patch to support CS600 Polar files. 2009-06-23 06:35:53 -04:00
Robert Carlsen
c2b22316a8 updating the website docs 2009-06-23 02:06:34 -04:00
Justin F. Knotzke
cdb9e11c89 Threw in an ifdef to fix differences between qwt 5.2 and qwt 5.1.2 2009-06-22 12:02:21 +00:00
Robert Carlsen
c58e732af5 Adjusting weekly plot axis label font size slightly for Mac. Small fonts (< 8pt) are aliased by default in OS X. 2009-06-22 05:37:13 +00:00
Robert Carlsen
37b860cbec Small bug fix for lo and hi margins values. 2009-06-22 05:29:50 +00:00
Justin F. Knotzke
d6a4cfe652 Small fixes post Dan's Mega Patch.. 2009-06-22 03:50:04 +00:00
Justin F. Knotzke
6c06e7b1d7 Missing settings.h 2009-06-22 03:23:37 +00:00
Justin F. Knotzke
9d63f8769b Berend De Schouwer
A little tooltip highlighter to let you know power what you are looking at.
2009-06-22 03:18:05 +00:00
Justin F. Knotzke
1e782a8606 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 03:10:46 +00:00
Justin F. Knotzke
c0057fda88 Added DaysScaleDraw.h for Dan's mega patch 2009-06-22 03:10:09 +00:00
Justin F. Knotzke
cf631306b2 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:27:11 +00:00
Justin F. Knotzke
2c40ccee6a Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:26:35 +00:00
Justin F. Knotzke
d44134ae50 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:25:09 +00:00
Justin F. Knotzke
cb64df8064 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:24:28 +00:00
Justin F. Knotzke
76ed0ea419 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:24:21 +00:00
Justin F. Knotzke
e4f2197947 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:24:16 +00:00
Justin F. Knotzke
1f46d14885 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:24:10 +00:00
Justin F. Knotzke
c179e6a3a7 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:24:05 +00:00
Justin F. Knotzke
fa78e9b833 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:23:37 +00:00
Justin F. Knotzke
9a2709cfd9 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:23:30 +00:00
Justin F. Knotzke
ccb6d50cf9 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:23:23 +00:00
Justin F. Knotzke
e07f742672 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:23:17 +00:00
Justin F. Knotzke
7e530ee789 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:23:11 +00:00
Justin F. Knotzke
92cc9cca6e Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:23:06 +00:00
Justin F. Knotzke
a577c6978c Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:23:00 +00:00
Justin F. Knotzke
28caf0e80d Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:22:56 +00:00
Justin F. Knotzke
a341c52128 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:22:51 +00:00
Justin F. Knotzke
0cca54c3fc Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:22:45 +00:00
Justin F. Knotzke
b5af19a4e9 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:22:39 +00:00
Justin F. Knotzke
62a79d50a7 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:22:35 +00:00
Justin F. Knotzke
046fa8958d Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:22:30 +00:00
Justin F. Knotzke
3233b8a024 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:22:25 +00:00
Justin F. Knotzke
e518368a7f Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:22:18 +00:00
Justin F. Knotzke
a22ba964b5 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:22:13 +00:00
Justin F. Knotzke
058fd5637e Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:21:16 +00:00
Justin F. Knotzke
463b020146 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:21:12 +00:00
Justin F. Knotzke
253486a191 Dan Connelly's MEGA patch.
It includes both powerzones and weekly summary plots.

  Thanks Dan.
2009-06-22 02:21:10 +00:00
Justin F. Knotzke
e9bee2450c Crank length updated live (you must change the ride) to see the change. Before this patch you had to restart GC. Thanks to Berend. 2009-06-21 16:54:35 +00:00
Justin F. Knotzke
300c4ecf05 Berend De Schouwer
A little tooltip highlighter to let you know power what you are looking at.
2009-06-21 14:10:16 +00:00
Justin F. Knotzke
da2b48a255 Berend De SchouwerI made it possible to set the default cranklength.
I made it a combo box to avoid having to take care of invalid inputs.
2009-06-21 14:08:05 +00:00
Justin F. Knotzke
10d35994d7 Berend De SchouwerI made it possible to set the default cranklength.
I made it a combo box to avoid having to take care of invalid inputs.
2009-06-21 14:04:37 +00:00
Robert Carlsen
ff74ce4478 Fixing a case-sensitivity bug with csv files. 2009-06-17 13:56:53 +00:00
Justin F. Knotzke
bf9718c091 Fix by Dan Connelly for a weekly summary bug that showed different summaries for the same week when moving the picker. 2009-06-02 00:09:28 +00:00
Justin F. Knotzke
12aba40f1d Danniel Connelly's patch regarding Histogram and the implementation of a Y Axis. 2009-05-16 20:57:39 +00:00
Sean C. Rhea
acf05aa9eb cleanup related to parseRideFileName
It was lame that I had to add the "xml" suffix to this regex.  It should be
enough to add a RideFile subclass.  This patch also does a more robust job of
setting the notesFileName.
2009-05-03 15:56:00 +00:00
Sean C. Rhea
5ae7546023 oops! 2009-05-03 15:38:15 +00:00
Sean C. Rhea
4aa3e8f3b8 read xml files
The current RideFile type associates a unique interval number with each sample
point, meaning that intervals can't overlap.  It also names intervals as
integers, not strings.  So for now, XmlRideFile just orders intervals by their
order in the xml file and names them by their order in this list (starting
with zero, to match convention).  It then associates each sample with the
lowest-named interval into which the sample falls.  This strategy means that a
raw file exported to xml will have the same interval locations and names when
read back in as xml.
2009-05-03 01:41:12 +00:00
Sean C. Rhea
c1c2217ce1 document encoding string can't contain spaces 2009-05-03 01:22:33 +00:00
Sean C. Rhea
e420255e6f handle failure to read ride file gracefully 2009-05-03 01:08:38 +00:00
Sean C. Rhea
d8a5041400 export to XML functionality 2009-05-02 22:58:57 +00:00
Justin F. Knotzke
74608a7bf2 Dan found a bug in how the dates were written to file. 2009-04-17 12:03:25 +00:00
Robert Carlsen
dc9c2b7b7a Updating the Delete Ride dialog with caution icon and "Cancel"/"Delete" buttons. Also wrapped strings in Qt translate functions. 2009-04-14 18:04:37 +00:00
Robert Carlsen
d6ab30747f Delete ride function from Ned Harding. 2009-04-14 15:48:13 +00:00
Robert Carlsen
9f90d3b5c2 Updating the minor version to 1. 2009-04-10 20:13:59 +00:00
Justin F. Knotzke
54e5021b89 Ned's install script for Win32. 2009-04-10 14:33:13 +00:00
Justin F. Knotzke
012310dc2c Fix by Daniel Connelly to ensure Zones Ranges are more continuous. 2009-04-10 14:06:18 +00:00
Robert Carlsen
0e297307d5 Committing Ned Harding's win32 building updates 2009-04-08 19:22:11 +00:00
Robert Carlsen
58c93c3223 Committing Ned Harding's patches for building on win32. 2009-04-08 07:12:24 +00:00
Robert Carlsen
c572a3e7d4 From Ned Harding: Basic implementation of dflcn header for win32 2009-04-08 06:59:49 +00:00
Justin F. Knotzke
855f420e11 Fixed skiba_xpower bug. 2009-04-07 23:29:18 +00:00
Justin F. Knotzke
ec221e39e0 Small fix to LTM. Still in comments 2009-04-07 22:28:14 +00:00
Justin F. Knotzke
04d5403554 Small fix to LTM. Still in comments 2009-04-07 22:23:24 +00:00
Justin F. Knotzke
fab79648d0 Small fix to LTM. Still in comments 2009-04-07 22:22:39 +00:00
Justin F. Knotzke
64264a064d Quick LTM fix. This is all still in comments. 2009-04-07 22:15:36 +00:00
Justin F. Knotzke
992c44df68 Stupid svn and case sensitivity 2009-04-07 22:14:57 +00:00
Justin F. Knotzke
07aa3e4d5a Small fix to LTM. Still in comments 2009-04-07 22:09:52 +00:00
Justin F. Knotzke
8c7cbc9d9e Small fix to LTM. Still in comments 2009-04-07 22:09:22 +00:00
Justin F. Knotzke
db0736b6dc Small fix to LTM. Still in comments 2009-04-07 21:32:27 +00:00
Robert Carlsen
3fc57b5d36 restoring static linking for qwt lib and removing reference to ftdi lib (handled in D2XX.h/cpp at runtime) 2009-04-06 16:20:06 +00:00
Justin F. Knotzke
94151a0281 Wrong file.. 2009-04-06 10:13:59 +00:00
Justin F. Knotzke
b462dfc9f0 Wrong file.. 2009-04-06 10:13:01 +00:00
Justin F. Knotzke
a2683a0dbb This is the new Metrics SQL Database support. 2009-04-06 01:24:48 +00:00
Justin F. Knotzke
007b30681c This is the new Metrics SQL Database support. 2009-04-06 01:24:30 +00:00
Justin F. Knotzke
11e5daf5e7 SplitRideDialog. Missing from r300 Checkin. 2009-04-06 01:05:40 +00:00
Justin F. Knotzke
a6a13afd9c Accidentally took out ppc from the mac build. 2009-04-06 01:03:05 +00:00
Justin F. Knotzke
c365416fbb Split Ride.
It offers to split at any time gap over 30 seconds and also at any interval.  
If the time gap is over 5 minutes it defaults to checked, otherwise it 
defaults to unchecked.

Anywhere you check, it will split the ride at that point overwriting the or
original ride with a shorter one and creating new rides after the split points
 The original would get renamed with a .bak so it could be recovered.
2009-04-06 01:01:17 +00:00
Justin F. Knotzke
792fc11d16 Fixed a possible memory bug. Thank you to Dan Connelly 2009-04-03 00:33:06 +00:00
Justin F. Knotzke
d00ebbb8d3 Tom Montgomery's patch:
I have made changes to the Import CSV dialog box; the new (proposed)  
behaviour is as follows:

  At first, the datePicker widget and OK button are disabled.
  The datePicker is preset to today's date (no longer really  
necessary, but the code is there).
  User clicks 'choose a file' and the usual file browser appears.
  If a file is selected, its creation date is stuffed into the  
datePicker.
  On return from the browser, the datePicker and OK buttons are re- 
enabled.
  User can modify the ride date, in case the file upload was not done  
on ride day.
  User clicks OK, the file is imported as before.
2009-03-27 18:02:34 +00:00
Justin F. Knotzke
78085e9d6c This patch by Tom Montgomer now uses the current date when importing a CSV file instead of defaulting to 2000.
Thanks Tom.
2009-03-25 23:21:47 +00:00
Justin F. Knotzke
b84e2f7be6 GC now support the latest v10 iBike CSV import.
Thanks to Tom Montgomery
2009-03-25 23:15:18 +00:00
Justin F. Knotzke
621521a89c Thanks to Ned Harding, Golden Cheetah now support Ant+ Sport. Thanks Ned. Much appreciated.
J
2009-03-18 17:59:46 +00:00
Justin F. Knotzke
7a905a809d 2009-02-22 15:35:43 +00:00
Justin F. Knotzke
a8d006a9a3 Took out DBAccess references. 2009-02-22 15:28:26 +00:00
Justin F. Knotzke
e3b069a683 Took out DBAccess references. 2009-02-22 15:26:15 +00:00
Justin F. Knotzke
cc7a625e24 Took out MetricView references. 2009-02-22 00:49:00 +00:00
Justin F. Knotzke
2a35a248a6 The critical power plot show maximum average power for all rides.
But you don't know when you reach this value.

I propose this small patch to show the value and the date like on this print screen.

Damien
2009-02-22 00:08:34 +00:00
Justin F. Knotzke
672e73699e The critical power plot show maximum average power for all rides.
But you don't know when you reach this value.

I propose this small patch to show the value and the date like on this print screen.

Damien
2009-02-22 00:07:19 +00:00
Justin F. Knotzke
469abd04aa The critical power plot show maximum average power for all rides.
But you don't know when you reach this value.

I propose this small patch to show the value and the date like on this print screen.

Damien
2009-02-22 00:07:05 +00:00
Justin F. Knotzke
724f4f013d Damian Grauser's patch which throws a toggle in the Ride Plot graphs which
will toggle between distance and time.

Thanks Damien.
2009-02-14 23:52:10 +00:00
Robert Carlsen
fad7ad0d75 Identify the device type as "Garmin TCX" when reading from a tcx file. 2009-01-26 18:58:25 +00:00
Sean C. Rhea
5353db25df pop up a warning if we can't find libftd2xx 2009-01-24 20:09:13 +00:00
Sean C. Rhea
a4ed637853 load libftd2xx via dlopen rather than linking to it with ld,
so that GC won't crash if it's not there
2009-01-24 17:50:06 +00:00
Robert Carlsen
534b90a89a Changed the AvgCadence unit from "bpm" to "rpm". 2009-01-24 00:22:59 +00:00
Justin F. Knotzke
9944837733 This changes the power histogram implementation to use the QVector
data type instead of dynamically allocating and freeing arrays. No
memory leak here, but it's an low hanging fruit type of example of
what kind of changes we can do to reduce the amount of explicit 
dynamic memory management.

   --jtc
2009-01-17 19:36:31 +00:00
Justin F. Knotzke
4901acc97e This patch changes the weekly summary to include the number of seconds
in total time riding, which previously only included hours and minutes.
A few seconds over a week shouldn't account for much, but I think it's
desirable to use the same resultion for data values across the product
for consistancy if nothing else.

   --jtc
2009-01-17 19:33:49 +00:00
Robert Carlsen
cb46df5073 Updated the Pf/Pv plot curve to use antialiased ellipses rather than points. 2009-01-14 05:21:52 +00:00
Robert Carlsen
a1aad585b0 Applied JTC's P10, changing DatePickerDialog and RideFile objects to use boost::scoped_ptr to ensure that the objects are deleted. He recommends that we extend this technique to replace other raw pointer / delete methods.
Also, changed PfPvPlot so it will look for the CP from the power.zones file and use that rather than a hard coded value.
2009-01-12 17:15:54 +00:00
Robert Carlsen
5ac7a78010 added version 1.0.277 release 2009-01-10 01:41:31 +00:00
Robert Carlsen
4de8a3198c from jt conklin: fixed a possible memory leak in the weekly summary. 2009-01-09 23:43:52 +00:00
Robert Carlsen
79b63738fa Changed the update signal from returnPressed() to editingFinished() for the lineEdit fields in the ride plot and power histrogram views. 2009-01-08 06:47:33 +00:00
Robert Carlsen
7df79e6a79 Adding iBike CSV import support. 2009-01-07 01:28:09 +00:00
Robert Carlsen
9b8a7828a2 Added escaping slashes to the build date. It may only work on linux/max os x, I haven't had a chance to try it on win32. 2009-01-06 02:51:15 +00:00
Robert Carlsen
54d32dbe00 Added escaping slashes to the svn version number compiler directive to workaround a qmake issue with using a string value for a define. The modified statement is: \\\"svnversion . | cut -f '2' -d ':'\\\"
It may only work on linux/max os x, I haven't had a chance to try it on win32.

This was noted here: http://www.archivum.info/qt-interest@trolltech.com/2008-09/msg00070.html
2009-01-06 02:26:24 +00:00
Robert Carlsen
e0804ffc04 Changed from Build Date to Version Numbering system in the about dialog. As discussed on the list, the protocol is major.minor.revision, currently 1.0.271. The major and minor version numbers are set in src.pro; the revision number should be automatically derived using "svnversion . | cut -f '2' -d ':'" in src.pro. 2009-01-06 01:54:01 +00:00
Robert Carlsen
dfd3efc0ed Opting to include the svn revision number grab in src.pro 2009-01-06 01:37:32 +00:00
Robert Carlsen
4948aa9319 Utility to add include the svn revision number to the program version in the about dialog. 2009-01-06 00:32:16 +00:00
Robert Carlsen
e7008144e5 Fix case sensitivity issue in Pages.h for #include <QCheckBox> 2009-01-05 02:30:05 +00:00
Robert Carlsen
aae639e52b From JT Conklin: Fix to force the aggregateWith() method to use properly use metric units while incrementing when set as a user preference. 2009-01-05 02:23:09 +00:00
Robert Carlsen
cb77fd64d6 Updating the AddRide method to honor the ride list sorting preference. 2009-01-05 02:03:52 +00:00
Robert Carlsen
3558ac86b7 Added a user preference to change the Ride List sorting. Default should be ascending by date, as it has been. Disabling the "Sort ride list ascending" preference will sort the ride list descending by date.
Also, added margins to the widgets in the main window.
2009-01-05 01:47:37 +00:00
Robert Carlsen
482a0eb332 From JT Conklin:
Added support to TCX, CSV and SRM import functions to correctly remember the last import directory.
2009-01-03 20:31:57 +00:00
Justin F. Knotzke
459c25fe73 or relatively short (~1 hr) activities, with relatively small (~5w)
bucket sizes, the power histogram often looks short and squat with a
lot of whitespace at the top because the largest bucket may be 3 - 5
minutes, but the y-axis is scaled by adding a constant 10 (minutes) to
the max.

The attached patch scales the y-axis by a factor of 1.1 (The ride plot
does the same scaling, and it appears to work well there).  Now you're
able to see more detail in histogram plots as the curve is not all
squashed along the bottom of the graph.
    -jtc
2009-01-03 18:35:55 +00:00
Robert Carlsen
10405b60f5 Just standardizing some indention. 2009-01-03 17:25:55 +00:00
Justin F. Knotzke
f9577e7ce5 This is a 100% cosmetic issue, but I've never liked the way the
"about" dialog is formatted, with "GoldenCheetah is Licenced under
the GNU General Public Licence." and "Source code can be obtained 
from http://goldencheetah.org/" run together in a single paragraph
because the way the line is broken after "Source".  

The attached patch splits the two sentences into two separate
paragraphs, and centers the entire dialog text.

While this is subjective, I think it looks a lot better.

   --jtc
2009-01-03 11:55:56 +00:00
Robert Carlsen
f4c430f6e4 On the ride plot, the range of speed is typically much smaller than the ranges of power, heart rate, and cadence. As a result, for many activities it's difficult to distinguish much difference.
This update changes the plot to use a right y axis for speed. This makes it easier to see speed differences.

Some other packages use separate y axes for each data type, but as far as I can tell, this is not available with the qwt library used by GC.

   --jtc
2009-01-03 07:13:45 +00:00
Robert Carlsen
454a365e9f Re-enabled the build date QMake flag. Disabled to permit "qmake -spec macx-xcode" to create a valid xcode project file. 2009-01-02 21:26:09 +00:00
Robert Carlsen
2f37c9617f Added compiler flags to build as Mac OS X Universal Binary. May require QWT and Qt to be universal as well. 2009-01-02 21:23:38 +00:00
Justin F. Knotzke
c35cc56d8a The Ride Plot currently displays the activity's speed in MPH,
regardless of the Units preference.  This patch checks the preference
and displays it in the appropriate units.

Unlike some of the other cases, I'm checking the value of the Units
setting each time the plot/panel is displayed.  

The patch also pulls the 0.62137119 magic constant into a #define
MILES_PER_KM.  This constant (and it's inverse, KMS_PER_MILE), occurs
in several files, and (IMHO) really deserves to be pulled into a
separate header, but again, that's work for another day.

   --jtc
2009-01-02 20:58:06 +00:00
Justin F. Knotzke
85bf99cdf0 While browsing the GC code, I found that there was not an explicit
deletion of the Tools (CP Calculator) Dialog, nor was the attribute
set that tells the framework to delete the dialog when it's dismissed.
Since the other dialogs use the attribute, this patch does the same.

   --jtc
2009-01-02 18:09:26 +00:00
Justin F. Knotzke
143e997904 JTC found and fixed a double addWidget error.. 2009-01-02 17:28:59 +00:00
Sean C. Rhea
b4d230d1d1 add device types 2008-05-27 03:53:22 +00:00
Sean C. Rhea
39ae1b2825 remember last import path 2008-05-27 03:00:30 +00:00
Sean C. Rhea
afd68f0168 playing around with export to XML,
may eventually become the "native" GC file format
2008-05-27 02:56:07 +00:00
Sean C. Rhea
2b96b6ad76 add Windows to About dialog 2008-05-23 16:07:20 +00:00
Sean C. Rhea
5d08c0db2c from Rob C: change '\' to '/' 2008-05-23 16:04:37 +00:00
Sean C. Rhea
e53087a6af from Rob C: set D2XX to 9600-N-1 to make PT happy on Windows 2008-05-23 16:03:33 +00:00
Sean C. Rhea
f6b437328a group rides by type, course 2008-05-20 04:57:06 +00:00
Sean C. Rhea
3d9c39171d from Justin: "It should fix the bugs with creating a new power.zones file plus
adds two DateEdits to show the start and end of a zone range."
2008-05-19 15:03:26 +00:00
Sean C. Rhea
3021386839 Dan Connelly points out that it should be "n * (n + 1) / 2" (plus, not minus). 2008-05-19 14:46:50 +00:00
Sean C. Rhea
b01efba0fd from Justin: PT reports no data as watts == -1, assume watts == 0 in that case 2008-05-18 15:14:47 +00:00
Sean C. Rhea
761928e977 from Justin: more hacking on the zones editor 2008-05-18 15:11:21 +00:00
Sean C. Rhea
c174d2dd51 from Justin: icons for windows 2008-05-18 15:01:35 +00:00
Sean C. Rhea
fac9a45cbc Sane failure for rides longer than a week, which usually happen because
someone sets the date on their PT and doesn't reset the device before going
for a ride.  This fix will keep GC working until the user splits the ride
(and until we add a ride-splitting function).
2008-05-18 14:19:37 +00:00
Sean C. Rhea
891b9e907a fix small memory leak 2008-05-18 14:00:50 +00:00
Sean C. Rhea
1bc5afaaa9 fix awful indentation 2008-05-18 13:58:45 +00:00
Sean C. Rhea
247b59a9e4 smooth updating of progress bar in update_cpi_file 2008-05-14 22:47:54 +00:00
Sean C. Rhea
47ff0c8886 from Justin: add Serial.(h|cpp) 2008-05-14 14:59:23 +00:00
Sean C. Rhea
ffdedf6904 from Justin: nits 2008-05-14 14:57:00 +00:00
Sean C. Rhea
7cf989d1bf from Justin: zones editor, switch from FTP to CP 2008-05-14 00:17:10 +00:00
Sean C. Rhea
f0df93b769 update progress dialog while aggregating over .cpi files 2008-05-13 16:42:39 +00:00
Sean C. Rhea
c86c1403f0 combine cpint.(h|cpp) with CpintPlot.cpp 2008-05-13 16:30:35 +00:00
Sean C. Rhea
3e0527317e from Justin: more .pro file patches for Windows, plus ToolsDialog 2008-05-13 16:15:22 +00:00
Sean C. Rhea
27cb38560a from Justin: on Windows, hton[ls] is in winsock.h 2008-05-13 03:33:08 +00:00
Sean C. Rhea
d7877af0be don't need 2008-05-13 03:30:49 +00:00
Sean C. Rhea
a06a8c544f Justin's changes, heavily editted, to compile on Windows 2008-05-13 02:18:15 +00:00
Sean C. Rhea
e224f7a44c renaming to match directory name 2008-05-13 02:16:46 +00:00
Sean C. Rhea
3a48f5dbc2 move TODO list to the web page as a "wish list" 2008-05-12 16:37:34 +00:00
Sean C. Rhea
377ae4f974 combined lots of emails all into this file 2008-05-12 16:28:58 +00:00
Sean C. Rhea
31b2633496 everything in one directory 2008-05-12 03:28:53 +00:00
Sean C. Rhea
227ece4fed insert new rides into allRides in order by date, remove duplicates 2008-05-11 05:18:17 +00:00
Sean C. Rhea
7e0883a72b Let QTemporaryFile go out of scope so it will really close before calling
rename, since Windows won't rename an open file.  Call remove before rename on
Windows, since Windows rename won't overwrite.  Call setPermissions with
previous value plus all read flags, rather than using write flags explicitly.
Replace lots of asserts with QMessageBox::criticals.
2008-05-10 15:51:26 +00:00
Sean C. Rhea
646112b2ca New download code doesn't use Unix-isms. Big thanks to Rob Carlsen for
debugging the weirdness around QTextStream::setFieldWidth.
2008-05-10 03:41:08 +00:00
Sean C. Rhea
77aa7cc18b remove ctype.h 2008-05-06 05:31:40 +00:00
Sean C. Rhea
284703a585 remove Unix-specific includes, clean up copyrights somewhat 2008-05-06 05:26:44 +00:00
Sean C. Rhea
22e6633f7e use more QT classes instead of OS-specific stuff 2008-05-06 05:25:31 +00:00
Sean C. Rhea
81441d417e replace Unix-specific stuff with QT equivalents; convert to C++ 2008-05-05 17:42:58 +00:00
Sean C. Rhea
314281e49a make listFunctions a pointer so that static initialization order doesn't matter 2008-05-05 02:03:33 +00:00
Sean C. Rhea
26e8a4e4f7 switch statements suck 2008-05-04 17:32:40 +00:00
Sean C. Rhea
531aaa9922 add JT 2008-05-04 06:56:44 +00:00
Sean C. Rhea
e7873246c6 TCX importing and Pedal Force vs. Pedal Velocity Chart from
J.T. Conklin (jtc@acorntoolworks.com).
2008-05-04 06:50:34 +00:00
Sean C. Rhea
5297396dc0 remove older command-line tools 2008-05-04 05:16:18 +00:00
Sean C. Rhea
0b6f9d527e remove temporary command-line version 2008-05-04 05:13:09 +00:00
Sean C. Rhea
e83e8f43fe add power.zones 2008-05-04 05:10:23 +00:00
Sean C. Rhea
243630601a Lots of code cleanup. All Unix/Mac-specific download code used by graphical
version is now in pt/Serial.cpp, which the .pro files should ignore on win32.
2008-05-04 05:09:32 +00:00
Sean C. Rhea
64319f37f2 New download code now working with older VCP driver as well. This code isn't
really fit for human consumption.  I'm just checking it in before I clean it
up in case I go and break something on accident.
2008-05-03 17:52:46 +00:00
Sean C. Rhea
b8fad52aba now also downloads from serial/usbserial devices and automatically chooses
between them and D2XX based on what's installed
2008-04-12 20:56:12 +00:00
Sean C. Rhea
92391c5692 - Separated download logic from device abstraction layer.
- Now creates a .raw file.
2008-04-10 17:29:30 +00:00
Sean C. Rhea
502e209e29 proof of concept program to test downloading from PT with D2XX drivers 2008-04-02 15:35:32 +00:00
Sean C. Rhea
0affd16ad2 added "Find Best Intervals" dialog 2008-03-15 17:30:48 +00:00
Sean C. Rhea
76de677efb add bit about how to get TextEdit to save a .zones file 2008-03-14 01:52:32 +00:00
Sean C. Rhea
3479397ff6 add BikeScore link 2008-03-14 01:51:50 +00:00
Sean C. Rhea
4bdc2a3357 2008, not 2007 2008-03-11 16:12:19 +00:00
Sean C. Rhea
8a20b1e3d6 add new images to Makefile 2008-03-11 16:10:15 +00:00
Sean C. Rhea
a59a65c30a added new release 2008-03-11 16:05:58 +00:00
Sean C. Rhea
cdef663a76 actually ignore the bad time block that we claim we're going to ignore 2008-03-11 01:02:39 +00:00
Sean C. Rhea
0a354da119 minor edits 2008-03-10 19:01:35 +00:00
Sean C. Rhea
bceca065ec fix for QT 4.3.1 and add TM symbol 2008-03-10 18:01:44 +00:00
Sean C. Rhea
a04a772d40 first pass at a new User's Guide 2008-03-09 16:49:13 +00:00
Sean C. Rhea
39b6ac608b added comments 2008-03-08 16:26:12 +00:00
Sean C. Rhea
4bd6a93abd renamed CombinedFileReader to RideFileFactory 2008-03-08 16:20:43 +00:00
Sean C. Rhea
7cda5c7800 Removed RawFile and replaced it with RideFile. I can't remember how we ended
up with both, but they're basically the same class.
2008-03-08 16:11:41 +00:00
Sean C. Rhea
283ea766aa Now using "Critical Power" instead of "Functional Threshold Power". 2008-03-07 22:36:09 +00:00
Sean C. Rhea
33d9e02a09 Use "CP" instead of "FTP" in power.zones to be more compatible with Skiba's
terminology, but still allow "FTP" for backwards compatibility.
2008-03-07 21:37:51 +00:00
Sean C. Rhea
9ef1a4c282 use minutes, not seconds, as the y-axis says 2008-03-07 20:11:55 +00:00
Sean C. Rhea
325a4aa402 don't try to compute BikeScore if no zones file present 2008-03-07 19:57:33 +00:00
Sean C. Rhea
1e35b82ef9 Adding this here so I don't lose it. 2008-02-21 20:25:04 +00:00
Sean C. Rhea
6d98b42f18 BikeScore, xPower, and Relative Intensity updated to match Skiba's method
more or less exactly.  Also added (TM) to BikeScore in Ride Summary.
2008-02-21 18:41:38 +00:00
Sean C. Rhea
c12ca78186 Separated out BikeScore as a RideMetric. 2008-02-21 00:51:50 +00:00
Sean C. Rhea
edfacdeb27 All the basic ride metrics now use the RideMetric interface. 2008-02-20 19:24:20 +00:00
Sean C. Rhea
8c2706c251 - Added TotalWorkRideMetric.
- Use XML to describe what metrics to display and in what order.
2008-02-20 17:24:45 +00:00
Sean C. Rhea
231ab86c80 Needed to #include<assert.h>. 2008-02-19 00:31:46 +00:00
Sean C. Rhea
7d15895f8f Patch from Rob Carlsen to handle Ergomo CSV imports. 2008-02-17 01:58:53 +00:00
Sean C. Rhea
a0860da55c Separated out total_distance as a ride metric. More to come, especially
ordering and grouping into a display.
2008-02-14 17:57:25 +00:00
Sean C. Rhea
fa0aae7bf1 Patch from Justin and Rob.
Adds metric/english unit's dialog and BikeScore calculation.
2008-02-13 17:34:28 +00:00
Sean C. Rhea
b5eff51f85 look for /dev/cu.usbmodem... 2007-11-04 16:38:28 +00:00
Sean C. Rhea
a815443330 added link to Rob's Mac Intel build 2007-10-02 21:07:08 +00:00
Sean C. Rhea
915a83606f moved release images into their own repository 2007-09-25 02:04:18 +00:00
Sean C. Rhea
76c7e6a859 bug fix release 2007-09-24 03:38:50 +00:00
Sean C. Rhea
ea87b3c93b bug fix release 2007-09-24 02:14:32 +00:00
Sean C. Rhea
ebecbda331 need to qmake now 2007-09-24 02:05:50 +00:00
Sean C. Rhea
b55b2fe235 CsvRideFile now only sets its ride startTime if the file is
appropriately named.  cpint now ignores startTime, as it wasn't 
using it anyway.
2007-09-22 16:27:09 +00:00
Sean C. Rhea
0d86c4fe1b new release 2007-09-18 18:22:28 +00:00
Sean C. Rhea
b33458d3d9 call qmake in src before make 2007-09-18 17:24:01 +00:00
Sean C. Rhea
92e0587afd Bug fix for interval markers: must divide by 60.0, not 60,
to get floating point division.
2007-09-18 17:23:39 +00:00
Sean C. Rhea
c5afd7b6b5 switched to Justin's code for sample lines so that reading no value
between commas works
2007-09-17 21:57:15 +00:00
Sean C. Rhea
6b51f0ffad converted to qmake 2007-09-17 21:46:37 +00:00
Sean C. Rhea
8a4c449785 renamed .pro file 2007-09-17 21:42:59 +00:00
Sean C. Rhea
e13bdfa966 converted to C++/qmake 2007-09-17 21:39:30 +00:00
Sean C. Rhea
ae5748021a converted to C++/qmake 2007-09-17 21:38:06 +00:00
Sean C. Rhea
fac5441456 moved cpint code into gui dir 2007-09-17 20:32:19 +00:00
Sean C. Rhea
9db8b105e0 cpint now using unified ride file framework, too 2007-09-17 18:51:04 +00:00
Sean C. Rhea
964279728b unified framework for reading in different ride
file types (raw, srm, and csv)
2007-09-17 18:10:32 +00:00
Sean C. Rhea
07f375c0cc interval markers patch from Justin Knotzke 2007-09-09 16:58:51 +00:00
Sean C. Rhea
ea120b85de CSV import code from Justin Knotzke 2007-08-30 16:17:17 +00:00
Sean C. Rhea
f1329ebfe6 Rob Carlsen's patch for ignoring zeros in heart rate during intervals. 2007-08-15 20:46:44 +00:00
Sean C. Rhea
c25465bc7c Rob Carlsen's patch adding max power to interval summary. 2007-08-15 20:16:13 +00:00
Sean C. Rhea
63d758cf62 some new stuff 2007-08-15 20:11:56 +00:00
Sean C. Rhea
48cf6e1e74 new release with cpint fix 2007-08-07 15:22:37 +00:00
Sean C. Rhea
ae4c1376ea note about brltty on Ubuntu 2007-08-07 15:07:10 +00:00
Sean C. Rhea
471e308944 new release with cpint fix 2007-08-07 15:05:59 +00:00
Sean C. Rhea
35913bb340 Serious bug fix: while interval duration SHOULD be computed by using
previous data point (i.e., q->secs - p->secs), the duration to multiply
the wattage value by SHOULD NOT be.  Instead, should multiply by
rec_int.  (My ride from Jul 31, 2007 demonstrates the problem.  I
started an interval with a 1-sec wattage of 773 after a ~48 second rest.
Using the old code, that gets credited as 773 watts for 48 secs!)
2007-08-05 14:57:57 +00:00
Sean C. Rhea
ecb4798e8b Rob's ride notes patch. 2007-06-10 23:38:15 +00:00
Sean C. Rhea
eb8e6d4d8b oops; need to use QString::arg(), not '+' 2007-06-10 23:04:04 +00:00
Sean C. Rhea
30a1dca091 Rob's changes 2007-06-10 22:36:46 +00:00
Sean C. Rhea
27cbf841a7 add FTP to zones 2007-06-08 22:38:26 +00:00
Sean C. Rhea
cd481de21e new dest dir for install 2007-05-21 04:49:37 +00:00
Sean C. Rhea
6c5c622a10 mention qwt 5.0.1, not older version, as pointed out by Rob Carlsen 2007-05-21 04:47:48 +00:00
Sean C. Rhea
2a4676abd5 Don't output line with zero time (Rob Carlsen says it crashes WKO+), and
print zeroes, rather than nothing, when nm, mph, or watts are zero.
2007-05-21 04:46:26 +00:00
Sean C. Rhea
db72e3bd3f added zoomer and panner to AllPlot, but needs work still. 2007-05-13 02:28:10 +00:00
Sean C. Rhea
c09c2d99e6 fixed bug where interval length was 1 recint too short 2007-05-10 16:30:01 +00:00
Sean C. Rhea
21d35d6600 added "About GoldenCheetah" dialog with build date and link to GPL 2007-05-07 22:00:31 +00:00
Sean C. Rhea
3627a2eb05 fix to work on OS X 2007-05-07 21:09:31 +00:00
Sean C. Rhea
4e8dae0993 use QLineEdit instead of QLabel in CP plot to avoid resizing bug 2007-05-03 23:30:56 +00:00
Sean C. Rhea
62b23b4e26 Warning msg said we ignored it when time went backwards in a PT file, but code
was still calling exit(1).  Now it really does ignore it.
2007-04-30 21:39:11 +00:00
Sean C. Rhea
e506d16509 okay, really fixed this time 2007-04-29 22:40:52 +00:00
Sean C. Rhea
4783abcbed fixed problem with download ride button not hilighting when more than one
device is available
2007-04-29 17:27:48 +00:00
Sean C. Rhea
2fa89b6137 added screenshot-weekly.png 2007-04-26 21:25:10 +00:00
Sean C. Rhea
e55505d25e new ride summary screenshot showing power zones,
added weekly summary screenshot
2007-04-26 21:24:43 +00:00
Sean C. Rhea
bdd0d78802 new release and description of zones file format 2007-04-26 21:15:53 +00:00
Sean C. Rhea
7ca5bbeede new release 2007-04-26 20:32:28 +00:00
Sean C. Rhea
14b0c8a234 new release 2007-04-26 20:32:17 +00:00
Sean C. Rhea
1f3017a366 oops: checked in unnecessary gcc-4.0 bit on accident 2007-04-26 20:26:13 +00:00
Sean C. Rhea
63e597bde5 - MacOS case-insensitive file system confuses our Time.h with
/usr/include/time.h, so renamed the former.
- Bug fixes for when there is no power.zones file
2007-04-26 20:10:21 +00:00
Sean C. Rhea
a2de597d29 added zones to the weekly summary, consolidated and cleaned up code 2007-04-25 19:30:55 +00:00
Sean C. Rhea
02fc476711 working on adding time in each power zone to ride summery 2007-04-24 19:38:49 +00:00
Sean C. Rhea
2f0f0d61bf added weekly summary 2007-04-24 17:55:40 +00:00
Sean C. Rhea
efee14f2fd cpint (cmdline and gui) now works with .srm files, too 2007-04-22 06:25:31 +00:00
Sean C. Rhea
6f45733c62 cpint now uses intervals that are a whole number of seconds long, in
preparation for supporting data files from a variety of devices on the same
machine
2007-04-18 23:03:03 +00:00
Sean C. Rhea
9903262ba3 add cpint dir 2007-04-18 23:01:40 +00:00
Sean C. Rhea
5d4bb08344 added GPL to comments 2007-04-18 22:40:56 +00:00
Sean C. Rhea
71b8ac102e added GPL to comments 2007-04-18 22:40:24 +00:00
Sean C. Rhea
0b665146a3 fix time riding bug for SRM by making use of rec_int_ms in RawFile rather than
tracking last_secs
2007-04-18 21:19:56 +00:00
Sean C. Rhea
760f89d923 check that we go forward by at least one recint on block transition 2007-04-18 21:18:12 +00:00
Sean C. Rhea
db3f311918 get rid of unused parameter warnings 2007-04-18 21:09:52 +00:00
Sean C. Rhea
ecdd556ca3 converted cpint code to C++ in preparation for making it understand SRM files 2007-04-17 21:55:08 +00:00
Sean C. Rhea
611e57688b add srm directory, better handling of qmake 2007-04-17 20:52:30 +00:00
Sean C. Rhea
8ad402c683 move TODO to top level 2007-04-17 20:47:58 +00:00
Sean C. Rhea
9808929c80 stuff 2007-04-17 20:47:21 +00:00
Sean C. Rhea
6407dea059 - display file even if errors, so long as we get some data
- count time riding as time either pedaling or moving, so that time on trainer
  with front wheel sensor still counts
2007-04-17 20:46:48 +00:00
Sean C. Rhea
bbfe5e3e9c - fix unused variable warnings
- don't add a bogus interval 0 to files without any intervals
2007-04-17 20:45:05 +00:00
Sean C. Rhea
a373355a47 shouldn't have been added; generated by qmake 2007-04-17 20:44:04 +00:00
Sean C. Rhea
64f7267c90 add debug to config 2007-04-17 20:43:22 +00:00
Sean C. Rhea
cf3cf8717a commented out printfs 2007-04-17 20:25:30 +00:00
Sean C. Rhea
4d1d0277bb anti-aliasing was the source of the poor plot performance on Linux 2007-04-17 19:12:20 +00:00
Sean C. Rhea
2584db291a allow for multiple imports at once 2007-04-17 18:06:22 +00:00
Sean C. Rhea
bc7337d42c updates to work with qwt 5.0.1 2007-04-17 18:00:37 +00:00
Sean C. Rhea
a572476f09 csv output uses .csv extension instead of .dat 2007-04-16 21:16:11 +00:00
Sean C. Rhea
428a82ab2a added import from SRM menu item and made cpint not crash when it can't find
cpint data for a ride (until we get it working with srm data)
2007-04-12 04:07:33 +00:00
Sean C. Rhea
3ae2b985ce Will now read, interpret, and include any appropriately named .srm files in
the user's directory.  Ride summary, ride plot, and power histogram all work
fine, but opening the CP intervals graph causes a crash if any such files
exist.  Also need to add a menu item to import .srm files that renames them to
the proper form (date-time.srm).
2007-04-09 20:43:52 +00:00
Sean C. Rhea
513c87419d starting to work on SRM code; this commit will decode .srm files 2007-04-09 01:43:40 +00:00
Sean C. Rhea
12c5a130d5 new release 2007-04-01 19:14:24 +00:00
Sean C. Rhea
d69e67bbfb new release 2007-04-01 19:12:57 +00:00
Sean C. Rhea
08020f8e03 new release 2007-04-01 19:02:52 +00:00
Sean C. Rhea
d9d449de9b new release 2007-04-01 18:57:21 +00:00
Sean C. Rhea
30dcb1328b Hardware echo detection was being fooled because in the normal case, the
result of a version request, triggered by writing 'V', is the string "VER...".
Sometimes, this was preceeded by a zero byte, in which case hardware echo
detection worked, but other times it wasn't, and we stripped the 'V' from
"VER...", only to wait forever for one extra byte that wasn't coming.  The new
approach is to read until we get the "\r\n", then search for "VER", then see
if any other 'V's preceed it, in which case we assume we're dealing with
hardware echo.
2007-04-01 05:41:38 +00:00
Sean C. Rhea
d83a386116 How did we NOT always open the serial port with O_NONBLOCK? WTF? 2007-04-01 05:07:04 +00:00
Sean C. Rhea
fd7aad6876 patch from Aldy to make wattage an integer in CVS exports 2007-03-07 20:44:49 +00:00
Sean C. Rhea
f111905854 fixed Mac release bugs and updated both feb 21 to feb 22 2007-02-22 17:22:25 +00:00
Sean C. Rhea
180ac587c1 fix for centering in QT 4.1.1 2007-02-22 17:12:50 +00:00
Sean C. Rhea
4c2c5e35fc cpint picker and rec_int fix, mac version 2007-02-22 03:02:11 +00:00
Sean C. Rhea
2dd6f3c8c7 with picker and rec_int bug fix, linux version 2007-02-22 02:58:31 +00:00
Sean C. Rhea
4f1fbcf9c0 using a picker in cpint plot 2007-02-22 02:46:02 +00:00
Sean C. Rhea
0430100946 fix misinterpretation of rec_int and add error message
for time moving backwards
2007-02-21 17:31:31 +00:00
Sean C. Rhea
6cb59f9933 with interval seconds padding fix 2007-02-13 02:44:13 +00:00
Sean C. Rhea
86e17e8c18 add leading zero to single-digit seconds values 2007-02-13 02:40:45 +00:00
Sean C. Rhea
65fec46f87 add intervals 2007-02-12 20:58:37 +00:00
Sean C. Rhea
1307af30e0 add new release 2007-02-12 20:58:26 +00:00
Sean C. Rhea
d3cbd1cead linux version 2007-02-12 20:47:23 +00:00
Sean C. Rhea
76d38f1518 new release; linux version coming soon 2007-02-12 20:42:58 +00:00
Sean C. Rhea
6102574b06 added Dan Connelly 2007-02-12 20:30:30 +00:00
Sean C. Rhea
b50f13d3fb return after reject() 2007-02-12 20:25:12 +00:00
Sean C. Rhea
cf3dcb9ab8 patch from Aldy to fix interval durations that display as XX:60 2007-02-12 20:16:48 +00:00
Sean C. Rhea
1bcee6a6b4 add work, clarify units 2007-02-12 20:14:16 +00:00
Sean C. Rhea
025072b2ba detect hwecho based on whether the hardware seems to be echoing during
pt_read_version, rather than based on the device name
2007-02-12 03:00:42 +00:00
Sean C. Rhea
772f03eb40 add interval information to ride summary 2007-02-11 20:56:13 +00:00
Sean C. Rhea
8bca6e1a0a add "Export to CSV..." menu option 2007-02-11 20:00:45 +00:00
Sean C. Rhea
b722e74f01 check for unreasonable speeds, and patches from Aldy 2007-02-11 18:40:14 +00:00
Sean C. Rhea
0ca8ac5d94 fixed bug pointed out by Dan Connelly with graph sliders in empty rides 2007-02-10 04:14:48 +00:00
Sean C. Rhea
8e9aaa7cba fixed link 2007-02-01 16:24:57 +00:00
Sean C. Rhea
1eaa94ff24 add new releases 2007-01-30 23:16:51 +00:00
Sean C. Rhea
2ae11c8b99 new mac release
This line, and those below, will be ignored--

AM   doc/GoldenCheetah_2007-01-30_Darwin_powerpc.dmg
2007-01-30 23:10:30 +00:00
Sean C. Rhea
d17accc205 new linux build 2007-01-30 23:10:00 +00:00
Sean C. Rhea
69e63c5ab0 specify QT 4.1.1-static in path 2007-01-30 22:26:50 +00:00
Sean C. Rhea
7c6fe559f0 Fix for crash where ride time is shorter than smoothing. In particular, the
sample ride is shorter than the default smoothing value.
2007-01-29 19:59:04 +00:00
Sean C. Rhea
c89e81077b patch from Aldy to ignore zeros in cadence and hr and optionally in power 2007-01-24 20:23:41 +00:00
Sean C. Rhea
46b316bccc fix NaNs in ride summary 2007-01-21 02:57:02 +00:00
Sean C. Rhea
2f70e00901 remove Linux tarballs 2007-01-19 18:19:10 +00:00
Sean C. Rhea
db889e2ff9 added download screenshot 2007-01-19 18:16:52 +00:00
Sean C. Rhea
b9eb4a3cba Linux build, more documentation on building from scratch 2007-01-19 18:12:09 +00:00
Sean C. Rhea
00fb02a229 bunch of "#include <assert.h>" lines for Andrew Kruse 2007-01-19 17:47:41 +00:00
Sean C. Rhea
030002f694 added link to FTDI drivers 2007-01-19 17:43:11 +00:00
Sean C. Rhea
54317455c2 metric and csv options from Aldy 2007-01-19 17:00:47 +00:00
Sean C. Rhea
268a7db5cd another patch from Aldy: must compare to NaN with ne, not != 2007-01-17 22:27:32 +00:00
Sean C. Rhea
1cce0bff8d linux screenshot 2007-01-06 22:48:45 +00:00
2 changed files with 52 additions and 48 deletions

Binary file not shown.

View File

@@ -755,36 +755,38 @@ LTMPlot::setData(LTMSettings *set)
// we need to fill in the gaps sadly
int lcount = xdata[count];
// calculated values
QVector<double> xtrend(lcount);
QVector<double> btrend(lcount);
QVector<double> ytrend(lcount);
if (lcount) {
// calculated values
QVector<double> xtrend(lcount);
QVector<double> btrend(lcount);
QVector<double> ytrend(lcount);
// initialise to same
ytrend.fill(0);
btrend.fill(0);
// initialise to same
ytrend.fill(0);
btrend.fill(0);
ytrend[0] = ydata[0];
xtrend[0] = 0;
ytrend[0] = ydata[0];
xtrend[0] = 0;
for (int n=1,i=1; i<= lcount; i++) {
for (int n=1,i=1; i<= lcount && i<xdata.size(); i++) {
// fill in gaps (and check bounds as we go too)
while (n<=xdata[i] && n<lcount) {
ytrend[n] = alpha * ydata[i] + ( 1 - alpha )*( ytrend[n-1] + btrend[n-1] );
btrend[n] = beta * ( ytrend[n] - ytrend[n-1] ) + ( 1 - beta ) * btrend[n-1];
xtrend[n] = n+1;
n++;
// fill in gaps (and check bounds as we go too)
while (n<=xdata[i] && n<lcount) {
ytrend[n] = alpha * ydata[i] + ( 1 - alpha )*( ytrend[n-1] + btrend[n-1] );
btrend[n] = beta * ( ytrend[n] - ytrend[n-1] ) + ( 1 - beta ) * btrend[n-1];
xtrend[n] = n+1;
n++;
}
}
// point 2 is at far right of chart, not the last point
// since we may be forecasting...
trend->setSamples(xtrend.data(),ytrend.data(), xtrend.count());
trend->attach(this);
trend->setItemAttribute(QwtPlotItem::Legend, false);
curves.insert(trendSymbol, trend);
}
// point 2 is at far right of chart, not the last point
// since we may be forecasting...
trend->setSamples(xtrend.data(),ytrend.data(), xtrend.count());
trend->attach(this);
trend->setItemAttribute(QwtPlotItem::Legend, false);
curves.insert(trendSymbol, trend);
}
}
@@ -1860,36 +1862,38 @@ LTMPlot::setCompareData(LTMSettings *set)
// we need to fill in the gaps sadly
int lcount = xdata[count];
// calculated values
QVector<double> xtrend(lcount);
QVector<double> btrend(lcount);
QVector<double> ytrend(lcount);
if (lcount) {
// calculated values
QVector<double> xtrend(lcount);
QVector<double> btrend(lcount);
QVector<double> ytrend(lcount);
// initialise to same
ytrend.fill(0);
btrend.fill(0);
// initialise to same
ytrend.fill(0);
btrend.fill(0);
ytrend[0] = ydata[0];
xtrend[0] = 0;
ytrend[0] = ydata[0];
xtrend[0] = 0;
for (int n=1,i=1; i<= lcount; i++) {
for (int n=1,i=1; i<= lcount && i<xdata.size(); i++) {
// fill in gaps (and check bounds as we go too)
while (n<=xdata[i] && n<lcount) {
ytrend[n] = alpha * ydata[i] + ( 1 - alpha )*( ytrend[n-1] + btrend[n-1] );
btrend[n] = beta * ( ytrend[n] - ytrend[n-1] ) + ( 1 - beta ) * btrend[n-1];
xtrend[n] = n+1;
n++;
// fill in gaps (and check bounds as we go too)
while (n<=xdata[i] && n<lcount) {
ytrend[n] = alpha * ydata[i] + ( 1 - alpha )*( ytrend[n-1] + btrend[n-1] );
btrend[n] = beta * ( ytrend[n] - ytrend[n-1] ) + ( 1 - beta ) * btrend[n-1];
xtrend[n] = n+1;
n++;
}
}
// point 2 is at far right of chart, not the last point
// since we may be forecasting...
trend->setSamples(xtrend.data(),ytrend.data(), xtrend.count());
trend->attach(this);
trend->setItemAttribute(QwtPlotItem::Legend, false);
curves.insert(trendSymbol, trend);
}
// point 2 is at far right of chart, not the last point
// since we may be forecasting...
trend->setSamples(xtrend.data(),ytrend.data(), xtrend.count());
trend->attach(this);
trend->setItemAttribute(QwtPlotItem::Legend, false);
curves.insert(trendSymbol, trend);
}
}