Commit Graph

22 Commits

Author SHA1 Message Date
Michel Dagenais
05e89e5c34 Add control to Video Player to select among several Meter Widget layouts (#3515)
The video layout file is extended to contain possibly several named
layouts. The file is read to list the layouts and offer a selection in
the Video Player chart settings menu. The file is then read again to
instantiate the selected layout.
2020-06-20 14:41:19 -03:00
Ale Martinez
b0a8c6edfa Add units to Load source for overlay widgets 2020-06-10 11:43:29 -03:00
Ale Martinez
f18b5470ec Create Overlay Widgets with Qt::Tool flag on Linux
Michael Dagenais found this change makes the widgets to play nicer with
Windows Managers and avoids them to get on top of other programs windows.
Minimize and Restore is automatically handled now, so this commit partially
reverts b89019264e, removing MainWindow
state changes tracking, but keeping VideoWindow position tracking.
2020-05-27 18:04:41 -03:00
Alejandro Martinez
f51a6a6cb1 Remove Conditional Compilation for Qt < 5.9 (#3464)
This is a clean up to remove conditional compilation for all Qt versions
older than the last known to work: Qt 5.9 with Qt WebEngine and Qt Charts.
Includes an update note to INSTALL documents.
2020-05-27 09:26:25 -03:00
Michel Dagenais
b89019264e MeterWidgets must move / hide when main window is moved / minimized (#3458)
When the main window is minimized on Linux, the MeterWidgets stay on the desktop.
A signal were added to the main window for state changes.
The VideoWindow connects to that signal and hide/shows the MeterWidgets accordingly.

Currently, when you move the main window, the MeterWidgets do not follow
and become out of place. 
On every Telemetry update, check if the real position on screen of the
video window has changed in order to update the position of the meter
widgets. The Video Window can move for several reasons like when
scrolled or when the Main Window is moved. The Meter Widgets are not
clipped like the Video Window by its scroll area parent though.
2020-05-25 12:44:54 -03:00
ericchristoffersen
922ebf987b Teach elevation widget to honor skipping (#3443)
Elevation widget was showing progress based on distance, which is workout distance and didn't accout for distance change due to skip forward/skip back.

Add routedistance to realtimedata so elevation widget can access it
elevation using routedistance to show progress
Fix uninit iterator in elevation widget paint
Draw route distance in elevation widget
2020-05-25 11:16:54 -03:00
Michel Dagenais
e8b1f69d63 Meter widget on linux (#3454)
Enable Meter Widgets overlaid on Video Window for Linux

Meter Widgets, with a transparent background over the video window, use
little screen estate while providing all the needed information. They
were added for WIN32 first but actually work fine on Linux with minor
flag adjustments.
2020-05-22 17:07:42 -03:00
Ale Martinez
1cb1beb09c Enable GC_VIDEO_VLC option for macOS
After this change:
QtMacVideoWindow.h is used only for native macOS video options:
    GC_VIDEO_AV (incomplete)
    GC_VIDEO_QUICKTIME (obsolete)
Otherwise standard VideoWindow.h is included with the same options for
the three supported OS:
    GC_VIDEO_NONE: placeholder for no video, currently used for macOS builds
    GC_VIDEO_VLC: basic video control plus videosync, macOS experimental
    GC_VIDEO_QT5: basic video control only, macOS experimental
Overlay Widgets only works on Windows with VLC.
Tested with VLC 3.0.8 on the 3 Operating Systems.
2020-05-20 18:39:50 -03:00
human705
05ee4f40da Add Elevation Widget to Train Video Overlays (#3411)
* 1 - Add forceSquareRatio to MeterWidget
* 2 - Adjust default colors and add background text.
* 3 - Add Elevation widget, included in default layout visible only on slope mode.
Based on the work done by Vianney Voyer
Co-authored-by: Peter <pkanatselis@gmail.com>
2020-04-30 19:26:40 -03:00
ericchristoffersen
426c28b961 Remove CRS_LOC. (#3352) 2020-02-27 15:58:37 +00:00
peterbrant14
49bc592a56 Improve RLV video syncronization.
Revised code in VideoSyncFile::parseTacx to build syncpoint list with correct distances
	when speed varies between two points

	Revised code in VideoWindow::telemetryUpdate to interpolate position between 2 sync points.
	Also do not update video if paused or not running.

	Revised code in VideoWindow::startPlayback to set a minimal rate to start if video is
	controlled by syncfile.	This avoids the initial "rush" that otherwise happened and
	makes for a smoother start.
	Also reset distance to 0 on start.

	As the rlv length now more accurately matches the workout length, we also need a check in
	TrainSidebar::guiUpdate that will terminate the workout if the end of the video is reached.
2020-01-07 17:48:57 +00:00
Alejandro Martinez
9524d56966 Video Overlays - Move HRM units from code to config file
To give more flexibility to users willing to use circular meters for HRM
2019-12-31 09:36:26 -03:00
Ale Martinez
a3e6ab8e09 Video Overlays - Load is target power or Slope according to mode
Similar to DialWindow
Added to sample video-layout.xml and adjust positions
2019-12-15 17:20:06 -03:00
Alejandro Martinez
edb53806d8 Video Overlays - Add Distance as source
honoring metric/imperial setting.
Fixes error on Speed when imperial units are used.
Adds Distance to video-layout.xml and adjusts widget positions.
2019-12-15 00:08:49 -03:00
Ale Martinez
a2a94b3b41 Video Overlays - Speed widget honors metric/imperial setting 2019-12-14 21:13:45 -03:00
Ale Martinez
32ae63a2b5 Added Video Overlays Initialization on Windows builds with VLC
If video config file is not present copy a default one to be used as a model
by the user. An empty video-layout.xml file disables video overlays
Fixes #2525
2019-11-15 10:27:30 -03:00
Alejandro Martinez
921765f9ef Add new sources for video-layout.xml meters (#3215)
Load, Time, LapTime, LapTimeRemaining and ErgTimeRemaining
Fixes #3213
2019-11-15 09:23:24 -03:00
Eric Christoffersen
1402f6ad6a Ride GPX files in Train View
.. ErgFile now supports gpx format as well as .erg,.mrc et al
.. Location data is include in realtime data and passed through
.. the CSV file format has been fixed to record GPS with higher precision

Fixes #3021
Fixes #3024
2019-02-18 08:01:21 +00:00
grauser
b4bc42bc6a VideoWindow : Correct typo in comment
Thanks Claus
2017-01-11 22:02:38 +01:00
Mark Liversedge
a4829b9684 GcChartWindow Refactor
.. use GcChartWindow as the base class for all charts -- so
   we can truly upload *any* chart to the cloudDB

.. miscellaneous charts that were still defined as GcWindow
   have been converted to GcChartWindow

.. GcChartWindow layout issues (using QGridLayout insted of
   a QStackedLayout) are fixed which will also resolve a few
   rendering issues related to NOWEBKIT.

.. Aerolab needed lots of cosmetic fixups once it became
   a GcChartWindow

.. Added 'Upload Chart...' to mirror the 'Download Chart..'
   option on the hamburger menu as users will instinctively
   look for the option there instead of under the chart menu.
2016-05-30 16:07:39 +01:00
Mark Liversedge
3399a4dc6f Compile time nits
.. cleaning out warnings.
2016-03-06 08:57:24 +00:00
Mark Liversedge
4b5201c4c5 Restructure source directory
Introducing a directory structure to make it a bit less
daunting for new developers and perhaps even old hands.

The main folders all start with an upper character, so src
files are now located in;

* Core - Core data structures
* Gui - Main GUI elements
* Metrics - Models and Metrics
* FileIO - Device and File I/O
* Charts - All the chart types
* Cloud - Working with Web Resources
* Train - Anything Train View specific
* ANT - Our ANT+ Stack
* Resources - Images, Translations, Web etc

Apologies to anyone who needs to merge across this update.
2016-02-25 14:51:53 +00:00