Commit Graph

42520 Commits

Author SHA1 Message Date
tetektoza
fdf002df2d Core: Add guard in Tree to ensure we don't process items during deletion 2025-06-17 00:15:49 +02:00
tetektoza
5e91c90bdc Core: Fix crashes during item deletion in specific selection order
This patch fixes crashes that we've noticed during migration from Qt5 to
Qt6 in recent months.

If you select items in a tree in a specific direction or range (all, or
from bottom to top) and delete them, there is a high change user will
experience a crash in `testStatus` function. This problem arises because
we're getting into use-after-free situation.

Looking at the callstack there are a lot of calls to
`itemSelectionChanged` during deletion, which takes over item creation
after deletion in `TreeWidget::_slotDeleteObject`. This in turn causes
`DocumentObjectItem::testStatus` to be called prematurely when we have
dangling pointers in object map still. `itemSelectionChanged` signal is
being transmitted because the selection range is changing as we're
constantly deleting and readding certain items.

Previously there was `blockSelection` call during deletion, but it turns
out the signals can still be emitted even AFTER we delete the item. This
had to somehow change between Qt5 and Qt6. So, to be safe, move the
signal block for selection before the obj deletion loop to be sure we
won't retransmit this signal during an uncertain state.
2025-06-17 00:01:24 +02:00
tetektoza
a265fb8817 Sketcher: Remove redundant comment regarding old SoAnnotation node 2025-06-16 23:57:17 +02:00
tetektoza
02716069c2 Sketcher: Prioritize rendering geometry lines rendering over constraints
As the title says - since there is pending PR for better SoDatumLabel
constraints interactivity, this patch now prioritizes geometry lines
over constraints, so constraints will be rendered below lines.

This patch changes rendering order of constraint lines to be below
geometry lines, so now selection and rendering will be prioritized for
geometry lines instead of constraints.

This is done by changing depth buffer values and removal of SoAnnotation
node which was disabling depth buffer checks on constraints at all.
2025-06-16 23:56:47 +02:00
pre-commit-ci[bot]
da4d5c919f [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-06-16 18:27:13 +00:00
Stefan Tröger
fa9aba2749 FEM: Data extraction lint updates 2025-06-16 20:23:18 +02:00
Roy-043
fca41e4003 Rebase and minor adjustments 2025-06-16 18:25:59 +02:00
dependabot[bot]
60753068ec Bump step-security/harden-runner from 2.12.0 to 2.12.1
Bumps [step-security/harden-runner](https://github.com/step-security/harden-runner) from 2.12.0 to 2.12.1.
- [Release notes](https://github.com/step-security/harden-runner/releases)
- [Commits](0634a2670c...002fdce3c6)

---
updated-dependencies:
- dependency-name: step-security/harden-runner
  dependency-version: 2.12.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 11:18:56 -05:00
dependabot[bot]
6bb3469308 Bump github/codeql-action from 3.28.19 to 3.29.0
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.28.19 to 3.29.0.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](fca7ace96b...ce28f5bb42)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 3.29.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 11:18:46 -05:00
Benjamin Nauck
01d9e6efa3 Sketcher: Refactor GeoDef and ConstrDef structs
- Fix comment for mid-point
- Use in-class member initializers instead of constructor
- Remove redundant default constructor (got redundant after initializers)
- Made comments doxygen compatible
2025-06-16 11:18:25 -05:00
tetektoza
864ea5176b BIM: Fix Arch_SectionPlane having incorrect display style upon init
Regressed from previous behavior - there was Arch's refactor and the
base element that `SectionPlane` was inheriting from was
`App::FeaturePython`, not `Part::FeaturePython`. This changes a lot, since
`Part::FeaturePython` has predefined color (black in this case), which
later on - during property set of `SectionPlane` in properties caused
skipping of preferred setup of color.
2025-06-16 18:15:53 +02:00
Yorik van Havre
fe83909cf7 Merge pull request #21826 from 3x380V/fix_21812
Spreadsheet: Re-enable zooming and fix cursor change
2025-06-16 18:10:27 +02:00
Benjamin Nauck
6e3135c08d App: Trim “Gui::” and “NavigationStyle” more securely
By using regex we can remove prefix and suffix more securely as we can’t assume all navigation styles are formatted the same (mistakes can happen)
2025-06-16 11:07:40 -05:00
Chris Hennes
46888b83b2 Merge pull request #21921 from furgo16/add-prefcheckablegroupbox
Gui, Draft, BIM: Add PrefCheckableGroupBox, use it in IFC exporter preferences page
2025-06-16 11:06:30 -05:00
George Peden
94d39087d3 Sketcher: Add contextual input hints to edit tools (InputHints Phase 3) (#21806)
* Add input hints to fillet and chamfer tools

* Add hints to trimming tool

* Add hints to splitting tool

* Implement hints for extend tool

* Add hints to external geometry

* Add hints to Carbon Copy tool

* Hint updates to align with developer guidelines

* change "click to set" to "set" per PR comments

* Use enum (or declare one) to be type safe per PR comments

* For "trivial" one-step / one-state tools, refactor with direct hint return rather than using declarative / table pattern.

* Refactor hint tables initializers with C++20 features per PR feedback

- Use designated initializers (.state = , .hints = ) for clearer structure
- Add 'using enum Gui::InputHint::UserInput' to eliminate repetitive prefixes
- Applied to DrawSketchHandlerExtend and DrawSketchHandlerFillet

* Refactor Splitting tool hint implementation with direct return (trivial) pattern

* For fillet change "vertex" to "point" per PR feedback

* Change hint to "pick location on edge to split" per PR feedback
2025-06-16 11:05:13 -05:00
Max Wilfinger
ccf27775dc Gui: Center notification label and disable show report view by default (#21872)
* Gui: Center notification label and disable show report view by default

* Stylesheet: min-width: 0 for QStatusBar QPushButton
2025-06-16 11:03:58 -05:00
Furgo
1e29a3273f Import: DXF, handle non-standard 8859_1 encoding (#21905)
* Import: improve DXF importer exception handling

* Import: DXF, pinpoint erroneous header section when reading

* Import: tackle 8859_1 non-standard encoding name
2025-06-16 18:02:56 +02:00
Pieter Hijma
b19fc992fb Core: Add tests for undo/redo property rename 2025-06-16 17:58:33 +02:00
Pieter Hijma
2bf376cffb Core: Add undo/redo support to property renaming 2025-06-16 17:57:44 +02:00
Roy-043
e68a40cdb0 BIM: fix display of help menu items after reactivation
Fixes #21873.
2025-06-16 17:54:43 +02:00
Chris Hennes
2a48addd57 Merge pull request #21924 from hyarion/fix/lcs-crash
Gui: Fix crash when creating a LCS
2025-06-16 10:42:55 -05:00
Ryan Kembrey
52725ebeb7 TechDraw: Add spacing preview without OCCT calls 2025-06-16 10:41:21 -05:00
Samuel
034b8bf579 CAM: Show abbreviations next to properly labels in the toolbit editor (#21887) 2025-06-16 10:40:32 -05:00
Furgo
d166d2a5e8 3rdParty: avoid warnings from libE57Format (#21818)
* 3rdParty: avoid warnings from libE57Format

* Suppress all warnings from libE57Format

* Fix typo in original file
2025-06-16 10:39:12 -05:00
Furgo
b88cbac4f5 BIM: fix ArchPipe's view provider initialization 2025-06-16 17:37:28 +02:00
paddle
2161725848 Part: FaceMakerRing from RealThunder's branch.
Co-authored-by: Zheng Lei <realthunder.dev@gmail.com>
Co-authored-by: Pierre-Louis Boyer <pierrelouis.boyer@gmail.com>
2025-06-16 10:33:35 -05:00
Max Wilfinger
1421ff7094 Sketcher: ShowDimensionalName by default 2025-06-16 10:32:42 -05:00
wmayer
abe64f7576 Base: Use nested std::array for Matrix4D class 2025-06-16 10:05:43 +02:00
wmayer
74a22df884 Base: Simplify Base::Matrix4D
As discussed in https://forum.freecad.org/viewtopic.php?t=65959 reduce code duplications
2025-06-16 10:05:43 +02:00
wmayer
4634e62867 Base: Use i,j consistently for iterations Matrix4D
As discussed in https://forum.freecad.org/viewtopic.php?t=65959
use consistently i,j to iterate over rows and columns
2025-06-16 10:05:43 +02:00
wmayer
2f736ded84 Base: Do not use short int in Matrix4D
As discussed in https://forum.freecad.org/viewtopic.php?t=65959
replace short with int.
2025-06-16 10:05:43 +02:00
dependabot[bot]
65fd80754a Bump prefix-dev/setup-pixi from 0.8.8 to 0.8.10 (#21973)
* Bump prefix-dev/setup-pixi from 0.8.8 to 0.8.10

Bumps [prefix-dev/setup-pixi](https://github.com/prefix-dev/setup-pixi) from 0.8.8 to 0.8.10.
- [Release notes](https://github.com/prefix-dev/setup-pixi/releases)
- [Commits](19eac09b39...14c8aabd75)

---
updated-dependencies:
- dependency-name: prefix-dev/setup-pixi
  dependency-version: 0.8.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update pixi-version as well

Co-authored-by: Jackson Oursland <jacob.oursland@gmail.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
Co-authored-by: Jackson Oursland <jacob.oursland@gmail.com>
2025-06-15 17:07:18 -05:00
Stefan Tröger
7557d49697 FEM: Extraction code CodeQL updated and typo fix 2025-06-15 13:03:26 +02:00
Stefan Tröger
3e3e6a2c7b FEM: Include code quality improvements from review 2025-06-15 10:57:47 +02:00
Stefan Tröger
66f8674e63 FEM: Prevent invalid index for data extraction 2025-06-15 10:57:47 +02:00
Stefan Tröger
cb4ab225a6 FEM: Plot single frame index data as point 2025-06-15 10:57:47 +02:00
Stefan Tröger
f5533a5f53 FEM: Data extraction code version conflicts resolved: PySide, mpl, VTK 2025-06-15 10:57:47 +02:00
Stefan Tröger
ecf2dba626 FEM: Adopt data extraction code to ubuntu LTS 2025-06-15 10:57:47 +02:00
Stefan Tröger
997fa8a193 FEM: Remove VTK 9.4 only function
And make sure filters task dialogs can be used if something in python fails
2025-06-15 10:57:47 +02:00
Stefan Tröger
8786b072d9 FEM: Update data extraction dialog titles and spelling errors 2025-06-15 10:57:47 +02:00
Stefan Tröger
dcfc932711 FEM: Fix impact of stylesheet min button widht 2025-06-15 10:57:47 +02:00
Stefan Tröger
8dff03ff79 FEM: Ensure tests run without GUI with data extraction code 2025-06-15 10:57:47 +02:00
Stefan Tröger
fbf31f8657 FEM: Data extraction ui works better with stylesheets 2025-06-15 10:57:47 +02:00
Stefan Tröger
8cec9ad7f9 FEM: Adopt data extraction for VTK <9.3: different table filter
Additionally remove unneeded includes in c++ code remaining from earlier experiments
2025-06-15 10:57:47 +02:00
Stefan Tröger
d50a98b9cf FEM: Ensure post task dialogs work without VTK python build 2025-06-15 10:57:47 +02:00
Stefan Tröger
64d864c944 FEM: Add data extraction objects to FEM test suite 2025-06-15 10:57:47 +02:00
Stefan Tröger
6ba5c0d0a5 FEM: port DataAlongLine filter to use arc length.
This makes it easier for the new data extraction to also plot data over line length.
2025-06-15 10:57:47 +02:00
Stefan Tröger
89c71c511a FEM: Data extraction objects are FEM::FeaturePython
This allows them to be drag and droped in an analysis
2025-06-15 10:57:47 +02:00
Stefan Tröger
974f41fc96 FEM: Adopt post extraction code to updated main 2025-06-15 10:57:47 +02:00
Stefan Tröger
318d0645f0 FEM: Usability and UI improvements for data extraction
Update icons for post data extraction
Improve translatability of post data extraction
Fix post data extraction commit handling
2025-06-15 10:57:47 +02:00