Commit Graph

33141 Commits

Author SHA1 Message Date
George Peden
6730a5bc74 Refactor: Replace all literal hint strings with constants
- Added class-level static constexpr constants for all hint strings
- Replaced all QObject::tr("%1 pick...") with constants in both DrawSketchHandlerGenConstraint and DrawSketchHandlerDimension classes
- Eliminates string duplication and improves maintainability
- Addresses Copilot's PR feedback on string refactoring
2025-09-30 08:47:43 -05:00
George Peden
7ecb97a11e Refactor hint strings to use constants
- Add class-level constants for all hint texts
- Replace all hardcoded strings in static table and context-aware hints
- Eliminate duplication and improve maintainability
- Addresses Copilot PR review feedback on code duplication

All hint strings are now defined once and reused consistently.
2025-09-30 08:47:43 -05:00
George Peden
018ed43fac Add context-aware hints for remaining constraint tools
- Add context-aware hints for ConstrainPerpendicular
- Add context-aware hints for ConstrainTangent
- Add context-aware hints for ConstrainSymmetric
- All hints now remember user selections to provide appropriate guidance
- Covers all workflows mentioned in issue #22282 feedback
- Completes comprehensive coverage of missing constraint hints
2025-09-30 08:47:43 -05:00
George Peden
700afdb07f Add context-aware hints for ConstrainAngle tool
- Add special case for Sketcher_ConstrainAngle in getToolHints()
- Hints now remember what user has selected to provide appropriate guidance
- Step 0: 'pick edge or first point' (covers all workflows)
- Step 1: Context-aware based on first selection:
  - If point first: 'pick first edge' (point+edge+edge workflow)
  - If line first: 'pick second line or point' (line+line or edge+point+edge)
- Step 2: Context-aware based on selection history:
  - Point+edge+edge: 'pick second edge'
  - Edge+point+edge: 'pick second edge'
- Fixes part of issue #22282 - missing angle constraint hints
2025-09-30 08:47:43 -05:00
George Peden
27af7fda04 Add missing hints for ConstrainRadiam tool
- Add hints entry for Sketcher_ConstrainRadiam in hints array
- ConstrainRadiam now shows 'pick circle or arc' hint like other radius/diameter tools
- Fixes part of issue #22282 - missing radius constraint hints
2025-09-30 08:47:43 -05:00
PaddleStroke
03d01ebdca PartDesign: TaskExtrudeParameters : offset should not be visible for throughall 2025-09-30 10:19:26 +02:00
PaddleStroke
743bb98cde PartDesign: FeatureExtrude: Taper should not be read-only when throughall. 2025-09-30 10:17:36 +02:00
tetektoza
9f8d752cc0 Sketcher: Remove isSet checks that were replaced by hasFinishedEditing 2025-09-29 20:41:53 +02:00
PaddleStroke
fa15dc6791 Assembly: Fix errors on solve when limits 2025-09-29 12:46:19 -05:00
sliptonic
274153016f CAM: Fixes #11163
Changes default scale from 2.0 to 3.0  Adds a parameter. DefaultArrowScale
to control.
2025-09-29 11:37:06 -05:00
Chris Hennes
9cfe1efa37 Part: Fix 'Copy' item text 2025-09-29 18:17:12 +02:00
Ryan Kembrey
36ce0df98c TechDraw: Fix selections not clearing when subelements are also selected 2025-09-29 11:11:34 -05:00
tarman3
57e953462d CAM: LeadInOut - Fix ZeroDivisionError for LineZ 2025-09-29 19:09:15 +03:00
sliptonic
61d0262dab Merge pull request #24046 from Connor9220/FixCAMSanityReport
CAM: Fix CAM Sanity Report
2025-09-29 11:09:06 -05:00
Kacper Donat
646fb6dce8 Compiler warning cleanup (#22997)
* Part: Remove unused arguments from isLinearEdge

* Gui: For Qt 6.5 and later, use ParseOptions in xml

* Gui: Remove unused variable from fuzzyMatch()

* Sketcher: Remove unused parameter from *ReferenceSelection

* PD: Remove unused parameter from *ReferenceSelection

* Part: Rename layout to avoid conflict

* FEM: remove unused variable from handlePropertyChange

* CAM: Eliminate C++11 compiler warning by explicitly defaulting copy
2025-09-29 18:05:58 +02:00
sliptonic
bb4e22709e Merge pull request #24148 from Connor9220/ConvertTappingOpToExperimental
CAM: Convert tapping operation to experimental feature, Add tap pitch / spindle speed, Fix toolbit schema bugs, update legacy linuxcnc post
2025-09-29 11:03:13 -05:00
sliptonic
c2c9621e7c Merge pull request #24234 from Connor9220/FixTooLibrarySpindleDirection
CAM: Fix SpindleDirection and Material not updating from toolbit files; reduce log noise
2025-09-29 11:02:58 -05:00
Chris Hennes
f90ada9c4c Merge pull request #21713 from 3x380V/pd_fixes
PartDesign: Random fixes
2025-09-29 10:54:46 -05:00
Chris Hennes
5938479cf4 Assembly: Fix translatable strings (#24243)
* Assembly: Fix translatable strings

* [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-09-29 17:48:01 +02:00
Krzysztof
988083d3f7 FEM: Restore and harmonize FEM Task selection hints (#23678)
* FEM: Add hint about selectable geometry types in 'Geometry reference selector'

* FEM: Harmonize selection hint in FEM Task dialogs

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

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

FEM: Add translation support, correct selectable geometry

FEM: Harmonize selection hint in FEM Task dialogs

* [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-09-29 10:43:23 -05:00
Roy-043
2a805a76fb BIM: Arch_MergeWalls: issue message when walls are not the same
Fixes #21228.
2025-09-29 17:28:53 +02:00
Chris Hennes
a0c7c7dc38 Merge pull request #23230 from tetektoza/fix/22070_fix_deleting_compound_not_deleting_children
Core: Allow users deleting objects under group recursively
2025-09-29 10:14:11 -05:00
luzpaz
cfca7e3a72 FEM: fix source comment typos
Fix various source comment typos introduced recently.
2025-09-29 08:47:20 -05:00
PaddleStroke
593c119174 PartDesign: FeatureExtrude: single prism for modes that can 2025-09-29 13:24:55 +02:00
PaddleStroke
c683592fc5 PartDesign: FeatureExtrude: Make single prism if both modes are length and no taper 2025-09-29 09:33:53 +02:00
Kacper Donat
7b4066f397 Sketcher: Do not force visibility of planes on edit
This updates the logic that had special handling for planes for the
temporary visibility feature of sketcher which was mishandled after move
to core datums.
2025-09-28 18:59:37 -05:00
marioalexis
de4bf34093 Fem: Add tensor components to calculator variables 2025-09-28 18:55:48 -05:00
tetektoza
aadb436b0e Sketcher: Unset labels that are invalid only after user finished editing
As the title says, currently if user tries to type "0", nothing gets
typed because the OVP automatically invalidates the "0" as an invalid
value in most of the cases.

The solution to that is to only validate it if user has finished editing
OVP, not earlier when they are only typing.
2025-09-28 19:50:16 +02:00
marcuspollio
25434474a0 Draft: update Group icons (#23771)
* Draft: update Group icons

* Draft: update Group icons after feedback
2025-09-28 15:10:00 +02:00
Chris Hennes
43fd9e2b55 GUI: Fix some translatable text (#24289) 2025-09-28 10:47:16 +02:00
tetektoza
ec7bb3ddae Part: Allow deleting children recursively
Add feature to allow deletion of all children of compounds and booleans.
2025-09-27 19:10:42 -05:00
Kacper Donat
82dc9ae692 PartDesign: Fix crash on editing feature outside of body 2025-09-27 15:21:59 -05:00
Ladislav Michl
78349baec0 PartDesign: Microoptimize updateSpacings()
This also fixes "comparison of integer expressions of different
signedness: ‘int’ and ‘size_t’" warning.

Fixes: 5d2037c820 ("PartDesign: Transform rework")
2025-09-27 11:40:07 -05:00
Syres916
ac0a60f7a6 [Part] Fix Part Boolean operations Refine incorrectly set for new users (#24256)
* [Part] Fix Part Boolean operations Refine incorrectly set for new users

* [Part] update tests to specify Refine to be...

...false where necessary
2025-09-27 00:33:57 -05:00
wandererfan
17b4b4a24b [TD]fix uncommanded leader position change 2025-09-26 21:24:49 -05:00
Chris Hennes
3a91404f98 Merge pull request #21541 from furgo16/bim-refactor-arch-iter-2
BIM: Arch module refactor, Arch.makeWindow documentation and tests - iteration 2
2025-09-26 19:58:49 -05:00
Roy-043
b0cf38efb8 BIM: fix linked document of BIM_Library task panel (#24169)
* BIM: fix linked document of BIM_Library task panel

Fixes #22437.

The task panel of the BIM_Library command would be linked to the active document, which would to be the temporary Viewer document if that option was checked. Closing that document in the `Insert` function would therefore also close the task panel resulting in errors for following code.

Additionally:
The code to close the temporary Viewer document was moved to the `Reject` function. Otherwise that document would stay open if the task panel was closed without inserting.
2025-09-27 00:54:31 +00:00
marioalexis
1c1a989a63 PartDesign: Use AllowCompound user parameter along the workbench - fixes #23596 2025-09-26 19:50:21 -05:00
Kacper Donat
203b944f17 Gui: Render profile preview in proper coordinate space 2025-09-26 17:00:53 -05:00
wmayer
02e09e7586 PD: Restore GUI commands for PartDesign datum objects
With PR 19114 the commands to create PD datum objects are replaced with
the counterparts of Part. However, PD datum objects are much more powerful
than the Part datum objects.
(see e.g. https://forum.freecad.org/viewtopic.php?p=806960)

So, this change brings these commands back to the task panel.
2025-09-26 23:46:27 +02:00
wmayer
61e7517592 PD: Show commands in task panel when selecting (sub) shape binders
This fixes issue 19098
2025-09-26 23:46:27 +02:00
wmayer
244020c3b7 PD: Improve groove feature
The only difference between groove and revolution is that for the former
the revolved face is removed from the base shape instead of added.

Thus, the code of the Revolution and Groove classes should be almost
identical. This allows it in a further step to refactor the code and
make a common base class.

This fixes issue 18842.
2025-09-26 23:46:25 +02:00
wmayer
0421af3e1f PD: Improve revolution feature
* Allow a minimum angle of 0.0 as this is needed in 'Two Angles' mode
* Set the default value of Angle2 to 0.0
* Check for valid input in 'Angle' and 'Two Angles' mode
* Replace the confusing enum labels 'Dimension' and 'TwoDimensions'
2025-09-26 23:45:53 +02:00
wmayer
b3eb32258c PD: Remove unneeded class member 'isApplying' from 'TaskHoleParameters' 2025-09-26 23:45:23 +02:00
wmayer
f7e22f339c PD: Support of plane in linear pattern feature 2025-09-26 23:45:23 +02:00
wmayer
bea83ab5ec PD: Fix support of datum lines in draft 2025-09-26 23:45:23 +02:00
wmayer
33c9fa7f71 PD: SubtractivePipe Fails
Fixes issue 18003
2025-09-26 23:45:20 +02:00
wmayer
0f82956a9e PD: Positive offset on a binder shouldn't turn holes into squares
Fixes issue 18776
2025-09-26 23:44:28 +02:00
Frank David Martínez M
77b034dc82 Fix Refine in Cut Compound test 2025-09-26 16:12:56 -05:00
theo-vt
8ccd01033d Sketcher.Scale: Add case for distance of a single curve 2025-09-26 15:45:22 -05:00