...
[iramuteq] / guifunct.py
index ef718c0..1641795 100644 (file)
@@ -115,7 +115,7 @@ class SelectColumn :
         self.ira = parent
         if dlg :
             dial = dialog.SelectColDial(self.ira)
-            listcol = ListForSpec(dial, self, dictcol, ['forme', 'eff'])
+            listcol = ListForSpec(dial, self, dictcol, ['eff'])
             dial.bSizer2.Add( listcol, 2, wx.ALL|wx.EXPAND, 5 )
             dial.m_sdbSizer2.AddButton( dial.m_sdbSizer2OK )
             dial.m_sdbSizer2.AddButton( dial.butok)
@@ -167,9 +167,18 @@ class PrefSimi ( wx.Dialog ):
         
         bSizer16 = wx.BoxSizer( wx.HORIZONTAL )
         if wordlist is not None :
-            self.listcol = ListForSpec(self, self, wordlist, ['forme', 'eff'])
+            self.listcol = ListForSpec(self, self, wordlist, ['eff'])
             self.listcol.SetMinSize( wx.Size( 270,-1 ) )
-            bSizer16.Add( self.listcol, 0, wx.ALL|wx.EXPAND, 5 )
+            listsizer = wx.BoxSizer( wx.VERTICAL )
+            countsizer = wx.BoxSizer( wx.HORIZONTAL )
+            self.butcount = wx.Button(self, -1, "count")
+            self.textcount = wx.TextCtrl(self, -1, "", wx.DefaultPosition, wx.Size( 100,-1 ), wx.TE_READONLY )
+            countsizer.Add(self.butcount, 0, wx.ALL, 5)
+            countsizer.Add(self.textcount, 0, wx.ALL, 5 )
+            listsizer.Add(countsizer, 0, wx.ALL, 5)
+            listsizer.Add(self.listcol, 2, wx.ALL|wx.EXPAND, 5 )
+            #bSizer16.Add( self.listcol, 0, wx.ALL|wx.EXPAND, 5 )
+            bSizer16.Add( listsizer, 0, wx.ALL|wx.EXPAND, 5)
             if selected is None :
                 for row in xrange(self.listcol.GetItemCount()):
                     self.listcol.Select(row)
@@ -236,7 +245,7 @@ class PrefSimi ( wx.Dialog ):
         self.m_staticline295 = wx.StaticLine( self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
         fgSizer3.Add( self.m_staticline295, 0, wx.EXPAND, 5 )
         
-        self.m_staticText5 = wx.StaticText( self.m_panel2, wx.ID_ANY, _(u"Graphical type").decode('utf8'), wx.DefaultPosition, wx.DefaultSize, 0 )
+        self.m_staticText5 = wx.StaticText( self.m_panel2, wx.ID_ANY, _(u"Graphic type").decode('utf8'), wx.DefaultPosition, wx.DefaultSize, 0 )
         self.m_staticText5.Wrap( -1 )
         fgSizer3.Add( self.m_staticText5, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 )
         
@@ -725,6 +734,11 @@ class PrefSimi ( wx.Dialog ):
             self.checki.Bind( wx.EVT_CHECKBOX, self.OnChecki )
         self.check_vcex.Bind( wx.EVT_CHECKBOX, self.OnCheck_vcex )
         self.check_s_size.Bind( wx.EVT_CHECKBOX, self.OnCheck_s_size )
+        self.listcol.Bind( wx.EVT_LIST_ITEM_SELECTED, self.ChangeCount)
+        self.listcol.Bind( wx.EVT_LIST_ITEM_DESELECTED, self.ChangeCount)
+        self.butcount.Bind( wx.EVT_BUTTON, self.ChangeCount)
+        self.ChangeCount(wx.EVT_BUTTON)
+        
 
     def __set_properties(self):
         self.choice1.SetSelection(self.paramsimi['coeff'])
@@ -772,6 +786,9 @@ class PrefSimi ( wx.Dialog ):
         self.comcheck.SetValue(self.paramsimi['com'])
         self.choix_com.SetSelection(self.paramsimi['communities'])
         self.halo.SetValue(self.paramsimi['halo'])
+    
+    def ChangeCount(self, evt) :
+        self.textcount.SetValue('%i' % self.listcol.GetSelectedItemCount())
 
     def OnCheck_s_size(self, evt):
         if self.check_s_size.GetValue() :
@@ -1054,7 +1071,7 @@ class CreateTgenDialog ( wx.Frame ):
 class TGenFrame ( wx.Frame ):
     
     def __init__( self, parent, corpus, Tgen ):
-        wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = u"Tgen", pos = wx.DefaultPosition, size = wx.Size( 473,434 ), style = wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL|wx.FRAME_FLOAT_ON_PARENT|wx.STAY_ON_TOP )
+        wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = u"Tgen", pos = wx.DefaultPosition, size = wx.Size( 600,434 ), style = wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL|wx.FRAME_FLOAT_ON_PARENT|wx.STAY_ON_TOP )
         
         self.Tgen = Tgen
         self.parent = parent
@@ -1100,12 +1117,19 @@ class TGenFrame ( wx.Frame ):
         fgSizer2.Add( self.but_del, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
         
         
-        fgSizer1.Add( fgSizer2, 1, wx.EXPAND, 5 )
+        fgSizer1.Add( fgSizer2, 0, wx.EXPAND, 5 )
         
+        fgSizer3 = wx.FlexGridSizer( 0, 2, 0, 0 )
+        fgSizer3.SetFlexibleDirection( wx.BOTH )
+        fgSizer3.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
         self.but_edit = wx.Button( self, wx.ID_ANY, u"Edit", wx.DefaultPosition, wx.DefaultSize, 0 )
-        fgSizer1.Add( self.but_edit, 1, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
-        
+        fgSizer3.Add( self.but_edit, 1, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
         
+        self.but_compute = wx.Button( self, wx.ID_ANY, u"Compute", wx.DefaultPosition, wx.DefaultSize, 0 )
+        fgSizer3.Add( self.but_compute, 1, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )      
+
+        fgSizer1.Add( fgSizer3, 0, wx.EXPAND, 5 )
+
         bSizer1.Add( fgSizer1, 1, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
         
         m_sdbSizer2 = wx.StdDialogButtonSizer()
@@ -1128,6 +1152,7 @@ class TGenFrame ( wx.Frame ):
         self.but_new.Bind( wx.EVT_BUTTON, self.OnNewTgen )
         self.but_del.Bind( wx.EVT_BUTTON, self.OnDeleteTgen )
         self.but_edit.Bind( wx.EVT_BUTTON, self.OnEditTgen )
+        self.but_compute.Bind(wx.EVT_BUTTON, self.OnCompute)
         self.m_sdbSizer2OK.Bind( wx.EVT_BUTTON, self.OnOK )
         
     def __del__( self ):
@@ -1145,6 +1170,7 @@ class TGenFrame ( wx.Frame ):
             self.dial = CreateTgenDialog(self, dict([[i, [lem, self.corpus.lems[lem].freq]] for i, lem in enumerate(self.corpus.lems.keys())]), tgens = self.Tgen.tgen)
         else :
             self.dial = CreateTgenDialog(self, dict([[i, [lem, self.corpus.lems[lem].freq]] for i, lem in enumerate(self.corpus.lems.keys())]), tgen = tgen, tgens = self.Tgen.tgen)
+            self.dial.ip._source.selected = dict(zip(self.Tgen.tgen[tgen], self.Tgen.tgen[tgen]))
             self.activetgen = tgen
         self.dial.Show()
         self.dial.Bind(wx.EVT_CLOSE, self.OnDialClose)
@@ -1172,6 +1198,10 @@ class TGenFrame ( wx.Frame ):
             self.dial.Show()
         event.Skip()
     
+    def OnCompute(self, evt):
+        ira = wx.GetApp().GetTopWindow()
+        ira.tree.OnTgenCompute(evt)
+    
     def OnOK(self, evt):
         self.Destroy()