X-Git-Url: http://iramuteq.org/git?p=iramuteq;a=blobdiff_plain;f=dialog.py;h=314700d8f078a1a3d137cd5382e46096dee75eef;hp=0711708262b52d541b92fce79b7c483289b57ea9;hb=161583780bee75faed286c562eea67b7f22ed7aa;hpb=1fbb2fcb56ff6f0e0a0fa67daf55dadced5d0341 diff --git a/dialog.py b/dialog.py index 0711708..314700d 100755 --- a/dialog.py +++ b/dialog.py @@ -8,11 +8,10 @@ import wx.lib.colourselect as csel import wx.lib.sized_controls as sc import wx.lib.filebrowsebutton as filebrowse import locale +from functions import DoConf import os import sys -#from listlex import * from KeyFrame import AlcOptFrame -#from listlex import ListForSpec #--------------------------------------------------------------------------- provider = wx.SimpleHelpProvider() wx.HelpProvider_Set(provider) @@ -1152,7 +1151,10 @@ class StatDialog(wx.Dialog): dial = AlcOptFrame(self, self.parent.parent) dial.CenterOnParent() dial.ShowModal() - #dial.Destroy() + for i in range(0,len(dial.listlabel)): + dial.keys[dial.listcle[i]] = dial.listspin[i].GetValue() + DoConf().makeoptions(['KEY'], [dial.keys], outfile = self.parent.parent.ConfigPath['key']) + dial.Destroy() class LexDialog( wx.Dialog ): @@ -1203,18 +1205,19 @@ class LexDialog( wx.Dialog ): class PrefUCECarac(wx.Dialog): def __init__(self, parent, *args, **kwds): kwds['style'] = wx.DEFAULT_DIALOG_STYLE - kwds['title'] = u"UCE caractéristiques" + kwds['title'] = u"Segments de texte caractéristiques" wx.Dialog.__init__(self, *args, **kwds) self.parent = parent first = wx.BoxSizer(wx.VERTICAL) sizer = wx.FlexGridSizer(0,2,0,0) self.label_type = wx.StaticText(self, -1, u"Score de classement") sizer.Add(self.label_type, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_LEFT, 5) - self.radio_type = wx.RadioBox(self, -1, u"", choices=[u'absolu (somme des chi2 des formes marquées de l\'UCE)', u'relatif (moyenne des chi2 des formes marquées de l\'UCE)'], majorDimension=0, style=wx.RA_SPECIFY_ROWS) + self.radio_type = wx.RadioBox(self, -1, u"", choices=[u'absolu (somme des chi2 des formes marquées du segment)', u'relatif (moyenne des chi2 des formes marquées du segment)'], majorDimension=0, style=wx.RA_SPECIFY_ROWS) sizer.Add(self.radio_type, 0, wx.ALIGN_RIGHT, 5) - self.txt_eff = wx.StaticText(self, -1, u"Nombre d\'UCE maximum") + self.txt_eff = wx.StaticText(self, -1, u"Nombre maximum de segments de texte") sizer.Add(self.txt_eff, 0, wx.ALIGN_CENTRE, 5) self.spin_eff = wx.SpinCtrl(self, -1, '', size = (100, 30), min = 1, max = 100000, initial = 50) + self.spin_eff.SetValue(50) sizer.Add(self.spin_eff, 0, wx.ALIGN_CENTRE|wx.ALL, 5) first.Add(sizer, 0, wx.ALL, 5) btnsizer = wx.StdDialogButtonSizer() @@ -1465,7 +1468,7 @@ class FindInCluster(wx.Frame): # begin wxGlade: MyFrame.__init__ wx.Frame.__init__(self, parent, id) self.spanel = wx.ScrolledWindow(self, -1, style=wx.TAB_TRAVERSAL) - self.sizer1 = wx.FlexGridSizer(len(result)+1,4,0,0) + self.sizer1 = wx.FlexGridSizer(0,4,0,0) self.parent = parent self.formes = {} txt = [u'forme',u'classe',u'chi2',u'voir'] @@ -1551,10 +1554,10 @@ class FindInCluster(wx.Frame): def OnCloseWindow(self, evt): self.Destroy() -class SearchDial ( wx.Dialog ): +class SearchDial ( wx.Frame ): def __init__( self, parent, listctrl, col, shown): - wx.Dialog.__init__ ( self, parent, id = wx.ID_ANY, title = wx.EmptyString, pos = wx.DefaultPosition, size = wx.DefaultSize, style = wx.DEFAULT_DIALOG_STYLE ) + wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = wx.EmptyString, pos = wx.DefaultPosition, size = wx.DefaultSize, style = wx.DEFAULT_FRAME_STYLE ) self.parent = parent self.listctrl = listctrl self.col = col @@ -1707,6 +1710,12 @@ class OptLexi(wx.Dialog): self.force_chi = force_chi #self.labellem = wx.StaticText(self, -1, u"Lemmatisation : ") #self.checklem = wx.CheckBox(self, -1) + if not self.force_chi : + self.label_typeformes = wx.StaticText(self, -1, u"Formes retenues") + typeformeschoiceChoices = [ u"actives et supplémentaires", u"actives", u"supplémentaires"] + self.typeformes = wx.Choice( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, typeformeschoiceChoices, 0 ) + self.typeformes.SetSelection( 0 ) + self.label_var = wx.StaticText(self, -1, u"Sélection par :") self.choice = wx.Choice(self, -1, (100,50), choices = [u'variables', u'modalités']) self.label1 = wx.StaticText(self, -1, u"Choix") @@ -1721,7 +1730,7 @@ class OptLexi(wx.Dialog): self.choice_indice = wx.Choice(self, -1, (100,50), choices = indices) if not self.force_chi : self.label = wx.StaticText(self, -1, u"effectif minimum") - self.spin = wx.SpinCtrl(self, -1, min = 1, max = 10000) + self.spin = wx.SpinCtrl(self, -1, min = 1, max = 10000, initial = 10) self.Bind(wx.EVT_CHOICE, self.onselect, self.choice) self.__set_properties() self.__do_layout() @@ -1733,6 +1742,7 @@ class OptLexi(wx.Dialog): if not self.force_chi : self.spin.SetValue(10) self.choice.SetSelection(0) + self.choice_indice.SetSelection(0) #self.SetMinSize(wx.Size(300, 400)) # end wxGlade @@ -1743,6 +1753,9 @@ class OptLexi(wx.Dialog): sizer_3 = wx.BoxSizer(wx.HORIZONTAL) #sizer_2.Add(self.labellem, 0, wx.ALIGN_CENTER_VERTICAL, 3) #sizer_2.Add(self.checklem, 0, wx.ALIGN_CENTER_VERTICAL, 3) + if not self.force_chi : + sizer_2.Add(self.label_typeformes, 0, wx.ALIGN_CENTER_VERTICAL, 3) + sizer_2.Add(self.typeformes, 0, wx.ALIGN_CENTER_VERTICAL, 3) sizer_2.Add(self.label_var, 0, wx.ALIGN_CENTER_VERTICAL, 3) sizer_2.Add(self.choice, 0, wx.ALIGN_CENTER_VERTICAL, 3) sizer_2.Add(self.label1, 0, wx.ALIGN_CENTER_VERTICAL, 3) @@ -1903,7 +1916,7 @@ class PrefDendro ( wx.Dialog ): class PrefWordCloud ( wx.Dialog ): - def __init__( self, parent ): + def __init__( self, parent, fromcluster = False ): wx.Dialog.__init__ ( self, parent, id = wx.ID_ANY, title = u"Préférences wordcloud", pos = wx.DefaultPosition, size = wx.DefaultSize, style = wx.DEFAULT_DIALOG_STYLE ) self.SetSizeHintsSz( wx.DefaultSize, wx.DefaultSize ) @@ -1932,6 +1945,7 @@ class PrefWordCloud ( wx.Dialog ): bSizer1.Add( self.m_staticText3, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_LEFT|wx.ALL, 5 ) self.spin_H = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 100,30 ), wx.SP_ARROW_KEYS, 0, 10000, 600 ) + self.spin_H.SetValue( 800 ) bSizer1.Add( self.spin_H, 0, wx.ALL, 5 ) fgSizer1.Add( bSizer1, 1, wx.EXPAND, 5 ) @@ -1943,6 +1957,7 @@ class PrefWordCloud ( wx.Dialog ): bSizer3.Add( self.m_staticText4, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_LEFT|wx.ALL, 5 ) self.spin_L = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 100,30 ), wx.SP_ARROW_KEYS, 0, 10000, 600 ) + self.spin_L.SetValue( 800 ) bSizer3.Add( self.spin_L, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 ) fgSizer1.Add( bSizer3, 1, wx.EXPAND, 5 ) @@ -1961,7 +1976,17 @@ class PrefWordCloud ( wx.Dialog ): self.format = wx.Choice( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, formatChoices, 0 ) self.format.SetSelection( 0 ) fgSizer1.Add( self.format, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 ) + + if fromcluster : + self.m_staticText111 = wx.StaticText( self, wx.ID_ANY, u"Taille des mots en fonction de ...", wx.DefaultPosition, wx.DefaultSize, 0 ) + self.m_staticText11.Wrap( -1 ) + fgSizer1.Add( self.m_staticText111, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 ) + IndiceChoices = [ u"chi2", u"fréquence" ] + self.indice = wx.Choice( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, IndiceChoices, 0 ) + self.indice.SetSelection( 0 ) + fgSizer1.Add( self.indice, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 ) + self.m_staticline13 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL ) fgSizer1.Add( self.m_staticline13, 0, wx.EXPAND |wx.ALL, 5 ) @@ -1973,6 +1998,7 @@ class PrefWordCloud ( wx.Dialog ): fgSizer1.Add( self.m_staticText5, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_LEFT|wx.ALL, 5 ) self.spin_maxword = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 10000, 600 ) + self.spin_maxword.SetValue( 600 ) fgSizer1.Add( self.spin_maxword, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 ) self.m_staticline5 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL ) @@ -2009,6 +2035,7 @@ class PrefWordCloud ( wx.Dialog ): bSizer5.Add( self.m_staticText7, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 ) self.spin_mincex = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 1000, 5 ) + self.spin_mincex.SetValue( 5 ) bSizer5.Add( self.spin_mincex, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_RIGHT|wx.ALL, 5 ) bSizer4.Add( bSizer5, 1, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.EXPAND, 5 ) @@ -2020,6 +2047,7 @@ class PrefWordCloud ( wx.Dialog ): bSizer6.Add( self.m_staticText8, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 ) self.spin_maxcex = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 1000, 50 ) + self.spin_maxcex.SetValue( 50 ) bSizer6.Add( self.spin_maxcex, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_LEFT|wx.ALL, 5 ) bSizer4.Add( bSizer6, 1, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.EXPAND, 5 ) @@ -2213,8 +2241,8 @@ class CorpusPref ( wx.Dialog ): def __init__( self, parent, parametres ): wx.Dialog.__init__ ( self, parent, id = wx.ID_ANY, title = u"Préférences", pos = wx.DefaultPosition, size = wx.DefaultSize, style = wx.DEFAULT_DIALOG_STYLE ) self.parent = parent - langues_n = [u'français', u'english', u'german (expérimentale)', u'italian', u'swedish (expérimentale)', u'portuguese (expérimentale)', u'greek (expériementale)', u'autre...'] - self.langues = [u'french', u'english', u'german', 'italian', 'swedish', u'portuguese', 'greek', 'other'] + langues_n = [u'français', u'english', u'german (expérimentale)', u'italian', u'swedish (expérimentale)', u'portuguese (expérimentale)', u'spanish (expérimentale)', u'greek (expériementale)', u'autre...'] + self.langues = [u'french', u'english', u'german', u'italian', u'swedish', u'portuguese', u'spanish', u'greek', u'other'] self.encodages = [enc[0].lower() for enc in encodages] ucimark = [u'****', u'0000'] @@ -2274,7 +2302,7 @@ class CorpusPref ( wx.Dialog ): fgSizer1.Add( fgSizer41, 1, wx.EXPAND, 5 ) - self.m_staticText12 = wx.StaticText( self.m_panel1, wx.ID_ANY, u"Marqueur d'UCI", wx.DefaultPosition, wx.DefaultSize, 0 ) + self.m_staticText12 = wx.StaticText( self.m_panel1, wx.ID_ANY, u"Marqueur de texte", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText12.Wrap( -1 ) fgSizer1.Add( self.m_staticText12, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_LEFT|wx.ALL, 5 ) @@ -2291,7 +2319,7 @@ class CorpusPref ( wx.Dialog ): self.check_expressions.SetValue(True) fgSizer1.Add( self.check_expressions, 0, wx.ALL, 5 ) - self.m_staticText9 = wx.StaticText( self.m_panel1, wx.ID_ANY, u"Construire des UCE", wx.DefaultPosition, wx.DefaultSize, 0 ) + self.m_staticText9 = wx.StaticText( self.m_panel1, wx.ID_ANY, u"Construire des segments de texte", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText9.Wrap( -1 ) fgSizer1.Add( self.m_staticText9, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_LEFT|wx.ALL, 5 ) @@ -2299,7 +2327,7 @@ class CorpusPref ( wx.Dialog ): self.check_makeuce.SetValue(True) fgSizer1.Add( self.check_makeuce, 0, wx.ALL, 5 ) - self.m_staticText10 = wx.StaticText( self.m_panel1, wx.ID_ANY, u"Mode de construction des UCE", wx.DefaultPosition, wx.DefaultSize, 0 ) + self.m_staticText10 = wx.StaticText( self.m_panel1, wx.ID_ANY, u"Mode de construction des segments de texte", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText10.Wrap( -1 ) fgSizer1.Add( self.m_staticText10, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_LEFT|wx.ALL, 5 ) @@ -2308,7 +2336,7 @@ class CorpusPref ( wx.Dialog ): self.uce_mode.SetSelection( 0 ) fgSizer1.Add( self.uce_mode, 0, wx.ALL, 5 ) - self.m_staticText13 = wx.StaticText( self.m_panel1, wx.ID_ANY, u"Taille des UCE", wx.DefaultPosition, wx.DefaultSize, 0 ) + self.m_staticText13 = wx.StaticText( self.m_panel1, wx.ID_ANY, u"Taille des segments de texte", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText13.Wrap( -1 ) fgSizer1.Add( self.m_staticText13, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_LEFT|wx.ALL, 5 )