Salome HOME
modif Adao 7 6
[tools/eficas.git] / Tests / testihm9 / common.py
1 # -*- coding: utf-8 -*-
2
3 from tkMessageBox import showinfo
4 root=None
5 jdcdisplay=None
6
7 class UnKnownNode(Exception):pass
8
9 def pause():
10   if 1:
11     showinfo("Pause","Pause")
12
13 def init_common(r,j):
14     global root,jdcdisplay
15     root=r
16     jdcdisplay=j
17
18 def KP_return():
19     root.event_generate("<Return>")
20     root.update()
21
22 def delete_node(panel):
23     panel.node.delete()
24
25 def uncomment_command(panel):
26     panel.bouton_unc.invoke()
27     root.update()
28     panel=jdcdisplay.panel_courant
29     return panel
30
31 def comment_command(panel):
32     panel.nb.selectpage('Commentaire')
33     panel.comment_commande()
34     root.update()
35     panel=jdcdisplay.panel_courant
36     return panel
37
38 def create_mocle(nom,panel):
39     panel.nb.selectpage('Mocles')
40     panel.Liste.afficheMot(nom)
41     root.update()
42     label=panel.Liste.dico_labels[nom]
43     label.event_generate("<Enter>")
44     root.event_generate("<KeyPress-Return>")
45     root.update()
46     return jdcdisplay.panel_courant
47
48 def change_commandcomm(text,panel):
49     panel.widget_text.setvalue(text)
50     root.update()
51     panel.bouton_val.invoke()
52     return panel
53
54 def create_command(nom,panel):
55     panel.nb.selectpage('Commande')
56     root.update()
57     panel.command_entry.setentry(nom)
58     panel.command_entry.component('entry').focus_set()
59     root.event_generate("<Return>")
60     root.update()
61     label=panel.liste_command.dico_labels[nom]
62     label.event_generate("<Enter>")
63     label.event_generate("<Return>")
64     root.update()
65     panel=jdcdisplay.panel_courant
66     return panel
67
68 def create_comment(text,panel):
69     panel.nb.selectpage('Commentaire')
70     panel.ajout_commentaire()
71     root.update()
72     panel=jdcdisplay.panel_courant
73     panel.widget_text.setvalue(text)
74     root.update()
75     panel.bouton_val.invoke()
76     #panel.change_valeur()
77     return panel
78
79 def create_param(nom,valeur,panel):
80     panel.nb.selectpage('Commentaire')
81     panel.ajout_parametre()
82     root.update()
83     panel=jdcdisplay.panel_courant
84     if nom:
85         panel.entry_nom.delete(0,"end")
86         panel.entry_nom.insert(0,nom)
87         panel.entry_nom.event_generate("<Return>")
88     panel.entry_val.delete(0,"end")
89     panel.entry_val.insert(0,valeur)
90     panel.entry_val.event_generate("<Return>")
91     panel.bouton_val.invoke()
92     root.update()
93     return panel
94
95 def create_formule(nom,args,expr,panel):
96     panel=create_command("FORMULE",panel)
97     panel.entry_nom.delete(0,"end")
98     panel.entry_nom.insert(0,nom)
99     panel.entry_nom.event_generate("<Return>")
100     panel.entry_arg.delete(0,"end")
101     panel.entry_arg.insert(0,args)
102     panel.entry_arg.event_generate("<Return>")
103     panel.entry_exp.delete(0,"end")
104     panel.entry_exp.insert(0,expr)
105     panel.entry_exp.event_generate("<Return>")
106     panel.bouton_val.invoke()
107     root.update()
108     return panel
109
110 def nomme_concept(nom,panel):
111     panel.nb.selectpage('Concept')
112     root.update()
113     panel._any.delete(0,"end")
114     panel._any.insert(0,nom)
115     panel.but_ok.invoke()
116     root.update()
117     return jdcdisplay.panel_courant
118
119 def select_mcf(nom,ind,node):
120     panel=select_child(nom,node)
121     parent=panel.node
122     parent.expand()
123     parent.select_next(ind)
124     panel=jdcdisplay.panel_courant
125     panel.node.expand()
126     return panel
127
128 def select_child(nom,node):
129     """node est le parent dont on veut le fils nom"""
130     for n in node.children:
131         if n.item.nom == nom:
132             n.select()
133             root.update()
134             panel= jdcdisplay.panel_courant
135             panel.node.expand()
136             return panel
137     raise UnKnownNode(nom)
138
139 def select_node(node):
140     node.select()
141     node.expand()
142     root.update()
143     return jdcdisplay.panel_courant
144
145 def choose_valeur(valeur,panel):
146     panel.Liste_choix.afficheMot(valeur)
147     root.update()
148     label=panel.Liste_choix.dico_labels[valeur]
149     label.event_generate("<Button-1>")
150     label.event_generate("<Return>")
151     root.update()
152
153 def choose_sdco(valeur,panel):
154     i = list(panel.listbox.get(0, 'end')).index(valeur)
155     panel.listbox.component("listbox").selection_set(i)
156     panel.listbox.component("listbox").focus_set()
157     panel.listbox.component("listbox").event_generate("<Return>")
158     root.update()
159
160 def choose_assd(valeur,panel):
161     i = list(panel.listbox.get(0, 'end')).index(valeur)
162     panel.listbox.component("listbox").selection_set(i)
163     panel.but_val.invoke()
164     root.update()
165
166 def set_valeur(valeur,panel):
167     panel.entry.delete(0,"end")
168     panel.entry.insert(0,valeur)
169     panel.entry.event_generate("<Return>")
170     root.update()
171
172 def set_sdco(valeur,panel):
173     panel.b_co.invoke('OUI')
174     root.update()
175     panel.entry_co.delete(0,"end")
176     panel.entry_co.insert(0,valeur)
177     panel.entry_co.event_generate("<Return>")
178     root.update()
179
180 def set_complexe(valeur,panel):
181     panel.entry3.setentry(valeur)
182     panel.entry3.component('entry').focus_set()
183     panel.entry3.event_generate("<Return>")
184     root.update()
185
186 def add_valeur_into(valeur,panel):
187     label=panel.Liste_choix.dico_labels[valeur]
188     panel.Liste_choix.afficheMot(valeur)
189     root.update()
190     label.event_generate("<1>")
191     panel.bouton_add.invoke()
192     root.update()
193
194 def add_valeur(valeur,panel):
195     panel.entry.delete(0,"end")
196     panel.entry.insert(0,valeur)
197     panel.entry.event_generate("<Return>")
198     root.update()
199
200 def valider_valeur(panel):
201     panel.bouton_accepter.invoke()
202     root.update()
203
204 def copier_coller():
205     root.event_generate("<Control-c>")
206     root.event_generate("<Control-v>")
207     root.update()
208     return jdcdisplay.panel_courant
209