Commit Graph

55 Commits

Author SHA1 Message Date
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
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
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
d1fd25fdd0 LTM Data Labels
.. option to show a label on chart points
2014-01-31 16:29:43 +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
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
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
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
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
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
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
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
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
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
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
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
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
Alejandro Martinez
700f5d989a Use Distance as a PMC metric
Fixes #570
2013-04-14 18:10:12 -03: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
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
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
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
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
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
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
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
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
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
Alejandro Martinez
3b2167962f Fix minor translations related issues 2012-12-30 14:48:46 -03:00
Alejandro Martinez
dd18015330 Enable Measures Translation
For use in LTM metrics list
2012-12-29 13:46:43 -03:00
Alejandro Martinez
6743a1ac6b Translate axis labels LTMPlot
Fixes #29
2012-12-29 10:27:32 -03: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
Alejandro Martinez
9e917123af Translate metrics names and units 2012-12-16 18:41:23 -03:00
Alejandro Martinez
3daf2097fa New metricsDetails method in LTMTools 2012-12-12 10:56:28 -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
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
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
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
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
Damien
aedc39e423 Choose Metric/Imperial units in New Athlete dialog
fixes #34
2012-11-26 23:35:35 +01: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
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
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
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
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