Commit Graph

40640 Commits

Author SHA1 Message Date
Kacper Donat
5f2f22f588 Gui: Move style parameters to yaml files 2025-08-27 17:59:10 +02:00
MisterMakerNL
6d81d0556a Gui: Various fixes to official themes
Updated PropertyEditor QLabel and QPushButton styles for better visual consistency
and usability, including specific pushbutton styling for the Placement tool. Adjusted
QCheckBox disabled indicator styles to use consistent border and background colors,
and fixed background color for checked and indeterminate disabled states.

Gave inactive and active tab their own token. Fixed missing hover for
scrollbar.

Changed the value of EditedEdgeColor in the FreeCAD Light preference
pack Due to contrast issues with default shape color.

Refreshed Theme_thumbnail_dark.png and Theme_thumbnail_light.png images.
Updated Thumbnails_themes.svg with new Inkscape version metadata, export
paths, and visual adjustments, including color and layout changes to
theme preview rectangles.

Refreshed Theme_thumbnail_dark.png and Theme_thumbnail_light.png images.
Updated Thumbnails_themes.svg with new export filenames, DPI settings,
and adjusted some SVG properties for improved export consistency.

Changed the TextDisabledColor to fix issue with lighten full black.

Adjusted the QComboBox padding-right from 2px to 18px in FreeCAD.qss to
provide space for the check-mark indicating the active item.

Changed the 'HighlightColor' value in the FreeCAD Light preference pack
configuration to dark green to solve contrast issues.

Introduces InActiveTabBackgroundColor and ActiveTabBackgroundColor to
both FreeCAD Dark and FreeCAD Light preference packs for improved tab
appearance customization.
2025-08-27 17:58:57 +02:00
Chris Hennes
5fe310a3c2 Merge pull request #23140 from kadet1090/yaml-source-style-parameters
Gui: Add YamlParameterSource for StyleParameters
2025-08-27 10:34:17 -05:00
Kacper Donat
1237ba7852 Merge pull request #22944 from pieterhijma/expr-dialog-varset
Gui: Improve Expression dialog for VarSets
2025-08-27 16:14:25 +02:00
Kacper Donat
5719bb8bf8 Merge pull request #22389 from PaddleStroke/pd_transform
PartDesign: Transform tools
2025-08-27 15:22:26 +02:00
Pieter Hijma
c97305a9fc Gui: Add more translations to expr dialog
This adds translations to the feedback on the expression, for example if
there is a unit mismatch.
2025-08-27 14:59:28 +02:00
Pieter Hijma
118cad87de Gui: Make expr dialog input validation themeable 2025-08-27 14:58:44 +02:00
marioalexis
b2ad8d79de Fem: Acquire the GIL before running Python code 2025-08-27 14:58:06 +02:00
wwmayer
df4486733e Fem: Fix crash when writing mesh to z88 file
For the z88 export the FemMesh must be passed to its Python wrapper which will increase the counter upon construction and decrease it upon destruction. If the counter becomes 0 the FemMesh will be destroyed too which causes a crash.

To fix the crash the counter must be increased and safely decreased after the lifetime of the Python wrapper.

This fixes https://github.com/FreeCAD/FreeCAD/issues/23380
2025-08-27 14:57:50 +02:00
Paul Lee
43eafe9dc2 [ArchStructure] Fix Regression : FaceMaker
Fix #22822

See discussion and example model file in github :-
https://github.com/FreeCAD/FreeCAD/issues/22822
2025-08-27 12:30:32 +02:00
FEA-eng
513208f328 PartDesign: Update missed error message about multiple solids (#23392)
* PartDesign: Update FeatureLoft.cpp

* PartDesign: Update FeatureExtrude.cpp

* PartDesign: Update FeaturePipe.cpp

* PartDesign: Remove empty lines added by GitHub editor

* PartDesign: Remove empty lines added by GitHub editor
2025-08-27 09:37:53 +00:00
Pieter Hijma
458ae85be1 Assembly: Update Ondsel Solver to the latest 2025-08-27 11:37:30 +02:00
Pieter Hijma
6674a7084b Gui: Add translations expression dialog VarSets 2025-08-27 09:52:50 +02:00
Pieter Hijma
c0cb0b757e Gui: Process minor review comments
Co-authored-by: Kacper Donat <kadet1090@gmail.com>
2025-08-27 09:52:50 +02:00
Pieter Hijma
7eec8b5416 Gui: Process comments DWG expression dialog
This commit gives an error box on invalid input for the VarSet inputs.
2025-08-27 09:52:50 +02:00
Pieter Hijma
3f6b0f5b85 Gui: Process comments DWG expression dialog
This commit ensures that the buttons stay at the end of the dialog.
2025-08-27 09:52:50 +02:00
Pieter Hijma
15bbf97b63 Gui: Process review comments expr dialog
Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>
2025-08-27 09:52:50 +02:00
Pieter Hijma
2070b1c1c6 Gui: Improve presenting VarSets in expr dialog 2025-08-27 09:52:50 +02:00
Pieter Hijma
a99d903727 Gui: Stop remember state expression dialog
Before this commit, the expression dialog remembered the state of
whether the varset information should be shown.  This is removed
according to #17075.
2025-08-27 09:52:50 +02:00
Pieter Hijma
acea58f85f Gui: Improve layout expression dialog for varsets
According to #17075
2025-08-27 09:52:50 +02:00
Chris Hennes
146c84cf1e Merge pull request #23374 from wwmayer/issue_23353
Exporting mesh to Z88 format no longer breaks all export and configs
2025-08-26 23:20:25 -05:00
wwmayer
e055ce777d Fem: Fix file suffixes
*i1.txt or *o2.txt are not valid suffixes for a file dialog. In the past (until 2018) the suffixes were set to *.txt but this has been changed with 65b1484b7.

To avoid creating invalid filenames the original suffixes are restored.
2025-08-26 22:22:56 -05:00
corpix
3814bf1083 CAM: QTableView height too small in tasks panel #22957 (#23067) 2025-08-26 15:37:46 -05:00
Adrian Insaurralde Avalos
f922d282db Fix autouic warnings about duplicate names in ui files 2025-08-26 11:00:30 +02:00
wwmayer
2de6bb5301 Gui: Fix crash in FileDialog::getSaveFileName 2025-08-26 09:35:01 +02:00
paddle
0ddb804ab1 PartDesign: Patterns: Tooltips. 2025-08-26 09:13:17 +02:00
PaddleStroke
c1ccf75918 PartDesign: Transform rework 2025-08-26 08:46:51 +02:00
Benjamin Nauck
1b49998f6f Merge pull request #23291 from 3x380V/measurement
Measure: Useability improvements
2025-08-26 06:51:50 +02:00
drwho495
3ee1e3335f Toponaming: Remove updateElementReferences call in PropertyLinkSub (#23263)
* remove updateElementReferences call in PropertyLinkSub

* Retrigger checks

* update element refs after the document has restored
2025-08-25 21:39:40 -05:00
PaddleStroke
f7f9692c57 Sketcher: Circle DSH: move diameter constraint. Fix #22267 (#22862)
* Sketcher: Circle DSH: move diameter constraint. Fix #22267

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

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

* Improve. To squash

* [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-25 21:37:37 -05:00
Roy-043
7d5f5e13a3 MeshPart: "Trim by plane" -> "Trim With Plane" (#23361)
* MeshPart: "Trim by plane" -> "Trim With Plane"

* [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-25 22:39:25 +00:00
PaddleStroke
465f6cb52c Assembly: Screw Joint, fix distance name to Thread Pitch 2025-08-25 16:44:04 -05:00
Frank David Martínez M
0f2ea5588c [Core] Fix #15558: Direct expression in ternary operator (#22938)
* [Core] Fix #15558: Direct expression in ternary operator

* [Core] Added tests for Non-Numeric conditions in ternary op.

* [Core] prevent relational operator chains at grammar level.

* [Core] Rewrite expressions grammar as a layered grammar.

* [Core] Revert to left associative relops (like C/C++) plus tests.
2025-08-25 21:52:42 +02:00
paddle
0805164677 Update ondsel solver 2025-08-25 13:08:30 -05:00
Roy-043
457c57f9ad Draft: Implement hints for creation tools (#23244)
* Draft: Implement hints for creation tools

Fixes: #22886
Related: #22298

This PR implements hints for the tools in the Draft Creation toolbar.

* Fix confusing indentation

* Fix typo in comment
2025-08-25 19:42:59 +02:00
PaddleStroke
679a072a4a PartDesign: Extrude 2 sides (#21794)
* PartDesign: extrude 2 sides

* Part: OpCodes XOR

* PartDesign: Remove deprecated generatePrism functions

* PartDesign: Extrude : Update Sides combobox strings

* Change "Sides" to "Mode"

* Use OpCodes::Extrude instead of Prism.
2025-08-25 17:17:23 +00:00
Chris Hennes
e53f48d1fc Material: Add missing include for PCH 2025-08-25 18:50:27 +02:00
paddle
96361625e7 PartDesign: Remove message taskbox and use regular warnings instead. 2025-08-25 18:39:08 +02:00
paddle
274ae4ba2b PartDesign: Remove unnecessary warning. 2025-08-25 18:39:06 +02:00
paddle
a875eb4081 PartDesign: Rename Transformed::Mode enum 2025-08-25 18:38:34 +02:00
paddle
b8a6926930 Part: Add PatternParametersWidget 2025-08-25 18:38:34 +02:00
paddle
66e186f396 Gui: Move ComboLink from PartDesign to Gui. 2025-08-25 18:38:34 +02:00
paddle
1eb05317ee PartDesign: add linear pattern spacing and extent icons. 2025-08-25 18:38:34 +02:00
Roy-043
ec2ae4b205 Draft: fix 2 issues with Draft_SelectPlane 2025-08-25 18:24:01 +02:00
wmayer
2a12b9eeb7 Mesh: In ReaderOBJ replace std::atoi with std::stoi 2025-08-25 18:13:59 +02:00
wmayer
9c63b7032b Mesh: Improve OBJ mesh import
This change allows it to load OBJ files created by Blender.

Fixes https://github.com/FreeCAD/FreeCAD/issues/19456
2025-08-25 18:13:59 +02:00
Roy-043
8f50d063dd Draft: Support relative paths for hatch patterns 2025-08-25 18:12:20 +02:00
tetektoza
fb2307362d Sketcher: Set total angle to make evaluation choose it when typing in OVP (#23193)
* Sketcher: Set total angle to make evaluation choose it when typing in OVP

When typing an angle value (e.g., "315 deg") in the sketcher rotate tool,
the result differed from manually moving the mouse to achieve the same rotation.
The angle would "flip" to equivalent but opposite directions (315 deg became -45 deg)
due to smart angle selection logic choosing the "closer" alternative.

The parameter enforcement system (`doEnforceControlParameters`) calculated cursor
positions for keyboard input but never directly set the `totalAngle` value.
The mouse logic's smart angle selection algorithm then calculated totalAngle
independently, potentially choosing equivalent but opposite angle directions
(e.g., -45 deg instead of +315 deg) based on proximity to the previous angle value.

Solution is to basically predefine `totalAngle` if user has typed it so
this "smart logic" will always choose the `totalAngle` that user typed.

* Sketcher: Set total angle for arc tool

* Sketcher: Set total angle for Arc Slot tool
2025-08-25 11:10:17 -05:00
Roy-043
ac02b86521 Bim: Fix direction of panel waves (#23271)
* Update ArchPanel.py

* Update ArchPanel.py
2025-08-25 18:09:31 +02:00
MisterMakerNL
237d421417 Replace preference page icons
replaced icon so look more like the actual wb icons
2025-08-25 11:08:19 -05:00