Commit Graph

67 Commits

Author SHA1 Message Date
Roy-043
f112107301 Gui: "Default unit system" in title case in prefs 2024-01-30 17:27:24 +01:00
Vincenzo Calligaro
1fdffef21d [Core] [Preferences] Modernize for loop in DlgSettingsEditor.cpp (#12011)
* Preferences: modernize for loop in DlgSettingsEditor.cpp

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>

* Preferences: modernize for loop in DlgSettingsEditor.cpp
added textType and textColor variables to unpack range-for loops iterators

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>

* Update src/Gui/PreferencePages/DlgSettingsEditor.cpp

Minor linter updates, as suggested

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>

* Update src/Gui/PreferencePages/DlgSettingsEditor.cpp

Minor linter updates, as suggested

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>

---------

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2024-01-22 11:19:46 -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
bgbsww
a1c08dbf43 Move the unit schema into Project Information and remove all Project Unit System code (#11266)
* Add unit system to Project Information and store with document.

* Remove the project unit system

* Restore correct document activation signalling to fix test fail

* Remove commented out dead lines

* Restore ignore option for project unit schemas

* Whitespace fix

* Refresh after changing units

* Remove field label

* Property editor changes applied to unit system
2023-12-04 13:04:53 -06:00
Bas Ruigrok
9e2577bce7 Gui: Add a separate checkbox for enabling spinning animations (#11534)
* Gui: Create group box for animation preferences

* Gui: Add spinning animation checkbox

* Gui: Implement isAnimating() for NavigationAnimator

* Gui: No need to enable animations in DemoMode

The spin animation is played regardless of the user preference and does not need to be enabled before starting the spin animation

* Gui: Change comment
2023-12-04 10:50:29 -06:00
Syres916
00826abe7a [Gui] Add 20, 25 and 30px marker sizes 2023-11-25 12:36:33 +01:00
wmayer
3ab5165291 Qt: fix duplicate widget names 2023-11-21 23:10:03 +01:00
Chris Hennes
283c4d7ef5 Merge pull request #11421 from Pesc0/vscode-split-4--upgrade-python-debugger
Vscode split 4  upgrade python debugger
2023-11-20 11:18:36 -06:00
Max Wilfinger
4bf1d1cc81 Fixes "Project Information" is Misleading #11296 - replace project with document (#11367)
* project to document on information, merge, util

* change project to document in unit system dialog

---------

Co-authored-by: WandererFan <WandererFan@gmail.com>
2023-11-20 10:03:22 -07:00
Pesc0
0e6ec6e3ac create utils file with get_python_exe 2023-11-17 02:00:12 +01:00
wmayer
9bb996e2f3 Gui: Fixes #11341: Adjusting Light Sources in Preferences 2023-11-12 13:41:13 +01:00
wmayer
c6c3b90b0d Gui: invalid property type used for spin box, duplicated object name used 2023-10-27 10:51:56 +02:00
Rexbas
37e600e766 Gui: Refactor navigation animations
- Animations are played through an Animator
- Standard animations have a fixed duration and inherit from QVariantAnimation
- The animation duration can be changed in the preferences
- Fix animations when using the two arrows above the NaviCube
- Start an animation or start and wait for an animation
- Replaces standard camera animations (e.g. by selecting standard views or NaviCube) with FixedTimeAnimation
- Replace View3DInventorViewer's CameraAnimation with FixedTimeAnimation
- Replace OpenInventor navigation style infinite spin animation with SpinningAnimation
- Stops an active animation when a new animation is started
- Stops an active animation when the user starts dragging, panning or zooming
- Refactor reorientCamera so it can be used in animations
- Enable animations by default
2023-10-25 11:17:55 +02:00
wmayer
aaa962944b Gui: With Qt6 QColor's redF(), greenF(), blueF() methods return a float 2023-10-24 13:30:40 +02:00
wmayer
a8c65ec621 Gui: rename methods setBacklight() & isBacklight() to harmonize with setHeadlightEnabled() & isHeadlightEnabled() 2023-10-24 13:30:40 +02:00
wmayer
c017386d91 Gui: suppress & fix some lint warnings in DlgSettingsLightSources 2023-10-23 19:34:54 +02:00
wmayer
7350855ca0 Gui: fix possible crash when opening DlgSettingsLightSources 2023-10-23 19:34:54 +02:00
wmayer
f566b449a6 Gui: fixes issue #11113: Adjust Default Main Light Position 2023-10-23 11:05:21 -05:00
Roy-043
e28d8234bc Gui: Improve texts for unit system preferences 2023-10-20 20:13:17 +02:00
wmayer
74c236f947 Gui: [skip ci] remove empty lines from .ui file 2023-10-14 16:30:37 +02:00
wmayer
310c052134 Gui: implement option to disable overlay management 2023-10-14 13:36:12 +02:00
wmayer
27dd573101 Gui: remove trailing whitespaces (thanks luzpaz) 2023-10-12 00:58:44 +02:00
wmayer
5449281108 Gui: fix tab order and duplicated widget names in DlgSettingsTheme.ui 2023-10-12 00:58:44 +02:00
Zheng, Lei
21e6e7a79b Gui: expose various overlay UI options to preference pages 2023-10-11 09:58:53 +02:00
Haas
b86d8852e5 Update DlgSettingsWorkbenchesImp.cpp
added translucent background for workbench name/icon widget.
2023-10-09 16:42:53 +02:00
wmayer
13dce7864d Gui: Enable the thumbnail size widget by default
With PR #10016 the saving of thumbnails is on by default but the spin box to set the size is still disabled.
This results into an inconsistency and one has to click the Save thumbnails check box twice to enable the size widget.
2023-10-09 16:23:35 +02:00
wmayer
56820718c5 Core: Revert superfluous changes made with PR #9521 2023-10-09 15:06:45 +02:00
luzpaz
e7a0690d47 Preferences: remove whitespace before colon
Uniformity fix in the preference page
2023-10-09 14:44:42 +02:00
AgCaliva
2212e68a30 merge master via cli 2023-10-04 13:28:48 -03:00
wmayer
0398716487 Gui: fixes #10807: By default keep the old tabulated layout of ComboView and TaskView 2023-09-30 17:33:33 +02:00
dyylanhammond
f1a6a9e3a6 Change default file saving preferences (#10781)
* Change default compression level from 3 to 7
* increase default thumbnail size to 256
2023-09-27 16:08:43 -05:00
Yorik van Havre
ffd66cf826 Revert "Gui: Refactor navigation animations" 2023-09-26 19:44:16 +02:00
Yorik van Havre
79a74e722b Merge pull request #10790 from Rexbas/rotation-center-preferences
Gui: Add rotation center indicator color, transparency and size preferences
2023-09-26 11:01:19 +02:00
AgCaliva
1f9bae0de7 Merge branch 'master' into User/Document/Feature_level_units_selection_#7746 2023-09-25 22:58:23 -03:00
Yorik van Havre
84cb841f3f Merge pull request #9446 from Rexbas/navigation-animation
Gui: Refactor navigation animations
2023-09-25 18:15:43 +02:00
Yorik van Havre
951aafde60 Merge pull request #10555 from Syres916/Font_8514oem_exclude
[Preferences] Exclude 8514oem from Monospace fonts
2023-09-25 10:57:26 +02:00
Rexbas
148f4adef0 Gui: Add rotation center indicator color, transparency and size preferences 2023-09-23 22:42:20 +02:00
Syres916
4e466355f1 [Gui] Fix color bar position and text (#10552)
* [Gui] Fix ColorBar position and labelling

* [Gui] Improve formatting

* [Gui] ColorBar adjusts if user squashes window height

* [Gui] Changes following feedback
2023-09-19 18:35:22 -05:00
AgCaliva
dacb2c43a4 Merge branch 'master' into User/Document/Feature_level_units_selection_#7746 2023-09-18 14:01:25 -03:00
AgCaliva
4a504437d3 merge master via cli 2023-09-16 02:12:58 -03:00
AgCaliva
280e5e3987 Fixing DOMDocument redefinition 2023-09-16 00:38:41 -03:00
wmayer
f5b4123109 Gui: implement handling of Combo, Property and Tree view 2023-09-14 13:35:13 +02:00
wmayer
378dfd96b7 Gui: fix clang-tidy warning 2023-09-08 21:45:10 +02:00
Michael Tuma
e78f74b01a Made the interval that the Python profiler runs at configurable
Added a "User parameter:BaseApp/Preferences/PythonConsole/ProfilerInterval" int
property which sets how often (in milliseconds) the Python profiler runs while
Python code is running. Setting this value to zero will totally disable it.

Also added a preference in the Python console screen which allows the user to
set the value of this property to between 0 (disabled) and 5000 (once every 5
seconds). (+1 squashed commits)

Squashed commits:

[cca88ac633] Made the Python profiler only run when the console is running code

This has two purposes. First, it prevents a performance impact from running the
profiler whenever Python code is running. Second, it prevents crashes caused by
Qt's process events function being called too frequently. When the Python code
is running in the console, it monopolizes the main thread and prevents events
from being processed. Therefore, causing events to be processed in the callback
should not force events to be processed too frequently, because the normal loop
is being prevented by the Python code. (+1 squashed commits)

Squashed commits:

[45f86917e6] Made long-running Python code not freeze the GUI without multithreading

Removed the background thread running Python code and replaced it with a custom
profiler which the Python interpreter runs frequently (at every Python opcode I
believe) on the main thread whenever Python code is running. The profiler will
make Qt process any new events every 200 ms, preventing "App not responding"
messages and making sure any Ctrl+C keypresses will be processed. This prevents
the previous issue where running anything GUI-related from Python would crash
the program (because Qt isn't thread-safe). (+1 squashed commits)

Squashed commits:

[0ef7d810b3] Made the process of getting thread IDs cross-platform compatible

Instead of using <threads.h>, now the standard <thread> header from C++
11 is used to find the thread ID, since <threads.h> is apparently not
available on Windows. (+1 squashed commits)

Squashed commits:

[74c7b867f2] # This is a combination of 2 commits.

Python from the console now runs in the background

In a nutshell, all Python code which is input from the interactive console
now runs in a seperate QThread which runs in the background, instead of
on the UI thread. This means that long operates operations will no longer
cause the app to display an "App not responding" message, because the UI
thread is now free to keep running unencumbered.

However, it is still not possible to run multiple Python statements at
the same time. If the user tries to run some Python while a previous
statement is still being processed, instead it will display an error
message in the console stating that the previous command is still
being processed.

I also added a seperate QTimer which runs once every 100ms to flush any
output from the Python code back to the console. I can't flush the output
to the console from the background thread because the relevant Qt5 code
is not thread-safe (it causes random segfaults). So I added this timer
as a work-around, since it runs in the main UI thread.

Implemented Ctrl+C keyboard interrupts in the console

This is implemented by detecting a Ctrl+C key event in the Python
console in the main Qt UI thread, and sending a keyboard interrupt
to the background thread that runs the Python code.
2023-09-08 21:45:10 +02:00
Syres916
384084048d [Gui] Correct logic and use more simplistic condition 2023-09-05 18:26:34 +01:00
Syres916
6f9ac7aba8 [Preferences] Exclude 8514oem from Monospace fonts 2023-09-05 11:29:37 +01:00
Rexbas
9fed764368 Gui: Refactor navigation animations
- Animations are played through an Animator
- Standard animations have a fixed duration and inherit from QVariantAnimation
- The animation duration can be changed in the preferences
- Fix animations when using the two arrows above the NaviCube
- Start an animation or start and wait for an animation
- Replaces standard camera animations (e.g. by selecting standard views or NaviCube) with FixedTimeAnimation
- Replace View3DInventorViewer's CameraAnimation with FixedTimeAnimation
- Replace OpenInventor navigation style infinite spin animation with SpinningAnimation
- Stops an active animation when a new animation is started
- Stops an active animation when the user starts dragging, panning or zooming
- Refactor reorientCamera so it can be used in animations
- Enable animations by default
2023-09-04 21:43:41 +02:00
PaddleStroke
b7a6558c72 Assembly: Initial implementation (#10427)
* Assembly: Initial implementation.
* Disable Assembly wb as it's WIP.
* Stub code for handling assembly import.

Co-authored-by: sliptonic <shopinthewoods@gmail.com>
Co-authored-by: Paddle <PaddleStroke@users.noreply.github.com>
2023-08-31 12:30:10 -05:00
AgCaliva
39dcb1da7b Merge Master 2023-08-30 16:24:16 -03:00
PaddleStroke
22d9fb5aa7 Pref: wb: Add contextual menu to sort alphabetically. (#10363)
Co-authored-by: Paddle <PaddleStroke@users.noreply.github.com>
2023-08-28 10:39:44 -05:00