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)