Commit Graph

63 Commits

Author SHA1 Message Date
luzpaz
5839134e95 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
e3a5703c1f Gui: check dialog width after language change 2024-02-12 12:00:11 -06:00
wmayer
4d6a5ee456 Gui: set minimum width of preferences dialog to avoid to truncate or hide controls 2024-02-12 12:00:11 -06:00
Kacper Donat
f4030c4384 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
49e7bba9c7 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
48d935d401 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
cc45f48912 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
d9a9b95ede Gui: fix several lint warnings 2023-11-29 21:10:49 +01:00
wmayer
f4b0a8160c MSYS: fix broken Qt6 build using MinGW & clang 2023-11-28 19:11:58 +01:00
Kacper Donat
dd94f6da03 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
b147fe00a7 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
0a8936644e Gui: Move reset logic to PreferencePage 2023-11-06 19:43:19 +01:00
Kacper Donat
b277b0b0e8 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
b99feff9fb 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
e37e924b85 Gui: port new code to Qt6 2023-10-12 11:48:16 +02:00
Vincenzo Calligaro
d8636dd058 [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
141b2ecf0a 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
184147d513 DlgPreferencesImp::accept : move restartIfRequired in the if. 2023-03-31 14:34:40 +02:00
Paddle
ec2e5fe2ac 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
0e2bc871e8 Changed copyright texts of modified pages. 2023-03-28 15:18:28 +02:00
Paddle
8d16cf7395 Pref: - add require-reboot capability to PreferencePage.
- Implement this require-reboot in wb pref page
2023-03-28 15:18:23 +02:00
wmayer
32d0ac6417 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
77b7af3e60 [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
951ea0a768 Gui: fix clazy warnings:
* Wclazy-connect-by-name
* Wclazy-connect-3arg-lambda
2022-11-13 16:08:46 +01:00
wmayer
927b342fbe 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
0382f276a2 Gui: Replace C cast 2022-09-18 11:06:51 -05:00
berniev
75acacd1b7 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
0c7e521ff5 Gui: set width of list box according to text length 2022-08-08 11:36:35 +02:00
berniev
6ac4d8392e Gui: use emplace_back 2022-08-05 10:33:41 +02:00
Uwe
316a869b26 [Gui] remove superfluous nullptr checks 2022-07-18 03:17:42 +02:00
andrea
3018985f80 Remove unused code into GUI 2022-07-17 03:53:11 +02:00
wmayer
2a41f359f7 Gui: implement mechanism to set a custom icon name or tooltip of a preferences group 2022-07-16 19:27:22 +02:00
Uwe
6d54ca4df4 [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
b3c0e7bc5a [Gui] [skip CI] DlgPreferencesImp: a code style improvement 2022-07-10 00:14:34 +02:00
wmayer
96adb98f46 Gui: modernize C++11
* use nullptr
2022-03-23 18:41:21 +01:00
Uwe
5a95b71829 [Gui] DlgMacro etc.: remove unused includes 2022-03-16 23:41:14 +01:00
luz paz
585ed90479 [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
1e314b0165 [Gui] improvements for PCH builds 2022-02-19 06:38:45 +01:00
Chris Hennes
858e88afe1 [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
50c7ee36bf [GUI] Remove code for Qt < 5.9 2021-04-02 10:10:37 +02:00
Chris Hennes
7560a35ea0 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
d5b68febbb 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
13e2f93bae 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
bd8a3c5021 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
298c677873 Gui: Fix header uniformity, whitespace, and doxygen fixes 2020-11-26 10:14:56 +01:00
wmayer
14f38f7566 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
eced0cb568 Qt5: QDesktopWidget is deprecated use QScreen [-Wdeprecated-declarations] 2020-06-12 17:51:33 +02:00
wmayer
4765b7e2fe fixes 0003848: Preferences dialog not fully visible 2019-02-23 16:28:39 +01:00
wmayer
3845350c0a PVS: V773 A memory leak is possible 2019-02-17 18:40:06 +01:00
Silas
8526b0747e Improve readability with some comments 2019-01-03 11:43:43 +01:00