Commit Graph

32 Commits

Author SHA1 Message Date
Joern
33d77d11e8 Store GC Settings in multiple .INI files instead of system specific (Registry, PLIST,..) format
... change storage format to .INI files (which is QTs cross-system format)
... differentiate between System, Global and Athlete specific settings
... store the Global Settings in the AthleteDirectory (root)
... store the Athlete specific Settings in the Athletes Names subdir /config
... migrate existing Settings from current location into new formats "on-the-fly"
2015-09-19 11:13:17 +02: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
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
48e437ddf5 Fixup 3D plot for RideItem zones
.. missed in last commit.
2014-12-03 20:21:30 +00:00
Claus Assmann
a001ffef4f Fix comment spelling errors
.. lots of them !
2014-11-24 15:37:56 +00: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
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
7159908a29 3d plot honor CPLOTMARKER
.. for axis colors
2014-06-21 20:47:20 +01:00
Mark Liversedge
688d07fd12 PMC Chart honour background 2014-03-12 14:43:59 +00:00
Mark Liversedge
3c92380af1 Fix 3d grid when users specify background colors 2013-12-15 19:17:02 +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
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
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
dad5cd2064 Missed ModelPlot for IntervalItem.h
.. after removing it from MainWindow.h
2013-03-17 22:17:15 +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
8ff155e4ab Code Cleanup: Model Plot
.. used XXX as warnings rather than todo.
2013-02-10 10:59:54 +00:00
Alejandro Martinez
e29f53be06 Enable 3d chart translations 2012-12-08 20:26:44 -03:00
Damien
aedc39e423 Choose Metric/Imperial units in New Athlete dialog
fixes #34
2012-11-26 23:35:35 +01:00
Damien
f308bbdf06 Correct bug #496 for longitude < -65
Fixes #496.
2012-01-13 22:36:44 +00: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
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
805e74de5a Inital V3 Branch 2010-12-30 17:35:23 +00: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
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
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
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
Thomas Weichmann
22bdcc1120 respect user's units pref in 3d plots
fixes #14
2010-01-13 08:28:15 -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
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