gui: eliminate unnecssary warning in auto element vis
This commit is contained in:
parent
61466dce67
commit
ce6b13bdd1
20
gui.py
20
gui.py
|
@ -19,8 +19,7 @@ class SelectionObserver:
|
||||||
for cmd in self.cmds:
|
for cmd in self.cmds:
|
||||||
cmd.checkActive()
|
cmd.checkActive()
|
||||||
|
|
||||||
def _setElementVisible(self,docname,objname,subname,vis):
|
def _setElementVisible(self,obj,subname,vis):
|
||||||
obj = FreeCAD.getDocument(docname).getObject(objname)
|
|
||||||
sobj = obj.getSubObject(subname,1)
|
sobj = obj.getSubObject(subname,1)
|
||||||
from .assembly import isTypeOf,AsmConstraint,\
|
from .assembly import isTypeOf,AsmConstraint,\
|
||||||
AsmElement,AsmElementLink
|
AsmElement,AsmElementLink
|
||||||
|
@ -43,6 +42,12 @@ class SelectionObserver:
|
||||||
if not AsmCmdManager.AutoElementVis:
|
if not AsmCmdManager.AutoElementVis:
|
||||||
self.elements.clear()
|
self.elements.clear()
|
||||||
return
|
return
|
||||||
|
doc = FreeCAD.getDocument(docname)
|
||||||
|
if not doc:
|
||||||
|
return
|
||||||
|
obj = doc.getObject(objname)
|
||||||
|
if not obj:
|
||||||
|
return
|
||||||
key = (docname,objname,subname)
|
key = (docname,objname,subname)
|
||||||
val = None
|
val = None
|
||||||
if not vis:
|
if not vis:
|
||||||
|
@ -50,7 +55,7 @@ class SelectionObserver:
|
||||||
if val is None or (presel and val):
|
if val is None or (presel and val):
|
||||||
return
|
return
|
||||||
if logger.catchWarn('',self._setElementVisible,
|
if logger.catchWarn('',self._setElementVisible,
|
||||||
docname,objname,subname,vis) is False and presel:
|
obj,subname,vis) is False and presel:
|
||||||
return
|
return
|
||||||
if not vis:
|
if not vis:
|
||||||
self.elements.pop(key,None)
|
self.elements.pop(key,None)
|
||||||
|
@ -63,8 +68,13 @@ class SelectionObserver:
|
||||||
elements = list(self.elements)
|
elements = list(self.elements)
|
||||||
self.elements.clear()
|
self.elements.clear()
|
||||||
for docname,objname,subname in elements:
|
for docname,objname,subname in elements:
|
||||||
logger.catchWarn('',self._setElementVisible,
|
doc = FreeCAD.getDocument(docname)
|
||||||
docname,objname,subname,False)
|
if not doc:
|
||||||
|
continue
|
||||||
|
obj = doc.getObject(objname)
|
||||||
|
if not obj:
|
||||||
|
continue
|
||||||
|
logger.catchWarn('',self._setElementVisible,obj,subname,False)
|
||||||
|
|
||||||
def addSelection(self,docname,objname,subname,_pos):
|
def addSelection(self,docname,objname,subname,_pos):
|
||||||
self.onChanged()
|
self.onChanged()
|
||||||
|
|
Loading…
Reference in New Issue
Block a user