Commit Graph

40 Commits

Author SHA1 Message Date
Mark Liversedge
6a43f0ded6 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
a33831f8bf 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
acf439bb1d UI Nits: PfPv / QA refresh issues 2014-01-05 16:42:13 +00:00
Mark Liversedge
4b460fa9c8 PfPv Compare Nits
* clean up refresh when changing tabs etc
* update the quadrant % markers
2014-01-05 15:17:10 +00:00
Damien
d87d9b505b PfPvPlot: Fix Color for intervals 2014-01-04 10:34:15 +01:00
Damien
9ca4691464 PfPvWindow: Add Compare Mode 2014-01-04 00:42:51 +01:00
Mark Liversedge
ddff82ffdf 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
aa8605e8d5 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
c8203fa566 A little less MainWindow.h
.. slowy removing it everywhere.
2013-07-18 09:37:32 +01:00
Mark Liversedge
59fd0db564 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
d21ca376be 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
05f1d577db 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
e407237ac0 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
82ecce3af6 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
4f3f8701f0 PfPvWindow : Double Click
Update edit values for CP et CAD after double click
2013-02-05 23:37:46 +01:00
Damien
c73bddb128 UI Nits: PfPvWindow double click to change quarters (CP and cadence) 2013-02-05 23:20:11 +01:00
Damien
1d7242924b 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
260d0965e8 UI Nits: GcChartWindow for PfPvWindow and HrPwWindow 2013-01-28 21:40:22 +01:00
Mark Liversedge
fe2f96e25c 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
1efcdb52aa UI Nits: QA reveal controls
.. needed to be vertically centred.
2013-01-25 16:29:18 +00:00
Mark Liversedge
543e33c6ba 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
40e527d022 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
Damien
5f1627bd57 Add reveal controls for CP Plot and PfPv Plot 2013-01-20 23:36:31 +01:00
Damien
c44758c5ad 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
Mark Liversedge
241f6a50d6 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
3aba7dd788 Inital V3 Branch 2010-12-30 17:35:23 +00:00
Sean Rhea
ac570c415c make sure "current" is initialized
Also, a nit: fix indentation of 1 line in AllPlotWindow.h.
2010-04-11 17:19:33 -04:00
Mark Liversedge
1751d8bf12 Remove update 'flicker' when tab selected
The recent patch to reduce redraws when rides are selected
causes each tab to redraw whenever the tab IS selected. This
patch reduces this by remembering the current ride plotted.

It also fixes the "double draw" in GoogleMapControl and AllPlot
when selected for the first time.
2010-04-04 17:28:07 -04:00
Mark Liversedge
38df7c28bd User Configurable Colors
A new config pane for defining color preferences for chart
curves, shading, background and grid lines et al. Default values
echo the current hard-coded values.
2010-04-01 10:29:13 -04:00
Mark Liversedge
d64fc6ea85 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
Sean Rhea
cd4fe5fe2e 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
Mark Liversedge
fbd5238e4e 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
Mark Liversedge
32b94d954f 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
Mitsukuni Sato
009c013521 add calls to tr() for translation 2009-12-17 19:10:36 -05:00
Sean Rhea
9b6b1ba085 remove global ptr to main window from PfPvPlot 2009-12-13 12:46:50 -05:00
Mark Liversedge
a0c839514a 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
Mark Liversedge
29a9e41444 Interval features and new GC file format 2009-12-12 11:41:35 -05:00
Sean Rhea
2db45dc0c5 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
e7a76022bb new zonesChanged signal 2009-12-10 10:16:58 -08:00
Sean Rhea
18916aea7f abstract "PF/PV Plot" tab into its own class 2009-10-03 21:01:47 -04:00