Commit Graph

32561 Commits

Author SHA1 Message Date
Paul Lee
b10fa7fb34 [Arch] Fix makeStairs Move & Addition Behaviour Consistency
Consistent Addition

1. Additions are hidden by onChanged()
2. makeStairs() previously made 1st segment of a Complex Stairs went to Base and the rest segments went to Additions
3. For consistency in grouping and visibility, all segments in go to Additions with this commit

Consistent Move With Host

1. A Complex Stairs has multiple segment (in Additions) and railings (in RailingLeft/Right), they should move togther.
2. All segments and Railing set MoveWithHost to True upon creation, and thus move together, regardless system setting default with this commit

Other Associated Inconsistency

    Other visibility default behaviour as discussed in https://forum.freecad.org/viewtopic.php?p=844965#p844920 would be added in subsequent PR

Last associated PR/commits :
2025-09-15 15:19:49 +02:00
Ryan Kembrey
5642620281 TechDraw: Fix projection groups not recursively deleting 2025-09-15 09:36:42 +02:00
David Kaufman
2cb86f259e also add qt5 compatibility for checkbox state change signal 2025-09-14 14:59:21 -04:00
Ryan K
6bed5b4255 TechDraw: Add number decimals and reference dimension options to dimension task panel (#23501)
* TechDraw: Add num decimals option to task panel

* TechDraw: Add Reference option for dimensions

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

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

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

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

---------

Co-authored-by: Ryan Kembrey <ryan.kembrey@student.uts>
Co-authored-by: Kacper Donat <kadet1090@gmail.com>
2025-09-14 18:14:10 +02:00
Pascal de Bruijn
651c2d500c Materials: Add POM-(Homopolymer|Copolymer)-Generic followup (#23922)
* Materials: Add POM-(Homopolymer|Copolymer)-Generic

* Materials: Adjust CMakeLists for POM-(Homopolymer|Copolymer)-Generic

* Materials: fixups for POM-(Homopolymer|Copolymer)-Generic

* Materials: Fix POM-(Homopolymer|Copolymer)-Generic UUID
2025-09-14 09:17:50 -05:00
Pascal de Bruijn
d09b632cf5 Materials: Add PEEK-Generic (#23779) 2025-09-14 09:16:49 -05:00
Ryan Kembrey
34173f5d3a TechDraw: Fix selections not clearing 2025-09-14 09:15:49 -05:00
Roy-043
f7f3c18e52 Sketcher: QMessageBox titles to Title Case (#23925)
* Sketcher: QMessageBox titles to Title Case

* Sketcher: QMessageBox titles to Title Case

* Sketcher: QMessageBox titles to Title Case

* Update Command.cpp

* [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-14 11:59:20 +00:00
Roy-043
4dbdd1031d Sketcher change "don't attach" (#23924)
* Update Command.cpp

* Update Command.cpp
2025-09-14 11:31:11 +00:00
Roy-043
5b59d94d55 Sketcher: Update text in prefs (Title Case related) 2025-09-14 12:31:52 +02:00
Roy-043
57ee6870b4 Sketcher: QInputDialog titles to Title Case (#23920)
* Sketcher: QInputDialog titles to Title Case

* Remove 2nd trailing blank line
2025-09-14 10:21:33 +00:00
David Kaufman
9ce9c6b99a [CAM] replace python uses of QSignalBlocker 2025-09-13 22:13:55 -04:00
Matthias Deimbacher
c0c9212c97 CAM: fix library import in postprocessor 2025-09-13 21:33:31 +02:00
Pascal de Bruijn
2458f47550 Materials: Add POM-(Homopolymer|Copolymer)-Generic (#23820)
* Materials: Add POM-(Homopolymer|Copolymer)-Generic

* Materials: Adjust CMakeLists for POM-(Homopolymer|Copolymer)-Generic

* Materials: fixups for POM-(Homopolymer|Copolymer)-Generic
2025-09-13 14:27:47 -05:00
PaddleStroke
37b4560893 Sketcher: Coin resize when screen change. Fix #23267 (#23865)
* Sketcher: Coin resize when screen change. Fix #23267

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

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

* Update ViewProviderSketch.cpp

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-09-13 12:03:39 +02:00
PaddleStroke
37de4ce264 PartDesign: remove duplicate scale during sketch creation with attach task 2025-09-13 11:43:17 +02:00
Alihan Tadal
6bb3a39e39 CAM: Let old files adapt OffsetPattern property changes 2025-09-13 11:53:39 +03:00
Alihan Tadal
c9001c103c Merge branch 'main' into feature_23649_update_confusing_nomenclature_offset_pattern 2025-09-13 08:42:34 +03:00
Alihan Tadal
afff03c38b CAM: Improve confusing nomenclature: Offset Pattern (#23649) 2025-09-13 08:35:29 +03:00
Billy
60bcf64a01 CAM: Consistently rename "Tool" to "Toolbit" in UI and code
- Updated all user-facing strings from "Tool" to "Toolbit" for clarity and consistency.
- Changed combo box filtering logic to use index for "All Toolbit Types" (localization-safe).
- Improved visual distinction for "All Toolbits" in library editor (bold/italic).
- Reduced default SVG icon size in ShapeWidget for a more compact display.
- Updated window titles, labels, tooltips, and placeholder texts to use "Toolbit".
- Removed obsolete string comparisons in filtering logic.
- Change the Menu item from "Toolbit Library Editor" to "Toolbit Library Manager"
2025-09-12 18:04:57 -04:00
Pieter Hijma
f0a9b5ea01 Part: Add deprecation warning for import/export 2025-09-12 16:30:25 -05:00
PaddleStroke
061e185e7f Sketcher: Fix ctrl A (#23866) 2025-09-12 15:40:24 -05:00
sliptonic
4ae36283d0 Ensure Qt5 compatibility with enums
Correct LGPL headers

rework bullnose  Fixes #19050
2025-09-12 15:24:16 -04:00
George Peden
f2803283b8 Fix B-spline keyboard focus issue (#23859) (#23860)
* Fix B-spline keyboard focus issue (#23859)

- Restore keyboard focus after command restart in changeConstructionMethode()
- Fixes M key mode switching and R toggle periodic functionality
- Uses direct MDI view focus restoration instead of private ensureFocus() method

Fixes issue where keyboard shortcuts stop working after first mode switch.

* Address Copilot feedback: Add null check for activeDocument()

- Use ternary operator for cleaner null safety
- Prevents potential crash if activeDocument() returns null
- More idiomatic C++ code style

* Improve variable scope per @chennes feedback

- Use if-with-initialization to scope doc and mdi variables
- Variables now only exist where needed instead of leaking into function scope
- More idiomatic C++ code style
2025-09-12 18:26:39 +00:00
sliptonic
db5117e1ae Update src/Mod/CAM/Gui/Resources/panels/LibraryProperties.ui
Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>

Update src/Mod/CAM/Gui/Resources/panels/ToolBitLibraryEdit.ui

Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>

Update src/Mod/CAM/Gui/Resources/panels/ToolBitLibraryEdit.ui

Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>

Update src/Mod/CAM/Gui/Resources/panels/ToolBitLibraryEdit.ui

Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>

Update src/Mod/CAM/Gui/Resources/panels/ToolBitLibraryEdit.ui

Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>

Update src/Mod/CAM/Gui/Resources/panels/ToolBitLibraryEdit.ui

Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>

Update src/Mod/CAM/Gui/Resources/panels/ToolBitLibraryEdit.ui

Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>

Update src/Mod/CAM/Gui/Resources/panels/ToolBitLibraryEdit.ui

Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>

Update src/Mod/CAM/Gui/Resources/panels/ToolBitLibraryEdit.ui

Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>

Update src/Mod/CAM/Gui/Resources/panels/ToolBitLibraryEdit.ui

Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>
2025-09-12 14:19:30 -04:00
sliptonic
78bd46f815 fixes
fix duplicate toolbits
add tools to 'all tools'
context menus and deletion
/CamAssets/Tool/  directory structure
Assets and preferences
2025-09-12 14:19:30 -04:00
Billy
81faf7727c CAM: Remove hardcoded style for Tool Number, Fix TestPathToolBitSerializer
Fix issue with toolshapes
Renamed fillet to radius
Added Tool Type Filter to library
Fix units so that they honor user preference
Remove the QToolBox widget from the Shape Selector page and combine into a single page.
Fix issue with PropertyBag so that CustomPropertyGroups as a string is converted to enum and enums are handled correctly.
Update TestPathPropertyBag test for enum changes.
Update TestPathToolBitListWidget
Update TestPathToolLibrarySerializer to match new LinuxCNC output
Fix LinuxCNC export too handle ALL tool types, use user preferences for units, and include all lcnc fields
2025-09-12 14:18:33 -04:00
Matthias Danner
95840a79d3 Sketcher: Fix Select all with BSplines and clean up selection logic 2025-09-12 12:56:41 -05:00
PaddleStroke
ee44d265c8 Sketcher: Bspline tool: prevent double click failure (#23872)
* Sketcher: Bspline tool: prevent double click failure

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

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

* Update DrawSketchHandlerBSpline.h

* [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-12 16:51:31 +00:00
PaddleStroke
547c97fc79 Sketcher: Fix arc double click bug (#23873) 2025-09-12 11:20:43 -05:00
matthiasdanner
5d76be01e1 Sketcher: Fix Freeze in Offset with too large negative value (#23467)
* Sketcher: Fix Freeze in Offset with too large negative value

* Remove ErrorMessages when offsetting circles with too large negative value

* fix linting comment

* Add Error feedback

---------

Co-authored-by: Matthias Danner <28687794+matthiasdanner@users.noreply.github.com>
2025-09-12 10:52:33 -05:00
tarman3
34f4f16383 CAM: Clean DogboneDressup after PR#22250 (#23752) 2025-09-12 09:43:18 -05:00
tarman3
0336185ec1 CAM: Improve SelectLoop (#23275) 2025-09-12 09:42:20 -05:00
Connor9220
fff2e2daf9 CAM: Reorder the Clearance height and Safe Height spinners in task panel (#23727)
Co-authored-by: Billy <billy.huddleston@preparis.com>
2025-09-12 09:40:08 -05:00
matthiasdanner
34747719fb Sketcher: Fix use after free Bug when commiting value with enter in OVP (#23853)
* Sketcher: Fix use after free Bug when commiting value with enter

* Fix new use after free bug

---------

Co-authored-by: Matthias Danner <28687794+matthiasdanner@users.noreply.github.com>
2025-09-12 09:18:09 -05:00
Markus Reitböck
952bff5b63 Mesh: give evaluation panel a title (#23423)
* Mesh: give evaluation panel a title

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

* Mesh: Evaluation panel - move refresh button beside selection box

as per request in pull request #23423

* Mesh: replace ampersand with 'and' in Evaluate and Repair dialog
2025-09-11 22:41:38 -05:00
Chris Hennes
112e22b639 Merge pull request #23837 from longrackslabs/feature/sketcher-keyboard-shortcuts-hints-23815
Feature/sketcher keyboard shortcuts hints 23815
2025-09-11 22:37:55 -05:00
Markus Reitböck
749ac36615 do not use precompiled header for setting global compiler definitions and to disable compiler warnings
only 4 of these warnings are still relevant, CMake shall be used to disable them

Compiler definitions:

  NOMINMAX:
    * is already globally defined in SetGlobalCompilerAndLinkerSettings.cmake

  WIN32_LEAN_AND_MEAN:
    * use CMake target_compile_options on relevant targets

Warnings that still occur:

  C4251, C4273, C4275: all related to dllimport / export
    * use CMake target_compile_options on relevant targets

  C4661: no suitable definition provied for explicit template instantiation request
    * triggered in Mesh because of Vector3D in Base - not all functions are defined in header
    * use CMake target_compile_options on relevant targets

Warnings that are Currently not triggered (fix code if they appear again):

  C4005: macro redefinition

  C4244: argument conversion, possible loss of data

  C4267: conversion from size_t to type, possible loss of data

  C4305: truncation from type1 to type2
    * only occurrence disabled in Reader.cpp

  C4522: multiple assignment operator specified

  C5208: unnamed class in typedef name

Obsolete Compiler warnings:

  C4181: not mentioned in Microsoft docs anymore

  C4290: C++ exception specification ignored except to indicate a function is not __declspec(nothrow)
    * throw(optional_type_list)  deprecated in C++17

  C4482: nonstandard extension used: enum 'enumeration' used in qualified name
    * not generated for compilers that support C++11

  C4503: 'identifier': decorated name length exceeded, name was truncated
    * obsolete since Visual Studio 2017

  C4786: not mentioned in Microsoft docs anymore
2025-09-11 20:21:04 -05:00
sliptonic
10d1031e9b Make default postprocessor empty string. (#23706)
* Make default postprocessor empty string.

Default post when creating a job is now not set.  This will cause the user to be prompted for a post instead
This PR also cleans up some unit tests to avoid loading from disk

* [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-11 16:07:38 -05:00
captain0xff
603e0bc6e5 Gui: update gizmo state based on new property 2025-09-11 22:54:47 +02:00
Ryan K
f7a85081e8 TechDraw: Fix tree view selection not showing on page (#23593) 2025-09-11 12:35:19 -05:00
Ryan Kembrey
caa009036a TechDraw: Fix selection regressions 2025-09-11 12:34:37 -05:00
Roy-043
1bbc1c805d Spreadsheet: fix Split Cell name in context menu 2025-09-11 12:32:23 -05:00
Samuel Abels
2168e3cd99 CAM: Add AssetManager.copy() and .deepcopy()
CAM: Add copy/paste support for the ToolBitBrowser

CAM: Move library dropdown and sort order combo to dedicated row to give them more space

CAM: Fix: PathAssetManagerTest failed

CAM: Add YamlSerializer

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

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

CAM: Fix CodeQL complaints

CAM: add LibraryProperties dialog

CAM: Replace the LibraryEditor

CAM: allow for editing tool number in the tool editor dialog

CAM: Remember last selected library and sort order in preferences

CAM: support natural sort order in tool and library lists

CAM: Fix CodeQL complaints

CAM: Fix: not all attributes included in YAML serialization

CAM: Fix: UTF8 chars not included in LinuxCNC export

Fix: tool library not displayed when loading it for the first time

CAM: Fix: custom shape class not found

CAM: Check dependencies on import for friendlier error messages

CAM: Open file dialogs in home by default

CAM: Show "All Tools" entry in library list in the library editor

CAM: fix: error on sorting tools with no tool number

CAM: Fix: traceback if library contained tool number as string

CAM: Fix: Linter errors in manager.py

CAM: Fix: separator between library and tool buttons

CAM: Add drag & drop support to the library editor

CAM: Fix numerous linter errors on the AssetManager

CAM: Show current library in library editor window title

CAM: Add dedicated icons for library add + remove

CAM: Support F2 key in library editor

CAM: library editor handles delete key when library list is in focus; focus search field by default

CAM: fix: tool list in dock initially not loading

CAM: Fix: library editor did not open from "all tools" list

CAM: Increase precision of parameters in tool summary to 3 digits

fix TestToolBitListWidget
2025-09-11 10:45:41 -05:00
marioalexis
a4ca9a0526 Fem: Fix regression in netgentools 2025-09-11 10:21:08 -05:00
PaddleStroke
d5929bcdbf PartDesign: NewSketch: fix crash when no body 2025-09-11 16:23:48 +02:00
Roy-043
a4b659fcbf Spreadsheet: message box titles to Title Case (#23842) 2025-09-11 14:45:37 +02:00
George Peden
ed444318e4 Fix inconsistent keyboard shortcut hints in Rectangle tool
- Add missing U (rounded corners) and J (frame) hints to ThreePoints method
- Add missing U (rounded corners) and J (frame) hints to CenterAnd3Points method
- Now all four construction methods show consistent keyboard shortcut hints
- Addresses Copilot feedback on PR
2025-09-10 20:40:18 -10:00
George Peden
343bd6c77c Add keyboard shortcuts to fillet/chamfer hints
- M key for switching between Fillet and Chamfer modes
- U key for toggling preserve corner option
- Hints are shown in all states (SeekFirst, SeekSecond, End)
- Addresses issue #23815 for missing keyboard shortcuts in hints
2025-09-10 19:59:49 -10:00
George Peden
80290baaf6 Add mode-aware keyboard shortcuts to B-spline hints
- Control Points mode: U/J for degree control (+ degree, - degree)
- Knots mode: R for periodic toggle
- Hints are now context-aware based on construction method
- Addresses issue #23815 for missing keyboard shortcuts in hints
2025-09-10 19:34:53 -10:00