X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=InterfaceQT4%2FmonWidgetCommande.py;h=cc00c7bc1d2b4404c4f97c8e14c9efe30caf8aa4;hb=80eb29926b88137b9f0f19175c0d0c52d7dcc206;hp=6b8bd6914b603518bfe63e8d1f9f0fb8cb1a9674;hpb=45496e147f519f4e64795eff3f414cc65b72c1fd;p=tools%2Feficas.git diff --git a/InterfaceQT4/monWidgetCommande.py b/InterfaceQT4/monWidgetCommande.py index 6b8bd691..cc00c7bc 100644 --- a/InterfaceQT4/monWidgetCommande.py +++ b/InterfaceQT4/monWidgetCommande.py @@ -39,20 +39,34 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): #print "MonWidgetCommande ", self self.listeAffichageWidget=[] self.inhibe=0 + self.ensure=0 Groupe.__init__(self,node,editor,None,etape.definition,etape,1,self) + + if node.item.get_fr() != "" : self.labelDoc.setText(QString(node.item.get_fr())) + else : self.labelDoc.close() + if (etape.get_type_produit()==None): self.LENom.close() - elif (hasattr (etape, 'sdnom')) and etape.sdnom != "sansnom" : self.LENom.setText(etape.sdnom) + elif (hasattr(etape, 'sdnom')) and etape.sdnom != "sansnom" and etape.sdnom != None: self.LENom.setText(etape.sdnom) else : self.LENom.setText("") + maPolice= QFont("Times", 10,) self.setFont(maPolice) - self.repIcon=self.appliEficas.repIcon self.labelNomCommande.setText(tr(self.obj.nom)) + self.commandesLayout.addStretch() self.commandesLayout.focusInEvent=self.focusInEvent self.scrollAreaCommandes.focusInEvent=self.focusInEvent - #self.RBValide.focusInEvent=FacultatifOuOptionnel.focusInEvent - if self.editor.code in ['MAP','Adao','CARMELCND'] : self.bCatalogue.close() + + if self.editor.code in ['MAP','CARMELCND'] : self.bCatalogue.close() else : self.connect(self.bCatalogue,SIGNAL("clicked()"), self.afficheCatalogue) + if self.editor.code in ['Adao','MAP'] : + self.bAvant.close() + self.bApres.close() + 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) @@ -71,15 +85,31 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): self.editor.widgetOptionnel=self.monOptionnel self.editor.splitter.addWidget(self.monOptionnel) 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 - if self.editor.fenetreAffichee != self : return True - try : - i= self.listeAffichageWidget.index(self.focusWidget()) - except : - i = -1 + #print "je passe dans focusNextPrevChild" + if self.editor.fenetreCentraleAffichee != self : return True + 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() @@ -104,6 +134,20 @@ 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()) @@ -121,21 +165,49 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): def afficheOptionnel(self): # N a pas de parentQt. doit donc etre redefini liste=self.ajouteMCOptionnelDesBlocs() + #print "dans afficheOptionnel", self.monOptionnel 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): + self.avantH=self.editor.fenetreCentraleAffichee.scrollAreaCommandes.horizontalScrollBar().sliderPosition() + self.avantV=self.editor.fenetreCentraleAffichee.scrollAreaCommandes.verticalScrollBar().sliderPosition() + self.inhibeExpand=True self.node.affichePanneau() + print "dans reaffiche de monWidgetCommande", self.avantH, self.avantV + QTimer.singleShot(1, self.recentre) if nodeAVoir != None: - f=nodeAVoir.fenetre - qApp.processEvents() - self.editor.fenetreCentraleAffichee.scrollAreaCommandes.ensureWidgetVisible(f) + self.f=nodeAVoir.fenetre + if self.f==None : + newNode=nodeAVoir.treeParent.chercheNoeudCorrespondant(nodeAVoir.item.object) + self.f = newNode.fenetre + print "dans reaffiche",self.f, nodeAVoir.item.nom + if self.f != None and self.f.isVisible() : return + if self.f != None : QTimer.singleShot(1, self.rendVisible) + self.inhibeExpand=False + + + def recentre(self): + qApp.processEvents() + s=self.editor.fenetreCentraleAffichee.scrollAreaCommandes + s.horizontalScrollBar().setSliderPosition(self.avantH) + s.verticalScrollBar().setSliderPosition(self.avantV) + + def rendVisibleNoeud(self,node): + self.f=node.fenetre + print "dans rendVisibleNoeud",self.f, node.item.nom + QTimer.singleShot(1, self.rendVisible) + + def rendVisible(self): + qApp.processEvents() + self.f.setFocus(7) + self.editor.fenetreCentraleAffichee.scrollAreaCommandes.ensureWidgetVisible(self.f) def afficheCatalogue(self): if self.editor.code != "CARMELCND" : self.monOptionnel.hide() @@ -143,6 +215,12 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): if self.node : self.node.select() else : self.racine.select() + def afficheApres(self): + self.node.selectApres() + + def afficheAvant(self): + self.node.selectAvant() + def setValide(self): if not(hasattr (self,'RBValide')) : return icon = QIcon() @@ -153,3 +231,5 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): if self.node.item.GetIconName() == "ast-yellow-square" : icon=QIcon(self.repIcon+"/ast-yel-ball.png") self.RBValide.setIcon(icon) + +