Currently the font in DialWindow is only scaled to make the text fit
into the label vertically. This commit scales the font in both
dimensions and prevents cutting off the content.
The font is rescaled
* If the DialWindow itself is resized
* If the text set and is longer than the previous one
* Every 10 text-changes
In Qt6 the internal handling of QList (now actually a QVector) was
changed compared to Qt5. This results in reallocations / recreations of
the LTMSettings, destroying the objects whose pointers already have been
set to the LTMPlots.
This commit reserves the required space upfront, preventing the
reallocations thus keeping the pointers valid and preventing the crash
AllPlot::isPanning was uninitialized, leading to unwanted (i.e. without
prior middleclick) panning.
This commit initializes AllPlot::isPanning explicitly to false.
Added support to color sections according to their power zone
* Optional coloring: Never (default), Always, Workout is stopped
* Optional tooltip giving information about current section (independent
of coloring): Never (default), Workout is stopped
* Single sections covering multiple zones are split (for coloring /
tooltip only)
* Tooltip shows starttime, duration, power (range if applicable), zone,
W'bal-range
Old Daum Electronic device "Ergobike Cardio" (comparable to the 4008 series and many other bikes) from before 2001 uses a slightly different RS232 protocol in some of the cases, which can be found here: http://www.ergo-lyps.de/de/download/v01/schnitt.zip . Additionally, it uses a boud rate of 4800.
As the old devices can not be detected by the checkversion (was not implemented at that time) I used a _profile of "OLD_DAUM" to identify the device in the configuration setting.
Changed the standard colors, used for compare-mode:
* Nice looking and distinguishable colors
* Separate color-sets for light- and darkmode
Additional fix + refactoring:
* Fixed a typo that prevented the background-color of ComparePanes to
follow the color-scheme (was always white on my machine)
* Moved the definition of standardColor(int) from ComparePane.cpp to
Colors.cpp, matching the declaration in Colors.h
When the user Cancel the file save dialog it is
better to do nothing since we have no filename
for save and it is likely what the user expects.
Fixes#4476
* Based on QSplashScreen
* Shrinking the image for low resolutions (screen width <= 1280, < 1024)
* Dynamically adding Golden Cheetahs version and build id
* Showing messages related to the current loading state (including the
current counter)
* Closing the splashscreen as close as possible to showing the MainWindow
* The image (splashscreen.svg) was created using Inkscape
* Added a CSS-grayscale filter to OSM based maps in RideMapWindow
* Added a configuration-option for the intensity level (0..10)
* Configuration is persisted per Tile-Server
* Fixed the visibility of Google/OSM specific settings (previously the
settings were only correct after selection of the other Maptype)
* Add 'ignore zeros' metric detail setting
* Draw gapped curve when ignoreZeros is set
* Hide Ignore Zeros when not available
* Consider special cases in compare mode too
Co-authored-by: Antonius Riha <antoniusriha@gmail.com>
Co-authored-by: Alejandro Martinez <amtriathlon@gmail.com>
* Add mouse wheel zoom capability to AllPlot, only when
ctrl modifier is present to avoid conflict with scrolling,
similar to Workout Editor.
* Add AllPlot panning by mouse wheel click-n-drag
* ErgFile: Coalescing neighboring sections
In erg-mode, some ErgFiles have neighboring sections of same power.
This is fine for creators / editors of workouts but gives "wrong"
remaining section times from a athletes perspective, example:
* workout: 10 min @200 watts followed by 5 min @200 watts
* current situation: first counts down from 10:00 to 0, then from
5:00 to 0
* for an athlete, the countdown should be from 15:00 to 0 instead
This change
* Added global config option to enable coalescing
* If enabled, coalesced sections are used globally
* Added a message to the WorkoutWindow (Properties) if the ErgFile
contains coalesced sections
* Restricted coalescing to watt based workouts
This change allows to quit Golden Cheetah using a keyboard shortcut.
QKeySequence::Quit is Ctrl+q on Linux and Cmd+q on MacOS but unbound
on Windows, although Alt+F4 still works as usual there.
See https://doc.qt.io/qt-6/qkeysequence.html#standard-shortcuts
Additionally set Qt::WaitCursor while shutting down Golden Cheetah to
indicate the application is blocked