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.
This commit is contained in:
Zheng, Lei
2019-06-29 17:24:14 +08:00
committed by wmayer
parent de4651bc99
commit 29bc24a5cf
8 changed files with 4712 additions and 242 deletions

View File

@@ -176,6 +176,11 @@ non-object sub-element name if any.
</UserDocu>
</Documentation>
</Methode>
<Methode Name="adjustRelativeLinks">
<Documentation>
<UserDocu>adjustRelativeLinks(parent,recursive=True) -- auto correct potential cyclic dependencies</UserDocu>
</Documentation>
</Methode>
<Attribute Name="OutList" ReadOnly="true">
<Documentation>
<UserDocu>A list of all objects this object links to.</UserDocu>