Arch: bugfixes in reference tool

This commit is contained in:
Yorik van Havre
2018-10-01 18:36:29 -03:00
parent 6f90e4c892
commit 17b00b3aca
2 changed files with 15 additions and 7 deletions

View File

@@ -406,12 +406,18 @@ class BuildingPart:
"recursively get the shapes of objects inside this BuildingPart"
shapes = []
if obj.isDerivedFrom("Part::Feature") and obj.Shape and (not obj.Shape.isNull()):
shapes.append(obj.Shape)
if hasattr(obj,"Group"):
for child in obj.Group:
if child.isDerivedFrom("Part::Feature") and child.Shape and (not child.Shape.isNull()):
shapes.append(child.Shape)
elif hasattr(child,"Group"):
shapes.extend(self.getShapes(child))
shapes.extend(self.getShapes(child))
for i in obj.InList:
if hasattr(i,"Hosts"):
if obj in i.Hosts:
shapes.extend(self.getShapes(i))
elif hasattr(i,"Host"):
if obj == i.Host:
shapes.extend(self.getShapes(i))
return shapes
def getSpaces(self,obj):

View File

@@ -96,6 +96,7 @@ class ArchReference:
def onDocumentRestored(self,obj):
ArchReference.setProperties(self,obj)
self.reload = False
def __getstate__(self):
@@ -244,10 +245,11 @@ class ViewProviderArchReference:
self.Object.touch()
self.Object.ViewObject.TimeStamp = st_mtime
def onDelete(self):
def onDelete(self,obj,doc):
self.timer.stop()
del self.timer
if hasattr(self,"timer"):
self.timer.stop()
del self.timer
def setupContextMenu(self,vobj,menu):