+# -*- coding: utf-8 -*-
# ======================================================================
# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG
# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
self.parent.appli.affiche_infos("Valeur du mot-clé non autorisée :"+mess)
elif self.node.item.isvalid() :
self.parent.appli.affiche_infos('Valeur du mot-clé enregistrée')
- 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()
+ #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()
else :
cr = self.node.item.get_cr()
mess = "Valeur du mot-clé non autorisée :"+cr.get_mess_fatal()
self.reset_old_valeur(anc_val,mess=mess)
- def makeValeurPage(self,page):
+ def makeValeurPage(self,page,reel="non"):
"""
Génère la page de saisie de la valeur du mot-clé simple courant qui doit être une
SD de type dérivé d'ASSD
self.valeur_choisie = StringVar()
self.valeur_choisie.set('')
min,max = self.node.item.GetMinMax()
- if (min == 1 and min == max and len(liste_noms_sd)==1):
+ if (min == 1 and min == max and len(liste_noms_sd)==1 ):
if self.valeur_choisie.get() != liste_noms_sd[0]:
- self.valeur_choisie.set(liste_noms_sd[0])
- self.valid_valeur_automatique()
+ if ('R' not in self.node.item.get_type()) :
+ self.valeur_choisie.set(liste_noms_sd[0])
+ self.valid_valeur_automatique()
self.frame_valeur = Frame(page)
self.frame_valeur.pack(fill='both',expand=1)
Label(self.frame_valeur,textvariable=self.valeur_choisie).place(relx=0.5,rely=0.6)
# affichage de la valeur courante
self.display_valeur()
+ if self.__class__.__name__ == 'UNIQUE_ASSD_Panel_Reel' :
+ Label(self.frame_valeur,text='Valeur Réelle').place(relx=0.1,rely=0.9)
+ self.entry = Entry(self.frame_valeur,relief='sunken')
+ self.entry.place(relx=0.28,rely=0.9,relwidth=0.6)
+ self.entry.bind("<Return>",lambda e,c=self.valid_valeur_reel:c())
+
+
def get_bulle_aide(self):
"""
Retourne la phrase d'aide indiquant de quel type doit être la valeur à donner par l'utilisateur
"""
mc = self.node.item.get_definition()
- type = mc.type[0].__name__
+ try :
+ type = mc.type[0].__name__
+ except :
+ type = str(mc.type[0])
if len(mc.type)>1 :
for typ in mc.type[1:] :
- type = type + ' ou '+typ.__name__
+ try :
+ l=typ.__name__
+ except:
+ l=str(typ)
+ type = type + ' ou '+l
commentaire="Un objet de type "+type+" est attendu"
aideval=self.node.item.aide()
commentaire=commentaire +"\n"+ aideval
def erase_valeur(self):
pass
+ def appel_make(self,page):
+ self.makeValeurPage(page,reel="oui")
+
+class UNIQUE_ASSD_Panel_Reel(UNIQUE_ASSD_Panel):
+
+ def valid_valeur_reel(self):
+ if self.parent.modified == 'n' : self.parent.init_modif()
+ anc_val = self.node.item.get_valeur()
+ valeurentree = self.entry.get()
+ self.valeur_choisie.set(valeurentree)
+ self.valid_valeur()
+
+ def display_valeur(self):
+ valeur = self.node.item.get_valeur()
+ if valeur == None or valeur == '' : return # pas de valeur à afficher ...
+ if type(valeur) == types.FloatType :
+ self.valeur_choisie.set(valeur)
+ else :
+ self.valeur_choisie.set(valeur.nom)
+
+
+