X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=InterfaceQT4%2FmonWidgetCommande.py;h=feb1eadbe4e74348d3fd329b6c418b9582130ef7;hb=7422339c9ef09b4edf709471a05eb2bf552c9337;hp=270620fa410ba053b45421ba8a47f04b95b0ce43;hpb=1d010ff4e7d10301413f4760ae487291fcb2b2ca;p=tools%2Feficas.git diff --git a/InterfaceQT4/monWidgetCommande.py b/InterfaceQT4/monWidgetCommande.py index 270620fa..feb1eadb 100644 --- a/InterfaceQT4/monWidgetCommande.py +++ b/InterfaceQT4/monWidgetCommande.py @@ -51,7 +51,6 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): maPolice= QFont("Times", 10,) self.setFont(maPolice) - self.repIcon=self.appliEficas.repIcon self.labelNomCommande.setText(tr(self.obj.nom)) self.commandesLayout.addStretch() @@ -66,6 +65,8 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): else : self.connect(self.bAvant,SIGNAL("clicked()"), self.afficheAvant) self.connect(self.bApres,SIGNAL("clicked()"), self.afficheApres) + + self.connect(self.LENom,SIGNAL("returnPressed()"),self.nomChange) self.racine=self.node.tree.racine if self.node.item.GetIconName() == "ast-red-square" : self.LENom.setDisabled(True) @@ -77,32 +78,51 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): self.RBPoubelle.close() # JDC Fige return # Pas de MC Optionnels pour Carmel from monWidgetOptionnel import MonWidgetOptionnel - if hasattr(self.editor,'widgetOptionnel') : + #if hasattr(self.editor,'widgetOptionnel') : + if self.editor.widgetOptionnel!= None : self.monOptionnel=self.editor.widgetOptionnel else : self.monOptionnel=MonWidgetOptionnel(self) self.editor.widgetOptionnel=self.monOptionnel self.editor.splitter.addWidget(self.monOptionnel) - #print "dans init ", self.monOptionnel + #self.editor.restoreSplitterSizes() self.afficheOptionnel() #print "fin init de widget Commande" + def donnePremier(self): + #print "dans donnePremier" + qApp.processEvents() + if self.listeAffichageWidget != [] : + self.listeAffichageWidget[0].setFocus(7) + qApp.processEvents() + #print self.focusWidget() + + def focusNextPrevChild(self, next): # on s assure que ce n est pas un chgt de fenetre #print "je passe dans focusNextPrevChild" if self.editor.fenetreCentraleAffichee != self : return True - try : - i= self.listeAffichageWidget.index(self.focusWidget()) - except : - i = -1 + f=self.focusWidget() + if f not in self.listeAffichageWidget : + i=0 + while not hasattr (f,'AAfficher') : + if f==None :i=-1; break + f=f.parentWidget() + if hasattr(f,'AAfficher') : f=f.AAfficher + if i != -1 : i=self.listeAffichageWidget.index(f) + else :i=self.listeAffichageWidget.index(f) if (i==len(self.listeAffichageWidget) -1) and next and not self.inhibe: - self.listeAffichageWidget[1].setFocus(7) - w=self.focusWidget() - self.inhibe=1 - w.focusPreviousChild() - self.inhibe=0 - return True + try : + self.listeAffichageWidget[1].setFocus(7) + w=self.focusWidget() + self.inhibe=1 + w.focusPreviousChild() + self.inhibe=0 + return True + except : + print self.listeAffichageWidget + print "souci ds focusNextPrevChild" if i==0 and next==False and not self.inhibe: if hasattr(self.editor.fenetreCentraleAffichee,'scrollArea'): self.editor.fenetreCentraleAffichee.scrollArea.ensureWidgetVisible(self.listeAffichageWidget[-1]) @@ -112,6 +132,17 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): w.focusNextChild() self.inhibe=0 return True + if i==0 and next==True and not self.inhibe: + self.listeAffichageWidget[0].setFocus(7) + self.inhibe=1 + w=self.focusWidget() + w.focusNextChild() + self.inhibe=0 + return True + if i>0 and next==False and not self.inhibe: + if isinstance(self.listeAffichageWidget[i-1],QRadioButton): + self.listeAffichageWidget[i-1].setFocus(7) + return True return QWidget.focusNextPrevChild(self, next) def etablitOrdre(self): @@ -120,13 +151,27 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): self.setTabOrder(self.listeAffichageWidget[i],self.listeAffichageWidget[i+1]) i=i+1 # si on boucle on perd l'ordre + + def afficheSuivant(self,f): + try : + i=self.listeAffichageWidget.index(f) + next=i+1 + except : + next=1 + if (next==len(self.listeAffichageWidget) -1 ): next =0 + #self.f=next + #QTimer.singleShot(1, self.rendVisible) + try : + self.listeAffichageWidget[next].setFocus(7) + except : + pass def nomChange(self): nom = str(self.LENom.text()) nom = string.strip(nom) if nom == '' : return # si pas de nom, on ressort sans rien faire test,mess = self.node.item.nomme_sd(nom) - self.editor.affiche_infos(mess) + self.editor.affiche_commentaire(mess) #Notation scientifique if test : @@ -138,13 +183,15 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): # N a pas de parentQt. doit donc etre redefini liste=self.ajouteMCOptionnelDesBlocs() #print "dans afficheOptionnel", self.monOptionnel + # dans le cas ou l insertion n a pas eu leiu (souci d ordre par exemple) + #if self.monOptionnel == None : return self.monOptionnel.parentMC=self self.monOptionnel.affiche(liste) - def focusInEvent(self,event): + #def focusInEvent(self,event): #print "je mets a jour dans focusInEvent de monWidget Commande " - if self.editor.code == "CARMELCND" : return #Pas de MC Optionnels pour Carmel - self.afficheOptionnel() + # if self.editor.code == "CARMELCND" : return #Pas de MC Optionnels pour Carmel + # self.afficheOptionnel() def reaffiche(self,nodeAVoir=None): @@ -152,7 +199,7 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): self.avantV=self.editor.fenetreCentraleAffichee.scrollAreaCommandes.verticalScrollBar().sliderPosition() self.inhibeExpand=True self.node.affichePanneau() - print "dans reaffiche de monWidgetCommande", self.avantH, self.avantV + #print "dans reaffiche de monWidgetCommande", self.avantH, self.avantV QTimer.singleShot(1, self.recentre) if nodeAVoir != None: self.f=nodeAVoir.fenetre @@ -178,11 +225,11 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): def rendVisible(self): qApp.processEvents() - self.f.setFocus() + self.f.setFocus(7) self.editor.fenetreCentraleAffichee.scrollAreaCommandes.ensureWidgetVisible(self.f) def afficheCatalogue(self): - if self.editor.code != "CARMELCND" : self.monOptionnel.hide() + if self.editor.widgetOptionnel != None : self.monOptionnel.hide() self.racine.affichePanneau() if self.node : self.node.select() else : self.racine.select()