assembly: use new API canAddToSceneGraph()

This commit is contained in:
Zheng, Lei 2018-07-13 11:21:33 +08:00
parent c359f07870
commit 871b945cf6

View File

@ -90,7 +90,8 @@ class ViewProviderAsmBase(object):
vobj.Proxy = self
self.attach(vobj)
_addToSceneGraph = False
def canAddToSceneGraph(self):
return False
def attach(self,vobj):
if hasattr(self,'ViewObject'):
@ -98,8 +99,6 @@ class ViewProviderAsmBase(object):
self.ViewObject = vobj
vobj.signalChangeIcon()
vobj.setPropertyStatus('Visibility','Hidden')
if not self._addToSceneGraph:
vobj.Document.ActiveView.getSceneGraph().removeChild(vobj.RootNode)
def __getstate__(self):
return None
@ -2358,7 +2357,6 @@ class Assembly(AsmGroup):
class ViewProviderAssembly(ViewProviderAsmGroup):
_iconName = 'Assembly_Assembly_Frozen_Tree.svg'
_addToSceneGraph = True
def __init__(self,vobj):
self._movingPart = None
@ -2369,6 +2367,9 @@ class ViewProviderAssembly(ViewProviderAsmGroup):
if not hasattr(vobj,'ShowParts'):
vobj.addProperty("App::PropertyBool","ShowParts"," Link")
def canAddToSceneGraph(self):
return True
def onDelete(self,vobj,_subs):
assembly = vobj.Object.Proxy
for o in assembly.getPartGroup().Group: