Commit Graph

38104 Commits

Author SHA1 Message Date
Chris Hennes
5d83f6dfdf Merge pull request #19627 from alfrix/featurehole_refactors
refactor(PD): Featurehole optimizations and cleanups
2025-02-17 10:16:37 -06:00
Alfredo Monclus
0bad3cc37b refactor: hole taskpanel tweak layout spacing 2025-02-17 10:16:06 -06:00
mosfet80
04d2bcbf45 Update CMakeLists.txt
cmake version is always greater than 3.8.
2025-02-16 10:22:31 -06:00
Joao Matos
27ebc68a11 CMake: Modernize build files using outdated Python variables. 2025-02-16 10:21:26 -06:00
Andrea
de9bd5e1ce change MIN_boost_version
ubuntu version 20.04 is no longer supported.
The minimum boost version used for freecad is now 1.74 (ubuntu 22.04) https://launchpad.net/ubuntu/jammy/+package/libboost-system-dev
2025-02-15 13:33:32 -06:00
Alfredo Monclus
f93396e566 refactor(PD): simplify setreadonly on type switch 2025-02-15 16:12:49 -03:00
Alfredo Monclus
dff79b6b08 refactor(PD): reduce the number of comparisons 2025-02-15 06:29:04 -03:00
Ziad
eb886449c2 PartDesign: Allow Draft negative angles 2025-02-14 14:57:14 -06:00
Chris Hennes
7412fce041 Merge pull request #19468 from hyarion/AIRCAP_fixCompoundCuts
Part: OCCWrapper: Fix compound cuts
2025-02-14 14:16:17 -06:00
Benjamin Nauck
7ff8382ae7 Add [[nodiscard]] to Vector3 (#19544)
* Add nodiscard to vector3
2025-02-14 14:14:45 -06:00
tritao
9636068460 Base: Move zipios library to 3rdParty folder. 2025-02-14 13:08:28 -06:00
tritao
05bdb40c12 Gui: Clean up XML bindings. 2025-02-14 13:05:29 -06:00
Ulices
e16c462916 Core: Remove link from tooltip (#19120)
It's impossible to click on the link because the tooltip fades away

---------

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2025-02-14 10:56:52 -06:00
Chris Hennes
4dc8b26e8d Merge pull request #18791 from CalligaroV/toponaming-ElementMapVersion-code-from-LS3
[Toponaming] Import code releted to _ElementMapVersion from LS3
2025-02-14 10:54:38 -06:00
Chris Hennes
2086d297c6 Part(toponaming): Remove support for OCCT 6.x 2025-02-14 10:54:13 -06:00
Alfredo Monclus
5c97fc094b fix(Gui): transparencies issues when using overlays
refactor: use replace to avoid numbering

refactor: fix the lint warnings

refactor: fix clazy complaints

refactor: apply review recommendation
2025-02-14 10:50:26 -06:00
Benjamin Nauck
1d89f9c23c CAM: Fix finish passes by avoiding fuzzy in Area.cpp (#19525) 2025-02-14 10:31:32 -06:00
Benjamin Bræstrup Sayoc
4473aa029f TechDraw: Set symbol dir
Fixes #19496
2025-02-14 10:27:53 -06:00
Chris Hennes
cd64b9a7d2 Merge pull request #19549 from tritao/xml-bindings-cleanup-app
App: Clean up XML bindings.
2025-02-14 10:26:48 -06:00
paul
56b180f3b1 [ArchSketchObject / Window] Links of Window to support Individual Hosts (#19378)
* [ArchSketchObject / Window]  Links of Window to support Individual Hosts

Currently, Links of Window's Hosts property (and in generall all properties other than e.g. Placement) is shared with its Linked Window object, i.e. all Windows Links instances can only has a common Host(s) which is not flexible for the purpose of Links.

AND, at the same time, Links in linked document suffer from the 'scope' of the original Linked Window, which is in the external Document.

This commit adds feature to support:
  1/ each Links instance of Windows has their own individual setting of Hosts, and
  2/ it see the 'scope' of the Links in its document (rather than the Linked Window in the external document)

FreeCAD Forum:
- https://forum.freecad.org/viewtopic.php?p=808569#p808569

FreeCAD GitHub:
- https://github.com/FreeCAD/FreeCAD/issues/19361

* [ArchSketchObject]  Fix indentation
2025-02-14 13:46:44 +01:00
Furgo
3623f8baf5 BIM: fix ability to cancel file dialog on BIM_TDPage command (#19518)
* BIM: use tuple return value from QFileDialog.getOpenFileName

Fixes: https://github.com/FreeCAD/FreeCAD/issues/19466

* BIM: remove filename assignment from tuple
2025-02-13 17:45:27 +01:00
Roy-043
dd3ae90fe7 Draft: task_scale.py fix circular imports (#19574)
See:
https://forum.freecad.org/viewtopic.php?t=94748
2025-02-13 16:02:24 +01:00
Roy-043
ee7f52060b Draft: gui_utils.py fix error in select function (#19539)
* Draft: gui_utils.py fix error in select function

PR #18795 changed the select function to also handle tuples. This PR adds a check to ensure the referenced objects in the tuple still exist before calling `Gui.Selection.addSelection()`.
2025-02-13 16:00:30 +01:00
Chris Hennes
9fccfa115d TD: Add missing #include "PreCompiled.h" (#19547)
* TD: Add missing #include "PreCompiled.h"

* Update src/Mod/TechDraw/Gui/CommandAlign.cpp

Co-authored-by: Benjamin Nauck <benjamin@nauck.se>

* TD: Add guards around QMessageBox include

---------

Co-authored-by: WandererFan <WandererFan@gmail.com>
Co-authored-by: Benjamin Nauck <benjamin@nauck.se>
2025-02-12 21:28:34 -06:00
Chris Hennes
0bf76de638 Part: Add comment explaining element map version string 2025-02-12 14:19:37 -06:00
Syres916
d044d3da84 [BIM] fix name 'self' is not defined error 2025-02-12 14:23:31 +01:00
Syres916
d92bb8611e [BIM] Fix translate error 2025-02-12 14:23:31 +01:00
tritao
defb77af73 App: Add more concrete types to Metadata API bindings. 2025-02-12 01:54:56 +00:00
tritao
9e08039ab6 App: Clean up XML bindings. 2025-02-12 01:54:27 +00:00
jffmichi
72c37f9b75 PartDesign: fix crash when opening a file with a metric hole 2025-02-11 17:35:35 -06:00
Chris Hennes
c962dbbeb6 Merge pull request #19167 from alfrix/hole_new_taskpanel
feat(PD): hole taskpanel: new image based cut panel
2025-02-11 17:22:16 -06:00
Syres916
62c5267e64 [Gui] fix the FPS text visibilty issues raised in #19371 (#19385)
* [Gui] fix the FPS text visibilty issues
* [Gui] code efficiency based on suggestions
* [Gui] update color parameter
* [Gui] Fix Lint feedback
* [Gui] check if string is empty
2025-02-11 13:16:29 -06:00
GS-GOAT
271c446493 Measurement: save 'Show Delta' state between commands #19204 (#19430)
* Measurement: save 'Show Delta' state between commands #19204

When users set Show Delta option to off in the Measure tool, the setting
was not being preserved when the tool was invoked again. This was due to    
using an uninitialized value as the default when loading the preference.  

Changes staged in: FreeCAD\src\Mod\Measure\Gui\TaskMeasure.cpp 

Fixed by:
- Using explicit 'true' as default value when loading Show Delta
preference 
- Maintains existing save functionality
- Ensures consistent behavior on first use
Fixes #19204

* Changed few things to ensure the delta state is saved #19204

added changes:-
1. settings.endGroup()
When we call beginGroup(), it creates a prefix for all subsequent settings operations, All settings will be stored under the "TaskMeasure" group.
endGroup() is needed to close this grouping scope
Without it, subsequent settings operations would still use the "TaskMeasure" prefix

2. settings.sync()
By default, QSettings caches changes in memory and writes them to disk later
sync() makes an immediate write to the settings file
This ensures the setting is saved right away rather than waiting for Qt to decide when to save.
Makes the setting change immediately available for future commands.

-Fixes Measurement: save 'Show Delta' state between commands #19204

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

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

* Added proposed changes to autoSaveChanged() and newMeasurementBehaviourChanged() functions #19204 #19430

Added settings.endGroup() to the following functions:-
1.autoSaveChanged()
2.newMeasurementBehaviourChanged() 
Each beginGroup() should be followed by endGroup().

No need for explicitily calling sync() as it is called automatically from QSettings's destructor and by the event loop at regular intervals.(Refer documentation for more info)

-Fixes Measurement: save 'Show Delta' state between commands #19204 #19430

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-02-11 13:10:53 -06:00
Alfredo Monclus
da4f584a50 PD(hole taskpanel): apply review suggestions
* refactor: change to ternary op
* refactor: apply recommendations to widgets
* refactor: use QSignalBlocker
* refactor: address some compiler complaints
* refactor: add namespace Gui to new widgets
2025-02-11 12:23:13 -06:00
ᴩʜᴏɴᴇᴅʀᴏɪᴅ
0ece6f3201 Base: [ Doxygen ] Improved parameter attribute methods (#19491) 2025-02-11 11:44:52 -06:00
Alfredo Monclus
3202dde7ca PD(hole taskpanel): Add custom widget for font-scaled SVGs
* feat: add custom widget for font scaled svgs
* refactor(PD): hole taskpanel svg tweaks
* fix(PD): build link on windows
2025-02-11 11:31:38 -06:00
Alfredo Monclus
de7a237a8a PD(hole taskpanel): Include depth on diagram
feat(PD): hole diagram add include depth
refactor(PD): hole taskpanel: images add background
2025-02-11 11:31:38 -06:00
Alfredo Monclus
be3ce13a7c PD(hole taskpanel): Add image-based hole cut panel
* feat(PD): hole taskpanel: new image based cut panel
* fix(PD): hole taskpanel fix dynamic cut types
* refactor(PD): hole taskpanel: renames and vlayouts to keep labels closer
* fix(PD): hole diagram tweaks
2025-02-11 11:31:17 -06:00
Ian Hunter
67f8852697 Fix bug preventing filtering named constraints (#19339)
* Fix bug preventing filtering named constraints

There was a bug (see issue #11843) that displayed a filter for Named
constraints in the Sketcher Workbench whose toggling did not affect the
UI in any way. This enables this feature by checking if a given
constraint has a custom name or not and then appropriately toggling its
visibility.

* Use `std::string::empty()` per reviewer suggestion

Co-authored-by: Benjamin Nauck <benjamin@nauck.se>

---------

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
Co-authored-by: Benjamin Nauck <benjamin@nauck.se>
2025-02-11 11:03:04 -06:00
Chris Hennes
e7c86d7710 Core: Update copyright date range to include 2025 (#19520)
* Main: Update copyright date range to include 2025
* GUI: Update copyright date range to include 2025
2025-02-11 10:59:12 -06:00
Chris Hennes
a4901e2ccb Merge pull request #19142 from hyarion/refactor/add-template-addobject
Add new addObject<T>() function
2025-02-11 09:42:47 -06:00
Karliss
cb8c193408 Workaround for transparency problems on wayland.
Reset alpha channel value to 1 at the end of 3d  rendering. The way Qt handles OpenGL widgets with transparent pixels in their final output is inconsistent.
2025-02-11 07:59:28 -06:00
Chris Hennes
1350dd6bd0 Merge pull request #19502 from benj5378/QStringLiteral
Use QStringLiteral
2025-02-11 07:34:12 -06:00
Benjamin Bræstrup Sayoc
4d9e4efc87 [TechDraw] Add ability to align points by rotating view
Fixes #7061
2025-02-10 19:31:39 -05:00
Chris Hennes
516595fbce Merge pull request #18594 from Flast/performance/base/find_element
Base: Improved FindElement performance by reducing call of transcode
2025-02-10 14:33:49 -06:00
Benjamin Nauck
fdf59be4cd PD: Light refactoring of TaskFeaturePick::makeCopy 2025-02-10 18:35:38 +01:00
Benjamin Nauck
b4bb86948f Mod: Use new GroupExtension::addObject<T>(...) 2025-02-10 18:35:38 +01:00
Benjamin Nauck
d71325d83e App: Add GroupExtension::addObject<T>(...) 2025-02-10 18:35:38 +01:00
Benjamin Nauck
8cc98b9a88 Mod: Use new addObject<T>(...) that requires additional changes 2025-02-10 18:35:38 +01:00
Benjamin Nauck
a1c5767643 Mod: Use new addObject<T>(...) using regex 2025-02-10 18:35:38 +01:00