Commit Graph

20935 Commits

Author SHA1 Message Date
wmayer
53f24f4bc2 Sketcher: add unit test for sketch with expressions 2021-12-23 15:32:24 +01:00
luz paz
1653d26ffa Cam: translate doxygen from DE/FR to EN
For the purpose of making the source documentation uniform, source comments in this file were translated to english.
2021-12-22 15:20:17 +01:00
Zheng, Lei
35d7b71466 Spreadsheet: code style change 2021-12-21 21:41:02 -07:00
Zheng, Lei
75e639c94c App/Gui: add new ObjectStatus TouchOnColorChange
For triggering recompute on color changes
2021-12-21 21:41:02 -07:00
Zheng, Lei
d286a54fc1 PartDesign: show error on SubShapeBinder CopyOnChange failure
The failure is not obivous as it would have been occurred in a
hidden temporary document.
2021-12-21 21:41:02 -07:00
Zheng, Lei
0029f3206d Spreadsheet: improve copy/cut/paste cells
Add color bound around user copy/cut ranges. Do not touch Spreadsheet
object when cutting, only do so when pasting.
2021-12-21 21:41:02 -07:00
Zheng, Lei
2bd4404afb PartDesign: expose SubShapeBinderPython 2021-12-21 21:41:02 -07:00
Zheng, Lei
39c04e4877 PartDesign: support CopyOnChange in SubShapeBinder 2021-12-21 21:41:02 -07:00
Zheng, Lei
caa29060cf Spreadsheet: fix handling of absolute cell address 2021-12-21 21:41:02 -07:00
Zheng, Lei
51d4e5c2a9 Draft: support 'CopyOnChange' in Draft link array 2021-12-21 21:41:02 -07:00
Zheng, Lei
bd201c82ce Spreadsheet: add menu action 'Configuration table...'
To make it easy for user to create dynamically switchable configuration
tables using spreadsheet.
2021-12-21 21:41:02 -07:00
Zheng, Lei
7d23d5b984 Spreadsheet: support mapping protocol in PropertySheetPy
Read only mapping protocol support to retrieve a range of cell values.
Expects the key to be a string of either a single cell address or a
range.
2021-12-21 21:41:02 -07:00
Chris Hennes
82759f6203 Spreadsheet: Compilation fixes for cherry-picked commits 2021-12-21 21:41:02 -07:00
Zheng, Lei
2a3951ca32 Spreadsheet: change alias handling
No longer add dynamic property for alias, simply rely on
get(Dynamic)PropertyByName() to check for aliases.

Add new API PropertyContainer::getPropertyNamedList() so that
ExpressionCompleter can discover properties with aliases.
2021-12-21 21:41:02 -07:00
Chris Hennes
79cda0a1b7 Spreadsheet: Compilation fixes for cherry-picked commits 2021-12-21 21:41:02 -07:00
Zheng, Lei
68fca40983 Spreadsheet: support cell binding
Cell binding allows one to bind a range of cells of one sheet to another
range of cells of an arbitary sheet, including any empty cells in the
range.

The binding is implemented with PropertyExpressionEngine and
PropertySheet::setPathValue(), which binds a special path of
PropertySheet, such as

    .cells.Bind.A1.D1

to an expression, such as

     tuple(.cells, <<A2>>, <<A5>>)

The A1 and D1 in the example above specifies the binding start and end
cell address. And <<A2>> and <<A5>> are the range of cells to bind to.
Note that you can use any expression that evalutes to string for the
binding destination, e.g. <<A%d>> % B1, which uses the value inside B1
to construct the binding destination. The '.cells' in the tuple shown
above is an example to bind cells of the same PropertySheet. It can be
change to to reference to any other spreadsheet, even those outside the
current document, e.g. Document#Spreadsheet001.cells
2021-12-21 21:41:02 -07:00
Zheng, Lei
3d1b9f5c90 Spreadsheet: support paste into cell range
For single range copy, the range selection when pasting determines the
start cell and the number of duplications.

For example, when copying a range A1:B2 (i.e. a 2x2 square) and pasting
into a selection of C1:C5 (i.e. a 5x1 vertical line), the square will be
duplicated once in horizontal, but twice in vertical, resulting new
cells range from C1:D4. This logic is borrowed from google sheet.

For multi-ranged copy, no multi duplication is intended. If more than
one selection range exists before pasting, only the top left cell of
the last selected range is used to determine the starting cell for
pasting. The cells will be copied with the exact cell layout keeping any
empty cells in between. This logic is different from google sheet, where
it disallows unalligned multi-ranged copy, and will condense and
eliminate any empty cells for aligned multi-range copy.
2021-12-21 21:41:02 -07:00
Uwe
fa50122c33 [PD] fix a hole thread issue
- The thread must not be deeper than the hole.
  (One could see that if one used a thread depth dimension and set
  it to the same value than the hole depth, the thread was too deep.)
2021-12-22 02:54:49 +01:00
Uwe
c5f87d8ea8 [PD] hole dialog improvements
- no keyboard tracking
- don't disable labels since we don't do this for the other dialog labels
- avoid a doubled word in subsequent labels
- further UI file changes are by Qt's Designer
2021-12-22 02:46:07 +01:00
luz paz
9c74c0afb1 Mesh: translate doxygen from DE to EN
For the purpose of making the source documentation uniform, source comments in this file were translated to english.
2021-12-22 01:09:52 +01:00
Uwe
9770449be7 [PD] fix several hole thread issues
- actually use specified thread depth, fixes issue reported here: https://github.com/FreeCAD/FreeCAD/pull/4274#issuecomment-997787744
- fixes 2 UI enabling issues
- the thread depth cannot be longer than the hole depth
- the hole cannot be deeper than the through-all depth
2021-12-22 01:09:06 +01:00
Chris Hennes
f429a3630e Addon Manager: Fix github macro update code 2021-12-21 17:23:02 -06:00
Chris Hennes
b371487224 Addon Manager: Correct macro installation location 2021-12-21 14:48:35 -06:00
wmayer
427fe5d1e1 Part: handle removal of function HLRBRep_PolyAlgo::Angle in OCC 7.5 2021-12-21 21:26:00 +01:00
wmayer
ea85cf5e36 Part: expose Poly HLR algorithm to Python 2021-12-21 19:45:01 +01:00
Chris Hennes
4c303e339e Addon Manager: Correct proxy default 2021-12-21 11:19:21 -06:00
Yorik van Havre
283b0a6382 Merge pull request #5243 from paullee0/ArchEquipment_2_SketchArch_UpdateAttachmentObject_support_take3
[ArchEquipment] add SketchArch attachment support (3rd attempt)
2021-12-21 11:47:22 +01:00
Yorik van Havre
b84a099f68 Merge pull request #5244 from paullee0/ArchWindow_2_SketchArch_UpdateAttachmentObject_support_take2
[ArchWindow] add SketchArch attachment support (2nd attempt)
2021-12-21 11:46:48 +01:00
Yorik van Havre
6895813400 Merge pull request #5249 from Roy-043/Draft-Draft_Label-fix-label-type-list
Draft: Draft_Label fix label type list
2021-12-21 11:45:16 +01:00
Yorik van Havre
73e01719d2 Merge pull request #5266 from Roy-043/Draft-fix-Draft_Label-viewprovider
Draft: fix Draft_Label viewprovider
2021-12-21 11:44:31 +01:00
wmayer
5fba9cecae TD: [skip ci] partially fix issue 0004765 2021-12-21 11:39:17 +01:00
wmayer
73a986714c Part: expose HLR algorithm to Python 2021-12-21 10:49:03 +01:00
Chris Hennes
dede24d5e4 Addon Manager: Bugfix for zip installation 2021-12-20 18:57:26 -06:00
Chris Hennes
b2fbf64b37 Addon Manager: Add Qt.Tool window flag 2021-12-20 16:12:02 -06:00
Chris Hennes
f9fb1c9abb Addon Manager: Fix hashing with Qt 5.9 2021-12-20 14:21:00 -06:00
Chris Hennes
e7cde8bed0 Addon Manager: Fix macro update code 2021-12-20 13:12:45 -06:00
Chris Hennes
861c543fd9 Addon Manager: Add error checking for missing content 2021-12-20 10:37:58 -06:00
Chris Hennes
f45481ae36 Addon Manager: Support Qt 5.9
QRegularExpression was not added until Qt 5.12 -- add support for using
QRegExp in cases when QRegularExpression is not present.
2021-12-20 10:13:29 -06:00
wmayer
6ad156b6b7 TD: [skip ci] partially fix issue 0004765 2021-12-20 10:11:03 +01:00
wmayer
6d4d433080 PD: [skip ci] improve readability of argument list 2021-12-19 22:02:08 +01:00
Uwe
7156b33ec4 [PD] fix compilation issue with Helix
I introduced it with commit 7dad9a90
2021-12-19 21:58:19 +01:00
sliptonic
b23ae963d9 Merge pull request #5271 from sundtek/sundtek-discretize-bug
[PATH] change discretize value to fix issues
2021-12-19 12:35:13 -06:00
sundtek
7172e57e5d Update PathAdaptive.py
the internal unit is mm, only lowering the accuracy should be enough.
2021-12-20 01:15:59 +08:00
Uwe
3d03f0a468 [PD] style improvements for Helix
all done automatically by MSVC
2021-12-19 17:52:33 +01:00
Uwe
7dad9a908f [PD] small code improvements for Helix 2021-12-19 17:34:14 +01:00
wmayer
18b3c59d80 Web: fix storage paths of web content 2021-12-19 16:56:48 +01:00
jbaehr
f4fe2efe19 PD: Fix helix property visibility/writability (#5254)
[PD]: Fix helix property visibility/writeability

* Hide irrelevant and internal helix properties
- The `HasBeenEdited` property is only used internally to check whether to
  fill certain other parameters with initial values. So there is no need
  show it in the property grid at all.
- The `Outside` property is only used in the subtractive helix and thus
  hidden for the additive helix.

* Make derived helix properties read-only
Depending on the input mode, some properties are primary input, others
are derived. Prior to this change, also the derived properties have been
writable but their values are ignored and overwritten on the next
recompute. Now, when changing the input mode, only the primary input
props are writable.

* Reorder some helix properties
This change puts the reference axis and input mode at the top to become
more prominent. Only "Base" and "Axis" are higher in the list for
consistency with the other axis-based features.
2021-12-19 16:50:51 +01:00
sliptonic
473bdc07dd Merge pull request #5262 from sliptonic/bug/translation
[PATH]  Bug/translation
2021-12-19 09:33:11 -06:00
Jonas Bähr
bb3d02298d PD: Fix assignment of Angle/Growth properties
Depending on the input mode, either `Growth` or `Angle` is used to create
a conical or flat spiral. The respective other can easily be calculated
to give consistent view. This is already done for the other properties,
e.g. `Height` is calculated from `Pitch` and `Turns`.
With this patch, the same is done for `Angle` and `Growth`.
2021-12-19 16:21:51 +01:00
sundtek
47fc8dee91 change discretize value to fix issues
Discretize of 0.0001 is okay for inches, but for metric <1microns would be quite small, this fixes some issues when generating paths for curves that look inward.
I found following post in the forum: https://forum.freecadweb.org/viewtopic.php?f=15&t=42755
I have experienced similar issues with other curves in my object.
2021-12-19 19:23:09 +08:00