From e53567cb32ca2df2ae3a82957be2f511bafdbc2f Mon Sep 17 00:00:00 2001 From: eficas <> Date: Tue, 20 Jul 2004 08:46:39 +0000 Subject: [PATCH] PN : ajout des raccourcis clavier fiche EO2004-110 point 1 --- Aster/prefs.py | 26 ++++++++++++------------- Editeur/appli.py | 11 +++++++++++ Editeur/bureau.py | 48 ++++++++++++++++++++++++----------------------- 3 files changed, 49 insertions(+), 36 deletions(-) diff --git a/Aster/prefs.py b/Aster/prefs.py index 3c00b5af..3df98c7d 100644 --- a/Aster/prefs.py +++ b/Aster/prefs.py @@ -58,32 +58,32 @@ appli_composants=['readercata','bureau', menu_defs={ 'bureau': [ ('Fichier',[ - ('Nouveau','newJDC'), - ('Ouvrir','openJDC'), - ('Enregistrer','saveJDC'), - ('Enregistrer sous','saveasJDC'), + ('Nouveau','newJDC',''), + ('Ouvrir','openJDC',''), + ('Enregistrer','saveJDC',''), + ('Enregistrer sous','saveasJDC',''), None, - ('Fermer','closeJDC'), - ('Quitter','exitEFICAS'), + ('Fermer','closeJDC',''), + ('Quitter','exitEFICAS',''), ] ), ('Edition',[ - ('Copier','copy'), - ('Couper','cut'), - ('Coller','paste'), + ('Copier','copy',''), + ('Couper','cut',''), + ('Coller','paste',''), ] ), ('Jeu de commandes',[ - ('Rapport de validation','visuCRJDC'), -# ('Fichier à plat','visu_a_plat'), + ('Rapport de validation','visuCRJDC',''), + ('Fichier à plat','visu_a_plat',''), ('Fichier format v6','visuJDC_py'), - ('Fichier source','visu_txt_brut_JDC'), + ('Fichier source','visu_txt_brut_JDC',''), ('Paramètres Eficas','affichage_fichier_ini'), ('Mots-clés inconnus','mc_inconnus'), ] ), ('Aide',[ - ('Aide EFICAS','aideEFICAS'), + ('Aide EFICAS','aideEFICAS',''), ] ), ] diff --git a/Editeur/appli.py b/Editeur/appli.py index 104ba2d9..2160fc61 100644 --- a/Editeur/appli.py +++ b/Editeur/appli.py @@ -72,6 +72,8 @@ class APPLI: # l appli a ete lance depuis Salome self.salome=0 + + def send_message(self,message): self.message=message @@ -209,6 +211,13 @@ class APPLI: if not item : menu.add_separator() else: + if len(item)==3: + raccourci=item[2] + newitem=(item[0],item[1]) + else : + raccourci="" + newitem=item + item=newitem label,method=item if type(method) == types.TupleType: # On a un tuple => on cree une cascade @@ -223,6 +232,8 @@ class APPLI: else: command=getattr(appli_composant,method) menu.add_command(label=label,command=command) + if raccourci != "" : + self.top.bind(raccourci,command) # Si au moins un radiobouton existe on invoke le premier if radio:menu.invoke(radio) diff --git a/Editeur/bureau.py b/Editeur/bureau.py index 226e85d7..037699cd 100644 --- a/Editeur/bureau.py +++ b/Editeur/bureau.py @@ -41,26 +41,26 @@ from fenetre_mc_inconnus import fenetre_mc_inconnus class BUREAU: menu_defs=[ ('Fichier',[ - ('Nouveau','newJDC'), - ('Ouvrir','openJDC'), - ('Enregistrer','saveJDC'), - ('Enregistrer sous','saveasJDC'), + ('Nouveau','newJDC',''), + ('Ouvrir','openJDC',''), + ('Enregistrer','saveJDC',''), + ('Enregistrer sous','saveasJDC'''), None, - ('Fermer','closeJDC'), - ('Quitter','exitEFICAS'), + ('Fermer','closeJDC',''), + ('Quitter','exitEFICAS',''), ] ), ('Edition',[ - ('Copier','copy'), - ('Couper','cut'), - ('Coller','paste'), + ('Copier','copy',''), + ('Couper','cut',''), + ('Coller','paste',''), ] ), ('Jeu de commandes',[ - ('Rapport de validation','visuCRJDC'), - ('Fichier à plat','visu_a_plat'), + ('Rapport de validation','visuCRJDC',''), + ('Fichier à plat','visu_a_plat',''), ('Fichier .py','visuJDC_py'), - ('Fichier source','visu_txt_brut_JDC'), + ('Fichier source','visu_txt_brut_JDC',''), ('Paramètres Eficas','affichage_fichier_ini'), ('Mots-clés inconnus','mc_inconnus'), ] @@ -130,7 +130,7 @@ class BUREAU: #self.JDC.set_context() self.JDCName = self.JDC.nom - def newJDC(self): + def newJDC(self,event=None): """ Initialise un nouveau JDC vierge """ @@ -173,7 +173,7 @@ class BUREAU: texte = "Jeu de commandes :" + self.JDCName+" ouvert" self.appli.affiche_infos(texte) - def closeJDC (self) : + def closeJDC (self,event=None) : """ Ferme le JDC courant et détruit l'onglet associé dans le notebook self.nb """ @@ -200,7 +200,7 @@ class BUREAU: self.JDCDisplay_courant = None self.appli.toolbar.inactive_boutons() - def visuCRJDC(self): + def visuCRJDC(self,event=None): return self.visuCR(mode='JDC') def visuCR(self,mode): @@ -239,6 +239,8 @@ class BUREAU: if not hasattr(self,'initialdir'): #self.initialdir = self.appli.CONFIGURATION.rep_user self.initialdir = self.appli.CONFIGURATION.initialdir + if file.__class__.__name__ in ('Event',): + file=None if not file : file = askopenfilename(title="Ouverture d'un fichier de commandes Aster", defaultextension=".comm", @@ -316,7 +318,7 @@ class BUREAU: else : return self.GetLabelJDC(nb_jdc) - def saveasJDC(self): + def saveasJDC(self,event=None): """ Sauvegarde le JDC courant en demandant impérativement à l'utilisateur de donner le nom du fichier de sauvegarde @@ -421,7 +423,7 @@ class BUREAU: tab = self.nb.tab(num_page) tab.configure(text = nom) - def exitEFICAS(self): + def exitEFICAS(self,event=None): """ Permet de sortir d'EFICAS en demandant à l'utilisateur s'il veut sauvegarder les modifications en cours @@ -449,19 +451,19 @@ class BUREAU: l.append(JDCDisplay) return l - def copy(self): + def copy(self,event=None): """ Lance la copie sur le JDC courant """ if self.JDCDisplay_courant : self.JDCDisplay_courant.doCopy() - def paste(self): + def paste(self,event=None): """ Lance le collage sur le JDC courant """ if self.JDCDisplay_courant : self.JDCDisplay_courant.doPaste() - def cut(self): + def cut(self,event=None): """ Lance le cut sur le JDC courant """ @@ -548,7 +550,7 @@ class BUREAU: traceback.print_exc() pass - def visu_a_plat(self): + def visu_a_plat(self,event=None): """ Méthode permettant d'afficher dans une fenêtre à part l'écho 'à plat' du jdc courant """ @@ -558,7 +560,7 @@ class BUREAU: if self.jdc_fini == None : return self.visu_fichier_cmd = Fenetre(self.appli,titre=titre,texte = self.jdc_fini) - def visu_txt_brut_JDC(self): + def visu_txt_brut_JDC(self,event=None): """ Méthode permettant d'afficher le jeu de commandes tel qu'il a été passé au JDC """ @@ -604,7 +606,7 @@ class BUREAU: #print "mc_inconnus_new_list: ",l #CCAR: Il n' y a pas de retour vers le JDC - def aideEFICAS(self): + def aideEFICAS(self,event=None): AIDE.go(master=self.parent) def update_jdc_courant(self): -- 2.39.2