import os
import sys
from copy import copy
-import dialog
+from dialog import FileOptionDialog, SelectColDial, OptLexi, PrefSimpleFile
from listlex import *
from vitemspicker import VItemsPicker, EVT_IP_SELECTION_CHANGED, IP_SORT_CHOICES, IP_SORT_SELECTED, IP_REMOVE_FROM_CHOICES
from functions import treat_var_mod
+#from wx import GetTopLevelWindows
def OnOpen(self, type):
def get_table_param(self, filename) :
if getfileextension(filename) == '.csv':
- dlg = dialog.FileOptionDialog(self, -1, _(u"File format").decode('utf8'), sep=True, size=(350, 200),
+ dlg = FileOptionDialog(self, -1, _(u"File format").decode('utf8'), sep=True, size=(350, 200),
style=wx.DEFAULT_DIALOG_STYLE)
dlg.CenterOnParent()
val = dlg.ShowModal()
self.tableau.parametres['filetype'] = 'csv'
self.tableau.parametres['encodage'] = dlg.le[dlg.list_encodages.GetSelection()]
elif getfileextension(filename) == '.xls' :
- dlg = dialog.FileOptionDialog(self, -1, _(u"File format").decode('utf8'), sep=False, sheet = True, size=(350, 200),
+ dlg = FileOptionDialog(self, -1, _(u"File format").decode('utf8'), sep=False, sheet = True, size=(350, 200),
style=wx.DEFAULT_DIALOG_STYLE)
dlg.CenterOnParent()
val = dlg.ShowModal()
self.tableau.parametres['sheetnb'] = dlg.spin1.GetValue()
self.tableau.parametres['filetype'] = 'xls'
elif getfileextension(filename) == '.ods':
- dlg = dialog.FileOptionDialog(self, -1, _(u"File format").decode('utf8'), sep=False, size=(350, 200),
+ dlg = FileOptionDialog(self, -1, _(u"File format").decode('utf8'), sep=False, size=(350, 200),
style=wx.DEFAULT_DIALOG_STYLE)
dlg.CenterOnParent()
val = dlg.ShowModal()
def __init__(self, parent, dictcol, actives, pathout, selected = None, dlg = False) :
self.ira = parent
if dlg :
- dial = dialog.SelectColDial(self.ira)
+ dial = SelectColDial(self.ira)
listcol = ListForSpec(dial, self, dictcol, ['eff'])
dial.bSizer2.Add( listcol, 2, wx.ALL|wx.EXPAND, 5 )
dial.m_sdbSizer2.AddButton( dial.m_sdbSizer2OK )
self.listcol.SetMinSize( wx.Size( 270,-1 ) )
listsizer = wx.BoxSizer( wx.VERTICAL )
countsizer = wx.BoxSizer( wx.HORIZONTAL )
- self.butcount = wx.Button(self, -1, "count")
+ self.butcount = wx.Button(self, -1, _(u"count").decode('utf8'))
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 )
if 'bystar' in self.parametres :
if self.dial.check_bystar.GetValue() :
variables = treat_var_mod(self.parametres['stars'])
- vardial = dialog.OptLexi(parent, force_chi = True)
+ vardial = OptLexi(parent, force_chi = True)
vardial.listet = self.parametres['stars']
vardial.variables = [v for v in variables]
for et in vardial.variables :
class CreateTgenDialog ( wx.Frame ):
def __init__( self, parent, lemlist, tgen = None, tgens = None ):
- wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = u'Tgen Creator', pos = wx.DefaultPosition, size = wx.DefaultSize, 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 Creator').decode('utf8'), pos = wx.DefaultPosition, size = wx.DefaultSize, style = wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL|wx.FRAME_FLOAT_ON_PARENT|wx.STAY_ON_TOP )
+ self.ira = wx.GetApp().GetTopWindow()
+ self.SetIcon(self.ira._icon)
self.tgens = tgens
self.edit = False
self.parent = parent
+
self.SetSizeHintsSz( wx.DefaultSize, wx.DefaultSize )
bSizer2 = wx.BoxSizer( wx.VERTICAL )
+ namesizer = wx.BoxSizer( wx.VERTICAL )
+
+ namepan = wx.Panel(self, -1)
+
fgSizer3 = wx.FlexGridSizer( 0, 2, 0, 0 )
fgSizer3.SetFlexibleDirection( wx.BOTH )
fgSizer3.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
- self.m_staticText3 = wx.StaticText( self, wx.ID_ANY, u"Name", wx.DefaultPosition, wx.DefaultSize, 0 )
+ self.m_staticText3 = wx.StaticText( namepan, wx.ID_ANY, _(u"Name").decode('utf8'), wx.DefaultPosition, wx.DefaultSize, 0 )
self.m_staticText3.Wrap( -1 )
+
fgSizer3.Add( self.m_staticText3, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_LEFT|wx.ALL, 5 )
- self.m_textCtrl1 = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
+ self.m_textCtrl1 = wx.TextCtrl( namepan, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
self.m_textCtrl1.SetMinSize( wx.Size( 250,-1 ) )
fgSizer3.Add( self.m_textCtrl1, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
+ namepan.SetSizer( fgSizer3 )
- bSizer2.Add( fgSizer3, 1, wx.ALIGN_CENTER_HORIZONTAL, 5 )
+ namesizer.Add( namepan, 1, wx.ALIGN_CENTER_HORIZONTAL, 5 )
- self.ip = VItemsPicker(self,-1, lemlist,'Forms', 'Selected')
- self.ip._source.SetMinSize( wx.Size( 250, 400 ) )
+ bSizer2.Add( namesizer, 1, wx.EXPAND, 5 )
+
+ self.ip = VItemsPicker(self,-1, lemlist, _(u'Forms').decode('utf8'), _('Selection').decode('utf8'))
+ self.ip._source.SetMinSize( wx.Size( 350, 400 ) )
bSizer2.Add( self.ip, 0, wx.ALL, 5 )
+ butpanel = wx.Panel(self, -1)
+
m_sdbSizer3 = wx.StdDialogButtonSizer()
- self.m_sdbSizer3OK = wx.Button( self, wx.ID_OK )
+ self.m_sdbSizer3OK = wx.Button( butpanel, wx.ID_OK )
m_sdbSizer3.AddButton( self.m_sdbSizer3OK )
- self.m_sdbSizer3Cancel = wx.Button( self, wx.ID_CANCEL )
+ self.m_sdbSizer3Cancel = wx.Button( butpanel, wx.ID_CANCEL )
m_sdbSizer3.AddButton( self.m_sdbSizer3Cancel )
m_sdbSizer3.Realize();
- bSizer2.Add( m_sdbSizer3, 1, wx.EXPAND, 5 )
+ butpanel.SetSizer( m_sdbSizer3 )
+
+ bSizer2.Add( butpanel, 1, wx.EXPAND, 5 )
self.SetSizer( bSizer2 )
def __init__( self, parent, corpus, Tgen ):
wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = u"Tgen", pos = wx.DefaultPosition, size = wx.Size( -1, -1 ), style = wx.CLOSE_BOX|wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL|wx.STAY_ON_TOP )
-
+ self.ira = wx.GetApp().GetTopWindow()
+ self.SetIcon(self.ira._icon)
self.Tgen = Tgen
self.parent = parent
self.corpus = corpus
self.activetgen = None
+ self.panel = wx.Panel(self, wx.ID_ANY)
- self.SetSizeHintsSz( wx.DefaultSize, wx.DefaultSize )
+ #self.SetSizeHintsSz( wx.DefaultSize, wx.DefaultSize )
+
+ panelsizer = wx.BoxSizer( wx.VERTICAL )
bSizer1 = wx.BoxSizer( wx.VERTICAL )
fgSizer1.SetFlexibleDirection( wx.BOTH )
fgSizer1.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
- self.m_staticText1 = wx.StaticText( self, wx.ID_ANY, u"Tgen", wx.DefaultPosition, wx.DefaultSize, 0 )
+ self.m_staticText1 = wx.StaticText( self.panel, wx.ID_ANY, u"Tgen", wx.DefaultPosition, wx.DefaultSize, 0 )
self.m_staticText1.Wrap( -1 )
fgSizer1.Add( self.m_staticText1, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
- self.m_staticText2 = wx.StaticText( self, wx.ID_ANY, u"Content", wx.DefaultPosition, wx.DefaultSize, 0 )
+ self.m_staticText2 = wx.StaticText( self.panel, wx.ID_ANY, _(u"Content").decode('utf8'), wx.DefaultPosition, wx.DefaultSize, 0 )
self.m_staticText2.Wrap( -1 )
fgSizer1.Add( self.m_staticText2, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
tgensChoices = Tgen.tgen.keys()
- self.tgens = wx.ListBox( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, tgensChoices, 0 )
- #self.tgens.SetMinSize( wx.Size( 200,250 ) )
+ self.tgens = wx.ListBox( self.panel, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, tgensChoices, 0 )
+ self.tgens.SetMinSize( wx.Size( 250,350 ) )
fgSizer1.Add( self.tgens, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL|wx.EXPAND, 5 )
tgencontentChoices = []
- self.tgencontent = wx.ListBox( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, tgencontentChoices, 0|wx.VSCROLL )
- #self.tgencontent.SetMinSize( wx.Size( 200,250 ) )
+ self.tgencontent = wx.ListBox( self.panel, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, tgencontentChoices, 0|wx.VSCROLL )
+ self.tgencontent.SetMinSize( wx.Size( 250,350 ) )
fgSizer1.Add( self.tgencontent, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL|wx.EXPAND, 5 )
fgSizer2.SetFlexibleDirection( wx.BOTH )
fgSizer2.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
- self.but_new = wx.Button( self, wx.ID_ANY, u"New...", wx.DefaultPosition, wx.DefaultSize, 0 )
+ self.but_new = wx.Button( self.panel, wx.ID_ANY, _(u"New...").decode('utf8'), wx.DefaultPosition, wx.DefaultSize, 0 )
fgSizer2.Add( self.but_new, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
- self.but_del = wx.Button( self, wx.ID_ANY, u"Delete", wx.DefaultPosition, wx.DefaultSize, 0 )
+ self.but_del = wx.Button( self.panel, wx.ID_ANY, _(u"Delete").decode('utf8'), wx.DefaultPosition, wx.DefaultSize, 0 )
fgSizer2.Add( self.but_del, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 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 )
+ self.but_edit = wx.Button( self.panel, wx.ID_ANY, _(u"Edit").decode('utf8'), wx.DefaultPosition, wx.DefaultSize, 0 )
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 )
+ self.but_compute = wx.Button( self.panel, wx.ID_ANY, _(u"Compute").decode('utf8'), 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, 0 )
- bSizer1.Add( fgSizer1, 1, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
+ bSizer1.Add( fgSizer1, 1, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL|wx.EXPAND, 5 )
+
m_sdbSizer2 = wx.StdDialogButtonSizer()
- self.m_sdbSizer2OK = wx.Button( self, wx.ID_OK )
+ self.m_sdbSizer2OK = wx.Button( self.panel, wx.ID_OK )
m_sdbSizer2.AddButton( self.m_sdbSizer2OK )
#self.m_sdbSizer2Cancel = wx.Button( self, wx.ID_CANCEL )
#m_sdbSizer2.AddButton( self.m_sdbSizer2Cancel )
bSizer1.Add( m_sdbSizer2, 0, wx.EXPAND, 5 )
+ #panelsizer.Add(bSizer1, 0, wx.EXPAND, 5 )
- self.SetSizer( bSizer1 )
- self.Layout()
+ #panel.SetSizer( panelsizer )
+ self.panel.SetSizer( bSizer1 )
+ self.panel.Layout()
bSizer1.Fit( self )
self.Centre( wx.BOTH )
def OnNewTgen( self, event, tgen = None ):
if tgen is None :
- 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)
+ self.dial = CreateTgenDialog(self, dict([[i, [lem, self.corpus.lems[lem].freq, self.corpus.lems[lem].gram]] 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 = CreateTgenDialog(self, dict([[i, [lem, self.corpus.lems[lem].freq, self.corpus.lems[lem].gram]] 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()
tgens = self.tgens.GetItems()
tgen = tgens[self.tgens.GetSelection()]
self.activetgen = tgen
- 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 = CreateTgenDialog(self, dict([[i, [lem, self.corpus.lems[lem].freq, self.corpus.lems[lem].gram]] for i, lem in enumerate(self.corpus.lems.keys())]), tgen = tgen, tgens = self.Tgen.tgen)
self.dial.Bind(wx.EVT_CLOSE, self.OnDialClose)
self.dial.m_textCtrl1.Enable(False)
self.dial.ip._source.selected = dict(zip(self.Tgen.tgen[tgen], self.Tgen.tgen[tgen]))
self.tgens.Append(self.dial.m_textCtrl1.GetValue())
self.dial.Destroy()
evt.Skip()
+
+class ExportMetaTable :
+ def __init__(self, parent, corpus):
+ self.ira = parent
+ dial = PrefSimpleFile(self, self.ira, **{'mask' : '*.csv', 'title': _(u"metadata table").decode('utf8')})
+ dial.fbb.SetValue(corpus.pathout['metadata.csv'])
+ dial.CenterOnParent()
+ res = dial.ShowModal()
+ if res == wx.ID_OK :
+ fileout = dial.fbb.GetValue()
+ dial.Destroy()
+ corpus.export_meta_table(fileout)
+ dlg = wx.MessageDialog(self.ira, _("Done !").decode('utf8'), _(u"Export metadata").decode('utf8'), wx.OK | wx.ICON_INFORMATION)
+ dlg.CenterOnParent()
+ dlg.ShowModal()
+ dlg.Destroy()
+ else :
+ dial.Destroy()