Show: Tempovis stack support

Improvents:
* Allows using several tempovis instances in arbitrary order
* plugin system (SceneDetail), ease of extending
* Mild restore feature - more respect for changes made by user
* workbench switching support
* undo saveable changes for the time of writing a file

Regressions:
* Removed support for pickling (with hopes to reintroduce later)
This commit is contained in:
DeepSOIC
2019-08-24 02:23:39 +03:00
committed by Yorik van Havre
parent f29765ff7b
commit a09b83ec0d
15 changed files with 1144 additions and 362 deletions

View File

@@ -64,25 +64,3 @@ def getAllDependent(feat):
list_traversing_now = list_to_be_traversed_next
return list_of_deps
def _isContainer(obj):
'''isContainer(obj): returns True if obj is an object container, such as
Group, Part, Body. The important characterisic of an object being a
container is visibility nesting.'''
if obj.hasChildElement():
return True
if obj.hasExtension('App::OriginGroupExtension'):
return True
if obj.hasExtension('App::GroupExtension'):
return True
if obj.isDerivedFrom('App::Origin'):
return True
return False
def isContainer(obj):
if _isContainer(obj):
return True
linked = obj.getLinkedObject()
return linked and linked!=obj and _isContainer(linked)