Commit Graph

540 Commits

Author SHA1 Message Date
wmayer
e8c7df1d67 minor improvements 2016-12-11 19:27:35 +01:00
Stefan Tröger
b09ca0c787 Extensions: Implement persistence 2016-12-11 19:27:35 +01:00
wmayer
6782fe8086 fix dangling pointer, remove superfluous semicolons, avoid excessive report messages of extension object 2016-12-09 23:03:18 +01:00
Stefan Tröger
67d76b309c Port Attacher codde to the extension framework
AttachableObjects are desired in multiple occasions, and the current AttachableObject is not flexible enough to handle all cases. Hence the code is portet to an extension, which gives the needed flexibility.
2016-12-07 06:41:40 +01:00
Stefan Tröger
c4911aeca1 Extensions: Add changed property handling 2016-12-07 06:37:27 +01:00
Stefan Tröger
88728bc73d Extensions: Group fix for python 2016-12-04 19:50:42 +01:00
Stefan Tröger
5ea603977f Extensions: Fix ViewProvider python interface 2016-12-04 17:35:00 +01:00
Stefan Tröger
ee4abeea5e Extensions: "hasExtension" for python types -fix 0002785 2016-11-28 22:15:09 +01:00
wmayer
a5537a992f add simple Python wrapper for Vector2d class 2016-11-21 22:01:34 +01:00
wmayer
01065b76d5 expose recompute() of document object to Python 2016-11-19 16:24:11 +01:00
Yorik van Havre
bf0d37bf28 Doc: Fixes in doxygen docs for Draft,Arch, FEM 2016-11-17 17:04:09 -02:00
wmayer
365a50603b improve unicode support for enumeration properties 2016-11-14 15:22:21 +01:00
wmayer
cc27b24da7 implement ExtensionContainerPy::getCustomAttributes to return a PyCFunction bound to the correct object 2016-11-13 17:49:10 +01:00
Yorik van Havre
bbd82ee895 Fixed setting an empty value to PropertyLinkSubList 2016-11-13 12:13:31 -02:00
wmayer
86f515ba25 fix typos 2016-11-12 17:57:14 +01:00
wmayer
8edd8cb599 do not allow to delete properties in FeaturePythonPyT 2016-11-10 23:57:41 +01:00
wmayer
bcbff88802 fix regression in FeaturePythonPyT 2016-11-10 21:43:01 +01:00
wmayer
24a50becb7 fix regression from pr334 2016-11-10 21:07:52 +01:00
wmayer
2d20bdecdd use only Python API for FeaturePythonPyT 2016-11-10 13:37:30 +01:00
Stefan Tröger
da1343e8ca Remove unneeded console output 2016-11-09 21:47:01 -02:00
Stefan Tröger
cda1d68472 Fix PythonFeature Group persistance 2016-11-09 21:47:01 -02:00
wmayer
2f16afc641 make FeaturePythonPyT more flexible 2016-11-09 22:02:42 +01:00
wmayer
b5cbaae73a move handling of dynamic properties from FeaturePythonPyT to DocumentObjectPy 2016-11-09 16:09:21 +01:00
wmayer
8ef85c51fa dynamic properties:
+ move addProperty, removeProperty and supportedProperties from FeaturePythonPyT to DocumentObjectPy
2016-11-09 10:35:49 +01:00
wmayer
37339057f8 dynamic properties:
+ reimplment addDynamicProperty and removeDynamicProperty in TransactionalObject to raise exceptions
+ move addProperty, removeProperty and supportedProperties from ViewProviderPythonFeaturePy to ViewProviderPy
2016-11-08 19:55:17 +01:00
wmayer
ff2a361928 fix several gcc warnings 2016-11-08 14:31:08 +01:00
ml
1a8ba4b2dd Support for running specific unit tests without breaking existing tests with argument '0' 2016-11-07 15:38:12 +01:00
wmayer
06da15e643 + add convenience method recomputeFeature()
+ make method recompute() protected
2016-11-06 17:16:50 +01:00
wmayer
b96f3d1163 break dependency to deleted object on rollback 2016-11-06 15:09:42 +01:00
wmayer
47b41a7883 fixes #0002460: Use keyword 'explicit' for Quantity constructor 2016-11-05 23:21:42 +01:00
wmayer
f551bf9cc3 introduce flag to skip recomputes of a document when needed 2016-10-21 22:23:34 +02:00
wmayer
70d746ca89 support more Qt options 2016-10-18 13:53:31 +02:00
wmayer
7fdf39244d set directory of file dialog when opening file by double-click, recent files list or drag and drop 2016-10-16 14:47:13 +02:00
wmayer
3d7dc6e56b issue #0002714: Segfault in PropertyLinkSubList::Save 2016-10-09 13:49:57 +02:00
wmayer
11a4c26dae + fix -Wunused-parameter 2016-10-08 15:13:56 +02:00
wmayer
f1127dd2f4 Fix issues:
+ improve formatting
+ remove superfluous semicolons
+ comment unused parameters
+ rename Initialisation to Initialization
+ rename Deinitialisation to Finalization
+ remove spaces
2016-10-08 12:48:34 +02:00
Stefan Tröger
0ae9346b3c Extenions: Drop virtual inheritance
Due to problems onthe windows platform the virtual inheritance approach must be dropped. NExt to the already reimplemented proeprty interface the Type interface is reimplemented too. This change allows to revert some earlier changes.
2016-10-08 12:48:34 +02:00
Stefan Tröger
92a294f6aa Extensions: Windows fixes 2016-10-08 12:48:34 +02:00
Stefan Tröger
2420559431 Extensions: Revert few changes after restructuring 2016-10-08 12:48:34 +02:00
Stefan Tröger
2978ead384 Remove accidently added .orig files 2016-10-08 12:48:34 +02:00
Stefan Tröger
28c21914d0 Extensions: Handle static/dynamic cast
After the change of the virtual inheritance position in the inheritance chain some
formally added dynamic_cast's can be reverted to the old behaviour
2016-10-08 12:48:34 +02:00
Stefan Tröger
687f96bf4b Extensions: Add type safety to PropertyData again 2016-10-08 12:48:34 +02:00
Stefan Tröger
89bbb81521 Extension: Fix order-of-initialisation crash
FreeCADs property system utilises some pointer math to calculate the offset between
property and base class. Due to virtual inheritance of th ePropertyContainer the memory
layout has been changed to rather random, which has lead to crashes dependend on the
order of object initialisation.

The solution is to not make PropertyContaner virtual but a class below, Base::Persitance.
Then the memory layout is random for Persistance, but it is perfectly aligned for the
base class chains from PropertyContainer onwards as well as from Extension onwards.
Hence the proeprty system was changed to take the offset always from those two.
2016-10-08 12:48:34 +02:00
Stefan Tröger
fc34fc2f2f Extensions: Fix crash due to wrong reference count 2016-10-08 12:48:34 +02:00
Stefan Tröger
07d749525f Extension: Dont override PythonFeature proxy name 2016-10-08 12:48:34 +02:00
Stefan Tröger
7a2fed1b75 Extension: Delete extensions correctly 2016-10-08 12:48:34 +02:00
Stefan Tröger
3e1ba47d61 Extensions: Handle new dynamic_cast's 2016-10-08 12:48:34 +02:00
Stefan Tröger
5b9aea71d5 Extensions: Port ViewProvider of GeoFeatureGroup 2016-10-08 12:48:34 +02:00
Stefan Tröger
f61bb9062e Extensions: Port ViewProvider of groups 2016-10-08 12:48:34 +02:00
Stefan Tröger
2a61aec97b Extensions: Fix rebase errors 2016-10-08 12:48:34 +02:00