Commit Graph

63 Commits

Author SHA1 Message Date
luzpaz
65cdbe3e89 Fix various typos throughout the codebase (#13029)
* Fix various typos throughout the codebase

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-03-18 16:54:30 -05:00
wmayer
19db9bdaeb Gui: check dialog width after language change 2024-02-12 12:00:11 -06:00
wmayer
fe94ff6dac Gui: set minimum width of preferences dialog to avoid to truncate or hide controls 2024-02-12 12:00:11 -06:00
Kacper Donat
1a4639f71f Gui: Fix scroll behaviour in preference pages selector
This fixes problem with scroll jumping after selecting page on bottom of
the pages tree view. It was caused by collapsing group of the current
item and then re-expanding it few lines after.

Fixes: #12000
2024-01-19 08:27:05 -06:00
CalligaroV
adb1fcfed8 Preferences: reset preference pages parameters set without using "PrefWidgets" objects
Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-01-15 11:28:12 -06:00
Kacper Donat
cde5e00045 Gui: Reset scroll position after preference page change
As every page is contained in the same QScrollArea we must ensure that
after page is changed the scrolled area is scrolled back to top-left
corner.

Fixes: #11981
2024-01-14 20:19:48 -06:00
Kacper Donat
5f97079a33 Gui: Cap starting height of Preferences dialog
This commit ensures that preference windows does not start taller than available geometry.
2023-12-04 11:03:35 -06:00
wmayer
3214ca644f Gui: fix several lint warnings 2023-11-29 21:10:49 +01:00
wmayer
19dfea4783 MSYS: fix broken Qt6 build using MinGW & clang 2023-11-28 19:11:58 +01:00
Kacper Donat
593f1a2386 Gui: Expand group after selection
This commit ensures that after selecting item the group is automatically
expanded. User can force expansion by explcitly clicking expand button,
groups expanded that way will stay expanded unless user collapses them.
Otherwise non-active group will be collapsed automatically.
2023-11-26 20:25:06 +01:00
Kacper Donat
42aebdfa97 Gui: Add ScrollArea to Preferences
This adds QScrollArea widget to DlgPreferences which in turn allows
preference pages to be scrollable. Stacked widget sizes are forced to
selected widget so scroll area should appear when it is needed.

Fixes #11511
2023-11-26 16:01:22 +01:00
Kacper Donat
fe5a1c6da1 Gui: Move reset logic to PreferencePage 2023-11-06 19:43:19 +01:00
Kacper Donat
12630551b5 Gui: Rework preferences navigation as TreeView
This recreates current ListBox + TabView navigation model into
navigation based on TreeView.
2023-11-06 19:27:36 +01:00
wmayer
e360436f06 Gui: Switch back to a single Reset button
The reset button opens a menu that offers all options to reset the user settings.
2023-10-14 21:48:53 +02:00
wmayer
3ba5cd569d Gui: port new code to Qt6 2023-10-12 11:48:16 +02:00
Vincenzo Calligaro
283961539d [Feature Request] [Core] [Preferences] [UI/UX] Buttons to reset default values of Pages/Groups (#10688)
* Gui: added buttons to restore the default values of the selected Tab or Group
 * reformatted texts for better translations
 * Morphed buttons from QPushButton to QToolButton
 * added code to resize items list and buttons on language change

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2023-10-02 16:14:29 -05:00
wmayer
7197568821 Qt6: fix possible build failure with Qt 6.5
Forum thread: https://forum.freecad.org/viewtopic.php?p=692199#p692199
2023-07-20 08:58:56 -05:00
Paddle
d134a544a0 DlgPreferencesImp::accept : move restartIfRequired in the if. 2023-03-31 14:34:40 +02:00
Paddle
7ea4588499 Pref: Wb: remove args first element on restart.
- isRebootRequired is not public but in accept&reject.
- PreferencePage::isRebootRequired changed to const
- Change 2 warnings to log
- remove useless  c_str()
- Change DlgPreferencesImp::isRebootRequired name + reboot by restart everywhere.
- Sort workbenches so that disabled wb are sorted.
2023-03-31 14:12:27 +02:00
Paddle
4686420326 Changed copyright texts of modified pages. 2023-03-28 15:18:28 +02:00
Paddle
2107002ed2 Pref: - add require-reboot capability to PreferencePage.
- Implement this require-reboot in wb pref page
2023-03-28 15:18:23 +02:00
wmayer
c0a0ddf1e0 Gui: by default restore the last visited page in the preferences dialog
See also: https://forum.freecad.org/viewtopic.php?t=77071
2023-03-25 18:23:09 +01:00
Uwe
26d80c5f22 [Gui] remove unused help button from preferences dialog
- is by default in the title bar of Qt dialogs, has to be removed explicitly when unused

- also fix too long code lines
2023-02-25 04:35:57 +01:00
wmayer
b2f784f1f5 Gui: fix clazy warnings:
* Wclazy-connect-by-name
* Wclazy-connect-3arg-lambda
2022-11-13 16:08:46 +01:00
wmayer
7c476bb67c Gui: handle std::exception and Base::Exception inside DlgPreferencesImp::createPageInGroup to avoid that the preferences dialog won't be shown at all 2022-11-05 15:47:08 +01:00
marioalexis
ff1b4eff05 Gui: Replace C cast 2022-09-18 11:06:51 -05:00
berniev
ae53c9b0a4 Gui: Use auto and range-based for (#7481)
* On lines where the variable type is obvious from inspection, avoid repeating the type using auto. 
* When possible use a ranged for loop instead of begin() and end() iterators
2022-09-14 13:25:13 -05:00
wmayer
7554996b72 Gui: set width of list box according to text length 2022-08-08 11:36:35 +02:00
berniev
066656f62a Gui: use emplace_back 2022-08-05 10:33:41 +02:00
Uwe
bb2b49fb1f [Gui] remove superfluous nullptr checks 2022-07-18 03:17:42 +02:00
andrea
7886d3cbf4 Remove unused code into GUI 2022-07-17 03:53:11 +02:00
wmayer
654de93621 Gui: implement mechanism to set a custom icon name or tooltip of a preferences group 2022-07-16 19:27:22 +02:00
Uwe
0c5407b63d [Gui] preferences: clarify Part/PD page
- users are confused that we have a preferences page named "Part design" that also defines things for the Part WB. The Wiki is clear that the preferences page is for both, Part and PD, however the UI is not.
This PR makes this clear.
2022-07-16 16:20:36 +02:00
Uwe
06157e3e3d [Gui] [skip CI] DlgPreferencesImp: a code style improvement 2022-07-10 00:14:34 +02:00
wmayer
1178df06b4 Gui: modernize C++11
* use nullptr
2022-03-23 18:41:21 +01:00
Uwe
70decbebf5 [Gui] DlgMacro etc.: remove unused includes 2022-03-16 23:41:14 +01:00
luz paz
79d2a192fc [GUI] Adjust Preferences dialog display position to be fully visible.
based on [commit](b1effe2250)
forum thread [thread](https://forum.freecadweb.org/viewtopic.php?f=8&t=66410)  
This PR replaces #6398
2022-02-20 21:55:12 -06:00
Uwe
bb4e6e477c [Gui] improvements for PCH builds 2022-02-19 06:38:45 +01:00
Chris Hennes
40171d7858 [GUI] Add PreferencePack support
Preference Packs are collections of preferences that can be applied en
mass to the user's current setup. Any preference that can be stored in
user.cfg can be stored in a preference pack, and they are designed to be
easy to distribute.

Support is also added for saving a subset of current preferences into a
new preference pack in order to facilitate easy creation of new
"themes", etc.
2021-05-13 09:08:33 -05:00
Chris Hennes
098d7b9aee [GUI] Remove code for Qt < 5.9 2021-04-02 10:10:37 +02:00
Chris Hennes
224a9186af Fix minor issues with Workbenches preference panel
This fixes three issues with the new Workbench Loader preferences panel reported by users:
* Some icons were not being properly scaled to the new 48x48 size
* Some text was being incorrectly cut off, despite fitting in the column
* The sort order of the workbenches was incorrect when external workbenches were added
2021-02-05 13:22:00 +01:00
Chris Hennes
249a5868d4 Add Workbench name as Tab item tooltip
In cases where the user's font is large or the Workbench name is long,
the new, narrower sidebar may not display the entire workbench name. To
address those cases, the tooltip for the element is now also set to the
workbench name. Thanks to Github user @marioalexis84 for the suggestion.
2021-02-04 19:40:31 +01:00
Chris Hennes
5730dac889 Fix bug due to early return
Github user @marioalexis84 found a bug that caused only the first page
of the most recently-added workbench to show. This refactors the
AddPage() static function to eliminate the early return statement that
was the cause of that bug.
2021-02-04 19:40:13 +01:00
Chris Hennes
be9b557dd6 Add pref window that loads unloaded workbenches
A new group is added to the Preferences window that explains why
some preferences may appear to be missing due to the workbench being
unloaded. It lists the unloaded workbenches, and offers to load them,
updating the preferences dialog as necessary.

This at least partially resolves issue #4474.
2021-02-04 19:38:57 +01:00
luz paz
38815b9550 Gui: Fix header uniformity, whitespace, and doxygen fixes 2020-11-26 10:14:56 +01:00
wmayer
e89508355f Gui: [skip ci] fix warning when opening preferences dialog in debug mode
The warning is e.g.: QWindowsWindow::setGeometry: Unable to set geometry 570x454+1524+350 on QWidgetWindow/'Gui__Dialog__DlgPreferencesWindow
2020-07-10 12:53:29 +02:00
wmayer
cff0638672 Qt5: QDesktopWidget is deprecated use QScreen [-Wdeprecated-declarations] 2020-06-12 17:51:33 +02:00
wmayer
d0db1daff7 fixes 0003848: Preferences dialog not fully visible 2019-02-23 16:28:39 +01:00
wmayer
e23db2e313 PVS: V773 A memory leak is possible 2019-02-17 18:40:06 +01:00
Silas
895a920b19 Improve readability with some comments 2019-01-03 11:43:43 +01:00