X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=InterfaceQT4%2FgereListe.py;h=518b24e6d8368d936f143fe360c6560afdb6079f;hb=9e5ea0ed745d6d22d5ccd9c8dab56340c46809d9;hp=b88ee9e7f245a0d7d6b3e24b025617bd62189367;hpb=11a14adf4256e3e02100111af1e52a1936c80a71;p=tools%2Feficas.git diff --git a/InterfaceQT4/gereListe.py b/InterfaceQT4/gereListe.py index b88ee9e7..518b24e6 100644 --- a/InterfaceQT4/gereListe.py +++ b/InterfaceQT4/gereListe.py @@ -35,16 +35,56 @@ class LECustom(QLineEdit): """ Constructor """ - QMainWindow.__init__(self,parent) + QLineEdit.__init__(self,parent) self.parentQt=parentQt self.num=i + self.dansUnTuple=False def focusInEvent(self,event): - print "dans focusInEvent de LECustom" + #print "dans focusInEvent de LECustom" self.parentQt.LineEditEnCours=self self.parentQt.NumLineEditEnCours=self.num + self.setStyleSheet("border: 2px solid gray") QLineEdit.focusInEvent(self,event) + def focusOutEvent(self,event): + #print "dans focusOutEvent de LECustom" + self.setStyleSheet("border: 0px") + if self.dansUnTuple : self.setStyleSheet("background:rgb(235,235,235); border: 0px;") + elif self.num % 2 == 1 : self.setStyleSheet("background:rgb(210,210,210)") + else : self.setStyleSheet("background:rgb(235,235,235)") + QLineEdit.focusOutEvent(self,event) + + def clean(self): + self.setText("") + + def getValeur(self): + return self.text() + + def setValeur(self,valeur): + self.setText(valeur) + +# --------------------------- # +class LECustomTuple(LECustom): +# --------------------------- # + def __init__(self,parent): + # index sera mis a jour par TupleCustom + parentQt=parent.parent().parent().parent() + LECustom. __init__(self,parent,parentQt,0) + +# ---------------------------- # +class MonLabelListeClic(QLabel): +# ---------------------------- # + def __init__(self,parent): + QLabel.__init__(self,parent) + self.parent=parent + + def event(self,event) : + if event.type() == QEvent.MouseButtonRelease: + self.texte=self.text() + self.parent.traiteClicSurLabelListe(self.texte) + return QLabel.event(self,event) + @@ -66,6 +106,7 @@ class GereListe: if self.NumLineEditEnCours == 1 : return else : numEchange=self.NumLineEditEnCours-1 self.echange(self.NumLineEditEnCours,numEchange) + self.LineEditEnCours.setFocus(True) self.scrollArea.ensureWidgetVisible(self.LineEditEnCours) @@ -73,6 +114,7 @@ class GereListe: if self.NumLineEditEnCours == self.indexDernierLabel : return else : numEchange=self.NumLineEditEnCours+1 self.echange(self.NumLineEditEnCours,numEchange) + self.LineEditEnCours.setFocus(True) self.scrollArea.ensureWidgetVisible(self.LineEditEnCours) def echange(self,num1,num2): @@ -90,44 +132,52 @@ class GereListe: self.changeValeur(changeDePlace=False) self.NumLineEditEnCours=num2 self.LineEditEnCours=courant2 + self.LineEditEnCours.setFocus(True) def moinsPushed(self): # on supprime le dernier if self.NumLineEditEnCours==self.indexDernierLabel : - nomLineEdit=self.nomLine+str(aRemonter) + nomLineEdit=self.nomLine+str(self.indexDernierLabel) courant=getattr(self,nomLineEdit) - courant.setText("") + courant.clean() else : for i in range (self.NumLineEditEnCours, self.indexDernierLabel): aRemonter=i+1 nomLineEdit=self.nomLine+str(aRemonter) + print nomLineEdit courant=getattr(self,nomLineEdit) - valeurARemonter=courant.text() + valeurARemonter=courant.getValeur() + print valeurARemonter nomLineEdit=self.nomLine+str(i) + print nomLineEdit courant=getattr(self,nomLineEdit) - courant.setText(valeurARemonter) + if valeurARemonter != None : courant.setValeur(valeurARemonter) + else : courant.clean() nomLineEdit=self.nomLine+str(self.indexDernierLabel) courant=getattr(self,nomLineEdit) - courant.setText("") + courant.clean() self.changeValeur(changeDePlace=False,oblige=True) self.setValide() def plusPushed(self): if self.indexDernierLabel == self.monSimpDef.max: - self.editor.affiche_infos('nb max de valeurs : '+str(self.monSimpDef.max)+' atteint') + self.editor.affiche_infos('nb max de valeurs : '+str(self.monSimpDef.max)+' atteint',Qt.red) return self.ajoutLineEdit() + self.descendLesLignes() + + def descendLesLignes(self): if self.NumLineEditEnCours==self.indexDernierLabel : return nomLineEdit=self.nomLine+str(self.NumLineEditEnCours+1) courant=getattr(self,nomLineEdit) - valeurADescendre=courant.text() - courant.setText("") + valeurADescendre=courant.getValeur() + courant.clean() for i in range (self.NumLineEditEnCours+1, self.indexDernierLabel): aDescendre=i+1 nomLineEdit=self.nomLine+str(aDescendre) courant=getattr(self,nomLineEdit) - valeurAGarder=courant.text() - courant.setText(valeurADescendre) + valeurAGarder=courant.getValeur() + courant.setValeur(valeurADescendre) valeurADescendre=valeurAGarder self.changeValeur(changeDePlace=False) self.scrollArea.ensureWidgetVisible(self.LineEditEnCours)