wmayer
499e73f337
Core: fix possible memory leaks when using parser
2024-04-26 21:42:34 +02:00
Andrei Pozolotin
c5ad7b50b6
Resolve #11965 - no proper execute() for cross-property references
...
Solution B: parsequant() function
2024-02-19 11:12:52 -06:00
Chris Hennes
3df8ae2fab
Revert "Resolve #11825 - no automatic quantity conversion: App::anyToQuantity"
...
This reverts commit 6a54591bac .
2024-02-12 15:29:15 -06:00
Andrei Pozolotin
6a54591bac
Resolve #11825 - no automatic quantity conversion: App::anyToQuantity
2024-01-11 11:32:18 -06:00
wmayer
ee0fad4c90
App: modernize C++: use default member init
2023-08-23 19:51:44 +02:00
wmayer
89bdd489b0
App: modernize C++: return braced init list
2023-08-18 00:36:24 +02:00
Chris Hennes
ddf8c47f40
App: clang-tidy cleanup of Expression::_renameObjectIdentifier
2023-08-17 15:59:45 +02:00
Djuro Drljaca
c311bab053
Keep the label of a variable in expression on spreadsheet alias rename ( #10222 )
...
Fixes #5800
2023-08-16 21:35:58 -05:00
Daniel-Khodabakhsh
8003606222
Expressions: Add Vector API expression functions ( #10237 )
2023-08-15 23:00:16 -05:00
wmayer
26f16f7410
App: modernize C++: use range-based for loop
2023-08-14 16:40:25 +02:00
wmayer
0af4990817
modernize C++: make unique
2023-08-07 19:51:30 -06:00
wmayer
2a88c7c7df
modernize C++: use bool literals
2023-08-06 01:35:39 +02:00
luzpaz
129d5882a7
Migrate domain name from freecadweb to freecad ( #9352 )
...
* Migrate domain name from freecadweb to freecad
* Migrate src/Mod/Material files
* Migrate Stylesheet related files
* Migrate *.svg files
* Migrate miscellaneous files
* Migrate some build files
* Migrate recently added TD AR_IRAM template files
Closes #6415
2023-04-24 15:19:20 -05:00
0penBrain
96bf29304d
Expression: use a precision that ensures no floating point issue
2023-04-05 19:51:51 +02:00
Daniel-Khodabakhsh
827af464e3
Add various matrix related expression functions ( #8603 )
...
Adds a few new Expression functions with the goal to:
- Simplify Placement, Rotation, Vector and Matrix object creation.
- Add new matrix functions for rotation and translation.
2023-03-11 20:13:23 -06:00
M G Berberich
6832743262
add cbrt (cube root) to expressions ( #8629 )
...
This adds a function cbrt(arg) to the freecad-expressions that computes
the cube root of arg. Instead of arg^(1/3) this handles the units of the
argument, so that one can compute units from p.e. ml to mm.
cbrt(27 ml) → 30 mm
instead of
(27 ml)^(1/3) → 30
2023-02-26 17:49:58 +01:00
0penBrain
09c1b9ce90
[BugFix] Expression: always add space char before unit when converting to string, fixes #8562
2023-02-24 19:44:44 +01:00
wmayer
1e49c84f6c
App: [skip ci] reduce code duplication
2022-12-23 18:39:59 +01:00
wmayer
aff217b214
App: remove dead code and simplify code
2022-12-23 17:02:04 +01:00
wmayer
ad1cccdd27
Gui/Mod: handle several compiler warnings:
...
* ignore -Wfree-nonheap-object for generated code
* replace 0 with Qt::NoModifier when creating a QKeyEvent
* in Qt 5.14 QCombobox::activated(QString) is deprecated, use textActivated
* don't mix QCheckBox::setChecked() with tristate API
2022-11-29 10:36:02 +01:00
marioalexis
9ccb9eecb2
App: Replace C cast
2022-09-18 11:06:51 -05:00
wmayer
5240a30431
App: modernize C++: replace 'typedef' with 'using'
2022-08-29 12:58:39 +02:00
berniev
d66df602ad
App: Single arg ctors must be explicit
2022-08-24 07:20:57 +02:00
berniev
7f699c3dad
App: redundant void 2
2022-08-08 09:45:36 +02:00
berniev
1cc6329eab
App: use empty
2022-08-06 19:29:59 +02:00
berniev
e7357c1a99
App: use emplace_back
2022-08-05 10:31:51 +02:00
wmayer
632e167ed8
App: improve whitespaces
2022-08-01 01:29:47 +02:00
berniev
65a356835b
App: Modernise ctors dtors defs etc
2022-08-01 00:34:46 +02:00
Uwe
fa36a57724
[App] remove superfluous nullptr checks
2022-07-18 03:12:01 +02:00
0penBrain
38ec63cba1
[Bugfix] Expression: fix precedence+associativity management in parenthesis removal
...
Fixes #6948
2022-06-11 15:59:06 +02:00
wmayer
1fbff0a616
App: fix regression in Expression::getDepObjects
...
Avoid to add labels muliple times as reported here: https://forum.freecadweb.org/viewtopic.php?p=593994#p593994
2022-05-09 10:53:21 +02:00
wmayer
ddf020e107
App: fixes #6844 : Crash in PropertyXLinkContainer::updateDeps
2022-05-08 18:22:29 +02:00
Chris Hennes
132a1d7e55
App: PR6497 move return statement to new line
2022-03-29 12:33:37 -05:00
wmayer
749361d2f3
App: modernize C++11
...
* use nullptr
2022-03-23 17:29:23 +01:00
Uwe
b4fff07d9e
[App] Expression and Extension: remove unused includes
2022-02-25 18:06:57 +01:00
Zheng, Lei
0dcea9b2e1
App: warning on invalid cell offset in Expression
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
df6a7e4a56
App: add expression build-in href() for backward compatibility
...
As deprecated alias for hiddenref()
2021-12-21 21:41:02 -07:00
Zheng, Lei
14dfae0597
App: add hiddenref() expression built-in function
...
Any object reference inside this function is treated as hidden to
exclude it from dependency calculation. This function allows some form
of cyclic depdenency.
Merger note: renamed from "HREF" to "HIDDENREF" to avoid confusion with
the standard "hypertext reference" use of HREF.
2021-11-14 20:45:09 -06:00
Zheng, Lei
2c6f621721
App: add expression built-in function str()
...
...for stringify
2021-10-12 13:42:10 -05:00
Chris Hennes
6780ded233
[App] Fix LGTM warning decl hides param
2021-09-19 12:31:24 -05:00
wmayer
44e82ac3c4
App: remove some more deprecated Py2 code
...
and remove deprecated void from function signature and replace 0 or NULL with nullptr
2021-04-26 10:55:56 +02:00
luz paz
fc6d1292d1
App: remove Py2 code from several src/App .cpp files
2021-04-19 15:27:06 +02:00
Benjamin Nauck
7ee7e60310
[App] Switch from boost::tuple to std::tuple
...
It's better to use the standard lib when possible
2021-03-06 19:31:06 +01:00
wmayer
44f42a8e2c
LGTM: [skip ci] fix: Declaration hides parameter
...
A local variable hides a parameter. This may be confusing. Consider renaming one of them.
2020-07-27 10:57:34 +02:00
wmayer
51585ac4a1
Coverity: Not restoring ostream format
2020-07-20 17:34:29 +02:00
wmayer
6dc9a89d97
Coverity: Empty virtual destructor
2020-07-20 17:34:27 +02:00
wmayer
aa3fde2dae
Coverity: Big parameter passed by value
2020-07-20 17:34:25 +02:00
wmayer
6e00846cdd
PVS: V646 Consider inspecting the application's logic. It's possible that 'else' keyword is missing.
2020-07-18 10:59:28 +02:00
wmayer
53a4cb9919
PVS: V501 There are identical sub-expressions to the left and to the right
2020-07-18 10:59:27 +02:00