From a7ded564aa5df862199ddce3c379da05f96e0eed Mon Sep 17 00:00:00 2001 From: Christian Caremoli <> Date: Mon, 29 May 2006 07:12:38 +0000 Subject: [PATCH] CCAR: diverses modifications pour pouvoir piloter l'IHM en produisant des evenements souris, clavier, etc. L'essentiel des modifications consiste a garder des poignees sur les labels, boutons, etc et a ajouter des bindings sur la touche . Une limite est que l'evenement ne peut etre produit par event_generate. --- Editeur/appli.py | 2 +- Editeur/bureau.py | 7 ++- Editeur/fonctionpanel.py | 14 ++--- Editeur/panels.py | 26 ++++------ Editeur/plusieursassdpanel.py | 18 +++---- Editeur/plusieursbasepanel.py | 97 ++++++++++++++--------------------- Editeur/plusieursintopanel.py | 14 ++--- Editeur/plusieurspanel.py | 16 ++---- Editeur/treewidget.py | 8 +-- Editeur/uniqueassdpanel.py | 1 + Editeur/uniqueintopanel.py | 2 +- Editeur/uniquesdcopanel.py | 34 +++--------- Editeur/widgets.py | 25 +++------ 13 files changed, 98 insertions(+), 166 deletions(-) diff --git a/Editeur/appli.py b/Editeur/appli.py index c7551ae4..9e11eb89 100644 --- a/Editeur/appli.py +++ b/Editeur/appli.py @@ -51,7 +51,7 @@ import session import listeFichiers import listePatrons -VERSION="EFICAS v1.9" +VERSION="EFICAS v1.10" class APPLI: def __init__ (self,master,code=prefs.code,fichier=None,test=0) : diff --git a/Editeur/bureau.py b/Editeur/bureau.py index 38d1f6c6..4d5dfedf 100644 --- a/Editeur/bureau.py +++ b/Editeur/bureau.py @@ -144,7 +144,7 @@ class BUREAU: def newJDC_include(self,event=None): """ - Initialise un nouveau JDC vierge + Initialise un nouveau JDC include vierge """ import Extensions.jdc_include JdC_aux=Extensions.jdc_include.JdC_include @@ -168,10 +168,11 @@ class BUREAU: self.fileName=None self.ShowJDC(J,self.JDCName) self.appli.toolbar.active_boutons() + return J def newJDC(self,event=None): """ - Initialise un nouveau JDC include vierge + Initialise un nouveau JDC vierge """ self.appli.statusbar.reset_affichage_infos() @@ -185,6 +186,7 @@ class BUREAU: self.fileName=None self.ShowJDC(J,self.JDCName) self.appli.toolbar.active_boutons() + return J def ShowJDC(self,JDC,nom,label_onglet=None,JDCDISPLAY=JDCDISPLAY,enregistre="non"): """ @@ -389,6 +391,7 @@ class BUREAU: if not self.JDC.isvalid(): self.appli.top.update() self.visuCR(mode='JDC') + return J def deplieReplieNode(self): self.JDCDisplay_courant.tree.tree.deplieReplieNode() diff --git a/Editeur/fonctionpanel.py b/Editeur/fonctionpanel.py index 55280b79..a5661581 100644 --- a/Editeur/fonctionpanel.py +++ b/Editeur/fonctionpanel.py @@ -105,14 +105,14 @@ class FONCTION_Panel(PLUSIEURS_BASE_Panel): self.ajout_valeurs = None # boutons Ajouter et Supprimer - bouton_add = Button(self.frame_boutons_fleches, + self.bouton_add = Button(self.frame_boutons_fleches, image = images.get_image('arrow_left'), command = self.add_double_valeur_plusieurs_base) - bouton_sup = Button(self.frame_boutons_fleches, + self.bouton_sup = Button(self.frame_boutons_fleches, image = images.get_image('arrow_right'), command = self.sup_valeur_sans_into) - bouton_add.place(relx=0.3,rely=0.35) - bouton_sup.place(relx=0.3,rely=0.65) + self.bouton_add.place(relx=0.3,rely=0.35) + self.bouton_sup.place(relx=0.3,rely=0.65) # affichage de l'aide self.frame_aide.update() self.aide = Label(self.frame_aide, @@ -123,13 +123,13 @@ class FONCTION_Panel(PLUSIEURS_BASE_Panel): self.aide.place(relx=0.5,rely=0.5,anchor='center',relwidth=1) self.Liste_valeurs.affiche_liste() # boutons Accepter et Annuler - bouton_accepter = Button(self.frame_boutons, + self.bouton_accepter = Button(self.frame_boutons, text='Valider', command = lambda s=self,m=min,M=max : s.accepte_modifs_valeur_recolle(m,M)) - bouton_annuler = Button(self.frame_boutons, + self.bouton_annuler = Button(self.frame_boutons, text = 'Annuler', command = self.annule_modifs_valeur) - for but in (bouton_accepter,bouton_annuler): + for but in (self.bouton_accepter,self.bouton_annuler): but.pack(side='left',padx=4) diff --git a/Editeur/panels.py b/Editeur/panels.py index 0610919f..3b84a1ba 100644 --- a/Editeur/panels.py +++ b/Editeur/panels.py @@ -297,10 +297,13 @@ class OngletPanel(Panel) : return if OngletPanel.panelbind == None: return - OngletPanel.panelbind.unbind_all("") - OngletPanel.panelbind.unbind_all("") - OngletPanel.panelbind.unbind_all("") - OngletPanel.panelbind.unbind_all("") + try: + OngletPanel.panelbind.unbind_all("") + OngletPanel.panelbind.unbind_all("") + OngletPanel.panelbind.unbind_all("") + OngletPanel.panelbind.unbind_all("") + except: + pass OngletPanel.panelbind = None def commande_up(self,num): @@ -376,6 +379,7 @@ class OngletPanel(Panel) : Liste.MCbox.bind("",self.parent.appli.efface_aide) if len(liste_mc) > 0 : Liste.surligne(liste_mc[0]) + self.Liste=Liste def makeCommentairePage(self,page): label = Label(page,text = "Insérer un commentaire :") @@ -414,6 +418,7 @@ class OngletPanel(Panel) : bulle_aide="""Double-cliquez sur la commande que vous voulez ajouter au jeu de commandes""" Liste.MCbox.bind("", lambda e,s=self,a=bulle_aide : s.parent.appli.affiche_aide(e,a)) Liste.MCbox.bind("",self.parent.appli.efface_aide) + self.liste_command=Liste global panneauCommande panneauCommande=self @@ -477,11 +482,9 @@ class OngletPanel(Panel) : # les frame ... self.frame_comment = Frame(page,bd=1,relief='raised') self.frame_param = Frame(page,bd=1,relief='raised') - #self.frame_eval = Frame(page,bd=1,relief='raised') self.frame_boutons = Frame(page,bd=1,relief='raised') self.frame_comment.place(relx=0,rely=0,relwidth=1,relheight=0.40) self.frame_param.place(relx=0,rely=0.40,relwidth=1,relheight=0.40) - #self.frame_eval.place(relx=0,rely=0.56,relwidth=1,relheight=0.28) self.frame_boutons.place(relx=0,rely=0.84,relwidth=1,relheight=0.16) # remplissage de la frame commentaire Label(self.frame_comment,text = "Insérer un commentaire :").place(relx=0.1,rely=0.5,anchor='w') @@ -503,17 +506,6 @@ class OngletPanel(Panel) : command = self.ajout_parametre) but_param_avant.place(relx=0.45,rely=0.3,anchor='w',relwidth=0.45) but_param_apres.place(relx=0.45,rely=0.7,anchor='w',relwidth=0.45) - # remplissage de la frame eval - #Label(self.frame_eval,text="Insérer un paramètre EVAL :").place(relx=0.1,rely=0.5,anchor='w') - #Label(self.frame_eval,text='Non encore disponible').place(relx=0.6,rely=0.5,anchor='w') - #but_eval_avant = Button(self.frame_eval, - # text = "AVANT "+self.node.item.get_nom(), - # command = lambda s=self :s.ajout_parametre_eval(ind = 'before')) - #but_eval_apres = Button(self.frame_eval, - # text = "APRES "+self.node.item.get_nom(), - # command = self.ajout_parametre_eval) - #but_eval_avant.place(relx=0.6,rely=0.3,anchor='w',relwidth=0.3) - #but_eval_apres.place(relx=0.6,rely=0.7,anchor='w',relwidth=0.3) # remplissage de la frame boutons Button(self.frame_boutons, text="Commentariser toute la commande", diff --git a/Editeur/plusieursassdpanel.py b/Editeur/plusieursassdpanel.py index cd236396..88eea05d 100644 --- a/Editeur/plusieursassdpanel.py +++ b/Editeur/plusieursassdpanel.py @@ -75,30 +75,26 @@ class PLUSIEURS_ASSD_Panel(PLUSIEURS_Panel): ("",self.sup_valeur_sans_into)) liste_commandes_choix = (("",self.selectChoix), ("",self.deselectChoix), - # ("",self.add_valeur_sans_into)) ("",self.add_eval_valeur_sans_into)) self.Liste_valeurs = ListeChoix(self,self.frame_valeurs,l_valeurs,liste_commandes = liste_commandes_valeurs, titre="Valeur(s) actuelle(s)") self.Liste_choix = ListeChoix(self,self.frame_choix,l_choix,liste_commandes = liste_commandes_choix, titre= "Valeurs possibles") - bouton_add = Button(self.frame_boutons_fleches, - #text="<--", + self.bouton_add = Button(self.frame_boutons_fleches, image = images.get_image('arrow_left'), - # command = self.add_valeur_sans_into) command = self.add_eval_valeur_sans_into) - bouton_sup = Button(self.frame_boutons_fleches, - #text="-->", + self.bouton_sup = Button(self.frame_boutons_fleches, image = images.get_image('arrow_right'), command = self.sup_valeur_sans_into) - bouton_accepter = Button(self.frame_boutons, + self.bouton_accepter = Button(self.frame_boutons, text='Valider', command = lambda s=self,m=min,M=max : s.accepte_modifs_valeur(m,M)) - bouton_annuler = Button(self.frame_boutons, + self.bouton_annuler = Button(self.frame_boutons, text = 'Annuler', command = self.annule_modifs_valeur) - bouton_add.place(relx=0.3,rely=0.35) - bouton_sup.place(relx=0.3,rely=0.65) - for but in (bouton_accepter,bouton_annuler): + self.bouton_add.place(relx=0.3,rely=0.35) + self.bouton_sup.place(relx=0.3,rely=0.65) + for but in (self.bouton_accepter,self.bouton_annuler): but.pack(side='left',padx=4) self.Liste_valeurs.affiche_liste() if len(l_valeurs) > 0 : diff --git a/Editeur/plusieursbasepanel.py b/Editeur/plusieursbasepanel.py index 8693c0ea..7483cfbd 100644 --- a/Editeur/plusieursbasepanel.py +++ b/Editeur/plusieursbasepanel.py @@ -121,14 +121,14 @@ class PLUSIEURS_BASE_Panel(PLUSIEURS_Panel): self.ajout_valeurs = None # boutons Ajouter et Supprimer - bouton_add = Button(self.frame_boutons_fleches, + self.bouton_add = Button(self.frame_boutons_fleches, image = images.get_image('arrow_left'), command = self.add_valeur_plusieurs_base) - bouton_sup = Button(self.frame_boutons_fleches, + self.bouton_sup = Button(self.frame_boutons_fleches, image = images.get_image('arrow_right'), command = self.sup_valeur_sans_into) - bouton_add.place(relx=0.3,rely=0.35) - bouton_sup.place(relx=0.3,rely=0.65) + self.bouton_add.place(relx=0.3,rely=0.35) + self.bouton_sup.place(relx=0.3,rely=0.65) # affichage de l'aide self.frame_aide.update() self.aide = Label(self.frame_aide, @@ -143,16 +143,14 @@ class PLUSIEURS_BASE_Panel(PLUSIEURS_Panel): self.Liste_valeurs.surligne(liste_marque) self.selectValeur(liste_marque) # boutons Accepter et Annuler - bouton_accepter = Button(self.frame_boutons, + self.bouton_accepter = Button(self.frame_boutons, text='Valider', command = lambda s=self,m=min,M=max : s.accepte_modifs_valeur(m,M)) - bouton_annuler = Button(self.frame_boutons, + self.bouton_annuler = Button(self.frame_boutons, text = 'Annuler', command = self.annule_modifs_valeur) - bouton_accepter.place(relx=0.2, rely=0.2,relwidth=0.25) - bouton_annuler.place(relx=0.5, rely=0.2,relwidth=0.25) - #for but in (bouton_accepter,bouton_annuler): - # but.pack(side='left',padx=4) + self.bouton_accepter.place(relx=0.2, rely=0.2,relwidth=0.25) + self.bouton_annuler.place(relx=0.5, rely=0.2,relwidth=0.25) def affiche_parametre(self) : if self.node.item.get_liste_param_possible() != [ ]: @@ -279,40 +277,6 @@ class PLUSIEURS_BASE_Panel(PLUSIEURS_Panel): self.entry.bind("",lambda e,c=command:c()) self.entry.focus() - #def make_entry(self,frame,command,x=0.28,y=0.2): - """ - Crée l'entry de saisie de la valeur souhaitée : distingue le - cas d'un complexe attendu, d'une autre valeur quelconque - """ - #print "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC" - #print " " - #print "A priori on ne doit plus passer dans cette methode " - #print " " - #print "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC" - #if self.node.item.wait_complex(): - # self.typ_cplx=StringVar() - # self.typ_cplx.set('RI') - # rb1 = Radiobutton(frame, text='RI',variable=self.typ_cplx,value='RI') - # rb2 = Radiobutton(frame, text='MP',variable=self.typ_cplx,value='MP') - # self.entry1 = Pmw.EntryField(frame,validate='real') - # self.entry2 = Pmw.EntryField(frame,validate='real') - # rb1.place(relx=0.05,rely = 0.4) - # rb2.place(relx=0.05,rely = 0.6) - # self.entry1.component('entry').bind("",lambda e,s=self:s.entry2.component('entry').focus) - # self.entry2.component('entry').bind("",lambda e,c=command:c()) - # self.entry1.component('entry').bind("",lambda e,s=self:s.entry2.component('entry').focus) - # self.entry2.component('entry').bind("",lambda e,c=command:c()) - # self.entry1.place(relx=0.27,rely = 0.5,relwidth=0.35) - # self.entry2.place(relx=0.65,rely = 0.5,relwidth=0.35) - # self.entry1.focus() - #else: - # self.entry = Entry(frame,relief='sunken') - # self.entry.place(relx=0.28,rely=0.2,relwidth=0.6) - # self.entry.place(relx=0.28,rely=y,relwidth=0.6) - # self.entry.bind("",lambda e,c=command:c()) - # self.entry.bind("",lambda e,c=command:c()) - # self.entry.focus() - def get_valeur(self): """ Retourne la valeur saisie par l'utilisateur dans self.entry @@ -323,26 +287,41 @@ class PLUSIEURS_BASE_Panel(PLUSIEURS_Panel): valeurentree = self.entry.get() if (valeurentree == None or valeurentree ==""): return None,0,"" - if (valeurentree[0] != "(") and (valeurentree.find(',') < len(valeurentree)): - valeurs=[] - for v in valeurentree.split(','): - vsimple,validite=self.node.item.eval_valeur(v) + + #On tente une evaluation globale + valeur,validite=self.node.item.eval_valeur(valeurentree) + if valeur == valeurentree: + #L'evaluation n'a rien donné : on a toujours la string + #on découpe la string sur le séparateur , si c'est possible + if valeurentree.find(',') != -1: + valeur=[] + for v in valeurentree.split(','): + vsimple,validite=self.node.item.eval_valeur(v) + valeur.append(vsimple) + + return valeur,validite,commentaire + + + # if (valeurentree[0] != "(") and (valeurentree.find(',') < len(valeurentree)): + # valeurs=[] + # for v in valeurentree.split(','): + # vsimple,validite=self.node.item.eval_valeur(v) # Pn If ajoute pour le panneau "double" #if isinstance(vsimple,LASSD) : # commentaire = "impossible de mélanger reels et liste prédéfinie" # validite = 0 # break - if validite : - valeurs.append(vsimple) - else: - commentaire = "impossible d'évaluer : %s " %`valeurentree` - break - valeur=valeurs - else: - valeur,validite=self.node.item.eval_valeur(valeurentree) - if not validite and commentaire == "": - commentaire = "impossible d'évaluer : %s " %`valeurentree` - return valeur,validite,commentaire + # if validite : + # valeurs.append(vsimple) + # else: + # commentaire = "impossible d'évaluer : %s " %`valeurentree` + # break + # valeur=valeurs + # else: + # valeur,validite=self.node.item.eval_valeur(valeurentree) + # if not validite and commentaire == "": + # commentaire = "impossible d'évaluer : %s " %`valeurentree` + # return valeur,validite,commentaire #else: # # Traitement d'une entree de type complexe # try: diff --git a/Editeur/plusieursintopanel.py b/Editeur/plusieursintopanel.py index 4c163b10..ef2003e1 100644 --- a/Editeur/plusieursintopanel.py +++ b/Editeur/plusieursintopanel.py @@ -86,23 +86,23 @@ class PLUSIEURS_INTO_Panel(PLUSIEURS_Panel): self.Liste_choix = ListeChoix(self,self.frame_choix,l_choix, liste_commandes = liste_commandes_choix, titre= "Valeurs possibles") - bouton_add = Button(self.frame_boutons_fleches, + self.bouton_add = Button(self.frame_boutons_fleches, #text="<--", image = images.get_image('arrow_left'), command = self.add_choix) - bouton_sup = Button(self.frame_boutons_fleches, + self.bouton_sup = Button(self.frame_boutons_fleches, #text="-->", image = images.get_image('arrow_right'), command = self.sup_valeur) - bouton_accepter = Button(self.frame_boutons, + self.bouton_accepter = Button(self.frame_boutons, text='Valider', command = lambda s=self,m=min,M=max : s.accepte_modifs_valeur(m,M)) - bouton_annuler = Button(self.frame_boutons, + self.bouton_annuler = Button(self.frame_boutons, text = 'Annuler', command = self.annule_modifs_valeur) - bouton_add.place(relx=0.3,rely=0.35) - bouton_sup.place(relx=0.3,rely=0.65) - for but in (bouton_accepter,bouton_annuler): + self.bouton_add.place(relx=0.3,rely=0.35) + self.bouton_sup.place(relx=0.3,rely=0.65) + for but in (self.bouton_accepter,self.bouton_annuler): but.pack(side='left',padx=3) self.Liste_valeurs.affiche_liste() if len(l_valeurs) > 0 : diff --git a/Editeur/plusieurspanel.py b/Editeur/plusieurspanel.py index a8c7bad1..72161e0f 100644 --- a/Editeur/plusieurspanel.py +++ b/Editeur/plusieurspanel.py @@ -90,27 +90,18 @@ class PLUSIEURS_Panel(newSIMPPanel): def add_valeur_sans_into(self,name=None,encorevalide=1): """ - Lit ce que l'utilisateur a saisi dans self.entry et cherche à - l'évaluer : + Tente d'ajouter la valeur fournie (name) à la liste courante : - si la valeur est acceptable, elle est ajoutée dans la liste des valeurs - sinon elle est refusée + encorevalide vaut 1 si le validateur trouve l item et la liste correctes 0 si le validateur trouve la valeur de l item incorrecte -1 si le validateur trouve la liste incorrecte """ + valeur = name commentaire="Valeur incorrecte : ajout à la liste refusé" testvalide=1 - # Lecture de la zone de saisie et evaluation si nécessaire - if name != None : - valeur = name - else: - valeurentree = self.get_valeur() - if valeurentree == '': valeur=None - valeurentree,testvalide=self.node.item.eval_valeur(valeur) - if (not testvalide) : - commentaire = "impossible d'évaluer : %s " %`valeurentree` - # Pas de traitement des valeurs nulles ( a priori clic involontaire if (valeur == None or valeur =="") : commentaire = "Pas de saisie des valeurs nulles" @@ -154,7 +145,6 @@ class PLUSIEURS_Panel(newSIMPPanel): else : commentaire ="Type de la valeur incorrecte" - #self.erase_valeur() self.parent.appli.affiche_infos(commentaire) def sup_valeur_sans_into(self,name=None): diff --git a/Editeur/treewidget.py b/Editeur/treewidget.py index c1aaf786..61a3fd7c 100644 --- a/Editeur/treewidget.py +++ b/Editeur/treewidget.py @@ -27,8 +27,8 @@ import images from Ihm import CONNECTOR # -__version__="$Name: $" -__Id__="$Id: treewidget.py,v 1.30.6.1 2006/03/07 11:21:44 eficas Exp $" +__version__="$Name: BR_dev_mars_06 $" +__Id__="$Id: treewidget.py,v 1.30.6.2 2006/03/10 14:38:30 eficas Exp $" # Fonte_Standard = fontes.standard @@ -116,8 +116,8 @@ class Tree : def supprime(self): """ supprime tous les éléments de l'arbre """ #print "supprime",self - self.canvas.unbind("",self.id_up) - self.canvas.unbind("",self.id_down) + self.canvas.unbind("",self.id_up) + self.canvas.unbind("",self.id_down) self.canvas.unbind("",self.id_um) self.canvas.unbind("",self.id_dm) self.canvas.unbind("<1>",self.id_s) diff --git a/Editeur/uniqueassdpanel.py b/Editeur/uniqueassdpanel.py index 029a1d20..e15c5bb3 100644 --- a/Editeur/uniqueassdpanel.py +++ b/Editeur/uniqueassdpanel.py @@ -161,6 +161,7 @@ class UNIQUE_ASSD_Panel(UNIQUE_Panel): if len(self.listbox.getcurselection()) == 0 : return choix = self.listbox.getcurselection()[0] self.valeur_choisie.set(choix) + self.listbox.component("listbox").focus_set() def choose_valeur_from_list(self,command): """ diff --git a/Editeur/uniqueintopanel.py b/Editeur/uniqueintopanel.py index 870b165f..da05fdce 100644 --- a/Editeur/uniqueintopanel.py +++ b/Editeur/uniqueintopanel.py @@ -71,7 +71,7 @@ class UNIQUE_INTO_Panel(UNIQUE_Panel): ("",self.record_valeur)) self.Liste_choix = ListeChoix(self,self.frame,l_choix, liste_commandes = liste_commandes, - titre="Valeurs possibles") + titre="Valeurs possibles",optionReturn="oui") self.Liste_choix.affiche_liste() def get_bulle_aide(self): diff --git a/Editeur/uniquesdcopanel.py b/Editeur/uniquesdcopanel.py index a270943c..49ecc2a6 100644 --- a/Editeur/uniquesdcopanel.py +++ b/Editeur/uniquesdcopanel.py @@ -70,13 +70,16 @@ class UNIQUE_SDCO_Panel(UNIQUE_ASSD_Panel): listbox_height = 6, selectioncommand=self.select_valeur_from_list, dblclickcommand=lambda s=self,c=self.valid_valeur : s.choose_valeur_from_list(c)) + self.listbox.component("listbox").bind("",lambda e,s=self,c=self.valid_valeur : s.choose_valeur_from_list(c)) if liste_noms_sd != [] : self.listbox.place(relx=0.5,rely=0.3,relheight=0.4,anchor='center') - self.b_co = Pmw.OptionMenu(self.frame_valeur,labelpos='w',label_text = "Nouveau concept : ", items = ('NON','OUI'),menubutton_width=10) + self.b_co = Pmw.OptionMenu(self.frame_valeur,labelpos='w',label_text = "Nouveau concept : ", items = ('NON','OUI'), + menubutton_width=10) else : - self.b_co = Pmw.OptionMenu(self.frame_valeur,labelpos='w',label_text = "Nouveau concept : ", items = ('OUI','OUI'),menubutton_width=10) + self.b_co = Pmw.OptionMenu(self.frame_valeur,labelpos='w',label_text = "Nouveau concept : ", items = ('OUI',), + menubutton_width=10) # affichage du bouton 'Nouveau concept' - self.b_co.configure(command = lambda e,s=self : s.ask_new_concept()) + self.b_co.configure(command = self.ask_new_concept) if liste_noms_sd != [] : self.b_co.place(relx=0.05,rely=0.6,anchor='w') else : @@ -145,13 +148,6 @@ class UNIQUE_SDCO_Panel(UNIQUE_ASSD_Panel): mess = "Valeur du mot-clé non autorisée :"+cr.get_mess_fatal() self.reset_old_valeur(anc_val,mess=mess) return - #if self.node.item.get_position()=='global': - #self.node.etape.verif_all() - #elif self.node.item.get_position()=='global_jdc': - #self.node.racine.verif_all() - #else : - #self.node.parent.verif() - #self.node.update() def valid_nom_concept_co(self,event=None): """ @@ -183,17 +179,8 @@ class UNIQUE_SDCO_Panel(UNIQUE_ASSD_Panel): mess = "Valeur du mot-clé non autorisée :"+cr.get_mess_fatal() self.reset_old_valeur(anc_val,mess=mess) return - #if self.node.item.get_position()=='global': - #self.node.etape.verif_all() - #elif self.node.item.get_position()=='global_jdc': - #self.node.racine.verif_all() - #else : - #self.node.parent.verif() - #if self.node.item.isvalid(): - #self.node.parent.select() - #self.node.update() - def ask_new_concept(self): + def ask_new_concept(self,tag): """ Crée une entry dans le panneau d'un MCS qui attend un concept OU un CO() afin de permettre à l'utilisateur de donner le nom du nouveau concept @@ -249,14 +236,7 @@ class UNIQUE_SDCO_Panel(UNIQUE_ASSD_Panel): self.parent.appli.affiche_infos(mess) # On met a jour le display dans le panneau self.display_valeur() - #if self.node.item.get_position()=='global': - #self.node.etape.verif_all() - #elif self.node.item.get_position()=='global_jdc': - #self.node.racine.verif_all() - #else : - #self.node.parent.verif() if self.node.item.isvalid(): self.node.parent.select() - #self.node.update() diff --git a/Editeur/widgets.py b/Editeur/widgets.py index 23414579..3abbe960 100644 --- a/Editeur/widgets.py +++ b/Editeur/widgets.py @@ -861,22 +861,19 @@ class ListeChoix : showerror(raison.split('\n')[0],raison) def afficheMot(self,mot): - """ Pour contourner le bug sur l index """ - """ on commence par la methode dite normale """ - """ puis par la methode de contournement """ - """ puis rien du tout """ - #try : - if ( 1 == 1 ): - try: - labelsuivant=self.dico_labels[motsuivant] + """ Pour contourner le bug sur l index + on commence par la methode dite normale + puis par la methode de contournement + puis rien du tout + """ + try: + labelsuivant=self.dico_labels[mot] index = self.MCbox.index(labelsuivant) self.MCbox.see(index) - except : + except : posmot=self.dico_place[mot] totale=self.nBlabel + 0.0 self.MCbox.yview_moveto(posmot/totale) - else : - pass def selectNextItem(self,mot,label): index=self.liste.index(mot) @@ -885,8 +882,6 @@ class ListeChoix : indexsuivant=0 motsuivant=self.liste[indexsuivant] labelsuivant=self.dico_labels[motsuivant] - #index = self.MCbox.index(labelsuivant) - #self.MCbox.see(index) self.afficheMot(motsuivant) self.selectthis(motsuivant,labelsuivant,self.selection[2],) self.dontselect=1 @@ -896,8 +891,6 @@ class ListeChoix : indexprec=index-1 motprec=self.liste[indexprec] labelprec=self.dico_labels[motprec] - #index = self.MCbox.index(labelprec) - #self.MCbox.see(index) self.afficheMot(motprec) self.selectthis(motprec,labelprec,self.selection[2],) self.dontselect=1 @@ -958,8 +951,6 @@ class ListeChoix : for arg in self.liste : if fnmatch.fnmatch(arg,filtre) or fnmatch.fnmatch(arg,FILTRE) : label=self.dico_labels[arg] - #index = self.MCbox.index(label) - #self.MCbox.see(index) self.afficheMot(arg) self.selectitem(arg,label,self.selection[2]) break -- 2.39.2