1 # -*- coding: utf-8 -*-
2 #Author: Pierre Ratinaud
3 #Copyright (c) 2008-2011 Pierre Ratinaud
12 from functions import treat_var_mod
15 def OnOpen(self, type):
17 wildcard = u"Fichiers supportés|*.ods;*.xls;*.csv;*.txt|Openoffice Clac|*.ods|Fichier excel|*.xls|Fichier csv|*.csv|Fichier texte|*.txt|Tous les fichiers|*"
19 wildcard = "Fichier texte|*.txt|Tous les fichiers|*"
20 elif type == "Analyse":
21 wildcard = "Fichier analyse/Corpus|*.ira;*.cira"
22 defaultDir = self.PathPath.get('PATHS', 'lastpath')
23 if defaultDir.strip() == '':
24 defaultDir = self.UserConfigPath.replace('.iramuteq','')
26 self, message="Choisissez un fichier", defaultDir=defaultDir,
27 defaultFile="", wildcard=wildcard, style=wx.OPEN | wx.CHANGE_DIR)
29 if dlg.ShowModal() == wx.ID_OK :
30 fileName = dlg.GetFilename()
33 self.PathPath.set('PATHS', 'lastpath', os.path.dirname(path[0]))
42 elif type == "Analyse":
45 def getfileextension(file) :
46 return os.path.splitext(file)[1]
48 def get_table_param(self, filename) :
49 if getfileextension(filename) == '.csv':
50 dlg = dialog.FileOptionDialog(self, -1, u"Format du fichier", sep=True, size=(350, 200),
51 style=wx.DEFAULT_DIALOG_STYLE)
55 self.tableau.parametre['colsep'] = dlg.colsep[dlg.choice3.GetSelection()]
56 self.tableau.parametre['txtsep'] = dlg.txtsep[dlg.choice4.GetSelection()]
57 if self.tableau.parametre['colsep'] == 'tabulation' :
58 self.tableau.parametre['colsep'] = '\t'
59 self.tableau.parametre['filetype'] = 'csv'
62 elif getfileextension(filename) == '.xls' :
63 dlg = dialog.FileOptionDialog(self, -1, u"Format du fichier", sep=False, sheet = True, size=(350, 200),
64 style=wx.DEFAULT_DIALOG_STYLE)
68 self.tableau.parametre['colsep'] = ';'
69 self.tableau.parametre['txtsep'] = '\"'
70 self.tableau.parametre['encodage'] = sys.getdefaultencoding()
71 self.tableau.parametre['sheetnb'] = dlg.spin1.GetValue()
72 self.tableau.parametre['filetype'] = 'xls'
75 elif getfileextension(filename) == '.ods':
76 dlg = dialog.FileOptionDialog(self, -1, u"Format du fichier", sep=False, size=(350, 200),
77 style=wx.DEFAULT_DIALOG_STYLE)
81 self.tableau.parametre['colsep'] = ';'
82 self.tableau.parametre['txtsep'] = '\"'
83 self.tableau.parametre['filetype'] = 'ods'
89 if dlg.radio_box_1.GetSelection() == 0:
90 self.tableau.firstrowiscolnames = True
92 self.tableau.firstrowiscolnames = False
93 if dlg.radio_box_2.GetSelection() == 0:
94 self.tableau.firstcolisrownames = True
96 self.tableau.firstcolisrownames = False
100 if '_mgr' in dir(ira) :
101 if not ira._mgr.GetPane('Text').IsShown() :
102 if ira.nb.GetPageCount() >= 1:
103 return ira.nb.GetPage(ira.nb.GetSelection())
111 def getCorpus(page) :
112 if 'corpus' in page.__dict__:
113 return copy(page.corpus)
118 def __init__(self, parent, dictcol, actives, pathout, selected = None, dlg = False) :
121 dial = dialog.SelectColDial(self.ira)
122 listcol = ListForSpec(dial, self, dictcol, ['forme', 'eff'])
123 dial.bSizer2.Add( listcol, 2, wx.ALL|wx.EXPAND, 5 )
124 dial.m_sdbSizer2.AddButton( dial.m_sdbSizer2OK )
125 dial.m_sdbSizer2.AddButton( dial.butok)
126 dial.m_sdbSizer2.Realize()
127 dial.bSizer2.Add( dial.m_sdbSizer2, 0, wx.EXPAND, 5 )
129 if selected is None :
130 for row in xrange(listcol.GetItemCount()):
133 orderlex = dict([[listcol.getColumnText(i,0),i] for i in range(0,listcol.GetItemCount())])
134 for row in selected :
135 listcol.Select(orderlex[actives[row]])
136 dial.CenterOnParent()
137 val = dial.ShowModal()
139 last = listcol.GetFirstSelected()
140 lastl = [listcol.GetFirstSelected()]
141 indexes = [listcol.getColumnText(listcol.GetFirstSelected(),0)]
142 while listcol.GetNextSelected(last) != -1:
143 last = listcol.GetNextSelected(last)
145 indexes.append(listcol.getColumnText(last,0))
147 column = [actives.index(val) for val in indexes]
149 with open(pathout, 'w') as f :
150 f.write('\n'.join([`val` for val in column]))
155 if selected is None :
156 selected = [i for i in range(0, len(actives))]
157 with open(pathout, 'w') as f :
158 f.write('\n'.join([`i` for i in selected]))
161 class PrefSimi ( wx.Dialog ):
163 def __init__( self, parent, ID, paramsimi, indices, wordlist = None, selected = None, actives = None):
164 wx.Dialog.__init__ ( self, None, id = wx.ID_ANY, title = u"Paramètres", pos = wx.DefaultPosition, size = wx.Size( -1,-1 ), style = wx.DEFAULT_DIALOG_STYLE )
167 self.paramsimi=paramsimi
168 self.indices = indices
170 self.SetSizeHintsSz( wx.DefaultSize, wx.DefaultSize )
172 bSizer16 = wx.BoxSizer( wx.HORIZONTAL )
173 if wordlist is not None :
174 self.listcol = ListForSpec(self, self, wordlist, ['forme', 'eff'])
175 self.listcol.SetMinSize( wx.Size( 270,-1 ) )
176 bSizer16.Add( self.listcol, 0, wx.ALL|wx.EXPAND, 5 )
177 if selected is None :
178 for row in xrange(self.listcol.GetItemCount()):
179 self.listcol.Select(row)
181 self.orderlex = dict([[self.listcol.getColumnText(i,0),i] for i in range(0,self.listcol.GetItemCount())])
182 for row in selected :
183 self.listcol.Select(self.orderlex[actives[row]])
186 fgSizer10 = wx.FlexGridSizer( 2, 1, 0, 0 )
187 fgSizer10.SetFlexibleDirection( wx.BOTH )
188 fgSizer10.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
190 self.m_notebook1 = wx.Notebook( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, 0 )
191 self.m_panel2 = wx.Panel( self.m_notebook1, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.TAB_TRAVERSAL )
192 bSizer18 = wx.BoxSizer( wx.VERTICAL )
194 fgSizer3 = wx.FlexGridSizer( 0, 2, 0, 0 )
195 fgSizer3.SetFlexibleDirection( wx.BOTH )
196 fgSizer3.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
198 if not self.paramsimi['first'] :
200 self.m_staticText271 = wx.StaticText( self.m_panel2, wx.ID_ANY, u"Utiliser les coordonnées\nprécédentes", wx.DefaultPosition, wx.DefaultSize, 0 )
201 self.m_staticText271.Wrap( -1 )
202 fgSizer3.Add( self.m_staticText271, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
204 self.check_coord = wx.CheckBox( self.m_panel2, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
205 fgSizer3.Add( self.check_coord, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
207 self.m_staticline36 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
208 fgSizer3.Add( self.m_staticline36, 0, wx.EXPAND, 5 )
210 self.m_staticline37 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
211 fgSizer3.Add( self.m_staticline37, 0, wx.EXPAND, 5 )
213 self.m_staticText3 = wx.StaticText( self.m_panel2, wx.ID_ANY, u"Indice", wx.DefaultPosition, wx.DefaultSize, 0 )
214 self.m_staticText3.Wrap( -1 )
215 fgSizer3.Add( self.m_staticText3, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
218 self.choice1 = wx.Choice( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, self.indices, 0 )
219 self.choice1.SetSelection( 0 )
220 fgSizer3.Add( self.choice1, 0, wx.ALL, 5 )
222 self.m_staticline293 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
223 fgSizer3.Add( self.m_staticline293, 0, wx.EXPAND, 5 )
225 self.m_staticline292 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
226 fgSizer3.Add( self.m_staticline292, 0, wx.EXPAND, 5 )
228 self.m_staticText4 = wx.StaticText( self.m_panel2, wx.ID_ANY, u"Layout", wx.DefaultPosition, wx.DefaultSize, 0 )
229 self.m_staticText4.Wrap( -1 )
230 fgSizer3.Add( self.m_staticText4, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
232 choice2Choices = [ u"random", u"cercle", u"fruchterman reingold", u"kamada kawai", u"graphopt" ]
233 self.choice2 = wx.Choice( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, choice2Choices, 0 )
234 self.choice2.SetSelection( 0 )
235 fgSizer3.Add( self.choice2, 0, wx.ALL, 5 )
237 self.m_staticline294 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
238 fgSizer3.Add( self.m_staticline294, 0, wx.EXPAND, 5 )
240 self.m_staticline295 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
241 fgSizer3.Add( self.m_staticline295, 0, wx.EXPAND, 5 )
243 self.m_staticText5 = wx.StaticText( self.m_panel2, wx.ID_ANY, u"Type de graph", wx.DefaultPosition, wx.DefaultSize, 0 )
244 self.m_staticText5.Wrap( -1 )
245 fgSizer3.Add( self.m_staticText5, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
247 choice3Choices = [ u"dynamique", u"statique", u"3D" ]
248 self.choice3 = wx.Choice( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, choice3Choices, 0 )
249 self.choice3.SetSelection( 0 )
250 fgSizer3.Add( self.choice3, 0, wx.ALL, 5 )
252 self.m_staticline296 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
253 fgSizer3.Add( self.m_staticline296, 0, wx.EXPAND, 5 )
255 self.m_staticline297 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
256 fgSizer3.Add( self.m_staticline297, 0, wx.EXPAND, 5 )
258 self.m_staticText8 = wx.StaticText( self.m_panel2, wx.ID_ANY, u"Arbre maximum", wx.DefaultPosition, wx.DefaultSize, 0 )
259 self.m_staticText8.Wrap( -1 )
260 fgSizer3.Add( self.m_staticText8, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
262 self.check1 = wx.CheckBox( self.m_panel2, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
263 fgSizer3.Add( self.check1, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
265 self.m_staticline298 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
266 fgSizer3.Add( self.m_staticline298, 0, wx.EXPAND, 5 )
268 self.m_staticline299 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
269 fgSizer3.Add( self.m_staticline299, 0, wx.EXPAND, 5 )
271 self.m_staticText91 = wx.StaticText( self.m_panel2, wx.ID_ANY, u"Graph à seuil", wx.DefaultPosition, wx.DefaultSize, 0 )
272 self.m_staticText91.Wrap( -1 )
273 fgSizer3.Add( self.m_staticText91, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
275 bSizer21 = wx.BoxSizer( wx.HORIZONTAL )
277 self.check_seuil = wx.CheckBox( self.m_panel2, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
278 bSizer21.Add( self.check_seuil, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
280 self.spin_seuil = wx.SpinCtrl( self.m_panel2, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 1, 10000, 1 )
281 bSizer21.Add( self.spin_seuil, 0, wx.ALL, 5 )
284 fgSizer3.Add( bSizer21, 1, wx.EXPAND, 5 )
286 self.m_staticline2910 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
287 fgSizer3.Add( self.m_staticline2910, 0, wx.EXPAND, 5 )
289 self.m_staticline2911 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
290 fgSizer3.Add( self.m_staticline2911, 0, wx.EXPAND, 5 )
292 self.m_staticText19 = wx.StaticText( self.m_panel2, wx.ID_ANY, u"Texte sur les sommets", wx.DefaultPosition, wx.DefaultSize, 0 )
293 self.m_staticText19.Wrap( -1 )
294 fgSizer3.Add( self.m_staticText19, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
296 self.check_vlab = wx.CheckBox( self.m_panel2, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
297 fgSizer3.Add( self.check_vlab, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
299 self.m_staticline2912 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
300 fgSizer3.Add( self.m_staticline2912, 0, wx.EXPAND, 5 )
302 self.m_staticline2913 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
303 fgSizer3.Add( self.m_staticline2913, 0, wx.EXPAND, 5 )
305 self.m_staticText20 = wx.StaticText( self.m_panel2, wx.ID_ANY, u"Indices sur les arêtes", wx.DefaultPosition, wx.DefaultSize, 0 )
306 self.m_staticText20.Wrap( -1 )
307 fgSizer3.Add( self.m_staticText20, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
309 self.check_elab = wx.CheckBox( self.m_panel2, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
310 fgSizer3.Add( self.check_elab, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
312 self.m_staticline2914 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
313 fgSizer3.Add( self.m_staticline2914, 0, wx.EXPAND, 5 )
315 self.m_staticline2915 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
316 fgSizer3.Add( self.m_staticline2915, 0, wx.EXPAND, 5 )
318 self.m_staticText27 = wx.StaticText( self.m_panel2, wx.ID_ANY, u"Taille du texte", wx.DefaultPosition, wx.DefaultSize, 0 )
319 self.m_staticText27.Wrap( -1 )
320 fgSizer3.Add( self.m_staticText27, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
322 self.spin_cex = wx.SpinCtrl( self.m_panel2, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 10 )
323 fgSizer3.Add( self.spin_cex, 0, wx.ALL, 5 )
325 self.m_staticline2916 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
326 fgSizer3.Add( self.m_staticline2916, 0, wx.EXPAND, 5 )
328 self.m_staticline2917 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
329 fgSizer3.Add( self.m_staticline2917, 0, wx.EXPAND, 5 )
331 if 'bystar' in self.paramsimi :
332 self.m_staticText40 = wx.StaticText( self.m_panel2, wx.ID_ANY, u"Sélectionner une variable", wx.DefaultPosition, wx.DefaultSize, 0 )
333 self.m_staticText40.Wrap( -1 )
334 fgSizer3.Add( self.m_staticText40, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
336 self.check_bystar = wx.CheckBox( self.m_panel2, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
337 fgSizer3.Add( self.check_bystar, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
339 self.m_staticline3200 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
340 fgSizer3.Add( self.m_staticline3200, 0, wx.EXPAND, 5 )
341 self.m_staticline3201 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
342 fgSizer3.Add( self.m_staticline3201, 0, wx.EXPAND, 5 )
345 bSizer18.Add( fgSizer3, 0, wx.EXPAND, 5 )
348 self.m_panel2.SetSizer( bSizer18 )
349 self.m_panel2.Layout()
350 bSizer18.Fit( self.m_panel2 )
351 self.m_notebook1.AddPage( self.m_panel2, u"Paramètres du graph", True )
352 self.m_panel3 = wx.Panel( self.m_notebook1, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.TAB_TRAVERSAL )
353 fgSizer5 = wx.FlexGridSizer( 0, 3, 0, 0 )
354 fgSizer5.SetFlexibleDirection( wx.BOTH )
355 fgSizer5.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
357 fgSizer51 = wx.FlexGridSizer( 0, 2, 0, 0 )
358 fgSizer51.SetFlexibleDirection( wx.BOTH )
359 fgSizer51.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
361 self.m_staticText6 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"Taille du graphique", wx.DefaultPosition, wx.DefaultSize, 0 )
362 self.m_staticText6.Wrap( -1 )
363 fgSizer51.Add( self.m_staticText6, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
365 fgSizer31 = wx.FlexGridSizer( 0, 2, 0, 0 )
366 fgSizer31.SetFlexibleDirection( wx.BOTH )
367 fgSizer31.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
369 self.m_staticText9 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"hauteur", wx.DefaultPosition, wx.DefaultSize, 0 )
370 self.m_staticText9.Wrap( -1 )
371 fgSizer31.Add( self.m_staticText9, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
373 self.spin_height = wx.SpinCtrl( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 10, 100000, 800 )
374 fgSizer31.Add( self.spin_height, 0, wx.ALL, 5 )
376 self.m_staticText10 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"largeur", wx.DefaultPosition, wx.DefaultSize, 0 )
377 self.m_staticText10.Wrap( -1 )
378 fgSizer31.Add( self.m_staticText10, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
380 self.spin_width = wx.SpinCtrl( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 10, 100000, 800 )
381 fgSizer31.Add( self.spin_width, 0, wx.ALL, 5 )
384 fgSizer51.Add( fgSizer31, 1, wx.EXPAND, 5 )
386 self.m_staticline3 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
387 fgSizer51.Add( self.m_staticline3, 0, wx.EXPAND, 5 )
389 self.m_staticline4 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
390 fgSizer51.Add( self.m_staticline4, 0, wx.EXPAND, 5 )
392 self.m_staticText101 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"Taille des sommets \nproportionnelle à l'effectif\n(les scores sont normalisés)", wx.DefaultPosition, wx.DefaultSize, 0 )
393 self.m_staticText101.Wrap( -1 )
394 fgSizer51.Add( self.m_staticText101, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
396 bSizer7 = wx.BoxSizer( wx.HORIZONTAL )
398 bSizer9 = wx.BoxSizer( wx.VERTICAL )
400 self.check2 = wx.CheckBox( self.m_panel3, wx.ID_ANY, u"eff.", wx.DefaultPosition, wx.DefaultSize, 0 )
401 bSizer9.Add( self.check2, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
403 self.checki = wx.CheckBox( self.m_panel3, wx.ID_ANY, u"chi2", wx.DefaultPosition, wx.DefaultSize, 0 )
404 bSizer9.Add( self.checki, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
407 bSizer7.Add( bSizer9, 0, wx.ALIGN_CENTER_VERTICAL, 5 )
409 fgSizer7 = wx.FlexGridSizer( 0, 2, 0, 0 )
410 fgSizer7.SetFlexibleDirection( wx.BOTH )
411 fgSizer7.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
413 self.m_staticText11 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"min", wx.DefaultPosition, wx.DefaultSize, 0 )
414 self.m_staticText11.Wrap( -1 )
415 fgSizer7.Add( self.m_staticText11, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
417 self.spin_tvmin = wx.SpinCtrl( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 0 )
418 fgSizer7.Add( self.spin_tvmin, 0, wx.ALL, 5 )
420 self.m_staticText12 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"max", wx.DefaultPosition, wx.DefaultSize, 0 )
421 self.m_staticText12.Wrap( -1 )
422 fgSizer7.Add( self.m_staticText12, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
424 self.spin_tvmax = wx.SpinCtrl( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 0 )
425 fgSizer7.Add( self.spin_tvmax, 0, wx.ALL, 5 )
428 bSizer7.Add( fgSizer7, 1, wx.EXPAND, 5 )
431 fgSizer51.Add( bSizer7, 1, wx.EXPAND, 5 )
433 self.m_staticline31 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
434 fgSizer51.Add( self.m_staticline31, 0, wx.EXPAND, 5 )
436 self.m_staticline32 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
437 fgSizer51.Add( self.m_staticline32, 0, wx.EXPAND, 5 )
439 self.m_staticText1011 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"Taille du texte des sommets \nproportionnelle à l'effectif\n(les scores sont normalisés)", wx.DefaultPosition, wx.DefaultSize, 0 )
440 self.m_staticText1011.Wrap( -1 )
441 fgSizer51.Add( self.m_staticText1011, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
443 bSizer71 = wx.BoxSizer( wx.HORIZONTAL )
445 bSizer8 = wx.BoxSizer( wx.VERTICAL )
447 self.check_vcex = wx.CheckBox( self.m_panel3, wx.ID_ANY, u"eff.", wx.DefaultPosition, wx.DefaultSize, 0 )
448 bSizer8.Add( self.check_vcex, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
450 self.checkit = wx.CheckBox( self.m_panel3, wx.ID_ANY, u"chi2", wx.DefaultPosition, wx.DefaultSize, 0 )
451 bSizer8.Add( self.checkit, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
454 bSizer71.Add( bSizer8, 0, wx.ALIGN_CENTER_VERTICAL, 5 )
456 fgSizer71 = wx.FlexGridSizer( 0, 2, 0, 0 )
457 fgSizer71.SetFlexibleDirection( wx.BOTH )
458 fgSizer71.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
460 self.m_staticText111 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"min", wx.DefaultPosition, wx.DefaultSize, 0 )
461 self.m_staticText111.Wrap( -1 )
462 fgSizer71.Add( self.m_staticText111, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
464 self.spin_vcexmin = wx.SpinCtrl( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 0 )
465 fgSizer71.Add( self.spin_vcexmin, 0, wx.ALL, 5 )
467 self.m_staticText121 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"max", wx.DefaultPosition, wx.DefaultSize, 0 )
468 self.m_staticText121.Wrap( -1 )
469 fgSizer71.Add( self.m_staticText121, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
471 self.spin_vcexmax = wx.SpinCtrl( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 0 )
472 fgSizer71.Add( self.spin_vcexmax, 0, wx.ALL, 5 )
475 bSizer71.Add( fgSizer71, 1, wx.EXPAND, 5 )
478 fgSizer51.Add( bSizer71, 1, wx.EXPAND, 5 )
480 self.m_staticline321 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
481 fgSizer51.Add( self.m_staticline321, 0, wx.EXPAND, 5 )
483 self.m_staticline322 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
484 fgSizer51.Add( self.m_staticline322, 0, wx.EXPAND, 5 )
486 self.m_staticText10111 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"Largeur des arêtes\nproportionnelle à l'indice", wx.DefaultPosition, wx.DefaultSize, 0 )
487 self.m_staticText10111.Wrap( -1 )
488 fgSizer51.Add( self.m_staticText10111, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
490 bSizer711 = wx.BoxSizer( wx.HORIZONTAL )
492 self.check3 = wx.CheckBox( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
493 bSizer711.Add( self.check3, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
495 fgSizer711 = wx.FlexGridSizer( 0, 2, 0, 0 )
496 fgSizer711.SetFlexibleDirection( wx.BOTH )
497 fgSizer711.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
499 self.m_staticText1111 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"min", wx.DefaultPosition, wx.DefaultSize, 0 )
500 self.m_staticText1111.Wrap( -1 )
501 fgSizer711.Add( self.m_staticText1111, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
503 self.spin_temin = wx.SpinCtrl( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 0 )
504 fgSizer711.Add( self.spin_temin, 0, wx.ALL, 5 )
506 self.m_staticText1211 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"max", wx.DefaultPosition, wx.DefaultSize, 0 )
507 self.m_staticText1211.Wrap( -1 )
508 fgSizer711.Add( self.m_staticText1211, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
510 self.spin_temax = wx.SpinCtrl( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 0 )
511 fgSizer711.Add( self.spin_temax, 0, wx.ALL, 5 )
514 bSizer711.Add( fgSizer711, 1, wx.EXPAND, 5 )
517 fgSizer51.Add( bSizer711, 1, wx.EXPAND, 5 )
519 self.m_staticline33 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
520 fgSizer51.Add( self.m_staticline33, 0, wx.EXPAND, 5 )
522 self.m_staticline34 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
523 fgSizer51.Add( self.m_staticline34, 0, wx.EXPAND, 5 )
525 self.m_staticText28 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"Gradiant de gris sur les textes en fonction \nde l'effectif (du chi2) (0=noir; 1=blanc)", wx.DefaultPosition, wx.DefaultSize, 0 )
526 self.m_staticText28.Wrap( -1 )
527 fgSizer51.Add( self.m_staticText28, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
529 bSizer10 = wx.BoxSizer( wx.HORIZONTAL )
531 self.m_checkBox14 = wx.CheckBox( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
532 bSizer10.Add( self.m_checkBox14, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
534 bSizer11 = wx.BoxSizer( wx.VERTICAL )
536 bSizer12 = wx.BoxSizer( wx.HORIZONTAL )
538 self.m_staticText31 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"min", wx.DefaultPosition, wx.DefaultSize, 0 )
539 self.m_staticText31.Wrap( -1 )
540 bSizer12.Add( self.m_staticText31, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
542 self.m_spinCtrl14 = wx.SpinCtrl( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 0 )
543 bSizer12.Add( self.m_spinCtrl14, 0, wx.ALL, 5 )
546 bSizer11.Add( bSizer12, 1, wx.EXPAND, 5 )
548 bSizer13 = wx.BoxSizer( wx.HORIZONTAL )
550 self.m_staticText32 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"max", wx.DefaultPosition, wx.DefaultSize, 0 )
551 self.m_staticText32.Wrap( -1 )
552 bSizer13.Add( self.m_staticText32, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
554 self.m_spinCtrl15 = wx.SpinCtrl( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 10 )
555 bSizer13.Add( self.m_spinCtrl15, 0, wx.ALL, 5 )
558 bSizer11.Add( bSizer13, 1, wx.EXPAND, 5 )
561 bSizer10.Add( bSizer11, 1, wx.EXPAND, 5 )
564 fgSizer51.Add( bSizer10, 1, wx.ALIGN_CENTER_VERTICAL|wx.EXPAND, 5 )
566 self.m_staticline3311 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
567 fgSizer51.Add( self.m_staticline3311, 0, wx.EXPAND |wx.ALL, 5 )
569 self.m_staticline33111 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
570 fgSizer51.Add( self.m_staticline33111, 0, wx.EXPAND |wx.ALL, 5 )
572 bSizer5 = wx.BoxSizer( wx.HORIZONTAL )
574 self.m_staticText21 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"Couleur des sommets", wx.DefaultPosition, wx.DefaultSize, 0 )
575 self.m_staticText21.Wrap( -1 )
576 bSizer5.Add( self.m_staticText21, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
578 self.cols = wx.ColourPickerCtrl( self.m_panel3, wx.ID_ANY, wx.Colour( 255, 0, 0 ), wx.DefaultPosition, wx.Size( 10,10 ), wx.CLRP_DEFAULT_STYLE )
579 bSizer5.Add( self.cols, 0, wx.ALL, 5 )
582 fgSizer51.Add( bSizer5, 1, wx.EXPAND, 5 )
584 bSizer6 = wx.BoxSizer( wx.HORIZONTAL )
586 self.m_staticText22 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"Couleur des arêtes", wx.DefaultPosition, wx.DefaultSize, 0 )
587 self.m_staticText22.Wrap( -1 )
588 bSizer6.Add( self.m_staticText22, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
590 self.cola = wx.ColourPickerCtrl( self.m_panel3, wx.ID_ANY, wx.Colour( 208, 208, 208 ), wx.DefaultPosition, wx.DefaultSize, wx.CLRP_DEFAULT_STYLE )
591 bSizer6.Add( self.cola, 0, wx.ALL, 5 )
594 fgSizer51.Add( bSizer6, 1, wx.EXPAND, 5 )
596 self.m_staticline331 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
597 fgSizer51.Add( self.m_staticline331, 0, wx.EXPAND, 5 )
599 self.m_staticline332 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
600 fgSizer51.Add( self.m_staticline332, 0, wx.EXPAND, 5 )
602 self.m_staticText23 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"Taille des sommets unique", wx.DefaultPosition, wx.DefaultSize, 0 )
603 self.m_staticText23.Wrap( -1 )
604 fgSizer51.Add( self.m_staticText23, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
606 bSizer72 = wx.BoxSizer( wx.HORIZONTAL )
608 self.check_s_size = wx.CheckBox( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
609 bSizer72.Add( self.check_s_size, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
611 self.spin_tv = wx.SpinCtrl( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 10 )
612 bSizer72.Add( self.spin_tv, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
615 fgSizer51.Add( bSizer72, 1, wx.EXPAND, 5 )
617 self.m_staticline333 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
618 fgSizer51.Add( self.m_staticline333, 0, wx.EXPAND, 5 )
620 self.m_staticline334 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
621 fgSizer51.Add( self.m_staticline334, 0, wx.EXPAND, 5 )
623 self.m_staticText24 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"Transparence des sphères", wx.DefaultPosition, wx.DefaultSize, 0 )
624 self.m_staticText24.Wrap( -1 )
625 fgSizer51.Add( self.m_staticText24, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
627 self.slider_sphere = wx.Slider( self.m_panel3, wx.ID_ANY, 10, 0, 100, wx.DefaultPosition, wx.DefaultSize, wx.SL_HORIZONTAL|wx.SL_LABELS )
628 fgSizer51.Add( self.slider_sphere, 0, wx.ALL|wx.EXPAND|wx.ALIGN_CENTER_VERTICAL, 5 )
630 self.m_staticline335 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
631 fgSizer51.Add( self.m_staticline335, 0, wx.EXPAND, 5 )
633 self.m_staticline336 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
634 fgSizer51.Add( self.m_staticline336, 0, wx.EXPAND, 5 )
636 self.m_staticText25 = wx.StaticText( self.m_panel3, wx.ID_ANY, u"Faire un film", wx.DefaultPosition, wx.DefaultSize, 0 )
637 self.m_staticText25.Wrap( -1 )
638 fgSizer51.Add( self.m_staticText25, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
640 self.film = wx.CheckBox( self.m_panel3, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
641 fgSizer51.Add( self.film, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
643 self.m_staticline2918 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
644 fgSizer51.Add( self.m_staticline2918, 0, wx.EXPAND, 5 )
646 self.m_staticline2919 = wx.StaticLine( self.m_panel3, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
647 fgSizer51.Add( self.m_staticline2919, 0, wx.EXPAND, 5 )
650 fgSizer51.AddSpacer( ( 0, 0), 1, wx.EXPAND, 5 )
653 fgSizer5.Add( fgSizer51, 1, wx.EXPAND, 5 )
656 self.m_panel3.SetSizer( fgSizer5 )
657 self.m_panel3.Layout()
658 fgSizer5.Fit( self.m_panel3 )
659 self.m_notebook1.AddPage( self.m_panel3, u"Paramètres graphiques", False )
661 fgSizer10.Add( self.m_notebook1, 1, wx.EXPAND |wx.ALL, 5 )
663 m_sdbSizer2 = wx.StdDialogButtonSizer()
664 self.m_sdbSizer2OK = wx.Button( self, wx.ID_OK )
665 m_sdbSizer2.AddButton( self.m_sdbSizer2OK )
666 self.m_sdbSizer2Cancel = wx.Button( self, wx.ID_CANCEL )
667 m_sdbSizer2.AddButton( self.m_sdbSizer2Cancel )
668 m_sdbSizer2.Realize();
670 fgSizer10.Add( m_sdbSizer2, 1, wx.EXPAND, 5 )
673 bSizer16.Add( fgSizer10, 1, wx.EXPAND, 5 )
676 self.SetSizer( bSizer16 )
680 self.Centre( wx.BOTH )
681 self.__set_properties()
684 if not self.paramsimi['first'] :
685 self.check_coord.Bind( wx.EVT_CHECKBOX, self.OnKeepCoords )
686 self.choice3.Bind( wx.EVT_CHOICE, self.OnChangeType )
687 self.check2.Bind( wx.EVT_CHECKBOX, self.OnCheck2 )
688 self.checki.Bind( wx.EVT_CHECKBOX, self.OnChecki )
689 self.check_vcex.Bind( wx.EVT_CHECKBOX, self.OnCheck_vcex )
690 self.checkit.Bind( wx.EVT_CHECKBOX, self.OnCheckit )
691 self.check_s_size.Bind( wx.EVT_CHECKBOX, self.OnCheck_s_size )
693 # self.SetSizeHintsSz( wx.DefaultSize, wx.DefaultSize )
695 # bSizer16 = wx.BoxSizer( wx.HORIZONTAL )
696 # if wordlist is not None :
697 # liscol = ListForSpec(dial, self, wordlist, ['forme', 'eff'])
698 # bSizer16.Add(liscol, 0, wx.ALL| wx.EXPAND, 5 )
700 # self.m_notebook1 = wx.Notebook( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, 0 )
701 # self.m_panel2 = wx.Panel( self.m_notebook1, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.TAB_TRAVERSAL )
703 # bSizer18 = wx.BoxSizer( wx.VERTICAL )
704 # fgSizer5 = wx.FlexGridSizer( 0, 3, 0, 0 )
705 # fgSizer5.SetFlexibleDirection( wx.BOTH )
706 # fgSizer5.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
708 # fgSizer3 = wx.FlexGridSizer( 0, 2, 0, 0 )
709 # fgSizer3.SetFlexibleDirection( wx.BOTH )
710 # fgSizer3.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
712 # #self.m_staticText1 = wx.StaticText( self, wx.ID_ANY, u"Sélectionner les colonnes", wx.DefaultPosition, wx.DefaultSize, 0 )
713 # #self.m_staticText1.Wrap( -1 )
714 # #fgSizer3.Add( self.m_staticText1, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
716 # #self.check_colch = wx.CheckBox( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
717 # #fgSizer3.Add( self.check_colch, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
719 # self.m_staticline29 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
720 # fgSizer3.Add( self.m_staticline29, 0, wx.EXPAND, 5 )
722 # self.m_staticline291 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
723 # fgSizer3.Add( self.m_staticline291, 0, wx.EXPAND, 5 )
724 # if not self.paramsimi['first'] :
726 # self.m_staticText271 = wx.StaticText( self, wx.ID_ANY, u"Utiliser les coordonnées\nprécédentes", wx.DefaultPosition, wx.DefaultSize, 0 )
727 # self.m_staticText271.Wrap( -1 )
728 # fgSizer3.Add( self.m_staticText271, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
730 # self.check_coord = wx.CheckBox( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
731 # fgSizer3.Add( self.check_coord, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
733 # self.m_staticline36 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
734 # fgSizer3.Add( self.m_staticline36, 0, wx.EXPAND, 5 )
736 # self.m_staticline37 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
737 # fgSizer3.Add( self.m_staticline37, 0, wx.EXPAND, 5 )
739 # self.m_staticText3 = wx.StaticText( self, wx.ID_ANY, u"Indice", wx.DefaultPosition, wx.DefaultSize, 0 )
740 # self.m_staticText3.Wrap( -1 )
741 # fgSizer3.Add( self.m_staticText3, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
743 # choice1Choices = []
744 # self.choice1 = wx.Choice( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, self.indices, 0 )
745 # self.choice1.SetSelection( 0 )
746 # fgSizer3.Add( self.choice1, 0, wx.ALL, 5 )
748 # self.m_staticline293 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
749 # fgSizer3.Add( self.m_staticline293, 0, wx.EXPAND, 5 )
751 # self.m_staticline292 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
752 # fgSizer3.Add( self.m_staticline292, 0, wx.EXPAND, 5 )
754 # self.m_staticText4 = wx.StaticText( self, wx.ID_ANY, u"Layout", wx.DefaultPosition, wx.DefaultSize, 0 )
755 # self.m_staticText4.Wrap( -1 )
756 # fgSizer3.Add( self.m_staticText4, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
758 # choice2Choices = [u"random", u"cercle", u"fruchterman reingold", u"kamada kawai", u"graphopt"]
759 # self.choice2 = wx.Choice( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, choice2Choices, 0 )
760 # self.choice2.SetSelection( 0 )
761 # fgSizer3.Add( self.choice2, 0, wx.ALL, 5 )
763 # self.m_staticline294 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
764 # fgSizer3.Add( self.m_staticline294, 0, wx.EXPAND, 5 )
766 # self.m_staticline295 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
767 # fgSizer3.Add( self.m_staticline295, 0, wx.EXPAND, 5 )
769 # self.m_staticText5 = wx.StaticText( self, wx.ID_ANY, u"Type de graph", wx.DefaultPosition, wx.DefaultSize, 0 )
770 # self.m_staticText5.Wrap( -1 )
771 # fgSizer3.Add( self.m_staticText5, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
773 # choice3Choices = [u"dynamique", u"statique", u"3D"]
774 # self.choice3 = wx.Choice( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, choice3Choices, 0 )
775 # self.choice3.SetSelection( 0 )
776 # fgSizer3.Add( self.choice3, 0, wx.ALL, 5 )
778 # self.m_staticline296 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
779 # fgSizer3.Add( self.m_staticline296, 0, wx.EXPAND, 5 )
781 # self.m_staticline297 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
782 # fgSizer3.Add( self.m_staticline297, 0, wx.EXPAND, 5 )
784 # self.m_staticText8 = wx.StaticText( self, wx.ID_ANY, u"Arbre maximum", wx.DefaultPosition, wx.DefaultSize, 0 )
785 # self.m_staticText8.Wrap( -1 )
786 # fgSizer3.Add( self.m_staticText8, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
788 # self.check1 = wx.CheckBox( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
789 # fgSizer3.Add( self.check1, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
791 # self.m_staticline298 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
792 # fgSizer3.Add( self.m_staticline298, 0, wx.EXPAND, 5 )
794 # self.m_staticline299 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
795 # fgSizer3.Add( self.m_staticline299, 0, wx.EXPAND, 5 )
797 # self.m_staticText91 = wx.StaticText( self, wx.ID_ANY, u"Graph à seuil", wx.DefaultPosition, wx.DefaultSize, 0 )
798 # self.m_staticText91.Wrap( -1 )
799 # fgSizer3.Add( self.m_staticText91, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
801 # bSizer21 = wx.BoxSizer( wx.HORIZONTAL )
803 # self.check_seuil = wx.CheckBox( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
804 # bSizer21.Add( self.check_seuil, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
806 # self.spin_seuil = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 1, 10000, 1 )
807 # bSizer21.Add( self.spin_seuil, 0, wx.ALL, 5 )
809 # fgSizer3.Add( bSizer21, 1, wx.EXPAND, 5 )
811 # self.m_staticline2910 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
812 # fgSizer3.Add( self.m_staticline2910, 0, wx.EXPAND, 5 )
814 # self.m_staticline2911 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
815 # fgSizer3.Add( self.m_staticline2911, 0, wx.EXPAND, 5 )
817 # self.m_staticText19 = wx.StaticText( self, wx.ID_ANY, u"Texte sur les sommets", wx.DefaultPosition, wx.DefaultSize, 0 )
818 # self.m_staticText19.Wrap( -1 )
819 # fgSizer3.Add( self.m_staticText19, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
821 # self.check_vlab = wx.CheckBox( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
822 # fgSizer3.Add( self.check_vlab, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
824 # self.m_staticline2912 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
825 # fgSizer3.Add( self.m_staticline2912, 0, wx.EXPAND, 5 )
827 # self.m_staticline2913 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
828 # fgSizer3.Add( self.m_staticline2913, 0, wx.EXPAND, 5 )
830 # self.m_staticText20 = wx.StaticText( self, wx.ID_ANY, u"Indices sur les arêtes", wx.DefaultPosition, wx.DefaultSize, 0 )
831 # self.m_staticText20.Wrap( -1 )
832 # fgSizer3.Add( self.m_staticText20, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
834 # self.check_elab = wx.CheckBox( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
835 # fgSizer3.Add( self.check_elab, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
837 # self.m_staticline2914 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
838 # fgSizer3.Add( self.m_staticline2914, 0, wx.EXPAND, 5 )
840 # self.m_staticline2915 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
841 # fgSizer3.Add( self.m_staticline2915, 0, wx.EXPAND, 5 )
843 # self.m_staticText27 = wx.StaticText( self, wx.ID_ANY, u"Taille du texte", wx.DefaultPosition, wx.DefaultSize, 0 )
844 # self.m_staticText27.Wrap( -1 )
845 # fgSizer3.Add( self.m_staticText27, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
847 # self.spin_cex = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 10 )
848 # fgSizer3.Add( self.spin_cex, 0, wx.ALL, 5 )
850 # self.m_staticline2916 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
851 # fgSizer3.Add( self.m_staticline2916, 0, wx.EXPAND, 5 )
853 # self.m_staticline2917 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
854 # fgSizer3.Add( self.m_staticline2917, 0, wx.EXPAND, 5 )
856 # if 'bystar' in self.paramsimi :
857 # self.m_staticText40 = wx.StaticText( self, wx.ID_ANY, u"Sélectionner une variable", wx.DefaultPosition, wx.DefaultSize, 0 )
858 # self.m_staticText40.Wrap( -1 )
859 # fgSizer3.Add( self.m_staticText40, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
861 # self.check_bystar = wx.CheckBox( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
862 # fgSizer3.Add( self.check_bystar, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
864 # self.m_staticline3200 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
865 # fgSizer3.Add( self.m_staticline3200, 0, wx.EXPAND, 5 )
866 # self.m_staticline3201 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
867 # fgSizer3.Add( self.m_staticline3201, 0, wx.EXPAND, 5 )
869 # fgSizer5.Add( fgSizer3, 1, wx.EXPAND, 5 )
871 # self.m_staticline5 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_VERTICAL )
872 # self.m_staticline5.SetForegroundColour( wx.Colour( 0, 0, 0 ) )
874 # fgSizer5.Add( self.m_staticline5, 0, wx.EXPAND|wx.ALL|wx.ALIGN_CENTER_HORIZONTAL, 5 )
876 # fgSizer51 = wx.FlexGridSizer( 0, 2, 0, 0 )
877 # fgSizer51.SetFlexibleDirection( wx.BOTH )
878 # fgSizer51.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
880 # self.m_staticText6 = wx.StaticText( self, wx.ID_ANY, u"Taille du graphique", wx.DefaultPosition, wx.DefaultSize, 0 )
881 # self.m_staticText6.Wrap( -1 )
882 # fgSizer51.Add( self.m_staticText6, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
884 # fgSizer31 = wx.FlexGridSizer( 0, 2, 0, 0 )
885 # fgSizer31.SetFlexibleDirection( wx.BOTH )
886 # fgSizer31.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
888 # self.m_staticText9 = wx.StaticText( self, wx.ID_ANY, u"hauteur", wx.DefaultPosition, wx.DefaultSize, 0 )
889 # self.m_staticText9.Wrap( -1 )
890 # fgSizer31.Add( self.m_staticText9, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
892 # self.spin_height = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 10, 100000, 800 )
893 # fgSizer31.Add( self.spin_height, 0, wx.ALL, 5 )
895 # self.m_staticText10 = wx.StaticText( self, wx.ID_ANY, u"largeur", wx.DefaultPosition, wx.DefaultSize, 0 )
896 # self.m_staticText10.Wrap( -1 )
897 # fgSizer31.Add( self.m_staticText10, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
899 # self.spin_width = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 10, 100000, 800 )
900 # fgSizer31.Add( self.spin_width, 0, wx.ALL, 5 )
902 # fgSizer51.Add( fgSizer31, 1, wx.EXPAND, 5 )
904 # self.m_staticline3 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
905 # fgSizer51.Add( self.m_staticline3, 0, wx.EXPAND, 5 )
907 # self.m_staticline4 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
908 # fgSizer51.Add( self.m_staticline4, 0, wx.EXPAND, 5 )
910 # self.m_staticText101 = wx.StaticText( self, wx.ID_ANY, u"Taille des sommets \nproportionnelle à l'effectif\n(les scores sont normalisés)", wx.DefaultPosition, wx.DefaultSize, 0 )
911 # self.m_staticText101.Wrap( -1 )
912 # fgSizer51.Add( self.m_staticText101, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
914 # bSizer7 = wx.BoxSizer( wx.HORIZONTAL )
916 # bSizer9 = wx.BoxSizer( wx.VERTICAL )
918 # self.check2 = wx.CheckBox( self, wx.ID_ANY, u"eff.", wx.DefaultPosition, wx.DefaultSize, 0 )
919 # bSizer9.Add( self.check2, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
921 # if 'sfromchi' in self.paramsimi :
922 # self.checki = wx.CheckBox( self, wx.ID_ANY, u"chi2", wx.DefaultPosition, wx.DefaultSize, 0 )
923 # bSizer9.Add( self.checki, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
925 # bSizer7.Add( bSizer9, 0, wx.ALIGN_CENTER_VERTICAL, 5 )
927 # fgSizer7 = wx.FlexGridSizer( 0, 2, 0, 0 )
928 # fgSizer7.SetFlexibleDirection( wx.BOTH )
929 # fgSizer7.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
931 # self.m_staticText11 = wx.StaticText( self, wx.ID_ANY, u"min", wx.DefaultPosition, wx.DefaultSize, 0 )
932 # self.m_staticText11.Wrap( -1 )
933 # fgSizer7.Add( self.m_staticText11, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
935 # self.spin_tvmin = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 0 )
936 # fgSizer7.Add( self.spin_tvmin, 0, wx.ALL, 5 )
938 # self.m_staticText12 = wx.StaticText( self, wx.ID_ANY, u"max", wx.DefaultPosition, wx.DefaultSize, 0 )
939 # self.m_staticText12.Wrap( -1 )
940 # fgSizer7.Add( self.m_staticText12, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
942 # self.spin_tvmax = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 0 )
943 # fgSizer7.Add( self.spin_tvmax, 0, wx.ALL, 5 )
945 # bSizer7.Add( fgSizer7, 1, wx.EXPAND, 5 )
947 # fgSizer51.Add( bSizer7, 1, wx.EXPAND, 5 )
949 # self.m_staticline31 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
950 # fgSizer51.Add( self.m_staticline31, 0, wx.EXPAND, 5 )
952 # self.m_staticline32 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
953 # fgSizer51.Add( self.m_staticline32, 0, wx.EXPAND, 5 )
955 # self.m_staticText1011 = wx.StaticText( self, wx.ID_ANY, u"Taille du texte des sommets \nproportionnelle à l'effectif\n(les scores sont normalisés)", wx.DefaultPosition, wx.DefaultSize, 0 )
956 # self.m_staticText1011.Wrap( -1 )
957 # fgSizer51.Add( self.m_staticText1011, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
959 # bSizer71 = wx.BoxSizer( wx.HORIZONTAL )
961 # bSizer8 = wx.BoxSizer( wx.VERTICAL )
963 # self.check_vcex = wx.CheckBox( self, wx.ID_ANY, u"eff.", wx.DefaultPosition, wx.DefaultSize, 0 )
964 # bSizer8.Add( self.check_vcex, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
965 # if 'cexfromchi' in self.paramsimi :
967 # self.checkit = wx.CheckBox( self, wx.ID_ANY, u"chi2", wx.DefaultPosition, wx.DefaultSize, 0 )
968 # bSizer8.Add( self.checkit, 0, wx.ALL, 5 )
970 # bSizer71.Add( bSizer8, 0, wx.ALIGN_CENTER_VERTICAL, 5 )
972 # fgSizer71 = wx.FlexGridSizer( 0, 2, 0, 0 )
973 # fgSizer71.SetFlexibleDirection( wx.BOTH )
974 # fgSizer71.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
976 # self.m_staticText111 = wx.StaticText( self, wx.ID_ANY, u"min", wx.DefaultPosition, wx.DefaultSize, 0 )
977 # self.m_staticText111.Wrap( -1 )
978 # fgSizer71.Add( self.m_staticText111, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
980 # self.spin_vcexmin = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 0 )
981 # fgSizer71.Add( self.spin_vcexmin, 0, wx.ALL, 5 )
983 # self.m_staticText121 = wx.StaticText( self, wx.ID_ANY, u"max", wx.DefaultPosition, wx.DefaultSize, 0 )
984 # self.m_staticText121.Wrap( -1 )
985 # fgSizer71.Add( self.m_staticText121, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
987 # self.spin_vcexmax = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 0 )
988 # fgSizer71.Add( self.spin_vcexmax, 0, wx.ALL, 5 )
990 # bSizer71.Add( fgSizer71, 1, wx.EXPAND, 5 )
992 # fgSizer51.Add( bSizer71, 1, wx.EXPAND, 5 )
994 # self.m_staticline321 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
995 # fgSizer51.Add( self.m_staticline321, 0, wx.EXPAND, 5 )
997 # self.m_staticline322 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
998 # fgSizer51.Add( self.m_staticline322, 0, wx.EXPAND, 5 )
1000 # self.m_staticText10111 = wx.StaticText( self, wx.ID_ANY, u"Largeur des arêtes\nproportionnelle à l'indice", wx.DefaultPosition, wx.DefaultSize, 0 )
1001 # self.m_staticText10111.Wrap( -1 )
1002 # fgSizer51.Add( self.m_staticText10111, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
1004 # bSizer711 = wx.BoxSizer( wx.HORIZONTAL )
1006 # self.check3 = wx.CheckBox( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
1007 # bSizer711.Add( self.check3, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
1009 # fgSizer711 = wx.FlexGridSizer( 0, 2, 0, 0 )
1010 # fgSizer711.SetFlexibleDirection( wx.BOTH )
1011 # fgSizer711.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
1013 # self.m_staticText1111 = wx.StaticText( self, wx.ID_ANY, u"min", wx.DefaultPosition, wx.DefaultSize, 0 )
1014 # self.m_staticText1111.Wrap( -1 )
1015 # fgSizer711.Add( self.m_staticText1111, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
1017 # self.spin_temin = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 0 )
1018 # fgSizer711.Add( self.spin_temin, 0, wx.ALL, 5 )
1020 # self.m_staticText1211 = wx.StaticText( self, wx.ID_ANY, u"max", wx.DefaultPosition, wx.DefaultSize, 0 )
1021 # self.m_staticText1211.Wrap( -1 )
1022 # fgSizer711.Add( self.m_staticText1211, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
1024 # self.spin_temax = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 0 )
1025 # fgSizer711.Add( self.spin_temax, 0, wx.ALL, 5 )
1027 # bSizer711.Add( fgSizer711, 1, wx.EXPAND, 5 )
1029 # fgSizer51.Add( bSizer711, 1, wx.EXPAND, 5 )
1031 # self.m_staticline33 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
1032 # fgSizer51.Add( self.m_staticline33, 0, wx.EXPAND, 5 )
1034 # self.m_staticline34 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
1035 # fgSizer51.Add( self.m_staticline34, 0, wx.EXPAND, 5 )
1037 # self.m_staticText28 = wx.StaticText( self, wx.ID_ANY, u"Gradiant de gris sur les textes en fonction \nde l'effectif (du chi2) (0=noir; 1=blanc)", wx.DefaultPosition, wx.DefaultSize, 0 )
1038 # self.m_staticText28.Wrap( -1 )
1039 # fgSizer51.Add( self.m_staticText28, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
1041 # bSizer10 = wx.BoxSizer( wx.HORIZONTAL )
1043 # self.m_checkBox14 = wx.CheckBox( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
1044 # bSizer10.Add( self.m_checkBox14, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
1046 # bSizer11 = wx.BoxSizer( wx.VERTICAL )
1048 # bSizer12 = wx.BoxSizer( wx.HORIZONTAL )
1050 # self.m_staticText31 = wx.StaticText( self, wx.ID_ANY, u"min", wx.DefaultPosition, wx.DefaultSize, 0 )
1051 # self.m_staticText31.Wrap( -1 )
1052 # bSizer12.Add( self.m_staticText31, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
1054 # self.m_spinCtrl14 = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 10, 0 )
1055 # bSizer12.Add( self.m_spinCtrl14, 0, wx.ALL, 5 )
1057 # bSizer11.Add( bSizer12, 1, wx.EXPAND, 5 )
1059 # bSizer13 = wx.BoxSizer( wx.HORIZONTAL )
1061 # self.m_staticText32 = wx.StaticText( self, wx.ID_ANY, u"max", wx.DefaultPosition, wx.DefaultSize, 0 )
1062 # self.m_staticText32.Wrap( -1 )
1063 # bSizer13.Add( self.m_staticText32, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
1065 # self.m_spinCtrl15 = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 10, 10 )
1066 # bSizer13.Add( self.m_spinCtrl15, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
1068 # bSizer11.Add( bSizer13, 1, wx.EXPAND, 5 )
1070 # bSizer10.Add( bSizer11, 1, wx.EXPAND, 5 )
1072 # fgSizer51.Add( bSizer10, 1, wx.ALIGN_CENTER_VERTICAL|wx.EXPAND, 5 )
1074 # self.m_staticline3311 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
1075 # fgSizer51.Add( self.m_staticline3311, 0, wx.EXPAND |wx.ALL, 5 )
1077 # self.m_staticline33111 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
1078 # fgSizer51.Add( self.m_staticline33111, 0, wx.EXPAND |wx.ALL, 5 )
1079 # bSizer5 = wx.BoxSizer( wx.HORIZONTAL )
1081 # self.m_staticText21 = wx.StaticText( self, wx.ID_ANY, u"Couleur des sommets", wx.DefaultPosition, wx.DefaultSize, 0 )
1082 # self.m_staticText21.Wrap( -1 )
1083 # bSizer5.Add( self.m_staticText21, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
1085 # self.cols = wx.ColourPickerCtrl( self, wx.ID_ANY, wx.Colour( 255, 0, 0 ), wx.DefaultPosition, wx.Size( 10,10 ), wx.CLRP_DEFAULT_STYLE )
1086 # bSizer5.Add( self.cols, 0, wx.ALL, 5 )
1088 # fgSizer51.Add( bSizer5, 1, wx.EXPAND, 5 )
1090 # bSizer6 = wx.BoxSizer( wx.HORIZONTAL )
1092 # self.m_staticText22 = wx.StaticText( self, wx.ID_ANY, u"Couleur des arêtes", wx.DefaultPosition, wx.DefaultSize, 0 )
1093 # self.m_staticText22.Wrap( -1 )
1094 # bSizer6.Add( self.m_staticText22, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
1096 # self.cola = wx.ColourPickerCtrl( self, wx.ID_ANY, wx.Colour( 208, 208, 208 ), wx.DefaultPosition, wx.DefaultSize, wx.CLRP_DEFAULT_STYLE )
1097 # bSizer6.Add( self.cola, 0, wx.ALL, 5 )
1099 # fgSizer51.Add( bSizer6, 1, wx.EXPAND, 5 )
1101 # self.m_staticline331 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
1102 # fgSizer51.Add( self.m_staticline331, 0, wx.EXPAND, 5 )
1104 # self.m_staticline332 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
1105 # fgSizer51.Add( self.m_staticline332, 0, wx.EXPAND, 5 )
1107 # self.m_staticText23 = wx.StaticText( self, wx.ID_ANY, u"Taille des sommets unique", wx.DefaultPosition, wx.DefaultSize, 0 )
1108 # self.m_staticText23.Wrap( -1 )
1109 # fgSizer51.Add( self.m_staticText23, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
1111 # bSizer72 = wx.BoxSizer( wx.HORIZONTAL )
1113 # self.check_s_size = wx.CheckBox( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
1114 # bSizer72.Add( self.check_s_size, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
1116 # self.spin_tv = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 10 )
1117 # bSizer72.Add( self.spin_tv, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
1119 # fgSizer51.Add( bSizer72, 1, wx.EXPAND, 5 )
1121 # self.m_staticline333 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
1122 # fgSizer51.Add( self.m_staticline333, 0, wx.EXPAND, 5 )
1124 # self.m_staticline334 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
1125 # fgSizer51.Add( self.m_staticline334, 0, wx.EXPAND, 5 )
1127 # self.m_staticText24 = wx.StaticText( self, wx.ID_ANY, u"Transparence des sphères", wx.DefaultPosition, wx.DefaultSize, 0 )
1128 # self.m_staticText24.Wrap( -1 )
1129 # fgSizer51.Add( self.m_staticText24, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
1131 # self.slider_sphere = wx.Slider( self, wx.ID_ANY, 10, 0, 100, wx.DefaultPosition, wx.DefaultSize, wx.SL_HORIZONTAL|wx.SL_LABELS )
1132 # fgSizer51.Add( self.slider_sphere, 0, wx.ALL|wx.EXPAND|wx.ALIGN_CENTER_VERTICAL, 5 )
1134 # self.m_staticline335 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
1135 # fgSizer51.Add( self.m_staticline335, 0, wx.EXPAND, 5 )
1137 # self.m_staticline336 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
1138 # fgSizer51.Add( self.m_staticline336, 0, wx.EXPAND, 5 )
1140 # self.m_staticText25 = wx.StaticText( self, wx.ID_ANY, u"Faire un film", wx.DefaultPosition, wx.DefaultSize, 0 )
1141 # self.m_staticText25.Wrap( -1 )
1142 # fgSizer51.Add( self.m_staticText25, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
1144 # self.film = wx.CheckBox( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
1145 # fgSizer51.Add( self.film, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
1147 # self.m_staticline2918 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
1148 # fgSizer51.Add( self.m_staticline2918, 0, wx.EXPAND, 5 )
1150 # self.m_staticline2919 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
1151 # fgSizer51.Add( self.m_staticline2919, 0, wx.EXPAND, 5 )
1154 # fgSizer51.AddSpacer( ( 0, 0), 1, wx.EXPAND, 5 )
1156 # m_sdbSizer2 = wx.StdDialogButtonSizer()
1157 # self.m_sdbSizer2OK = wx.Button( self, wx.ID_OK )
1158 # m_sdbSizer2.AddButton( self.m_sdbSizer2OK )
1159 # self.m_sdbSizer2Cancel = wx.Button( self, wx.ID_CANCEL )
1160 # m_sdbSizer2.AddButton( self.m_sdbSizer2Cancel )
1161 # m_sdbSizer2.Realize();
1162 # fgSizer51.Add( m_sdbSizer2, 1, wx.EXPAND, 5 )
1164 # fgSizer5.Add( fgSizer51, 1, wx.EXPAND, 5 )
1166 # self.SetSizer( fgSizer5 )
1167 # self.__set_properties()
1170 # fgSizer5.Fit( self )
1172 # self.Centre( wx.BOTH )
1175 if not self.paramsimi['first'] :
1176 self.check_coord.Bind( wx.EVT_CHECKBOX, self.OnKeepCoords )
1177 self.choice3.Bind( wx.EVT_CHOICE, self.OnChangeType )
1178 self.check2.Bind( wx.EVT_CHECKBOX, self.OnCheck2 )
1179 if 'cexfromchi' in self.paramsimi :
1180 self.checkit.Bind( wx.EVT_CHECKBOX, self.OnCheckit )
1181 if 'sfromchi' in self.paramsimi :
1182 self.checki.Bind( wx.EVT_CHECKBOX, self.OnChecki )
1183 self.check_vcex.Bind( wx.EVT_CHECKBOX, self.OnCheck_vcex )
1184 self.check_s_size.Bind( wx.EVT_CHECKBOX, self.OnCheck_s_size )
1186 def __set_properties(self):
1187 self.choice1.SetSelection(self.paramsimi['coeff'])
1188 self.choice2.SetSelection(self.paramsimi['layout'])
1189 self.choice3.SetSelection(self.paramsimi['type_graph'])
1190 if self.paramsimi['type'] != 2 :
1191 self.film.Enable(False)
1192 self.slider_sphere.Enable(False)
1194 self.film.Enable(True)
1195 self.slider_sphere.Enable(True)
1196 self.check1.SetValue(self.paramsimi['arbremax'])
1197 self.check_vlab.SetValue(self.paramsimi['label_v'])
1198 self.check_elab.SetValue(self.paramsimi['label_e'])
1199 self.check2.SetValue(self.paramsimi['tvprop'])
1200 self.spin_tv.SetValue(self.paramsimi['coeff_tv_nb'])
1201 self.check_s_size.SetValue(self.paramsimi['coeff_tv'])
1202 self.spin_tvmin.SetValue(self.paramsimi['tvmin'])
1203 self.spin_tvmax.SetValue(self.paramsimi['tvmax'])
1204 self.check3.SetValue(self.paramsimi['coeff_te'])
1205 self.spin_temin.SetValue(self.paramsimi['coeff_temin'])
1206 self.spin_temax.SetValue(self.paramsimi['coeff_temax'])
1207 self.check_vcex.SetValue(self.paramsimi['vcex'])
1208 self.spin_vcexmin.SetValue(self.paramsimi['vcexmin'])
1209 self.spin_vcexmax.SetValue(self.paramsimi['vcexmax'])
1210 self.spin_cex.SetValue(self.paramsimi['cex'])
1211 self.check_seuil.SetValue(self.paramsimi['seuil_ok'])
1212 self.spin_seuil.SetValue(self.paramsimi['seuil'])
1213 self.cols.SetColour(self.paramsimi['cols'])
1214 self.cola.SetColour(self.paramsimi['cola'])
1215 self.spin_width.SetValue(self.paramsimi['width'])
1216 self.spin_height.SetValue(self.paramsimi['height'])
1217 if 'cexfromchi' in self.paramsimi :
1218 self.checkit.SetValue(self.paramsimi['cexfromchi'])
1219 if 'sfromchi' in self.paramsimi :
1220 self.checki.SetValue(self.paramsimi['sfromchi'])
1221 if not self.paramsimi['first'] :
1222 self.check_coord.SetValue(self.paramsimi['keep_coord'])
1223 self.OnKeepCoords(wx.EVT_CHECKBOX)
1224 if self.paramsimi.get('bystar', False) :
1225 self.check_bystar.SetValue(True)
1226 self.stars = self.paramsimi['stars']
1227 self.slider_sphere.SetValue(self.paramsimi['alpha'])
1228 self.film.SetValue(self.paramsimi['film'])
1230 def OnCheck_s_size(self, evt):
1231 if self.check_s_size.GetValue() :
1232 if 'cexfromchi' in self.paramsimi :
1233 self.checki.SetValue(False)
1234 self.check2.SetValue(False)
1235 self.spin_tvmin.Enable(False)
1236 self.spin_tvmax.Enable(False)
1237 self.spin_tv.Enable(True)
1239 self.check2.SetValue(True)
1240 self.spin_tvmin.Enable(True)
1241 self.spin_tvmax.Enable(True)
1242 self.spin_tv.Enable(False)
1244 def OnCheck2(self, evt):
1245 if self.check2.GetValue():
1246 self.check_s_size.SetValue(False)
1247 if 'cexfromchi' in self.paramsimi :
1248 self.checki.SetValue(False)
1249 self.spin_tvmin.Enable(True)
1250 self.spin_tvmax.Enable(True)
1251 self.spin_tv.Enable(False)
1253 self.check_s_size.SetValue(True)
1254 self.spin_tvmin.Enable(False)
1255 self.spin_tvmax.Enable(False)
1256 self.spin_tv.Enable(True)
1258 def OnChecki(self, evt):
1259 if 'sfromchi' in self.paramsimi :
1260 if self.checki.GetValue() :
1261 self.check_s_size.SetValue(False)
1262 self.check2.SetValue(False)
1263 self.spin_tvmin.Enable(True)
1264 self.spin_tvmax.Enable(True)
1265 self.spin_tv.Enable(False)
1267 self.check_s_size.SetValue(True)
1268 #self.check2.SetValue(True)
1269 self.spin_tvmin.Enable(False)
1270 self.spin_tvmax.Enable(False)
1271 self.spin_tv.Enable(True)
1273 def OnCheckit(self,evt) :
1274 if 'cexfromchi' in self.paramsimi :
1275 if self.checkit.GetValue() :
1276 if self.check_vcex.GetValue() :
1277 self.check_vcex.SetValue(False)
1279 def OnCheck_vcex(self, evt):
1280 if self.check_vcex.GetValue() :
1281 if 'checkit' in dir(self) :
1282 if self.checkit.GetValue() :
1283 self.checkit.SetValue(False)
1285 def OnChangeType(self, event) :
1286 if event.GetInt() != 1 :
1287 self.spin_width.Enable(False)
1288 self.spin_height.Enable(False)
1290 self.spin_width.Enable(True)
1291 self.spin_height.Enable(True)
1292 if event.GetInt() != 2 :
1293 self.film.Enable(False)
1294 self.slider_sphere.Enable(False)
1296 self.film.Enable(True)
1297 self.slider_sphere.Enable(True)
1299 def OnKeepCoords(self, event):
1300 if self.check_coord.GetValue() :
1301 self.choice1.SetSelection(self.paramsimi['coeff'])
1302 self.choice2.SetSelection(self.paramsimi['layout'])
1303 self.check_seuil.SetValue(self.paramsimi['seuil_ok'])
1304 self.spin_seuil.SetValue(self.paramsimi['seuil'])
1305 self.choice1.Disable()
1306 self.choice2.Disable()
1307 self.check_seuil.Disable()
1308 self.spin_seuil.Disable()
1309 #self.check_colch.SetValue(False)
1310 #self.check_colch.Disable()
1312 self.choice1.Enable(True)
1313 self.choice2.Enable(True)
1314 self.check_seuil.Enable(True)
1315 self.spin_seuil.Enable(True)
1316 #self.check_colch.Enable(True)
1320 def __init__(self, parent, source, parametres, pathout, actives, indices_simi, wordlist = None, selected = None) :
1321 self.parametres = parametres
1323 self.dial = PrefSimi(parent, -1, self.parametres, indices_simi, wordlist = wordlist, selected = selected, actives = actives)
1324 self.dial.CenterOnParent()
1325 self.val = self.dial.ShowModal()
1326 if self.val == wx.ID_OK :
1327 if 'bystar' in self.parametres :
1328 if self.dial.check_bystar.GetValue() :
1329 variables = treat_var_mod(self.parametres['stars'])
1330 vardial = dialog.OptLexi(parent)
1331 vardial.listet = self.parametres['stars']
1332 vardial.variables = [v for v in variables]
1333 for et in vardial.variables :
1334 vardial.list_box_1.Append(et)
1335 nval = vardial.ShowModal()
1336 if nval == wx.ID_OK :
1337 if vardial.choice.GetSelection() == 1 :
1338 listet = [vardial.listet[i] for i in vardial.list_box_1.GetSelections()]
1340 listet = variables[vardial.variables[vardial.list_box_1.GetSelections()[0]]]
1343 self.etline = source.corpus.make_etline(listet)
1344 self.parametres['selectedstars'] = listet
1345 self.parametres['listet'] = self.etline
1348 last = self.dial.listcol.GetFirstSelected()
1349 lastl = [self.dial.listcol.GetFirstSelected()]
1350 indexes = [self.dial.listcol.getColumnText(self.dial.listcol.GetFirstSelected(),0)]
1351 while self.dial.listcol.GetNextSelected(last) != -1:
1352 last = self.dial.listcol.GetNextSelected(last)
1354 indexes.append(self.dial.listcol.getColumnText(last,0))
1355 column = [actives.index(val) for val in indexes]
1357 with open(pathout, 'w') as f :
1358 f.write('\n'.join([`val` for val in column]))
1364 def make_param(self) :
1365 #self.select = self.dial.check_colch.GetValue()
1366 if self.parametres.get('first', True) :
1369 keep_coord = self.dial.check_coord.GetValue()
1370 param = {'coeff' : self.dial.choice1.GetSelection(),
1371 'layout' : self.dial.choice2.GetSelection(),
1372 'type_graph' : self.dial.choice3.GetSelection(),
1373 'arbremax' : self.dial.check1.GetValue(),
1374 'coeff_tv' : self.dial.check_s_size.GetValue(),
1375 'coeff_tv_nb' : self.dial.spin_tv.GetValue(),
1376 'tvprop' : self.dial.check2.GetValue(),
1377 'tvmin' : self.dial.spin_tvmin.GetValue(),
1378 'tvmax' : self.dial.spin_tvmax.GetValue(),
1379 'coeff_te' : self.dial.check3.GetValue(),
1380 'coeff_temin' : self.dial.spin_temin.GetValue(),
1381 'coeff_temax' : self.dial.spin_temax.GetValue(),
1382 'label_e' : self.dial.check_elab.GetValue(),
1383 'label_v' : self.dial.check_vlab.GetValue(),
1384 'vcex' : self.dial.check_vcex.GetValue(),
1385 'vcexmin' : self.dial.spin_vcexmin.GetValue(),
1386 'vcexmax' : self.dial.spin_vcexmax.GetValue(),
1387 'cex' : self.dial.spin_cex.GetValue(),
1388 'seuil_ok' : self.dial.check_seuil.GetValue(),
1389 'seuil' : self.dial.spin_seuil.GetValue(),
1390 'cols' : self.dial.cols.GetColour(),
1391 'cola' : self.dial.cola.GetColour(),
1392 'width' : self.dial.spin_width.GetValue(),
1393 'height' : self.dial.spin_height.GetValue(),
1395 'keep_coord' : keep_coord,
1396 'alpha' : self.dial.slider_sphere.GetValue(),
1397 'film' : self.dial.film.GetValue()
1399 if 'cexfromchi' in self.parametres :
1400 param['cexfromchi'] = self.dial.checkit.GetValue()
1401 if 'sfromchi' in self.parametres :
1402 param['sfromchi'] = self.dial.checki.GetValue()
1403 if 'vlabcolor' in self.parametres :
1404 param['vlabcolor'] = self.parametres['vlabcolor']
1405 if 'check_bystar' in dir(self.dial) :
1406 param['bystar'] = self.dial.check_bystar.GetValue()
1407 param['stars'] = self.parametres['stars']
1408 self.parametres.update(param)