Commit Graph

40244 Commits

Author SHA1 Message Date
Benjamin Bræstrup Sayoc
d3c13c3d47 TechDraw: Set symbol dir
Fixes #19496
2025-02-14 10:27:53 -06:00
Chris Hennes
5cf6a597f0 Merge pull request #19549 from tritao/xml-bindings-cleanup-app
App: Clean up XML bindings.
2025-02-14 10:26:48 -06:00
paul
5582cc87d4 [ArchSketchObject / Window] Links of Window to support Individual Hosts (#19378)
* [ArchSketchObject / Window]  Links of Window to support Individual Hosts

Currently, Links of Window's Hosts property (and in generall all properties other than e.g. Placement) is shared with its Linked Window object, i.e. all Windows Links instances can only has a common Host(s) which is not flexible for the purpose of Links.

AND, at the same time, Links in linked document suffer from the 'scope' of the original Linked Window, which is in the external Document.

This commit adds feature to support:
  1/ each Links instance of Windows has their own individual setting of Hosts, and
  2/ it see the 'scope' of the Links in its document (rather than the Linked Window in the external document)

FreeCAD Forum:
- https://forum.freecad.org/viewtopic.php?p=808569#p808569

FreeCAD GitHub:
- https://github.com/FreeCAD/FreeCAD/issues/19361

* [ArchSketchObject]  Fix indentation
2025-02-14 13:46:44 +01:00
Furgo
f81c15ee4e BIM: fix ability to cancel file dialog on BIM_TDPage command (#19518)
* BIM: use tuple return value from QFileDialog.getOpenFileName

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

* BIM: remove filename assignment from tuple
2025-02-13 17:45:27 +01:00
Roy-043
245a2fada7 Draft: task_scale.py fix circular imports (#19574)
See:
https://forum.freecad.org/viewtopic.php?t=94748
2025-02-13 16:02:24 +01:00
Roy-043
01409c1407 Draft: gui_utils.py fix error in select function (#19539)
* Draft: gui_utils.py fix error in select function

PR #18795 changed the select function to also handle tuples. This PR adds a check to ensure the referenced objects in the tuple still exist before calling `Gui.Selection.addSelection()`.
2025-02-13 16:00:30 +01:00
Chris Hennes
443d91606d TD: Add missing #include "PreCompiled.h" (#19547)
* TD: Add missing #include "PreCompiled.h"

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

Co-authored-by: Benjamin Nauck <benjamin@nauck.se>

* TD: Add guards around QMessageBox include

---------

Co-authored-by: WandererFan <WandererFan@gmail.com>
Co-authored-by: Benjamin Nauck <benjamin@nauck.se>
2025-02-12 21:28:34 -06:00
Syres916
96b3f830d4 [BIM] fix name 'self' is not defined error 2025-02-12 14:23:31 +01:00
Syres916
087928d1de [BIM] Fix translate error 2025-02-12 14:23:31 +01:00
Chris Hennes
9418e0719e Merge pull request #19548 from oursland/update-ci-ubuntu
CI: Update Ubuntu 20.04 to Ubuntu 22.04
2025-02-11 22:03:31 -06:00
tritao
e4a2c71eff App: Add more concrete types to Metadata API bindings. 2025-02-12 01:54:56 +00:00
tritao
0252039020 App: Clean up XML bindings. 2025-02-12 01:54:27 +00:00
Jacob Oursland
322e9e8f39 CI: Update Ubuntu 20.04 to Ubuntu 22.04. 2025-02-11 16:45:51 -08:00
Jacob Oursland
818faebe4e CI: Rename Ubuntu 20.04 to just Ubuntu. 2025-02-11 16:45:51 -08:00
jffmichi
1a1aea735a PartDesign: fix crash when opening a file with a metric hole 2025-02-11 17:35:35 -06:00
Chris Hennes
1d6e2b8675 Merge pull request #19167 from alfrix/hole_new_taskpanel
feat(PD): hole taskpanel: new image based cut panel
2025-02-11 17:22:16 -06:00
Syres916
99eed953c3 [Gui] fix the FPS text visibilty issues raised in #19371 (#19385)
* [Gui] fix the FPS text visibilty issues
* [Gui] code efficiency based on suggestions
* [Gui] update color parameter
* [Gui] Fix Lint feedback
* [Gui] check if string is empty
2025-02-11 13:16:29 -06:00
GS-GOAT
afe122738f Measurement: save 'Show Delta' state between commands #19204 (#19430)
* Measurement: save 'Show Delta' state between commands #19204

When users set Show Delta option to off in the Measure tool, the setting
was not being preserved when the tool was invoked again. This was due to    
using an uninitialized value as the default when loading the preference.  

Changes staged in: FreeCAD\src\Mod\Measure\Gui\TaskMeasure.cpp 

Fixed by:
- Using explicit 'true' as default value when loading Show Delta
preference 
- Maintains existing save functionality
- Ensures consistent behavior on first use
Fixes #19204

* Changed few things to ensure the delta state is saved #19204

added changes:-
1. settings.endGroup()
When we call beginGroup(), it creates a prefix for all subsequent settings operations, All settings will be stored under the "TaskMeasure" group.
endGroup() is needed to close this grouping scope
Without it, subsequent settings operations would still use the "TaskMeasure" prefix

2. settings.sync()
By default, QSettings caches changes in memory and writes them to disk later
sync() makes an immediate write to the settings file
This ensures the setting is saved right away rather than waiting for Qt to decide when to save.
Makes the setting change immediately available for future commands.

-Fixes Measurement: save 'Show Delta' state between commands #19204

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

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

* Added proposed changes to autoSaveChanged() and newMeasurementBehaviourChanged() functions #19204 #19430

Added settings.endGroup() to the following functions:-
1.autoSaveChanged()
2.newMeasurementBehaviourChanged() 
Each beginGroup() should be followed by endGroup().

No need for explicitily calling sync() as it is called automatically from QSettings's destructor and by the event loop at regular intervals.(Refer documentation for more info)

-Fixes Measurement: save 'Show Delta' state between commands #19204 #19430

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-02-11 13:10:53 -06:00
Alfredo Monclus
8e676641b0 PD(hole taskpanel): apply review suggestions
* refactor: change to ternary op
* refactor: apply recommendations to widgets
* refactor: use QSignalBlocker
* refactor: address some compiler complaints
* refactor: add namespace Gui to new widgets
2025-02-11 12:23:13 -06:00
ᴩʜᴏɴᴇᴅʀᴏɪᴅ
cbcc6d983d Base: [ Doxygen ] Improved parameter attribute methods (#19491) 2025-02-11 11:44:52 -06:00
Alfredo Monclus
9e53b103a8 PD(hole taskpanel): Add custom widget for font-scaled SVGs
* feat: add custom widget for font scaled svgs
* refactor(PD): hole taskpanel svg tweaks
* fix(PD): build link on windows
2025-02-11 11:31:38 -06:00
Alfredo Monclus
4df61e993c PD(hole taskpanel): Include depth on diagram
feat(PD): hole diagram add include depth
refactor(PD): hole taskpanel: images add background
2025-02-11 11:31:38 -06:00
Alfredo Monclus
c7e764193c PD(hole taskpanel): Add image-based hole cut panel
* feat(PD): hole taskpanel: new image based cut panel
* fix(PD): hole taskpanel fix dynamic cut types
* refactor(PD): hole taskpanel: renames and vlayouts to keep labels closer
* fix(PD): hole diagram tweaks
2025-02-11 11:31:17 -06:00
Ian Hunter
95d9e4483e Fix bug preventing filtering named constraints (#19339)
* Fix bug preventing filtering named constraints

There was a bug (see issue #11843) that displayed a filter for Named
constraints in the Sketcher Workbench whose toggling did not affect the
UI in any way. This enables this feature by checking if a given
constraint has a custom name or not and then appropriately toggling its
visibility.

* Use `std::string::empty()` per reviewer suggestion

Co-authored-by: Benjamin Nauck <benjamin@nauck.se>

---------

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
Co-authored-by: Benjamin Nauck <benjamin@nauck.se>
2025-02-11 11:03:04 -06:00
Chris Hennes
9a555d0adf Core: Update copyright date range to include 2025 (#19520)
* Main: Update copyright date range to include 2025
* GUI: Update copyright date range to include 2025
2025-02-11 10:59:12 -06:00
Chris Hennes
a3004c2c0a Merge pull request #19142 from hyarion/refactor/add-template-addobject
Add new addObject<T>() function
2025-02-11 09:42:47 -06:00
Karliss
ea0105e966 Workaround for transparency problems on wayland.
Reset alpha channel value to 1 at the end of 3d  rendering. The way Qt handles OpenGL widgets with transparent pixels in their final output is inconsistent.
2025-02-11 07:59:28 -06:00
Chris Hennes
201015fd70 Merge pull request #19502 from benj5378/QStringLiteral
Use QStringLiteral
2025-02-11 07:34:12 -06:00
Benjamin Bræstrup Sayoc
02c300669f [TechDraw] Add ability to align points by rotating view
Fixes #7061
2025-02-10 19:31:39 -05:00
Chris Hennes
6ea90ba9af Merge pull request #18594 from Flast/performance/base/find_element
Base: Improved FindElement performance by reducing call of transcode
2025-02-10 14:33:49 -06:00
Benjamin Nauck
4b63d65ffa PD: Light refactoring of TaskFeaturePick::makeCopy 2025-02-10 18:35:38 +01:00
Benjamin Nauck
2107e60304 Mod: Use new GroupExtension::addObject<T>(...) 2025-02-10 18:35:38 +01:00
Benjamin Nauck
b99c1eae70 App: Add GroupExtension::addObject<T>(...) 2025-02-10 18:35:38 +01:00
Benjamin Nauck
edb4817872 Mod: Use new addObject<T>(...) that requires additional changes 2025-02-10 18:35:38 +01:00
Benjamin Nauck
265b58c034 Mod: Use new addObject<T>(...) using regex 2025-02-10 18:35:38 +01:00
Benjamin Bræstrup Sayoc
2eeb08ccb5 App: Use QStringLiteral 2025-02-10 18:34:58 +01:00
Benjamin Bræstrup Sayoc
8b57e25cb8 Test: Use QStringLiteral 2025-02-10 18:34:57 +01:00
Benjamin Bræstrup Sayoc
8d2d0a47f4 Gui: Use QStringLiteral 2025-02-10 18:34:57 +01:00
Benjamin Bræstrup Sayoc
24ac19e261 Test: Use QStringLiteral 2025-02-10 18:34:57 +01:00
Benjamin Bræstrup Sayoc
e09698ee47 Surface: Use QStringLiteral 2025-02-10 18:34:57 +01:00
Benjamin Bræstrup Sayoc
017156ce44 Robot: Use QStringLiteral 2025-02-10 18:34:57 +01:00
Benjamin Bræstrup Sayoc
099c9b3404 ReverseEngineering: Use QStringLiteral 2025-02-10 18:34:57 +01:00
Benjamin Bræstrup Sayoc
500a52e7b8 Sandbox: Use QStringLiteral 2025-02-10 18:34:57 +01:00
Benjamin Bræstrup Sayoc
0b844f8137 Points: Use QStringLiteral 2025-02-10 18:34:57 +01:00
Benjamin Bræstrup Sayoc
240912e470 Spreadsheet: Use QStringLiteral 2025-02-10 18:34:57 +01:00
Benjamin Bræstrup Sayoc
e2f018ceeb PartDesign: Use QStringLiteral 2025-02-10 18:34:57 +01:00
Benjamin Nauck
6d28a19a3e App: Add Document::addObject<T>(...) to simplify code 2025-02-10 18:33:00 +01:00
Benjamin Nauck
a3703098f8 Base: Minor code cleanup in Type 2025-02-10 18:33:00 +01:00
Benjamin Nauck
ffe33a2c61 App: Add compile time checks for type system class name
Ensures:
* _class_ is based on BaseClass
* _class_ parameter includes a namespace

And when _class_ is a document object
* namespace is not global namespace
* namespace name is in path after /src/ or /src/Mod/

The document object requirements are needed to auto import modules when using addObject
2025-02-10 18:33:00 +01:00
Benjamin Nauck
f1ab1ee0ad Mod: Fix mistakes in type system class names 2025-02-10 18:33:00 +01:00