Commit Graph

39749 Commits

Author SHA1 Message Date
wmayer
1c03c53bff Core: Fix unicode path names under Windows 2024-11-26 11:22:11 -05:00
wmayer
09772749f2 Start: Implement Thumbnail Managing Standard
as specified here: https://specifications.freedesktop.org/thumbnail-spec/0.8.0/

The changes are:
* use MD5 as hashing algorithm
* write thumbnails to ~/.cache/thumbnails/normal
2024-11-26 11:14:52 -05:00
Jacob Oursland
0a5c5ee101 App: Reduce BOOST_VERSION workaround to fix boost symbol linker error on Win-Qt5. 2024-11-26 11:13:21 -05:00
Jacob Oursland
1ac989e8e3 Mesh: Add template type to WM4 TRational variables. 2024-11-26 11:10:13 -05:00
Jacob Oursland
03eb6bdac3 Mesh: move counter declaration to loop-local. 2024-11-26 11:10:13 -05:00
PaddleStroke
489b24ef10 Core: GetGlobalPlacement: empty subname should not return. 2024-11-26 10:59:48 -05:00
Roy-043
f4a36f31e9 Draft: fix focus behavior of radius input
Fixes #16249.

The input did receive the focus, but the existing value was not selected.

The circle, arc, trim and offset tools had a related issue. The whole radius/distance value, including the unit string, was selected, instead of just the numerical portion.
2024-11-26 16:48:35 +01:00
wmayer
f9ffff25ad Start: Show thumbnail if filename contains a dot
Fixes #18109
2024-11-26 09:42:05 -05:00
wmayer
1db64e018e Gui: Fix issues in About dialog 2024-11-26 09:41:24 -05:00
PaddleStroke
3993bfede7 Rename ViewProviderOriginFeature to ViewProviderDatum 2024-11-26 15:36:48 +01:00
PaddleStroke
a558475d8a Rename 'OriginFeature' to 'DatumElement' 2024-11-26 15:36:48 +01:00
PaddleStroke
8f43f3cc8b Core: Rename 'OriginFeature' file to 'Datums' 2024-11-26 15:36:48 +01:00
Chris Hennes
f24c7da793 Spreadsheet: Add C++ test framework 2024-11-25 23:09:35 -06:00
BMaxV
77deda9b6f Change button text to confirm copy. (#17696)
* Change button text to confirm copy.
* translation and timer->reset
* timer->single shot + text variable

---------

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2024-11-25 13:59:49 -06:00
Max Wilfinger
e8a66d5323 Merge pull request #18125 from Ondsel-Development/core_LCS1
Core Datum : Card 1 : icons
2024-11-25 20:58:42 +01:00
Roy-043
d73a057c94 Draft: Legacy DXF importer: fix layer block behavior
Fixes #16550.
Fixes #16552.

* Layer blocks receive a name with the "LayerBlock_" prefix.
* They are put in a layer if the "Use layer" import option is checked.
* If Draft or Sketch objects are created a Part_Compound instead of a Draft_Block is created. This was done because a Draft_Block does not claim its children. I am not sure about this change. Maybe the behavior of the Draft_Block should be changed instead.

@yorikvanhavre: do you know why a Draft_Block does not claim its children?
2024-11-25 20:15:16 +01:00
Kacper Donat
03d4157627 Assembly: Refactor get/setDraggerPlacement
It seems that Base has very handy helpers for converting between various
types. This simplifies code of ViewProviderAssembly::get/setDraggerPlacement a
lot.
2024-11-25 12:27:35 -05:00
Florian Foinant-Willig
ea8814785a Sketcher infinite axes 2024-11-25 18:27:10 +01:00
PaddleStroke
407b056952 Sketcher: ViewProviderSketch remove unecessary updateColor and applyCursor. 2024-11-25 12:25:58 -05:00
wmayer
fa5a171e9a Core: Do not detach object from document before the call of breakDependency
This fixes #17900
2024-11-25 18:25:17 +01:00
Roy-043
3b483a108d Draft: Allow selection of subelements for Draft_Fillet
Fixes #17505.
2024-11-25 18:21:50 +01:00
PaddleStroke
97387325c8 Assembly: Fix joints not being deleted when subassembly is deleted. 2024-11-25 18:20:46 +01:00
Benjamin Nauck
518e6b2c51 Add two options to disable addons
Addons can be disabled in two ways:
 * by adding a command line argument `--disable-addon <addon>`
 * and by creating a `ALL_ADDONS_DISABLED` file in the mod root of the addons to disable
2024-11-25 12:16:43 -05:00
bgbsww
7860f56e74 Tweak VSCode debug port to work with current versions 2024-11-25 12:09:28 -05:00
PaddleStroke
0bd5144ad9 Add Std_Point.svg icon for datum points 2024-11-25 18:06:28 +01:00
PaddleStroke
6150907cc0 Update Std_Axis.svg as it had poor visibility in dark themes: planes and axis looked both like planes. 2024-11-25 18:06:27 +01:00
wmayer
c44da80843 Part: Fix alpha <> transparency conversion 2024-11-25 12:05:25 -05:00
Chris Hennes
9af20cdd63 Merge pull request #14362 from je-cook/fix_deprecated_import_style
Fem: Fix deprecated import style
2024-11-25 12:02:11 -05:00
marioalexis
9af05598cf Fem: Check empty remaining femelements array - fixes #17570 2024-11-25 12:01:44 -05:00
Chris Mayo
c8d2455f26 BIM: Replace use of ArchWorkbench in ArchSelectionObserver 2024-11-25 18:00:52 +01:00
David Carter
6af113bc4f Materials: Physical property attributes
Add dynamic attributes to report the physical attributes of a part that
are automatically recalculaated when the shape or material changes.
These values are accessible from the part data display and as attributes
within Python
2024-11-25 18:00:29 +01:00
PaddleStroke
223877873b Sketcher: Offset & tranforms: enable external geos input. (#17615)
* Sketcher: Offset & tranforms: enable external geos input.
* Sketcher: enable delGeometries to handle external geos.
2024-11-25 10:57:16 -06:00
hasecilu
145f95202a Gui: Add suffix to programatically generated preference page's spinboxes
Units contain a leading space.

Command to generate the C++ code on `src` dir:
$ python3 -m cogapp -r Gui/PreferencePages/DlgSettingsAdvanced.{h,cpp}
2024-11-25 17:52:51 +01:00
hasecilu
8ae5f0c167 Gui: Add "px" suffix on preference page as width unit 2024-11-25 17:52:51 +01:00
Syres916
d26fa7047c [Part] [Post 1.0] Preferences > Shape view > Maximum angle deflection warn user... (#16007)
* [Part] Preferences max angle deflection alert

* [Part] Comment added as requested
2024-11-25 10:50:58 -06:00
wandererfan
2ff1a2b6de [TD]fix area calculation 2024-11-25 17:49:21 +01:00
Roy-043
caa563ea03 Draft: fix color of arrays
If `get_diffuse_color` returned a list with a single color, the list was wrongly multiplied. Regression introduced in V0.21, but in that version the error was masked by how Core handled the diffuse color.

Fixes #17052.
2024-11-25 17:43:56 +01:00
paul
cb328a6ce7 [Draft Gui_Stretch] Improve Stretch Rectangle Behaviour (#18063)
* [Draft gui_stretch] Improve Stretch Rectangle Behaviour

Feature Improvement discussed at FreeCAD Forum :
- https://forum.freecad.org/viewtopic.php?t=92124#p792118  (Draft_Stretching the whole rectangle creates a new wire)

Currently, 3 cases in general, proposed PR improve Case 3 below :

1. The original object is a Rectangle, if after stretching it is no longer a rectangle, it makes a copy turning it into a Wire which reflect the result of stretching.
   - Current behanviour is good for user, no change.
2. If after stretching it is still a rectangle, the code just resize the original.
   - Current behanviour is good for user, no change.
3. Now, if the user 'stretch' the whole rectangle, the code creates a copy as DWire in the 'stretched location'.
** - Users find this not intuitive, better just move the whole rectangle.
2024-11-25 14:47:06 +01:00
Roy-043
af71f75b9a BIM+Draft: Bring back human figure
* For the human figure attached to the Draft grid a hard-coded point list is used (instead deriving the points from human figure.brep). This is more efficient and avoids a dependency on the BIM WB.
* The default for the human figure preference of the grid was changed to false. And the tooltip adjusted.
2024-11-25 13:34:53 +01:00
Roy-043
7ff12bace9 Draft: minor improvements for gui_edit.py (#17970)
* Draft: minor improvements for gui_edit.py

* Fix error...
2024-11-25 13:34:23 +01:00
Roy-043
a52487b7a2 BIM: Fix calculation of fence sections (#18042)
* BIM: Fix calculation of fence sections

The length  and placement of fence sections was only correct if they were cut to size.

* Fix required another change.
2024-11-25 12:24:39 +01:00
Roy-043
542bb5a1fe Increase the delay to be on the safe side. 2024-11-25 11:40:55 +01:00
Roy-043
83a5eaeef4 Draft: avoid listing status bar widgets in toolbar area context menu
Fixes #16832.

In V1.0 the two Draft status bar widgets appear as checkboxes without label in the toolbar area context menu. They should not be listed in that menu, as was the case in V0.21. Their visibility is controlled via preferences.

Additionally, in case the Draft WB is only preloaded, the widgets would display in another workbench. This is prevented by using a delay.
2024-11-25 11:40:55 +01:00
Jonas Bähr
dda53d6e67 CAM: Configure Helix via CutMode, not Direction (#14314)
To harmonize the various CAM operations, the helical drill shall also be
configured using the cut mode (Climb/Conventional) just like Pocket or
FaceMill.
This means, the path direction (CW/CCW) is now a hidden read-only output
property, calculated from the side (Inside/OutSide) and the here newly
introduced cut mode.
The spindle direction is not yet taken into account and is always assumed
to be "Forward".
The GUI strings are kept compatible with what RP#14364 introduced becasue
of the v1.0 release string freeze. They need revision once back on the
main branch.
2024-11-24 09:18:23 +01:00
Jonas Bähr
61d6492418 Revert "CAM: Rename CW/CCW to Climb/Conventional for consistency (#14364)"
This reverts commit 232bed5b44749b098d9f7599b717548243cc7bea and adapts
to the in between commits where necessary.
 - CAM: apply precommit eb53ed3cefb9444a4473bdd4c89116796ec94b4b
 - CAM: rename "Tests" to "CAMTests" 2ff4914fd8

Motivations for the revert:
 - Instead of actually implementing #14364 only a search and replace in
   the enums values has been performed. But this does not mean the
   feature is there, becasue "climb"/"conventional" milling depends not
   only on the path's direction, but also on the spindle direction and
   whether the milled feature is "inside" or "outside".
 - In half of the cases of every changed operation or dressup, depending
   on whether we mill "inside" or "outside", we now get the wrong results.
 - In the (rarer) case of a reversed spindle direction, the "other half"
   is wrong.
 - Files created with previous versions of FreeCAD cannot be recomputed
   any longer because there were no precautions on document restore.
 - In files created with previous versions of FreeCAD one cannot change
   the broken operation as the choices are now invalid.
 - The original search/replace was incomplete.
 - Only property values have been changed, the property names are still
   inconsistent ("Direction" vs "Cutting Mode").
 - The original search/replace also changed internal APIs where the
   "climb"/"conventional" wording is not applicable as there is no
   notation of "inside"/"outside" or "forward"/"reverse". If only the
   path's direction is concerned, "CW"/"CCW" fits better.
2024-11-24 09:18:23 +01:00
Jonas Bähr
a41f9dedfd CAM: Fix and enable TestPathHelix again
Since the fixture in use has holes smaller than the default tool dimeter,
executing a helix operation with default parameters (i.e. all holes)
used to fail with an exception. Some tests work around this by actively
chaning the tool diameter, and this fix is now moved into the global
setup where the respective fixture is loaded.

The reason why the tests got disabled in the first place is unclear.
2024-11-24 09:18:23 +01:00
Jonas Bähr
548325c503 CAM: Add tests loading a helical path created with v0.21
This demonstrates a regression introduced with PR #14364, where documents
containing helix operations cannot be recomputed any more (see #15643).
This is in preparation for a fix and to ensure we don't break it again.
The fixture has been created with the official mac build of FreeCAD-0.21.1
2024-11-24 09:18:23 +01:00
marioalexis
95108093ca App: Set PropertyColor to opaque by default 2024-11-23 19:48:44 +01:00
mosfet80
cf64d095ec [App] clean AppJtReader.cpp (#15626)
Clean code
2024-11-22 11:25:42 -06:00
marioalexis
3fa067c632 Fem: Avoid legacy Netgen meshing if there is no referenced shape - fixes #17814 2024-11-22 12:24:46 -05:00