Commit Graph

1505 Commits

Author SHA1 Message Date
wmayer
c2667384bd Replace std::ignore with boost::ignore_unused()
According to https://isocpp.org/blog/2016/09/quick-q-stdignore-for-ignoring-unused-variable std::ignore is not supposed to be used for this
2022-07-15 13:15:47 +02:00
wmayer
d7d503de8d App: fix build failure on Windows caused by PR #7034 2022-07-04 00:54:49 +02:00
flachyjoe
738f6f47e9 [App] Fix file not found error with canonical filename
boost::filesystem::canonical doesn't resolve non existent file where
boost::filesystem::weakly_canonical does.

Notice boost::filesystem::weakly_canonical only resolve absolute path.
2022-07-04 00:50:43 +02:00
flachyjoe
84d766f0eb [App] Fix #5592 : Respect symbolic links
Use the real path to the file when saving the document.
2022-07-04 00:50:43 +02:00
Uwe
e844c4d20b [App] [skip CI] fix minor code style issue
was introduced by commit 9a70b165
2022-07-02 18:10:26 +02:00
wmayer
9b2b0e0acf modernize C++: replace boost::function with std::function 2022-06-30 20:31:55 +02:00
wmayer
c7c43fcf4b Core: fix minor issues:
+ fix issues found by clang's clazy tool
+ fix cppcoreguidelines-pro-type-member-init
  * Make sure that all class members are initialized in the constructor
2022-06-30 16:31:16 +02:00
wmayer
d5921e08ec fix (Qt) issues found by clang's clazy tool:
+ -Wclazy-incorrect-emit
+ -Wclazy-strict-iterators
+ -Wclazy-overloaded-signal
+ -Wclazy-qstring-arg
+ -Wclazy-unused-non-trivial-variable
+ -Wclazy-container-anti-pattern
+ -Wclazy-range-loop-reference
+ -Wclazy-const-signal-or-slot
+ -Wclazy-detaching-temporary
+ -Wclazy-qfileinfo-exists
2022-06-29 21:00:54 +02:00
wmayer
22829f8a24 App: issue #7112: Addon manager does not work on windows with special characters in the username 2022-06-29 11:25:06 +02:00
wmayer
9a70b165cc App: fixes #7102: Undo/Redo of PropertyEnumeration fails with MSVC 2022-06-29 09:59:18 +02:00
wmayer
7db925d991 App: fix memory leaks in Enumeration class and simplify code 2022-06-25 18:18:57 +02:00
wmayer
2b04b01edc cppcoreguidelines-special-member-functions
* disable move constructor and move assignment for several core classes
2022-06-25 17:46:48 +02:00
wmayer
5234d9bc67 App: add pure virtual methods to PropertyGeometry to delegate it to the geometry of sub-classes
Following the law of Demeter add some wrapper methods to PropertyGeometry and implement them in sub-classes. As a side-effect this makes some const_cast obsolete
2022-06-24 16:15:02 +02:00
mosfet80
620c273c4e Boost version <=1.60 is never used in freecad 0.20 (#7038)
* Boost version 1.60 is never used in freecad 0.20
2022-06-24 02:20:26 +02:00
marioalexis
22763c9e4f App: Use PyObject_IsTrue in combination with conditional ternary operator 2022-06-22 19:50:03 -04:00
Christoph Moench-Tegeder
60e419068b fix Expressions assignment for FreeBSD
Just like Apple, FreeBSD uses clang as it's main compiler, and thus
runs afoul of the same problem in src/App/PropertyExpressionEngine.cpp
like Apple (issue #5281): "error: no viable overloaded '='".
Extend the fix from #5281 for the BSDs (check macro FC_OS_BSD) -
at least OpenBSD uses clang, too (maybe this check should be reworked
to test for clang, but I can't test on Apple, so let's keep this fix
minimalistic).

References: #5281
2022-06-19 16:14:10 +02:00
Uwe
063fd56f5f [App] remove unnecessary Boolean comparisons 2022-06-19 15:18:34 +02:00
wmayer
9e68e5f290 App: implement '*' operator for weak pointer classes 2022-06-13 13:52:21 +02:00
0penBrain
38ec63cba1 [Bugfix] Expression: fix precedence+associativity management in parenthesis removal
Fixes #6948
2022-06-11 15:59:06 +02:00
marioalexis
10edc03ec1 App: Clean up code in PropertyContainerPyImp.cpp 2022-06-09 18:46:41 -04:00
marioalexis
53e02bc851 App: Improve docstrings in PropertyContainerPy.xml 2022-06-09 18:46:41 -04:00
marioalexis
d8bf4dfeb9 App: Improve docstrings in MetadataPy.xml and fix memory leak 2022-06-09 17:48:45 -04:00
wmayer
7225e5f0ba App: issue #6892: FreeCAD fails to start 2022-06-09 15:40:37 +02:00
Zheng Lei
9d7b7af48c Spreadsheet: fix range checking (#6997)
* App: add option to normalize a Range

- To make sure the range starts from top left and ends with bottom right
corner.
- Default is to not normalize on construction for backward compatibility.
-  fix range checking in range binding
2022-06-09 12:20:08 +02:00
marioalexis
d7d22b1e7e App: Improve docstrings in GeoFeaturePy.xml 2022-06-08 19:20:04 +02:00
luz paz
a0c0b2616c Fix various typos 2022-06-01 18:03:40 -04:00
wmayer
8c123bad50 App: add default macro directory to sys.path 2022-06-01 11:21:51 +02:00
Benjamin Alterauge
03f3852617 List all available test units, if none is selected.
From the command line (FreeCADCmd) only which not need the GUI.

A better description

Grammatically improvement

Use PrintMessage
2022-05-31 02:03:11 +02:00
wmayer
2ecb11985e App: simplify code in Application::getResourceDir() and Application::getHelpDir() 2022-05-18 10:27:27 +02:00
wmayer
f3fd1d2035 App: inside Application::getLibraryDir() check if an absolute path name is set for LIBRARYDIR 2022-05-18 10:20:37 +02:00
Zheng, Lei
65889b6c80 App: Fix Origin::extensionGetSubObject() 2022-05-16 11:27:35 +02:00
wmayer
eb6adf17fa App: fix DocumentObjectPy::getSubObject:
* do not set pyMat to Py_None by default but nullptr and do type check in PyArg_ParseTupleAndKeywords
* if refType is out of range raise a ValueError instead of TypeError
* replace (undocumented) magic numbers with an enum class
* implement a lambda function to avoid code duplication
* fix bug for retType=3 or retType=4 if subname is a list of strings
2022-05-14 15:54:27 +02:00
Zheng, Lei
6340dcdd63 App: fix Origin getSubObject() 2022-05-14 14:02:21 +02:00
wmayer
b39c6f62b4 Base: replace several reinterpret_cast 2022-05-11 20:01:40 +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
a9d0d71b06 App: implement DocumentP::clearDocument() to reduce code duplication 2022-05-08 21:32:34 +02:00
Zheng, Lei
24b6f06015 App: fix crash on removing dynamic property
Related FreeCAD/FreeCAD#6840
2022-05-08 21:24:47 +02:00
Zheng, Lei
1d0e2f243a Fix mixed line ending 2022-05-08 21:24:47 +02:00
wmayer
ddf020e107 App: fixes #6844: Crash in PropertyXLinkContainer::updateDeps 2022-05-08 18:22:29 +02:00
wmayer
c960622b3d App: fixes #6840: Crash in ObjectIdentifier::resolveProperty 2022-05-06 20:34:08 +02:00
wmayer
3bea43a228 App: cannot assign a null pointer to a std::string
Depending on the compiler an exception is raised or a crash occurs
2022-05-06 15:14:37 +02:00
Zheng, Lei
15e1556f97 App: handle exception on change Link CopyOnChange 2022-05-05 11:37:38 -05:00
wmayer
dc53e6dce1 App: fix restoring the attributes of a dynamic property
For more details see: https://forum.freecadweb.org/viewtopic.php?p=591465#p591465
2022-05-03 16:52:54 +02:00
wmayer
eebdaadb94 App: handle 'NoPersists' property type in PropertyContainerPy::getTypeOfProperty 2022-05-03 14:10:42 +02:00
wmayer
95123b3399 App: expose PropertyType enum to Python 2022-05-03 11:24:23 +02:00
Zheng, Lei
fe5ac277a0 App: fix property conflict in App::Link restore
The conflict happens if the App::Link has dynamic property having the
same name as the linked object
2022-04-25 00:49:16 +02:00
wmayer
6bc65bdd99 Mod: issue #6274: Source code installation failed 2022-04-18 12:27:09 +02:00
marioalexis
8f3f1d1e4c App: Use regex to match names in ComplexGeoData::getSubElementByName 2022-04-15 17:38:17 +02:00
wmayer
631d36e87c App: [skip ci] fix bug in ComplexGeoDataPy::getPoints
The normals were added to the wrong list
2022-04-13 11:23:15 +02:00
0penBrain
78e1174018 Core: partially revert 4ab37fc that introduced composed units
Parser shall only deal with atomic units or it breaks other composed units
 Fixes #6735
2022-04-13 03:45:39 +02:00