Commit Graph

39107 Commits

Author SHA1 Message Date
Roy-043
8487ec7e1d BIM: Hidden objects used for variant Links should not be hosted
If a window is a variant Link there will be a hidden source object in the document. That hidden object shares properties with the visible Link object. The Hosts property may be one of them, yet the hidden object should never be hosted.

Forum topics:
https://forum.freecad.org/viewtopic.php?p=817743#p817743 (sample file)
https://forum.freecad.org/viewtopic.php?t=96115 (code discussion)

To test the code:
1. Open the mentioned sample file.
2. Change the Hosts property of  Window001 to Wall.
3. Recompute.
2025-04-25 15:07:35 +02:00
paul
39afedb077 [BimWindow] Integrate Interactive Creation Tool with SketchArch Parametric Attachment Feature (#20872)
Improvement to User Interactive Experience:
- Now with the stock BIM Window Interactive Tool and SketchArch-addon, the required SketchArch parametric placement information of an Arch Object (Window currently) are automatically completed, no more manual input is required.

FreeCAD Forum Discussion:
- https://forum.freecad.org/viewtopic.php?p=822493#p822493

YouTube Demo:
- https://youtu.be/BNZFk03_eGE
2025-04-25 15:05:51 +02:00
Roy-043
fc90443b98 BIM: Improve grid handling for some commands (#20658)
* BIM: Improve grid handling for some commands

The updated commands did not handle the 2 grid options ("always", "only during commands") correctly. The proposed code follows the example of BimWall.py and ArchStructure.py where this issue has already been addressed.

* Rebase
2025-04-25 14:59:33 +02:00
Ladislav Michl
986a3b4f7a Base, Gui: remove lefovers from xml -> pyi conversion 2025-04-25 11:57:24 +02:00
Kacper Donat
5a2c107608 App: Fix inheritance information for PropertyEnumeration
For some reason PropertyEnumeration in our type information system was
said to be inherited from App::PropertyInteger, wich is not the case.
This commit fixes that mistake.
2025-04-25 11:12:11 +02:00
Kacper Donat
2a5114f2d3 CMake: Rebuild .cpp/.h files from .pyi on build 2025-04-24 16:40:24 -05:00
Alex Neufeld
d377d43de5 Gui: Use a perceptually uniform color map for Std_RandomColor
Using a restricted set of colrs with uniform lightless improves
the appearance of assemblies with randomly-colored parts.
2025-04-24 21:03:18 +02:00
Florian Foinant-Willig
d23d3d7ac1 Add locked keyword to Document::addProperty 2025-04-24 16:03:34 +02:00
Roy-043
262f8d49fe Draft: Change 'Chain Mode' GUI text to sentence case 2025-04-24 10:10:18 +02:00
Monty Montgomery
0a3677b9eb Fix to sanity checking of ElementMap::restore()
An operator precedence error in new sanity checking code within
ElementMap::restore() causes <X>.Shape.Map.txt files with more than
2 element maps to be rejected as invalid.  This silently corrupts
projects upon loading, potentially unrecoverably.

The preexisting code comment is still appropriate if ironic.
2025-04-23 17:19:32 -05:00
Pieter Hijma
1136bc91f8 Gui: Fix value field for DlgAddPropertyVarSet (#20824)
* Gui: Fix value field for DlgAddPropertyVarSet

The value field would only appear if a name was provided resulting in a
strange user experience.  This commit fixes this and simplifies the
logic of the dialog.

* Process comments from review

Co-authored-by: Kacper Donat <kadet1090@gmail.com>

---------

Co-authored-by: Kacper Donat <kadet1090@gmail.com>
2025-04-23 22:50:03 +02:00
Furgo
bf19a8917f TechDraw: Add BIM view with the page's scale (#20934)
* TechDraw: Add BIM view with the page's scale

* Fix if one-liner syntax
2025-04-23 19:31:57 +02:00
Roy-043
d4dcda1693 Draft: adjust formatting of params.py (#20946) 2025-04-23 19:16:40 +02:00
Roy-043
ed4dfba2a7 Draft: adjust formatting of params.py 2025-04-23 17:03:07 +02:00
tetektoza
5243c4a664 TechDraw: Use static_cast when casting scene's child to TextField 2025-04-23 16:32:31 +02:00
tetektoza
b4214fdde6 TechDraw: Return text fields directly as childs of QGISVGTemplate
As the title says. I've noticed during reproducing of #18921, that
after in `PagePrinter::renderPage` we call `setTemplateMarkers`
twice, which results in deleting `childItems` allocated memory
(in `setTemplateMarkers`->`setMarkers`->`updateView`->`clearClickHandles`),
and then we are calling `setTemplateMarkers` (also in `PagePrinter::renderPage`) second time,
accessing `textFields` in `setMarkers` method, which still contain hanging pointers
from the previous deallocation. This results in segfaults as we iterate through `textFields`.

So, instead of keeping sychronization between childs of QGISVGTemplate
and textFields vector - this patch removes this variable at all and uses
childs directly to return text fields.
2025-04-23 16:32:31 +02:00
Abdelhadi Wael
4ff9cb343e Remove filter excluding Spreadsheet objects 2025-04-22 21:37:17 -05:00
Abdelhadi Wael
9000948f6b Update src/Gui/CommandStructure.cpp
Co-authored-by: Florian Foinant-Willig <FlachyJoe@users.noreply.github.com>
2025-04-22 21:37:17 -05:00
Abdelhadi Wael
13be1ad37f Update CommandStructure.cpp 2025-04-22 21:37:17 -05:00
Abdelhadi Wael
c9df6e5691 Update src/Gui/CommandStructure.cpp
Co-authored-by: Benjamin Nauck <benjamin@nauck.se>
2025-04-22 21:37:17 -05:00
Abdelhadi-Wael
1b08dbddf0 fixed warning 2025-04-22 21:37:17 -05:00
Abdelhadi Wael
ffaf2c22a2 Updated PR with fixes 2025-04-22 21:37:17 -05:00
Abdelhadi Wael
de4e43e6da Fix: Only add objects when multiple are selected 2025-04-22 21:37:17 -05:00
Kacper Donat
efbfa34aa1 Merge pull request #20778 from FlachyJoe/LockedProperty2
Prevent user to remove core properties
2025-04-23 00:23:37 +02:00
Pieter Hijma
8fb9cbfa3e [Core] Make enum FrameOption boolean
Co-authored-by: Benjamin Bræstrup Sayoc <benj5378@outlook.com>
2025-04-22 23:56:07 +02:00
Pieter Hijma
4650f426d4 [Core] Enable a frame in VarSet dialog value field
The Add Property Dialog for VarSets creates an editor based on the type.
This editor has no frame by default because it is mostly used in the
property view as part of a table.  With this change we enable the frame
for the editor (the value field)
2025-04-22 23:56:07 +02:00
Pieter Hijma
50bf1cf120 [Core] Allow creating an editor with a frame
The default is to not have a frame as is custom before this change.
2025-04-22 23:56:07 +02:00
Florian Foinant-Willig
a7331cbb43 TemplatePyMod: Prevent user to remove core properties 2025-04-22 23:52:17 +02:00
Florian Foinant-Willig
3de57e50c2 Points: Prevent user to remove core properties 2025-04-22 23:52:17 +02:00
Florian Foinant-Willig
d6dd100266 PartDesign: Prevent user to remove core properties 2025-04-22 23:52:17 +02:00
Florian Foinant-Willig
1ae550f6f4 Part: Prevent user to remove core properties 2025-04-22 23:52:17 +02:00
Florian Foinant-Willig
286483ff7d OpenSCAD: Prevent user to remove core properties 2025-04-22 23:52:17 +02:00
Florian Foinant-Willig
8a733f450b Measure: Prevent user to remove core properties 2025-04-22 23:52:17 +02:00
Florian Foinant-Willig
6555bdc83c Fem: Prevent user to remove core properties 2025-04-22 23:52:17 +02:00
Florian Foinant-Willig
19c125e898 Draft: Prevent user to remove core properties 2025-04-22 23:52:17 +02:00
Florian Foinant-Willig
4a61a49456 BIM: prevent user to remove core properties 2025-04-22 23:52:17 +02:00
Florian Foinant-Willig
b41b294292 Assembly: prevent user to remove core properties 2025-04-22 23:52:17 +02:00
Florian Foinant-Willig
31781a0f43 Add locked keyword to ViewProvider::addProperty 2025-04-22 23:52:17 +02:00
Florian Foinant-Willig
257ea040f8 Add locked keyword argument to DocumentObject::addProperty 2025-04-22 23:52:17 +02:00
Pieter Hijma
01effaaab0 [Gui] Fix "Select dependent objects" with cycles
Doing "Add dependent objects to selection" in the context menu of an
object that has cyclic dependencies triggered an infinite recursive
loop.  This has been solved by using the function to get an outlist
recursively.
2025-04-22 17:23:38 -03:00
3x380V
54549a4a96 Fix SolverCalculiX object refactor (#20913)
Rename original SolverCalculix.ui to SolverCcxTools.ui to prevent
collision on case insensitive filesystems.

Fixes: 4f7a835e22 ("Fem: SolverCalculiX object refactor")
2025-04-22 16:53:58 -03:00
Pieter Hijma
84b57d67b5 [Doc] Process comments from review
Co-authored-by: Benjamin Nauck <benjamin@nauck.se>
2025-04-22 13:42:50 +02:00
Pieter Hijma
108dafb89d [Doc] Improve documentation PropertyContainer 2025-04-22 13:42:50 +02:00
Pieter Hijma
073bf5d0f3 [Doc] Add documentation top-level namespace App 2025-04-22 13:42:50 +02:00
theo-vt
774ec2cc93 PartDesign: Center holes on sketch points as well as circles and arcs (#20583)
Co-authored-by: Kacper Donat <kadet1090@gmail.com>
2025-04-21 23:30:57 +02:00
Kacper Donat
9aad08a646 Sketcher: Remove not-needed print statements 2025-04-21 15:08:33 -05:00
Chris Hennes
4428ba3bf2 Start: Apply reviewer suggestion
Co-authored-by: Pieter Hijma <pieterhijma@users.noreply.github.com>
2025-04-21 21:21:52 +02:00
Chris Hennes
42cd4d76f2 Start: Refactor f3d to use worker threads 2025-04-21 21:21:52 +02:00
Adrian Insaurralde Avalos
da35868b96 Start: refactor f3d previews, use caching and configurable f3d path 2025-04-21 21:21:52 +02:00
MaxiV
c8411bdbba Start: Switch to using QProcess, not std::system 2025-04-21 21:21:52 +02:00