Commit Graph

160 Commits

Author SHA1 Message Date
Joachim Kohlhammer
08e5540ddb Assigned keyboard shortcuts to toggle sidebars (#4583)
* Assigned keyboard shortcuts to toggle various sidebars and panels
* Swapped Trends and Activities in the View-menu to match the order in
  the view sidebar
2024-12-28 09:19:38 -03:00
Alejandro Martinez
5ef6080ef5 Revert Edit to Process menu change
It invalidates top level menu translations, most of which
we don't have the resources to update now and several
parts of the wiki for no relevant reasons.
I should not have merged this change, sorry.
2024-12-27 21:56:08 -03:00
Joachim Kohlhammer
000a76983d "Automated only"-flagging for DataProcessors
* Options > Data Fields > Processors & Automation (renamed from
  "Processing")
  * Modernized the UI
  * Added UI to set Automation (None, On Import, On Save) for all
    processors
  * Added UI to set Automated execution only for all processors
  * Showing the processors description
  * Showing the processors setting (if available) in a more userfriendly
    way
  * Added option to add / delete / edit custom Python processors
  * Enabled editing of Python processors via double click
  * Added option to hide code processors
* Removed the submenu to manage Python Fixes from the Edit-menu
* Renamed the Edit-menu to "Process"
* Hiding "automated only"-processors from Process-menu and
  Batchprocessing-dialog
* DataProcessors
  * Turned configuration of all core processors into forms
  * Changed the technical name of all core processors to match their
    classname
  * Added legacy technical name to all core processors to support existing
    scripts
  * Moved description from config-class to DataProcessor
  * Implemented a migration path for existing persisted processor
    configurations
* GSettings
  * Added method to remove settings by key
2024-11-26 20:04:33 -03:00
Joachim Kohlhammer
c86b5a6be9 Harmonize the layout of athlete settings (#4562)
Settings
* About
  * Show the athletes name
  * Mask the avatar-image as a circle
* Model
  * Add button to revert to defaults
* Auto Import
  * Use inline editing
* Backup
  * Add a "Backup now"-button

Create new athlete
* Rename NewCyclistDialog to NewAthleteWizard and turned it into a
  2-page wizard
* ChooseCyclistDialog: Open the NewAthleteWizard without interaction
  if no athlete is available

Common
* Avatar image
  * Use Qt::SmoothTransformation for improved quality
  * Crop to the center of the original image
  * Keep aspect ratio of the original image
* All forms: Use QFormLayout to simplify the code and provide a
  desktop aware layout
* Switch to QDialogButtonBox for a button order aligned with the
  desktop

Centralized creation of QFormLayouts
* Added option to use either system-style or mac-style for QFormLayouts
2024-10-29 09:49:19 -03:00
Alejandro Martinez
fb768969ee ErgDB is now TrainerDay
Fixes #2963
2024-06-03 17:16:57 -03:00
Joachim Kohlhammer
77df5b372c Train View: Improved the selection of workouts (#4400)
Added support to
* filter workouts by multiple metrics
* rate and tag workouts
* view detailed information about the selected workout
* Preserving user-content in trainDB on rescan for workouts
Fixes #411
2024-05-20 13:57:58 -03:00
Alejandro Martinez
57c11e076b Remove Ctrl+A shortcut for Add Cloud Account
It is not a frequent operation and it disables the use
of Ctrl+A for select all in Editor, which is more useful.
2024-05-07 12:22:29 -03:00
Joachim Kohlhammer
8718974722 Added a graphical splashscreen (#4468)
* 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
2024-04-08 11:34:55 -03:00
Joachim Kohlhammer
2ce84cbefd Bound global action to QKeySequence::Quit (#4464)
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
2024-03-29 20:04:19 -03:00
mattipee
159804284a Download Strava Routes as Workouts (#3413)
Allows to download Strava routes as GPX files automatically imported as workouts.
To access to private Routes it is necessary to grant read_all permission at authorization
time, existing Strava users need re-authorization.
Downloaded files are named as Strava-Route-id-RouteName.gpx
2024-03-23 18:12:54 -03:00
Joachim Kohlhammer
a1f02e925f Qt6: Fixed flickering MainWindow (#4452)
* Qt6: Fixed flickering MainWindow

When opening a Mapchart for the first time after start of GC, the
MainWindow used to shrink and be maximized again afterwards
automatically, matching the description in
https://forum.qt.io/topic/141398/qwebengineview-closes-reopens-window-when-added-dynamically

By adding and removing a QWebEngineView before showing MainWindow,
this flicker can be avoided

* Added empty HTML to RideMapWindow

This fix avoids flicker for the RideMapWindow in (un-)maximized windows
(only if the chart was already part of the layout on startup)
2024-03-10 09:28:24 -03:00
Alejandro Martinez
642eae96cb Deprecate Today's Plan integration
Fixes #4450
2024-03-02 19:02:30 -03:00
Mark Liversedge
b3df633787 Drag and Drop Images onto a ride
.. drag and dropping images into a ride will store them
   in the media folder and add the filename to the "Images"
   metadata tag which contains a list separated by newlines.

   The metadata does not include the full path since we may
   change the path in future releases
2024-01-30 15:50:33 +00:00
Alejandro Martinez
a65390167d MainWindow - Fix QColor to String invalid conversion 2024-01-13 15:55:57 -03:00
Alejandro Martinez
9761873d7a Merge branch 'replace_qdesktopwidget_usage' of https://github.com/andreasbuhr/GoldenCheetah into andreasbuhr-replace_qdesktopwidget_usage 2024-01-12 19:21:44 -03:00
Andreas Buhr
fbabe2aa36 Qt6: Add QRegExp include and adapt usage (#3960) 2024-01-12 10:39:20 -03:00
Andreas Buhr
e77b3ff4d0 Replace deprecated QSignalMapper::mapped signalD
Fixes #3986

The QSignalMapper::mapped signal does not exist any more and
was replaced by mappedString, mappedInt, and mappedObject.
This patch adapts its usages and only transitions to
new style signal-slot connection syntax.
2024-01-12 09:54:13 -03:00
Alejandro Martinez
46545d6e72 Don't use Ctrl+C to check for new activities
Fixes #4430 introduced by ea044a0c while fixing a typo.
2024-01-10 09:30:10 -03:00
Alejandro Martinez
ea044a0c39 Accelerators are QKeySequence not tr strings
Continuation of b095b40
2024-01-06 17:15:33 -03:00
enngq11k
c2f440c1c0 Fixed broken workout directory check for the first start (#4410)
Fix1:
appsettings->value default fallback "0" if no fallback value was given.
So a new GoldenCheetah installation will always use path "0" until a
workout directory was set in the settings.
We now use an empty string as fallback to get the condition working
again

Fix2:
Instead of using the athlete->home parent folder, the old code returned
the parent's parent folder. Until a workout directory was set in the
settings, the user had to navigate to the (hidden) athletes folder
everytime by hand.
2023-10-31 11:18:31 -03:00
Alejandro Martinez
b095b403bd Accelerators are QKeySequence not tr strings
Fixes #4409
2023-10-28 10:38:34 -03:00
Alejandro Martinez
733db9cb16 Ignore dot folders on athlete open/backup/delete
Fixes #4392
2023-09-03 21:45:23 -03:00
Mark Liversedge
c97eac67a2 Default Appearance Settings 1 of 2
.. The default appearance settings on new install or directly
   after and upgrade are terrible and create a poor impression
   for new users

.. This commit fixes up scaling, font selection and themes so
   that for a new install or directly after upgrade they are
   set to defaults that are sensible for the current release

.. It is expected that these defaults will change and extend as
   we implement new features and the UI evolves- so these should
   be used as a basis for defaulting in the future.

.. A second update is required to resolve issues with scaling in
   overview charts dependant upon the screen resolution
2023-05-25 08:44:43 +01:00
Paul Johnson
fdb35bf74e Athlete tab colour fix (#4257)
* Corrects Athlete QTabBar tab colours to match NewSideBar,
  abstract on select background color selection from NewSideBar
  to Colors for reuse in MainWindow
* Fixes dropMenu visibility within the Filter/Search Box on Dark Themes
---------
Co-authored-by: Alejandro Martinez <amtriathlon@gmail.com>
2023-03-23 20:01:46 -03:00
Alejandro Martinez
6bf7781aea Change running Python DPs from Edit menu
To better match the new BatchProcessing dialog
- Python DPs are listed together with builtin processors
  to be executed like parameterless built in DPs, with
  option to cancel.
- They also appear under the Python Fixes submenu, but in
  this case they also can be edited.
2023-03-17 13:40:19 -03:00
Paul Johnson
add0f301e9 Batch processing (#4226)
Batch Processing - Delete, Data Processors & Export

Extension of Batch Export dialog to include other operation on multiple activities:
- run data processor (Builtin or Python)
- delete (after confirmation)

Co-authored-by: Alejandro Martinez <amtriathlon@gmail.com>
2023-03-17 13:01:48 -03:00
Mark Liversedge
402edf51fc Stop signal processing during resetPerspective()
.. fixes undesirable behaviour with click thru on user charts

Fixes #4325
2023-01-28 17:44:51 +00:00
Mark Liversedge
64386bc1ba Perspective Selector Sync on switch Athlete tabs
.. when switching athlete tabs the perspective selector would
   always be reset to the first entry, this update makes sure
   we reset to the correct one.

Fixes #4325
2023-01-28 16:28:08 +00:00
Alejandro Martinez
9eb81385e8 Revert "Fix strange behaviour when changing views"
This reverts commit 0ddea94b7a.
2023-01-26 15:31:29 -03:00
Alejandro Martinez
0ddea94b7a Fix strange behaviour when changing views
The problem was introduce by 3a16d1e, the change in perspectiveSelector
current index triggers currentIndexChanged when the view change has
not been finished, to avoid this we use activated signal and add
a check to do nothing when the index has not changed.
The problem was reported at the forum.
2023-01-26 12:06:37 -03:00
Alejandro Martinez
7b44eaa7a8 Deprecate Google Drive and Calendar due to changes in OAuth
Fixes #4259
2022-08-24 18:55:44 -03:00
Alejandro Martinez
6d4921ba09 Add context sensitive help for the toolbar
Includes updated screen capture for the wiki.
2022-07-04 17:31:38 -03:00
Alejandro Martinez
4812661c9c Move Settings in Athlete menu
It did't look good in the previous position.
2022-01-25 21:17:21 -03:00
Mark Liversedge
522844508e Train View Perspective Switch - 1 of 2
.. add configuration of switching mode for train view perspectives

   the next commit will add the code that switches when a
   workout or media is selected.
2021-12-09 12:30:28 +00:00
Mark Liversedge
20201c16a8 View sidebar controls
.. when enter/leave full screen mode the view sidebar is
   hidden and shown to increase screen real estate (and
   especially useful in train view).

.. since the user may want to show/hide for other reasons
   the view menu now also has an option to show/hide the
   view sidebar selector too.
2021-11-18 09:16:34 +00:00
Mark Liversedge
2f703594e9 Hovering Color
.. add GColor(CHOVER) and used in sidebar, chartbar and
   toolbar when hovering over a button or tab.
2021-11-15 16:47:33 +00:00
Alejandro Martinez
d9b768514a Update translation files 2021-10-14 11:54:12 -03:00
Alejandro Martinez
d2a7f5797a Add Athlete > Settings to main menu
For completeness and to allow access to Athlete Settings
from other views.
Fixes #3723
2021-10-10 18:45:59 -03:00
Mark Liversedge
a4d928e4a0 More muted and modern Toolbar buttons
.. the side bar, bottom bar and related buttons were still
   following a skeuomorphic design that has long since
   fallen into disuse.

.. now have a more muted feel with hover/press colors active
   on mouse events.

.. moved the whatsthis button to the far right since this
   is quite a common placement in other apps.

.. it is noticeable how we use many many different schemes
   for hover/pressed colors across the UI- at some point
   this should be unified.

.. also deprecated the segmentcontrol.
2021-08-24 20:56:31 +01:00
Mark Liversedge
e02e19a979 Mac Toolbar UI Tweaks
.. bit more breathing space required, as overly compressed.
   Especially since there is no application menu bar on Mac.
2021-08-24 15:35:38 +01:00
Mark Liversedge
31f51dbdd5 Toolbar Styling on MacOS
.. remove conditional for styling the toolbar on Mac. This is
   an artefact from the old "UnifiedTitleAndToolBar" which we
   no longer use.
2021-08-22 11:02:49 +01:00
Mark Liversedge
d449933ab1 Refresh Perspective Selector on Add/Delete
.. commit 91f2c46 introduced a regression where the selector
   is not updated when the perspectives are changed (via
   the manage/add perspective functions).

.. this was because resetPerspective() returned if the
   athlete/view combination was last used to set the
   selector -- we now override this, but only when the
   perspectives config is changed.
2021-08-12 16:50:06 +01:00
Alejandro Martinez
39fc9e4537 Enable View - Reset Layout considering perspectives
It behaves as before: current view layout is discarded and default
layout with perspectives is fetched from goldencheetah.org first and,
if not available, baked in layout is used.
Website defaults are not updated yet, so baked in layouts are used now.
2021-08-09 17:30:10 -03:00
Mark Liversedge
91f2c46c3e Athlete/View switch update perspective selector
.. along the way renamed AthleteTab related methods in MainWindow
   to reflect the last commit renaming the classes.

.. there are also a handful of fixups to SEGV when no ride is
   selected in DataFilter (triggered by opening a second athlete
   and switching to trends view, which need to recreate the athlete
   switch bug that is also part of #3997).

.. and the logic to reset perspectives is changed in MainWindow
   with a special method resetPerspective that is called everywhere
   but will check the athlete/view combination has not already
   been set (to avoid multiple passes).

.. multi-athlete and perspectives need better testing as there are
   probably more SEGV in there, and if we fix them we could also
   remove the requirement for the opening view to always be Analysis.

Fixes #3997.
2021-08-08 15:19:36 +01:00
Mark Liversedge
01e0d14757 Renaming classes
.. Tab becomes AthleteTab - since Tab is almost meaningless
   TabView becomes AbstractView - since its the base for all the views

   there are no functional changes or fixes in this commit.
2021-08-08 13:05:06 +01:00
Andreas Buhr
7be3df19eb move from screen()[0] to primaryScreen() 2021-07-26 13:17:11 +02:00
Andreas Buhr
85ab8211b0 Qt6: remove QDesktopWidget usage 2021-07-26 13:11:44 +02:00
Andreas Buhr
7abac2678b Usage of QDesktopWidget is deprecated. Adapt code
This patch adapts the code to not use QDesktopWidget but to
use QGuiApplication::screens instead. It defaults to screen number 0.
2021-07-26 13:11:30 +02:00
Mark Liversedge
663b6af8fb Fix toolbar vs sidebar color configuration
.. they got conflated, now are separate colors but when we
   apply a theme they are set to the same color, of course
   the user can override this.
2021-07-17 11:41:49 +01:00
Alejandro Martinez
39a7e67085 Add parent widget to AddPerspective dialog to stop it being hidden
raise doesn't fix the issue on Windows
2021-07-08 18:24:47 -03:00