Commit Graph

74 Commits

Author SHA1 Message Date
Zheng, Lei
d73c4ff144 App: fix lost of Link when renaming linked file 2020-04-27 11:24:29 +02:00
wandererfan
49177d0416 [App]convenience getter for PropertyXLinkList 2020-04-14 10:24:29 -04:00
Zheng, Lei
51cf93012f App: fix Link document restore
This fixes issue #0004224
2020-02-14 19:46:36 +01:00
Zheng, Lei
8fd53f4f75 App: add PropertyXLinkList
PropertyXLinkList is derived from PropertyXLinkSubList, which is
modified to provide APIs compatible to PropertyLinkList.

The only difference between the two class is in their getPyObject() to
make PropertyXLinkList output similar to PropertyLinkList in Python. In
C++, both class can accept mix of objects link with or without subname,
depending on which set of APIs are used.
2020-02-11 15:40:27 -05:00
Zheng, Lei
6922b83674 App: fix PropertyXLink invalid external link 2020-02-11 15:40:27 -05:00
Zheng, Lei
b0cefd91e8 App: fix PropertyLinkSub(List) unicode handling 2020-02-11 15:40:27 -05:00
luz.paz
019f73852c src/App: [skip ci] fix header uniformity
This PR fixes header uniformity across all `src/App` files
2019-12-25 11:38:43 +01:00
asapelkin
5a75d2ff45 removed useless std::move on const and unmovable objects 2019-11-21 17:49:57 +01:00
asapelkin
ced8100ab9 use emplace_back instead of push_back where justified 2019-11-21 14:48:09 +01:00
Zheng, Lei
e3a6556878 App: fix PropertyXLink file path saving
Also modified ProeprtyLinkItem to show file path as tooltip.
2019-11-10 11:32:59 +01:00
Zheng, Lei
8426ebe2ba Fix various Py::Object leak 2019-10-08 17:53:20 +02:00
Zheng, Lei
c6bad2e487 App: fix PropertyXLink file path update 2019-10-08 10:26:03 +02:00
Zheng, Lei
661da78141 App: allow multiple subname in PropertyXLink
PropertyXLink and PropertyXLinkSub now only differ in getPyObject().
This is to allow Link support of multiple sub-element
2019-10-08 10:20:36 +02:00
luz.paz
fb32601746 Fix various (doxy) typos and whitespace issues
Found via `codespell -q 3 -L aci,ake,aline,alle,alledges,alocation,als,ang,anid,ba,beginn,behaviour,bloaded,byteorder,calculater,cancelled,cancelling,cas,cascade,centimetre,childs,colour,colours,commen,currenty,dof,doubleclick,dum,eiter,elemente,feld,freez,hist,iff,indicies,initialisation,initialise,initialised,initialises,initialisiert,ist,kilometre,lod,mantatory,methode,metres,millimetre,modell,nd,noe,normale,normaly,nto,numer,oder,orgin,orginx,orginy,ot,pard,pres,programm,que,recurrance,rougly,seperator,serie,sinc,strack,substraction,te,thist,thru,tread,uint,unter,vertexes,wallthickness,whitespaces -S ./.git,*.po,*.ts,./ChangeLog.txt,./src/3rdParty,./src/Mod/Assembly/App/opendcm,./src/CXX,./src/zipios++,./src/Base/swig*,./src/Mod/Robot/App/kdl_cp,./src/Mod/Import/App/SCL,./src/WindowsInstaller,./src/Doc/FreeCAD.uml`
2019-10-03 07:57:13 +02:00
wmayer
9fa56345cf core system
force strict ISO C++ (-Wpedantic)
TODO: still a lot of variadic macros are not valid ISO C++
2019-09-18 01:01:14 +02:00
Zheng, Lei
611159b000 App: remove unused variable 2019-08-30 15:52:18 +02:00
wmayer
1c234373d6 fix MSVC compiler warnings 2019-08-17 19:35:21 +02:00
luz.paz
3a1a6eb7d8 Fix typos in src/App 2019-08-17 15:32:48 +02:00
Zheng, Lei
29bc24a5cf PropertyLinks: refactor property link API
* Create new class PropertyLinkBase as the common parent class for all
  type of links. See the class document for details of its API.

* Added new link scope 'Hidden' that is ignored during normal object
  dependency calculation, but still keep tracks of object remove,
  relabel, etc.

* There is a new concept called 'Shadow subname' introduced in this
  patch, which will only be meaningful in future topological naming
  feature. See [here](https://git.io/fjXKR) for more details.

* DocumentObject added a new API adjustRelativeLink() and a helper
  resolveRelativeLink() function.
2019-08-17 14:52:09 +02:00
wmayer
c81a03ceb3 Improve handling of null pointers in link properties 2019-06-15 10:33:31 +02:00
wmayer
8a421b8e2e improve whitespaces 2018-10-19 22:25:55 +02:00
Markus Lampert
e13c09235f Changed all catch types to references for polymorphic exceptions. 2018-08-08 15:45:30 +02:00
DeepSOIC
73fc672909 App: fix py return of propertyLinkSubList
fixes #0002602

Now, it won't bunch up same object entries if they are not adjacent. I.e., same object  can appear twice and more, for example:
[(object1, ('Edge2', 'Edge3')), (object2, ('Edge1',)), (object1, ('Edge4', 'Edge5'))]

Complete bunching causes information loss, and it's impossible to fix the bug with keeping the bunching complete.
2018-04-13 09:42:26 -03:00
wmayer
ef864f2c15 fix bug and possible crash in overloaded method PropertyLinkSubList::setValues 2018-03-30 11:37:42 +02:00
wmayer
fd8562bce2 raise exception in PropertyLinkSubList::setPyObject for wrong type 2018-01-18 15:53:51 +01:00
Unknown
e3eca59173 Misc. typo fixes
Various workbenches
2017-12-23 14:30:30 +01:00
luzpaz
985980648c Typos: user-facing and trivial
Several typos and uniformity fixes.
Note: 
*SCL/SimpleDataTypes.py is a upstream stepcode file whose fiz has been submitted upstream and accepted.
*the header of Tools/generateBase/generateMetaModel_Module.xsd  had redundant data. It has been removed. Please double check it.
2017-12-02 14:00:57 +01:00
Stefan Tröger
e6c2bfd205 Maintain backlinks on dynamic property removal. fixes #0003189 2017-09-21 13:29:20 +02:00
wmayer
9d83bf8c12 mark document objects with Destroy flag before deleting them and handle this in the link properties 2017-09-13 16:14:19 +02:00
wmayer
f52b54e4f3 add method to remove elements from PropertyLinkSubList 2017-09-13 12:19:09 +02:00
wmayer
4ca7224312 support of loading old projects with shape binder or PartDesign boolean 2017-09-09 22:47:28 +02:00
wmayer
3a0c3499e5 improve whitespaces 2017-09-09 18:07:46 +02:00
Stefan Tröger
d5633c37bf Create special scope properties 2017-09-09 16:47:07 +02:00
Stefan Tröger
85125f2a49 Make InList hadling and topological sort more robust. fixes #0002871 2017-09-09 16:47:07 +02:00
wmayer
afb0934143 in PropertyLinkList replace assert with C++ exception to avoid a crash 2017-08-13 11:04:18 +02:00
Stefan Tröger
fd0d3f1a39 Revert link integrity checks in properties
The DAG test is not needed anymore as the relevant functions are non-DAG save now, and the other check will be moved to the recompute as it is not efficient or save to do it in the links itself.
2017-06-19 15:37:09 +02:00
Stefan Tröger
4b3fb99bf0 GeoFeatureGroup: Make link collection non-DAG save 2017-06-19 15:37:09 +02:00
Stefan Tröger
1d10dd2835 Extend python interface for groups and fix test cases 2017-06-19 15:37:09 +02:00
Stefan Tröger
e5c1f2bc70 Fix undo/redo while checking link integrity 2017-06-19 15:37:09 +02:00
Stefan Tröger
a1d9622eb5 Links ensure uncyclic graph and correct groups 2017-06-19 15:37:09 +02:00
wmayer
fb7094bf31 use specialized exception classes 2017-04-28 18:49:11 +02:00
wmayer
01bc2fc6ce fix crash with null pointer links
in PropertyLinkList handle case with null pointers as value
in STEP reader avoid to create coumpound objects with null pointer links
2017-01-30 16:47:31 +01:00
wmayer
31c21be635 improve whitespaces 2017-01-21 19:15:36 +01:00
Stefan Tröger
a076ae808b DAG: remove early return to avoid update chain changes 2017-01-21 19:15:36 +01:00
Stefan Tröger
7ba0a26354 DAG: remove defined but unused function 2017-01-21 19:15:36 +01:00
Stefan Tröger
a1deaf8338 DAG: Fix preprocessor definition inconsistencies 2017-01-21 19:15:36 +01:00
Stefan Tröger
49716393c6 DAG: Change object graph handling to be bidirectional 2017-01-21 19:15:36 +01:00
Yorik van Havre
bbd82ee895 Fixed setting an empty value to PropertyLinkSubList 2016-11-13 12:13:31 -02:00
wmayer
3d7dc6e56b issue #0002714: Segfault in PropertyLinkSubList::Save 2016-10-09 13:49:57 +02:00
Stefan Tröger
2420559431 Extensions: Revert few changes after restructuring 2016-10-08 12:48:34 +02:00