Commit Graph

40170 Commits

Author SHA1 Message Date
PaddleStroke
facfbeb47e Assembly: Fix crash 20614 (#22538) 2025-07-18 09:53:35 -05:00
Mos
c2832547f8 remove unnecessary std::numbers::pi;
using std::numbers::pi is not necessary.   fix compile warning

removed commented code
2025-07-18 09:48:22 -05:00
Florian Foinant-Willig
c968effe26 Sketcher: manage legacy negative circle-line distance (#22203)
* manage legacy negative circle-line distance

* Add test for legacy negative circle-line distance
2025-07-17 23:00:38 -05:00
Kacper Donat
46d1345ca2 Attacher: Orient normals correctly for Midpoint
Co-authored-by: Max Wilfinger <max@wilfinger.de>
2025-07-18 01:12:22 +02:00
sliptonic
3f6a3f10ff Merge pull request #22374 from z0r0/CAM-Inspect-Fix
CAM: Fixing Length Check in CommandPathInspect class
2025-07-17 13:40:08 -05:00
Tayler Miller
8acbb224fc Assembly: Fixes bug for origins in Sub-AssemblyLink (#22415) 2025-07-17 08:03:28 -05:00
matthiasdanner
9cd3b31067 Sketcher: Fix Constraint Filter Handling (#22072)
* Fix SpecialFilter Handling for selected and associated constraints
Fix show constraints in 3d view if no constraints in list and filter to only show selected is disabled

---------

Co-authored-by: Matthias Danner <28687794+matthiasdanner@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2025-07-17 07:51:44 +00:00
PaddleStroke
39266e496f Sketcher: Fix #13927 (#22427) 2025-07-16 21:55:52 -05:00
Bas Ruigrok
6ef6a70822 Gui: NaviCube recreate frame buffer if invalid (#22454)
* Gui: NaviCube recreate frame buffer if invalid

* Gui: NaviCube add debug warning if the frame buffer became invalid
2025-07-16 21:43:52 -05:00
Chris Hennes
f2569e6427 Gui: Fix missing PCH include 2025-07-17 03:35:12 +02:00
theo-vt
f2d0a69e01 Core: Remember export information on a per document basis (#22067)
* Use a new struct ExportInfo to hold export information on a per document basis
2025-07-16 02:43:57 +00:00
Chris Hennes
6a06ab24db Update Addon Manager submodule 2025-07-15 10:16:24 -05:00
Max Wilfinger
a41921924f Merge pull request #22459 from kadet1090/stylesheet-fixes
Stylesheet: Various fixes
2025-07-15 04:58:06 +02:00
Ilya Baidakov
7c05289f6b Add custom template path support for WebGL export (#21695)
* Add custom template path support for WebGL export
- Extract hardcoded template into separate file and store in Mod/BIM/Resources/templates
- Remove hardcoded template from code
- Add new section to Import-Export Preference page ("WebGL"). This introduces two new parameters
- Make export() return bool to indicate success or failure for controlled headless export
- Add new unit tests for WebGL export to ensure functionality
- Update CMakeLists.txt to include the new template resource

* Apply suggestions from code review

Changes to literals, suggested after DWG review

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

* Removed unused import

* Removed unused import

---------

Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>
Co-authored-by: Yorik van Havre <yorik.vanhavre@gmail.com>
2025-07-14 22:25:57 +00:00
PaddleStroke
562d646082 Sketcher: add ConstraintLineByAngle helper. (#22273)
* Sketcher: add ConstraintLineByAngle helper.

* Update src/Mod/Sketcher/Gui/Utils.cpp

* Update src/Mod/Sketcher/Gui/Utils.cpp

---------

Co-authored-by: Kacper Donat <kadet1090@gmail.com>
2025-07-14 19:44:32 +00:00
MisterMakerNL
dc2f2374b6 Adding PNG back for now
Adding it back because old stylesheet is not compitable with SVG.  Hopefully it can be removed soon.
2025-07-14 20:51:42 +02:00
Kacper Donat
53c0b56e74 Stylesheets: Fix file chooser buttons not displaying dots 2025-07-14 20:48:50 +02:00
Kacper Donat
09ecda8dc1 Stylesheets: Fix jumping entries on Windows
Co-authored-by: MisterMakerNL <marijn82@gmail.com>
2025-07-14 20:48:50 +02:00
Kacper Donat
50b0dc691c Stylesheets: Fix property editor headers 2025-07-14 20:48:50 +02:00
Kacper Donat
efc0cd6ede Stylesheets: Fix empty line between header and content in QSInt 2025-07-14 20:48:49 +02:00
Kacper Donat
aa180b3443 Stylesheets: Properly utilize AccentColor 2025-07-14 20:48:49 +02:00
Kacper Donat
1bb93dc105 Gui: Add blend function to style parameters 2025-07-14 20:48:49 +02:00
Kacper Donat
9de9cff3fe Build: Fix built-in copying PreferencePacks 2025-07-14 20:48:49 +02:00
Kacper Donat
374c40adde Stylesheets: Unify border on ScrollBars 2025-07-14 20:48:49 +02:00
Kacper Donat
4f7a608217 Stylesheets: Remove QTabBar color inconsistencies 2025-07-14 20:48:49 +02:00
Kacper Donat
4a719a784d Stylesheets: Remove padding and marign resets.
Setting margins and padding to 0 on * disables margins supplied by the
QStyle. That was required when QStyle was not enforced but now it can
cause trouble.
2025-07-14 20:48:49 +02:00
Kacper Donat
9b92902c0d Gui: Rename FreeCAD_stylesheet.qss into FreeCAD.qss
This removes redundant suffix from the file name.
2025-07-14 20:48:49 +02:00
Syres916
bb9d0a44ec Measure: Use string based addObject as workaround as type is an alias (#22462)
* [Measure] Revert one specific piece of code from PR19142

* Measure: Add comment for workaround

---------

Co-authored-by: Benjamin Nauck <benjamin@nauck.se>
2025-07-14 18:41:55 +00:00
theo-vt
e5a206a2e4 Use correct flag 2025-07-14 18:28:33 +02:00
mosFet
bf2cd60553 update addonManager
update addonManager

.
2025-07-14 18:21:12 +02:00
Kacper Donat
871b1add1f Merge pull request #22119 from captain0xff/draggger-rework2
Gui: refactor SoRotationDragger
2025-07-14 18:14:42 +02:00
FEA-eng
119b8cffd7 FEM: Add offset property for CalculiX's shell section (#22385)
* FEM: Update element_geometry2D.py

* FEM: Update write_femelement_geometry.py

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

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

* FEM: Update ccx_cantilever_ele_quad4.inp

* FEM: Update ccx_cantilever_ele_quad8.inp

* FEM: Update ccx_cantilever_ele_tria3.inp

* FEM: Update ccx_cantilever_ele_tria6.inp

* FEM: Update constraint_contact_shell_shell.inp

* FEM: Update material_multiple_bendingbeam_fivefaces.inp

* FEM: Update square_pipe_end_twisted_edgeforces.inp

* FEM: Update square_pipe_end_twisted_nodeforces.inp

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-07-14 18:10:00 +02:00
FEA-eng
18acfabea6 FEM: Add thermal contact with CalculiX (#22121) 2025-07-14 11:03:43 -05:00
wandererfan
5b1f9b1082 [TD]Revert property type changes 2025-07-14 17:57:28 +02:00
Florian Foinant-Willig
0ecdb8b00e Sketcher: clean planegcs/Geo (#22378)
* Sketcher: clean planegcs/Geo
2025-07-14 10:56:25 -05:00
Bas Ruigrok
d1c14a21e1 Gui: Increase orthographicFocalDistance to get more near and far distance slack 2025-07-14 17:55:47 +02:00
Syres916
7945508f8d [TechDraw] Improve TaskFillTemplate tool (#22400)
* [TechDraw] Improve TaskFillTemplate tool
* [TechDraw] use max instead of if block as per Lint feedback
* [TechDraw] remove unused icon variable
2025-07-14 10:40:01 -05:00
theo-vt
c8bddd2f2b Sketcher: assign the old geometries' GeometryId[s] to new geometries after scaling (#22263)
* Reassign facade ids after scale operation if deleting geometries

* Fix failing CI
2025-07-14 17:39:03 +02:00
theo-vt
e38fe196d5 Allow open wires in Part::getProfileNormal 2025-07-14 17:38:51 +02:00
paul
f81003f492 [ArchWindow] subVolume Support Multi-Material (bug fix) (#22279)
* [ArchWindow]  subVolume Support Multi-Material (bug fix)

Fix #21640

BIM: Automatic hole depth for windows issue (new window depth algorithm cannot determine the width of the wall when using multimaterial)

* [ArchWindow] subVolume Support Multi-Material (bug fix) / Further fix

(Fix problem found by Github CodeQL - Local variable 'totalThk' may be used before it is initialized)

Fix #21640

BIM: Automatic hole depth for windows issue (new window depth algorithm cannot determine the width of the wall when using multimaterial)
2025-07-14 17:23:14 +02:00
Syres916
c57cf0e1e0 [TechDraw] fix regression from PR19502 2025-07-14 15:55:50 +02:00
Roy-043
08aef89fc3 BIM: fix Height and Width inversion for rectangular pipes 2025-07-14 15:40:18 +02:00
Paul Lee
a47fc30873 [ArchWindowPresets] Further Fix Sill Change
Further to Bug-fix Changing Sill _&_ SketchArch Support Sill Property
- https://github.com/FreeCAD/FreeCAD/pull/21726 ,
minor fix to make ensure tracking of sill works upon window creation.
2025-07-14 15:36:40 +02:00
Benjamin Nauck
566fe8371a Merge pull request #21995 from chennes/moveBackupPolicy
Extract BackupPolicy class into its own file to facilitate automated testing
2025-07-12 17:58:14 +02:00
Furgo
3b3d19c56b Import: improve DXF C++ importer support for BLOCK and INSERT entities (#22045)
* Import: DXF importer, block and inserts overhaul

Implement support for blocks as definitions and inserts
as instances.

A BLOCK definition becomes a hidden master object in a
_BlockDefinitions group (currently a Part::Compound).
An INSERT becomes a visible App::Link that points to
that master definition.

* Import: DXF parser/importer add debug print statements

* Import: DXF importer, various improvements

- Add more code comments
- Correctly increase object count
- Improve readability of anonymous block checks

* Import: DXF (all) report anonymous blocks separately

* Import: DXF importer (App + GUI) add nested inserts support

* Import: DXF importer (GUI) fix preserving colors for inserts

* Import: DXF importer, make primitives naming more specific

* Import: DXF parser/importer remove debug print statements

* Import: DXF parser, work around DXF color index 7

* Import: DXF importer GUI, temporary debug print to show layer color data

* Import: DXF importer, fix nested inserts hierarchy

* Import: DXF importer, prefix and suffix underscores to names

To work around mangling from FreeCAD's unique name generator.

* Import: DXF importer, implement flattening blocks on import

* Revert "Import: DXF importer GUI, temporary debug print to show layer color data"

This reverts commit b6ece395c9d2b8a1e0796d6f7b0d58842a2f3686.

* Import: DXF importer, fix imported text orientation

The DXF file provides the text rotation angle in degrees.
The used rotZ function expects the angle in radians,
thus the conversion needs to be made.

Fixes: #21548

* Import: DXF importer, honour the preference to not import layouts

* Import: DXF importer, move unreferenced blocks to separate group

This provides better classification, but it has a performance hit:
we import all blocks as before, we sort them and we reparent them
to the correct group. The reparentipart with Grou.setValues()
appears to be an expensive call. Probably because internally the
FreeCAD dependency graph is modified.

* Import: DXF importer, count compound children in the report

* Import: DXF importer, cleanup defined blocks group if empty
2025-07-12 13:38:13 +02:00
Roy-043
93e09aa315 Draft: 1st downgrade of lofts and sweep should be de-parametrization 2025-07-12 13:29:32 +02:00
Roy-043
2e4e661594 BIM: store Classification prefix setting 2025-07-12 13:25:23 +02:00
MisterMaker
5fa2d62f6c Gui: Implement style parameters for built-in themes (#20528)
* added code to add more parameters to stylesheets

and test QSS files which will probably be removed when testing is completed

* update

* Update CMakeLists.txt

* some tweeks

* reverting this as it should not have been uploaded

* Update User_dark.qss

* more stuff

* code cleanup

* synced light to dark

* tweaks!!

* Fixed the qsint action tab

* tweaks

* push latest changed getting ready for release.

* tweaks

* Update FreeCAD Dark.qss

* fixessss

* wrong radiusss

* Update FreeCAD Light.cfg

changed the light background too F0f0f0

* disable tweaks

* modifications to use ThemeToken manager

See https://github.com/FreeCAD/FreeCAD/pull/20668

* Undo bunch of stuff.

* bugs

* Clean-up

* more cleanup

* Update FreeCAD_stylesheet.qss

* Big update + cleanup

* Update FreeCAD Light.cfg

* Changed UserColor to Primary

* Update actionpanelscheme.cpp

rtying to fix merge issues

* trying to fix merge issues

* clean-up

* Update FreeCAD_stylesheet.qss

* Refactor theme color variables and improve widget styling

Unified color variable naming by replacing '@PrimaryColorUIColor' and related tokens with '@PrimaryColor' and new lighten/darken variants in both dark and light theme configs and stylesheets. Added new variables for input field border radius and checkbox/radio button colors, and updated QSS rules to use these variables for consistent widget appearance. Improved styling for checkboxes, radio buttons, and input fields, and fixed menu indicator icons for better theme compatibility.

* Checkboxes and radioboxes

Rounded off the checkboxes add buttons for radioboxes.

* updated icons

* Refine toolbar, checkbox, and toolbox styles

Updated QToolButton#qt_toolbar_ext_button to use border-image and improved gradient backgrounds. Enhanced checkbox indicator styling for better color consistency and hover/disabled states. Adjusted gradients and background colors for QTabBar, QDockWidget, QHeaderView, and QToolBox elements to improve visual coherence and accessibility.

* Refine FreeCAD Dark theme hover and selection colors

Updated the FreeCAD Dark theme configuration and stylesheet to introduce new hover and border color tokens, unify hover/selection backgrounds, and replace most uses of @UserHighlight1Color/@UserHighlight2Color with @GeneralBackgroundHoverColor and @GeneralBorderHoverColor. Adjusted color lightening values for better contrast and consistency across UI elements.

* Fix QHeaderView gradient direction in stylesheet

Corrects the gradient parameters for QHeaderView::section to use y1 and y2, ensuring the background gradient renders as intended.

* Update FreeCAD Light theme user tokens

Changed MenuBackgroundColor to use @PrimaryColorLighten1 and SketcherUnderConstrainedColor to #000000. Added new tokens GeneralBackgroundHoverColor and GeneralBorderHoverColor for improved UI customization.

* Update FreeCAD Dark.cfg

* Add padding to QMenuBar items in stylesheet

Updated the FreeCAD stylesheet to include specific padding for QMenuBar::item, improving menu item spacing and appearance.

* I added the old stylesheets back for fallback

I added the old stylesheets back in the case of in forseen issues.

* Update Freecad Overlay.qss

* Refactor color tokens in Dark and Light theme configs

I sorted the tags and linked accent colors

* Update QPushButton styles for improved consistency

Adjusted padding and min-width for QPushButton elements to enhance visual consistency across dialogs and tables. Updated QTableView QPushButton styles to include hover effects and removed redundant selectors.

* Adjust QPushButton vertical padding in stylesheet

Reduced the vertical padding of QPushButton from 4px to 3px to refine button appearance and alignment.

* Adjust QPushButton styles in dialogs and panels

Updated QDialogButtonBox QPushButton to have 3px vertical padding instead of 4px, and removed special styling for QMessageBox buttons. Added a new style for QPushButton inside QFrame panels with 3px padding and no minimum width.

* undo some changes

* Update grid lines color in FreeCAD Light theme

Changed the GeneralGridLinesColor from @PrimaryColorLighten2 to @PrimaryColorDarken4 in the FreeCAD Light theme configuration for improved visual consistency.

* Update menu background color in FreeCAD Dark theme

Changed the MenuBackgroundColor from @PrimaryColorLighten4 to @PrimaryColorDarken4 in the FreeCAD Dark theme configuration to improve visual consistency.

* Update FreeCAD Dark.cfg

* Refactor selection background color handling

Introduces TextSelectBackgroundColor in both FreeCAD Dark and Light preference packs for more flexible selection styling. Updates stylesheet to use TextSelectBackgroundColor instead of UserHighlight1Color and removes redundant selection-background-color rules for improved consistency and maintainability.
Selection color is just a toned down color from the accent 1 color. This makes it better readable.

* Selection color had issues with treeview select

* woopsie add pink to find issues removed it

* Update src/Gui/Stylesheets/CMakeLists.txt

---------

Co-authored-by: Kacper Donat <kadet1090@gmail.com>
2025-07-11 21:33:14 +00:00
sliptonic
759bad7455 Merge pull request #22330 from z0r0/fanuc-postprocessor-fix
CAM: Fix for Fanuc Post-Processor
2025-07-11 11:00:50 -05:00
Ian Abreu
6c5098680f Merge branch 'main' into CAM-Inspect-Fix 2025-07-09 19:40:30 -04:00