X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=InterfaceQT4%2FmonWidgetRadioButton.py;h=a001617119fcfa6ae242e87cfd9196837512d3b2;hb=2f95ea634cb90376a8efd6e01ad3b2e93e802d9c;hp=82a1558371d359768af85273f2eb1c18233cfc1f;hpb=df0e1a1f57e70d3d99dd7fb381845500c3d3c6dd;p=tools%2Feficas.git diff --git a/InterfaceQT4/monWidgetRadioButton.py b/InterfaceQT4/monWidgetRadioButton.py index 82a15583..a0016171 100644 --- a/InterfaceQT4/monWidgetRadioButton.py +++ b/InterfaceQT4/monWidgetRadioButton.py @@ -20,9 +20,16 @@ # Modules Python import string,types,os +from determine import monEnvQT5 +if monEnvQT5: + from PyQt5.QtCore import Qt + from PyQt5.QtWidgets import QWidget +else : + from PyQt4.QtGui import * + from PyQt4.QtCore import * + # Modules Eficas -from PyQt4.QtGui import * -from PyQt4.QtCore import * + from Extensions.i18n import tr from feuille import Feuille @@ -40,6 +47,7 @@ class MonWidgetRadioButtonCommun (Feuille): self.determineChoix() self.setValeursApresBouton() self.parentQt.commandesLayout.insertWidget(-1,self) + self.AAfficher=self.radioButton_1 self.maCommande.listeAffichageWidget.append(self.radioButton_1) @@ -49,24 +57,26 @@ class MonWidgetRadioButtonCommun (Feuille): if not(type(valeur) in types.StringTypes) : valeur=str(valeur) try : self.dict_bouton[valeur].setChecked(True) + self.dict_bouton[valeur].setFocus(True) except : pass def determineChoix(self): self.horizontalLayout.setAlignment(Qt.AlignLeft) i=1 - j=len(self.monSimpDef.into) + j=len(self.maListeDeValeur) if j > self.maxI : print "poumbadaboum" return while i < j+1 : nomBouton="radioButton_"+str(i) bouton=getattr(self,nomBouton) - valeur=self.monSimpDef.into[i-1] + valeur=self.maListeDeValeur[i-1] if not(type(valeur) in types.StringTypes) : valeur=str(valeur) - bouton.setText(valeur) + bouton.setText(tr(valeur)) self.dict_bouton[valeur]=bouton - self.connect(bouton,SIGNAL("clicked()"),self.boutonclic) + if monEnvQT5 : bouton.clicked.connect(self.boutonclic) + else : self.connect(bouton,SIGNAL("clicked()"),self.boutonclic) bouton.keyPressEvent=self.keyPressEvent setattr(self,nomBouton,bouton) i=i+1 @@ -79,21 +89,22 @@ class MonWidgetRadioButtonCommun (Feuille): def boutonclic(self): for valeur in self.dict_bouton.keys(): if self.dict_bouton[valeur].isChecked(): - print "dans boutonclic is checked", valeur, type(valeur) + #print "dans boutonclic is checked", valeur, type(valeur) SaisieValeur.LEValeurPressed(self,valeur) - self.parentQt.reaffiche() + self.reaffiche() def keyPressEvent(self, event): if event.key() == Qt.Key_Right : self.selectSuivant(); return if event.key() == Qt.Key_Left : self.selectPrecedent(); return + if event.key() == Qt.Key_Return or event.key() == Qt.Key_Space : self.checkFocused(); return QWidget.keyPressEvent(self,event) def selectSuivant(self): aLeFocus=self.focusWidget() nom=aLeFocus.objectName()[12:] i=nom.toInt()[0]+1 - if i == len(self.monSimpDef.into) +1 : i=1 + if i == len(self.maListeDeValeur) +1 : i=1 nomBouton="radioButton_"+str(i) courant=getattr(self,nomBouton) courant.setFocus(True) @@ -102,18 +113,39 @@ class MonWidgetRadioButtonCommun (Feuille): aLeFocus=self.focusWidget() nom=aLeFocus.objectName()[12:] i=nom.toInt()[0]-1 - print i - if i == 0 : i= len(self.monSimpDef.into) - print i - print "_______" + if i == 0 : i= len(self.maListeDeValeur) nomBouton="radioButton_"+str(i) courant=getattr(self,nomBouton) courant.setFocus(True) + def checkFocused(self): + aLeFocus=self.focusWidget() + nom=aLeFocus.objectName()[12:] + i=nom.toInt()[0] + if i > 0 and i <= len(self.maListeDeValeur): + nomBouton="radioButton_"+str(i) + courant=getattr(self,nomBouton) + if not courant.isChecked(): + courant.setChecked(True) + self.boutonclic() + class MonWidgetRadioButton (Ui_WidgetRadioButton,MonWidgetRadioButtonCommun): def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): + #print "MonWidgetRadioButton ", self + self.maListeDeValeur=monSimpDef.into MonWidgetRadioButtonCommun.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) def setMaxI(self): self.maxI=3 + + +class MonWidgetRadioButtonSD (Ui_WidgetRadioButton,MonWidgetRadioButtonCommun): + + def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): + #print "dans le init de MonWidgetRadioButtonSD",self + self.maListeDeValeur=node.item.get_sd_avant_du_bon_type() + MonWidgetRadioButtonCommun.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) + + def setMaxI(self): + self.maxI=3