X-Git-Url: http://iramuteq.org/git?p=iramuteq;a=blobdiff_plain;f=corpus.py;h=ec4855b268abefe866b22d6218ebb4e335f3e74a;hp=cbf8794292c9d7d93fb103c60f85200c5a659bd7;hb=5ab9926c420f2cf66ac8e0475412c368ebf485e2;hpb=e84160b7f61eb5b05cc12339e44a61d67b499e15 diff --git a/corpus.py b/corpus.py index cbf8794..ec4855b 100644 --- a/corpus.py +++ b/corpus.py @@ -1304,7 +1304,7 @@ class BuildSubCorpus(BuildCorpus): self.dlg = dlg self.ori = corpus self.infile = None - self.corpus = Corpus(self, corpus.parametres) + self.corpus = Corpus(self, {'type' : 'corpus', 'originalpath' : corpus.parametres['originalpath'], 'encoding' : corpus.parametres['encoding']}) self.last = 0 self.encoding = corpus.parametres['encoding'] self.corpus.parametres['corpus_name'] = parametres['corpus_name'] @@ -1336,6 +1336,31 @@ class BuildSubCorpus(BuildCorpus): idpara += 1 elif parametres.get('fromcluster', False) : pass + elif parametres.get('fromuceids', False) : + print 'fromuceids' + dictucekeep = dict(zip(parametres['uceids'], parametres['uceids'])) + idpara = 0 + for uci in self.ori.ucis : + if uci.paras == [] : + keepuces = [uce for uce in uci.uces if uce.ident in dictucekeep] + if keepuces != [] : + uci.uces = keepuces + self.corpus.ucis.append(uci) + idpara += 1 + else : + newuces = [] + newpara = [] + for et in uci.paras : + keepuces = [uce for uce in uci.uces if uce.para == idpara] + idpara += 1 + if keepuces != [] : + newuces += keepuces + newpara.append(et) + if newuces != [] : + uci.uces = newuces + uci.paras = newpara + self.corpus.ucis.append(uci) + #create database self.connect() self.dobuild() @@ -1520,12 +1545,19 @@ class SubBuilder : self.ori = corpus self.dlg = dlg corpus_name = 'Sub' + corpus.parametres['corpus_name'] + if dlg is not None : + busy = wx.BusyInfo(_("Please wait...").decode('utf8'), self) + wx.SafeYield() parametres['corpus_name'] = corpus_name if parametres.get('frommeta', False) : parametres['meta'] = corpus.make_etoiles() elif parametres.get('fromtheme', False) : parametres['meta'] = corpus.make_themes() + else : + parametres['meta'] = [] parametres['meta'].sort() + if dlg is not None : + del busy dial = SubTextFromMetaDial(parent, parametres) self.res = dial.ShowModal() if self.res == 5100 :