Commit Graph

42862 Commits

Author SHA1 Message Date
Carlos Nihelton
d5bcf68e43 Start: Walks the parent tree to close the tab (#22572)
* Start: Walks the parent tree to close the tab

We're currently closing the entire app, it seems a mistake.
Instead, we should look up the widget tree to find the tab
(QMdiSubWindow) and close it instead.

The way I put if we don't find it we don't do anything.
Might be unexpected but at least harmless.

A side effect of this fix is a required drop of constness of
multiple helper methods that call postStart().

* Start: Minor code cleanup and PCH fix

---------

Co-authored-by: Carlos Nihelton <cn@ubuntu.com>
Co-authored-by: Chris Hennes <chennes@gmail.com>
2025-08-06 00:38:30 +00:00
qewer33
a4d4a8e7d6 Gui: Add about image for dev version
Co-authored-by: ein-shved <yury.shvedov@kaspersky.com>
Co-authored-by: Ladislav Michl <ladis@triops.cz>
Co-authored-by: qewer33 <qewer33@proton.me>
Co-authored-by: 3x380V <i58604845+3x380V@users.noreply.github.com>
2025-08-05 17:33:05 -05:00
Matthias Danner
377ccbdf54 Fix drawing of angle constraints beyond the centerpoint and for negative angles 2025-08-05 23:41:30 +02:00
Roy-043
8786cac938 Draft: project point in split operation and copy original wire (#22452)
* Roy 043 patch 1 (#6)

* Update split.py

* Update gui_split.py

* Add recompute to update wire in split test

* Avoid circular import: init_draft_statusbar -> params -> init_draft_statusbar

* Remove accidentally added "ui/preferences-webgl.ui"
2025-08-05 14:41:03 -05:00
Ryan Kembrey
18702dfd6a PartDesign: Fix regression in mirror 2025-08-05 16:29:12 +02:00
Frank David Martínez M
1b3851c502 [Core] Add Boolean Functions to expressions (AND, OR, NOT) (#22506)
* [Core] Add Boolean Functions to expressions (AND, OR, BOOL, NOT)

* [Core] Add `if` function to expressions to overcome ternary operator limitations

* [Core] Update expressions grammar to recognize relational operations as arguments

* [Core] The `if` function has been removed as no consensus was reached regarding its convenience or necessity. Its inclusion was considered potentially confusing or redundant.

* [Core] Make boolean cast based on Confusion threshold.
2025-08-05 03:50:13 +00:00
Kacper Donat
b311137b74 Merge pull request #22916 from kadet1090/all-string-changes
All: Update UI strings for consistency
2025-08-05 01:20:35 +02:00
Benjamin Nauck
a10a52e36b Merge pull request #21723 from B0cho/CORE_Skip_recompute_command
CORE: 'Skip recompute' command added
2025-08-04 22:48:18 +02:00
Ryan Kembrey
75b2ef67fc TechDraw: Update UI strings for consistency
Closes: #22143
2025-08-04 20:26:04 +02:00
Max Wilfinger
bee89d0447 PartDesign: Update UI strings for consistency and correct for new fuctions and typos
Closes: #22128
2025-08-04 20:15:04 +02:00
Max Wilfinger
b267203e67 Material: Update UI strings for consistency
Closes: #22130
2025-08-04 20:14:59 +02:00
Max Wilfinger
1f35b9d7fe Part: Update UI strings for consistency
Closes: #22133
2025-08-04 20:14:51 +02:00
Max Wilfinger
ecf02b7878 Gui: Update UI strings for consistency
Closes: #22135
2025-08-04 20:14:45 +02:00
Ryan Kembrey
2c7ee9b8ed Assembly: Update UI strings for consistency
Closes: #22194
2025-08-04 20:14:38 +02:00
Ryan Kembrey
627a89d8db BIM: Update UI string for consistency
Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>

Closes: #22328
2025-08-04 20:14:15 +02:00
Ryan Kembrey
80c1d7a630 CAM: Update UI strings for consistency
Closes: #22350
2025-08-04 20:13:52 +02:00
Ryan Kembrey
3d163c9990 Help: Update UI strings for consistency
Closes: #22368
2025-08-04 20:13:40 +02:00
Ryan Kembrey
d7bc171a38 Test: Update UI strings for consistency
Closes: #22369
2025-08-04 20:13:34 +02:00
Ryan Kembrey
adff20f7dc Measure: Update UI strings for consistency
Closes: #22370
2025-08-04 20:13:26 +02:00
Ryan Kembrey
33ccea6835 MeshPart: Update UI strings for consistency
Closes: #22372
2025-08-04 20:13:18 +02:00
Max Wilfinger
764b9cca0e Sketcher: Fix UI strings
Closes: #22770
2025-08-04 20:13:04 +02:00
Max Wilfinger
b7a65220a3 DAGView: Update UI strings for consistency
Closes: #22771
2025-08-04 20:12:54 +02:00
Chris Hennes
7d6c9c0ee6 Contributing: Clarify use of Draft and On hold 2025-08-04 19:39:07 +02:00
Benjamin Nauck
37a653ef33 Gui: Remove toggleskiprecomputes todos 2025-08-04 19:17:15 +02:00
luzpaz
f73e863a02 Fix various typos (#22836)
* Fix various typos
Found via codespell

* [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>
2025-08-04 11:14:15 -05:00
Luz Paz
f791502dac CI: add more codespellignore words 2025-08-04 11:13:11 -05:00
Roy-043
8f42b8e3dd Draft: fix size of file button in Hatch task panel
Fixes #22790.

To keep the file button at the correct size a vertical bottom spacer is required.
2025-08-04 11:05:48 -05:00
Chris Hennes
eea9f81a90 Base: Clean up ParameterManager::LoadDocument 2025-08-04 18:04:59 +02:00
Roy-043
dac94dfee7 Draft: fix display of cross-shaped cursor
If snapping was off, and after clicking the first point of a new line (for example), the cursor would be a default arrow instead of the intended cross-shaped cursor.

Note that the arrow cursor is still displayed for a fraction of a second after this fix.

May also fix #16559.
2025-08-04 11:02:38 -05:00
Roy-043
98756ea010 BIM: ArchPanel: FontFile parameter name has changed
The parameter name has been changed from FontFile to ShapeStringFontFile. See #21054.
2025-08-04 10:58:52 -05:00
J-Dunn
966cb36e9e CAM: revert grbl_post regression (#22569)
* CAM: revert grbl_post regression

I recently noticed a bug in grbl_proc post processor where it was not correctly setting OLD_Z  if current machine_z is below G81 retract plane in R parmeter. 

On digging into my original commit is looks like the two lines which did this have been commented out. 
I can never find the Blame feature when I need so if someone else can find the culprit feel free. 

2bd617a2b3

This PR simply reinstates the missing lines and adds a snippet of NIST as a comment block  to prevent any over-zealous editing in the future. 

This regression means that drilling cycles start with z=clearance height instead of z=safe height leading to much costly air cutting.
This similarly messes up the  the retract plane for G98 leading to excessive machine time wasting and incorrect application of G98 returns. 

Indeed this regression was noticed because some were claiming the Safe height was redundant in drilling ops since it was never used. 

There is much discussion about all this at the moment which is being disrupted by people assuming the current broken paths are what FreeCAD is intended to do. 

Let's fix this ASAP, so we can stop this confusion and get discussions back to reality.

* [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>
2025-08-04 10:57:03 -05:00
Florian Foinant-Willig
39c902c616 Try to auto-fix any invalid generated helix 2025-08-04 17:52:06 +02:00
Chris Hennes
26c6aa934d Tests: Add tests for timestamp-based backups 2025-08-04 17:51:15 +02:00
wandererfan
8173b11104 [TD]more stringent test for bsplines as circles 2025-08-04 10:49:27 -05:00
Ian Abreu
4aa0aff389 Core: Generation of FEM interface bindings (#22581)
* Initial commit of FEM bindings.

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

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

* running black.

* Fixing imports.

* Update src/Mod/Fem/Gui/ViewProviderFemMeshPy.pyi

Co-authored-by: João Matos <joao@tritao.eu>

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: João Matos <joao@tritao.eu>
2025-08-04 10:48:00 -05:00
FEA-eng
5eb4dffe50 Part: Remove redundant Part Import and Export tools from the menu (#22116)
* Part: Update Workbench.cpp
2025-08-04 10:43:18 -05:00
sliptonic
bb0965941d Merge pull request #22228 from knipknap/fix-custom-attribute-edit
CAM: Various bugfixes for CAM tool management
2025-08-04 10:39:25 -05:00
Ian Abreu
3ecb701959 Core: Generation of python bindings for Techdraw (#22565)
* first working interfaces..

* adding the rest.

* updated all pyi files.

* running black for formatting.

* removing unused imports

* removing empty comments

* fixing typing declarations.

* removing inline comments.

* fixing pyObjectBase in CosmeticEdgePy

* removing erroneous tags.

* running black.

* fixing CenterLinePy

* fixing import issues.

* Fixing tuple.

* Enabling CosmeticEdge compilation.

* fixing comments, removing unused imports.

* fixing ordering
2025-08-04 10:36:32 -05:00
Ian Abreu
0e4dbbe8d2 Core: Generation of python bindings for Assembly (#22574)
* adding XML, CmakeLists, and interfaces.

* removing Dict, List from typing imports.

* Normalizing imports.
2025-08-04 10:36:22 -05:00
Benjamin Nauck
837ccef6f4 Merge pull request #22165 from 3x380V/fix_19183
PD: Fix loft between curved faces
2025-08-04 17:34:52 +02:00
Jackson Oursland
54a5192182 CI: ccache fix (#22899) 2025-08-03 23:55:53 +00:00
Kacper Donat
481b5d644b Sketcher: Make SoDatumLabel constraints more interactable (#21920)
* Sketcher: Make distance constraint more interactable

As the title says, this patch aligns selectability to what we actually
draw, so from now on extension lines and arrowheads will be also
selectable.

* Sketcher: Make radius/diameter constraint more interactable

* Sketcher: Make angle constraint more interactable

* Sketcher: Make symmetric constraint more interactable

* Sketcher: Make ArcLength constraint more interactable
2025-08-03 22:04:59 +02:00
Syres916
123b3b066b Tests: Add test for two face loft 2025-08-03 19:14:09 +02:00
Ladislav Michl
9a5d934eab PD: Fix loft between curved faces
Fixes issue 19183 also reported in the forum:
https://forum.freecad.org/viewtopic.php?p=806495
https://forum.freecad.org/viewtopic.php?t=88234

The actual reason for the failure is that the new code uses
FaceMakerBullseye method which expects coplanar wires.
The code was using FaceMakerCheese previously which changed
in LinkStage with their commit 93ce3edfe7ff
("PD: use FaceMakerBullseye for feature Loft")
and was imported here with TNP mitigations.

As changing it back would cause different regressions, lets
try different facemakers until one succeeds.

Fixes: fa8f29aed4 ("Toponaming/Part: Fix all getBaseTopoShape calls...")
Co-authored-by: Benjamin Nauck <benjamin@nauck.se>
Co-authored-by: Werner Mayer <wmayer@freecad.org>
2025-08-03 19:14:09 +02:00
theo-vt
1299b3eb9f Core: Set ::Remove flag before calling breakLinks (#22759)
* Ensure the ::Remove flag of DocumentObject is set to true before calls to breakLinks

* TechDraw: remove then add balloon annotation when changing the SourceView

* Revert "TechDraw: remove then add balloon annotation when changing the SourceView"

This reverts commit 483b4fe4a0715ff63c2669af33fc3beb60a93f54.
2025-08-03 15:45:04 +02:00
tetektoza
44b3686459 Sketcher: Make ArcLength constraint more interactable 2025-08-02 19:54:00 +02:00
tetektoza
ba0e9ac5a8 Sketcher: Make symmetric constraint more interactable 2025-08-02 19:54:00 +02:00
tetektoza
36e6808d34 Sketcher: Make angle constraint more interactable 2025-08-02 19:54:00 +02:00
tetektoza
c7e96a2168 Sketcher: Make radius/diameter constraint more interactable 2025-08-02 19:53:48 +02:00
tetektoza
e2b8ebab41 Sketcher: Make distance constraint more interactable
As the title says, this patch aligns selectability to what we actually
draw, so from now on extension lines and arrowheads will be also
selectable.
2025-08-02 19:52:33 +02:00