Arch: Hide/show windows together with their parents - fixes #1733
This commit is contained in:
parent
9f7956b17e
commit
f1dffbb90e
|
@ -140,8 +140,6 @@ def removeComponents(objectsList,host=None):
|
|||
for o in objectsList:
|
||||
if not o in s:
|
||||
s.append(o)
|
||||
if FreeCAD.GuiUp:
|
||||
o.ViewObject.hide()
|
||||
if Draft.getType(o) == "Window":
|
||||
# fix for sketch-based windows
|
||||
if o.Base:
|
||||
|
@ -158,7 +156,10 @@ def removeComponents(objectsList,host=None):
|
|||
if o.Base.ExternalGeometry[i][0].Name == host.Name:
|
||||
o.Base.delExternal(i)
|
||||
FreeCAD.Console.PrintMessage(translate("Arch","removing sketch support to avoid cross-referencing"))
|
||||
break
|
||||
break
|
||||
else:
|
||||
if FreeCAD.GuiUp:
|
||||
o.ViewObject.hide()
|
||||
host.Subtractions = s
|
||||
else:
|
||||
for o in objectsList:
|
||||
|
|
|
@ -639,6 +639,10 @@ class ViewProviderComponent:
|
|||
return
|
||||
|
||||
def onChanged(self,vobj,prop):
|
||||
if prop == "Visibility":
|
||||
for obj in vobj.Object.Additions+vobj.Object.Subtractions:
|
||||
if Draft.getType(obj) == "Window":
|
||||
obj.ViewObject.Visibility = vobj.Visibility
|
||||
return
|
||||
|
||||
def attach(self,vobj):
|
||||
|
|
|
@ -392,7 +392,7 @@ class _CommandWindow:
|
|||
self.FORMAT = DraftGui.makeFormatSpec(self.DECIMALS,'Length')
|
||||
|
||||
# auto mode
|
||||
if sel:
|
||||
if sel and FreeCADGui.Selection.getSelectionEx():
|
||||
obj = sel[0]
|
||||
if Draft.getType(obj) in AllowedHosts:
|
||||
# make sure only one face is selected
|
||||
|
|
Loading…
Reference in New Issue
Block a user