Commit Graph

78 Commits

Author SHA1 Message Date
Mark Liversedge
67ddf09ad4 UI Nits: Config Dialog Cosmetics 2012-12-07 18:24:53 +00:00
Mark Liversedge
47edb7ac29 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
c0372290d7 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
1403dff4e7 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
Alejandro Martinez
6f49bcea16 Add es and pt translation files set lang default according to system default 2012-11-29 23:34:58 +01:00
Mark Liversedge
0f5441b268 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
Damien
8eee2ddb25 Choose Metric/Imperial units in New Athlete dialog
fixes #34
2012-11-26 23:35:35 +01:00
Mark Liversedge
c75ec41e4b 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
9bf3e69beb 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
335b991e04 Add myzeo data download Add ZQ and sleep time metrics 2012-11-18 16:13:15 +00:00
Mark Liversedge
33d2358277 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
3c57f01674 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
d33c337b8f 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
Rainer Clasen
bb10ed9207 added upload to trainingstagebuch.org 2012-05-04 16:08:38 +02:00
Damien
745d255220 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
Rainer Clasen
a452ccce1f 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
Mark Liversedge
43b1c61d6b 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
059190f32f 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
2c95b70696 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
9bfb08ff71 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
Mark Liversedge
a5ce87b32d Cosmetic fixup to Device config. 2012-01-05 21:30:50 +00:00
Mark Liversedge
30f1113ac5 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
6c242dd64f 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
24be9ec813 Add Virtual Power for 1UP USA bike trainer
Fixes #560.
2011-12-21 10:42:53 +00:00
Mark Liversedge
67983b81c3 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
Justin Knotzke
2125e55507 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
Mark Liversedge
8e9a93f50d 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
689e449c08 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
0da64bb85e 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
14c1d77326 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
ebc0c5793e 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
Damien
027dacb601 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
Mark Liversedge
b374d5732f Enable/disable dropshadow in appearances. 2011-06-05 15:56:29 +01:00
Mark Liversedge
4ab96e16d1 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
Darren Hague
f8d60bfbe2 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
8dc32c001f 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
a8024ce2ec merge master into release_3.0.0dev 2011-01-30 15:09:27 +00:00
Darren Hague
073079a6e7 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
Mark Liversedge
fe5c5015bf merge master into release_3.0.0dev. 2011-01-22 20:42:00 +00:00
Mark Liversedge
c1fc674609 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
1fdf45d26d 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
696a9273dd 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
cfe57752f8 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
615737658d 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
3aba7dd788 Inital V3 Branch 2010-12-30 17:35:23 +00:00
LukeNRG
ea11916a93 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
Roberto Massa
57a2c27262 Italian Translation
Provides translation for 47% of language texts.
2010-12-19 14:48:41 +00:00
Bruno Assis
c780f2edd0 Portugese (Brazil) Translation
Provides 64% coverage of language texts.
2010-12-19 14:38:38 +00:00
Damien
d6d9bd9227 Fix HR add zone crash
Fixes cannot add new HR zone (v2.0-RC1)

Fixes #172
2010-11-03 06:01:38 +00:00
Damien GRAUSER
830e4efd3d 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