1 # Copyright (C) 2007-2021 EDF R&D
3 # This library is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU Lesser General Public
5 # License as published by the Free Software Foundation; either
6 # version 2.1 of the License.
8 # This library is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 # Lesser General Public License for more details.
13 # You should have received a copy of the GNU Lesser General Public
14 # License along with this library; if not, write to the Free Software
15 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22 from __future__ import absolute_import
23 from PyQt5.QtWidgets import QCheckBox, QWidget
24 from PyQt5.QtCore import Qt
26 from Extensions.i18n import tr
27 from desWidgetOptionnel import Ui_WidgetOptionnel
28 from .monGroupeOptionnel import MonGroupeOptionnel
32 class MonWidgetOptionnel (QWidget,Ui_WidgetOptionnel):
33 def __init__(self,parentQt):
34 #print ("dans init de monWidgetOptionnel ", parentQt )
35 QWidget.__init__(self,None)
37 self.dicoMCWidgetOptionnel={}
38 self.parentQt=parentQt
40 def afficheOptionnel(self,liste,liste_rouge,MC):
41 #print ('afficheOptionnel MonWidgetOptionnel',self, liste,MC.node.item.nom)
42 self.vireLesAutres(MC)
44 if MC.node.item.nom in self.dicoMCWidgetOptionnel :
45 #print (MC.node.item.nom)
46 self.dicoMCWidgetOptionnel[MC.node.item.nom].close()
47 self.dicoMCWidgetOptionnel[MC.node.item.nom].setParent(None)
48 self.dicoMCWidgetOptionnel[MC.node.item.nom].deleteLater()
49 del self.dicoMCWidgetOptionnel[MC.node.item.nom]
51 groupe = MonGroupeOptionnel(liste,liste_rouge,self,MC)
52 self.groupesOptionnelsLayout.insertWidget(0,groupe)
53 self.dicoMCWidgetOptionnel[MC.node.item.nom]=groupe
56 def vireLesAutres(self,MC):
57 #print( "je passe dans vireLesAutres")
58 genea =MC.obj.getGenealogie()
60 for k in list(self.dicoMCWidgetOptionnel.keys()):
62 #if k not in genea : print ( k)
64 self.dicoMCWidgetOptionnel[k].close()
65 del self.dicoMCWidgetOptionnel[k]
66 #print( "fin vireLesAutres")
69 for k in list(self.dicoMCWidgetOptionnel.keys()):
70 self.dicoMCWidgetOptionnel[k].close()
71 del self.dicoMCWidgetOptionnel[k]
73 def afficheOptionnelVide(self):
74 self.GeneaLabel.setText("")
75 for k in list(self.dicoMCWidgetOptionnel.keys()):
76 self.dicoMCWidgetOptionnel[k].close()
77 del self.dicoMCWidgetOptionnel[k]
80 if self.parentCommande.node.editor.maConfiguration.closeFrameRechercheCommande==True :
81 self.frameLabelCommande.close()
83 labeltext,fonte,couleur = self.parentCommande.node.item.getLabelText()
91 for l in li : texte+=l+"\n"
93 self.GeneaLabel.setText(tr("Options pour \n") +texte)