Commit Graph

42586 Commits

Author SHA1 Message Date
PaddleStroke
10a6a3fbe6 Sketcher: Fix #13927 (#22427) 2025-07-16 21:55:52 -05:00
Bas Ruigrok
70d1f02b42 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
dependabot[bot]
1e79dfa5b1 Bump step-security/harden-runner from 2.12.2 to 2.13.0
Bumps [step-security/harden-runner](https://github.com/step-security/harden-runner) from 2.12.2 to 2.13.0.
- [Release notes](https://github.com/step-security/harden-runner/releases)
- [Commits](6c439dc8bd...ec9f2d5744)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-16 21:40:30 -05:00
pre-commit-ci[bot]
b45da523ef [pre-commit.ci] pre-commit autoupdate
updates:
- [github.com/pre-commit/mirrors-clang-format: 6b9072cd80691b1b48d80046d884409fb1d962d1 → 182152eb8c5ce1cf5299b956b04392c86bd8a126](6b9072cd80...182152eb8c)
2025-07-16 21:39:56 -05:00
Chris Hennes
4eab1460ed Gui: Fix missing PCH include 2025-07-17 03:35:12 +02:00
theo-vt
b8e8b57411 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
dependabot[bot]
fb94f8e3f2 Bump prefix-dev/setup-pixi from 0.8.10 to 0.8.11
Bumps [prefix-dev/setup-pixi](https://github.com/prefix-dev/setup-pixi) from 0.8.10 to 0.8.11.
- [Release notes](https://github.com/prefix-dev/setup-pixi/releases)
- [Commits](14c8aabd75...273e4808c8)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-15 12:07:50 -05:00
Chris Hennes
ba8a98f39a Update Addon Manager submodule 2025-07-15 10:16:24 -05:00
Max Wilfinger
0ad095f272 Merge pull request #22459 from kadet1090/stylesheet-fixes
Stylesheet: Various fixes
2025-07-15 04:58:06 +02:00
Ilya Baidakov
702e16a353 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
905d73b00d 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
df2b0bdf56 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
cd87823ca7 Stylesheets: Fix file chooser buttons not displaying dots 2025-07-14 20:48:50 +02:00
Kacper Donat
4db029776b Stylesheets: Fix jumping entries on Windows
Co-authored-by: MisterMakerNL <marijn82@gmail.com>
2025-07-14 20:48:50 +02:00
Kacper Donat
f5c9277f8f Stylesheets: Fix property editor headers 2025-07-14 20:48:50 +02:00
Kacper Donat
6d69c10403 Stylesheets: Fix empty line between header and content in QSInt 2025-07-14 20:48:49 +02:00
Kacper Donat
d935dc3aa5 Stylesheets: Properly utilize AccentColor 2025-07-14 20:48:49 +02:00
Kacper Donat
58349460e7 Gui: Add blend function to style parameters 2025-07-14 20:48:49 +02:00
Kacper Donat
e05258ad7e Build: Fix built-in copying PreferencePacks 2025-07-14 20:48:49 +02:00
Kacper Donat
58634f3ef4 Stylesheets: Unify border on ScrollBars 2025-07-14 20:48:49 +02:00
Kacper Donat
d4d3afb7df Stylesheets: Remove QTabBar color inconsistencies 2025-07-14 20:48:49 +02:00
Kacper Donat
00b9b0e61e 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
7d46cd91ed 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
aa605f0126 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
50840e358f Use correct flag 2025-07-14 18:28:33 +02:00
mosFet
cc4afc5985 update addonManager
update addonManager

.
2025-07-14 18:21:12 +02:00
Kacper Donat
c1e9cc01a2 Merge pull request #22119 from captain0xff/draggger-rework2
Gui: refactor SoRotationDragger
2025-07-14 18:14:42 +02:00
FEA-eng
28e90e668c 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
dependabot[bot]
6633367997 Bump github/codeql-action from 3.29.1 to 3.29.2
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.29.1 to 3.29.2.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](39edc492db...181d5eefc2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 18:03:57 +02:00
FEA-eng
2379cc28c1 FEM: Add thermal contact with CalculiX (#22121) 2025-07-14 11:03:43 -05:00
wandererfan
3dc2f7b3e9 [TD]Revert property type changes 2025-07-14 17:57:28 +02:00
Florian Foinant-Willig
0ad55281ad Sketcher: clean planegcs/Geo (#22378)
* Sketcher: clean planegcs/Geo
2025-07-14 10:56:25 -05:00
Bas Ruigrok
107230f31b Gui: Increase orthographicFocalDistance to get more near and far distance slack 2025-07-14 17:55:47 +02:00
Syres916
4e2382d6fa [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
076ea9b162 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
a933c22dad Allow open wires in Part::getProfileNormal 2025-07-14 17:38:51 +02:00
paul
401d9ae4e3 [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
0f4d25f8c6 [TechDraw] fix regression from PR19502 2025-07-14 15:55:50 +02:00
Roy-043
e6b6007940 BIM: fix Height and Width inversion for rectangular pipes 2025-07-14 15:40:18 +02:00
Paul Lee
f0d4bf896e [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
Chris Hennes
519daa0b38 Merge pull request #22467 from oursland/requires-pixi 2025-07-14 00:47:54 +02:00
Jacob Oursland
a2ec7f8901 Pixi: update pixi.lock. 2025-07-13 11:17:29 -07:00
Jacob Oursland
b3dcc5be41 Pixi: update pixi.toml with required pixi version. 2025-07-13 11:17:11 -07:00
Benjamin Nauck
a071d8a808 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
ef9378bd5b 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
a30197fd6c Draft: 1st downgrade of lofts and sweep should be de-parametrization 2025-07-12 13:29:32 +02:00
Roy-043
2fe79e95cc BIM: store Classification prefix setting 2025-07-12 13:25:23 +02:00
MisterMaker
f7e023e099 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
901deb1373 Merge pull request #22330 from z0r0/fanuc-postprocessor-fix
CAM: Fix for Fanuc Post-Processor
2025-07-11 11:00:50 -05:00
Fermín Olaiz
7fec747d90 Fix crash on out-of-bound vector access (#22397) 2025-07-09 19:07:11 +02:00