X-Git-Url: http://iramuteq.org/git?p=iramuteq;a=blobdiff_plain;f=ProfList.py;h=3e6f150f6d9a9ad56814e997ba024d4fa5a2ebf8;hp=db1dbd1566a0fb4674a85df56f58a376e983c469;hb=eb3837fa8ebc881ef1df81980ec576ca0451eb40;hpb=22cd27b2bbe9ab1ffa7ef06fa764b5147ae17dad
diff --git a/ProfList.py b/ProfList.py
index db1dbd1..3e6f150 100644
--- a/ProfList.py
+++ b/ProfList.py
@@ -75,28 +75,45 @@ class ProfListctrlPanel(wx.Panel, listmix.ColumnSorterMixin):
| wx.LC_EDIT_LABELS
| wx.LC_SORT_ASCENDING
)
- line1 = classe[0]
+ line1 = classe.pop(0)
limit = 0
limitsup = 0
i = 0
dictdata = {}
- limit = [i for i,b in enumerate(classe[1:]) if b[0] == '*']
- if limit != [] :
- limit = limit[0] - 1
- limitsup = [i for i,b in enumerate(classe[1:]) if b[0] == '*****']
- if limitsup == [] :
- limitsup = 0
+ classen = [line for line in classe if line[0] != '*' and line[0] != '*****']
+ if len(classen) == 0 :
+ lenact = 0
+ lensup = 0
+ lenet = 0
else :
- limitsup = limitsup[0]
- classen = [line for line in classe[1:] if line[0] != '*' and line[0] != '*****']
- if limit == [] :
- limit = len(classen) - 1
+ lenact = [i for i,b in enumerate(classe) if b[0] == '*****']
+ if lenact == [] :
+ lensup = 0
+ lenact = [i for i,b in enumerate(classe) if b[0] == '*']
+ if lenact == [] :
+ lenact = len(classen)
+ lenet = 0
+ else :
+ lenact = 0
+ lenet = len(classen)
+ else :
+ lenact = lenact[0]
+ lensup = [i for i,b in enumerate(classe[1:]) if b[0] == '*']
+ if lensup != [] :
+ lensup = lensup[0] - lenact
+ lenet = len(classen) - lensup
+ else :
+ lensup == 0
+ lenet = len(classen)
+ debsup = lenact
+
+ self.lenact = lenact
+
+ debet = lenact + lensup
dictdata = dict(zip([i for i in range(0,len(classen))], classen))
- #if not self.Alceste :
- # limit = limit + 1
self.list.SetImageList(self.il, wx.IMAGE_LIST_SMALL)
- self.PopulateList(dictdata, limit, limitsup, Alceste)
+ self.PopulateList(dictdata, debet, debsup, Alceste)
self.Bind(wx.EVT_SIZE, self.OnSize)
self.Bind(wx.EVT_LIST_COL_CLICK, self.OnColClick)
@@ -143,28 +160,25 @@ class ProfListctrlPanel(wx.Panel, listmix.ColumnSorterMixin):
self.list.SetColumnWidth(7, wx.LIST_AUTOSIZE)
# show how to change the colour of a couple items
- if limitsup != 0 :
- for i in range(limitsup, limit):
- item = self.list.GetItem(i)
- item.SetTextColour(wx.RED)
- self.list.SetItem(item)
- else :
- limit=limit+1
+ for i in range(limitsup, limit):
+ item = self.list.GetItem(i)
+ item.SetTextColour(wx.RED)
+ self.list.SetItem(item)
for i in range(limit, len(dictdata)):
item = self.list.GetItem(i)
item.SetTextColour(wx.BLUE)
self.list.SetItem(item)
-
- if limitsup != 0 :
- self.la = [self.getColumnText(i,6) for i in range(0, limitsup-1)]
- self.lchi = [float(self.getColumnText(i,4)) for i in range(0, limitsup-1)]
- self.lfreq = [int(self.getColumnText(i,1)) for i in range(0, limitsup-1)]
+
+ if self.lenact != 0 :
+ self.la = [self.getColumnText(i,6) for i in range(0, self.lenact)]
+ self.lchi = [float(self.getColumnText(i,4)) for i in range(0, self.lenact)]
+ self.lfreq = [int(self.getColumnText(i,1)) for i in range(0, self.lenact)]
else :
- self.la = [self.getColumnText(i,6) for i in range(0, limit)]
- self.lfreq = [int(self.getColumnText(i,1)) for i in range(0, limit)]
- self.lchi = [float(self.getColumnText(i,4)) for i in range(0, limit)]
-
+ self.la = []
+ self.lchi = []
+ self.lfreq = []
+
def do_greyline(self):
for row in xrange(self.list.GetItemCount()):
if row % 2 :
@@ -588,11 +602,24 @@ class ProfListctrlPanel(wx.Panel, listmix.ColumnSorterMixin):
del ntab
ntab2.sort(reverse = True)
ntab2 = ntab2[:limite]
+ nuces = [val[1] for val in ntab2]
dlg.Update(3, u'concordancier...')
- ucestxt = [corpus.ucis_paras_uces[val[1][0]][val[1][1]][val[1][2]] for val in ntab2]
- ucestxt = [corpus.make_concord(self.la, ' '.join(uce), 'red') for uce in ucestxt]
+ #ucestxt = [corpus.ucis_paras_uces[val[1][0]][val[1][1]][val[1][2]] for val in ntab2]
+ ucestxt1 = [row for row in corpus.getconcorde(nuces)]
+ ucestxt = []
+ ucis_txt = []
+ for uce in ucestxt1 :
+ ucetxt = ' '+uce[1]+' '
+ ucis_txt.append(' '.join(corpus.ucis[corpus.getucefromid(uce[0]).uci].etoiles) + '
')
+ for lem in self.la :
+ listmot = corpus.getlems()[lem].formes
+ for id in listmot :
+ forme = corpus.getforme(id).forme
+ ucetxt = ucetxt.replace(' '+forme+' ', ' ' + forme + ' ')
+ ucestxt.append(ucetxt)
+ #ucestxt = [corpus.make_concord(self.la, ' '.join(uce), 'red') for uce in ucestxt]
dlg.Update(4, u'texte...')
- ucis_txt = [' '.join(corpus.ucis[val[1][0]][0]) for val in ntab2]
+ #ucis_txt = [' '.join(corpus.ucis[val[1][0]][0]) for val in ntab2]
win = message(self, -1, u"UCE caractéristiques - Classe %i" % self.cl, size=(600, 500), style=wx.DEFAULT_FRAME_STYLE)
win.html = '\n' + '
'.join(['
'.join([ucis_txt[i], 'score : ' + str(ntab2[i][0]), ucestxt[i]]) for i in range(0,len(ucestxt))]) + '\n'
win.HtmlPage.SetPage(win.html)