assembly: use new selection on top core feature

This commit is contained in:
Zheng, Lei 2019-10-28 18:18:29 +08:00
parent 6725da5c91
commit 3b6ba266c4
2 changed files with 14 additions and 1 deletions

View File

@ -2494,6 +2494,10 @@ class ViewProviderAsmConstraint(ViewProviderAsmGroup):
def attach(self,vobj):
super(ViewProviderAsmConstraint,self).attach(vobj)
vobj.OnTopWhenSelected = 2
try:
vobj.SwitchNode.overrideSwitch = 'OverrideVisible'
except Exception:
pass
def getIcon(self):
return Constraint.getIcon(self.ViewObject.Object)
@ -2602,6 +2606,12 @@ class ViewProviderAsmConstraintGroup(ViewProviderAsmGroup):
def dropObjectEx(self,_vobj,obj,_owner,_subname,_elements):
AsmPlainGroup.tryMove(obj,self.ViewObject.Object)
def attach(self,vobj):
super(ViewProviderAsmConstraintGroup,self).attach(vobj)
try:
vobj.SwitchNode.overrideSwitch = 'OverrideReset'
except Exception:
pass
class AsmElementGroup(AsmGroup):
def __init__(self,parent):

View File

@ -38,11 +38,14 @@ class SelectionObserver:
if vis:
FreeCADGui.Selection.updateSelection(vis,obj,subname)
_ViewParam = FreeCAD.ParamGet('User parameter:BaseApp/Preferences/View')
def setElementVisible(self,docname,objname,subname,vis,presel=False):
if FreeCAD.isRestoring():
self.resetElementVisible()
return
if not AsmCmdManager.AutoElementVis:
if not AsmCmdManager.AutoElementVis \
or self._ViewParam.GetBool('ShowSelectionOnTop',False):
self.elements.clear()
return
doc = FreeCAD.getDocument(docname)