Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • _bioinformatics/widgets/OWGsea.py

    r1726 r1749  
    255255    def UpdateOrganismComboBox(self): 
    256256        try: 
    257             self.progressBarInit() 
    258             with orngServerFiles.DownloadProgress.setredirect(self.progressBarSet): 
    259                 genome = obiKEGG.KEGGGenome() 
    260             self.progressBarFinished() 
    261              
    262             self.allOrganismCodes = genome  
    263      
     257            genome = obiKEGG.KEGGGenome() 
     258 
     259            self.allOrganismCodes = genome 
     260 
    264261            essential = genome.essential_organisms() 
    265              
    266             local = [name.split(".")[0].split("_")[-1] for name in orngServerFiles.listfiles("KEGG") if "kegg_genes" in name] 
    267             self.organismCodes = [(code, organism.definition) for code, organism in self.allOrganismCodes.items() if code in local or code in essential] 
    268             self.organismCodes.sort() 
    269             items = [desc for code, desc in self.organismCodes] 
    270             self.organismCodes = [obiKEGG.to_taxid(code) for code, desc in self.organismCodes] 
    271              
     262 
     263            local = [name.split(".")[0].split("_")[-1] 
     264                     for name in orngServerFiles.listfiles("KEGG") 
     265                     if "kegg_genes" in name] 
     266 
     267            entry_keys = map(genome.org_code_to_entry_key, 
     268                             essential + local) 
     269 
     270            entries = genome.batch_get(entry_keys) 
     271 
     272            items = [entry.definition for entry in entries] 
     273 
     274            self.organismTaxids = [entry.taxid for entry in entries] 
     275 
     276            self.organismComboBox.clear() 
    272277            self.organismComboBox.addItems(items) 
    273278        finally: 
    274             self.signalManager.freeze(self).pop() #setFreeze(0) 
     279            if self.signalManager: 
     280                self.signalManager.freeze(self).pop() 
    275281 
    276282 
     
    316322        #FROM KEGG WIDGET - organism selection 
    317323        self.allOrganismCodes = {} 
    318         self.organismCodes = [] 
     324        self.organismTaxids = [] 
    319325        self.organismComboBox = cb = OWGUI.comboBox(box, self, "organismIndex", items=[], debuggingEnabled=0) #changed 
    320326        cb.setMaximumWidth(200) 
    321         self.signalManager.freeze(self).push() #setFreeze(1) 
     327 
     328        if self.signalManager: 
     329            self.signalManager.freeze(self).push() 
    322330        QTimer.singleShot(100, self.UpdateOrganismComboBox) 
    323331  
     
    566574        collectionNames = [ self.geneSel[a] for a in self.gridSel ] 
    567575 
    568         organism = self.organismCodes[self.organismIndex] 
     576        organism = self.organismTaxids[self.organismIndex] 
    569577 
    570578        if self.gsgo: 
     
    688696            taxid = data_hints.get_hint(data, "taxid", None) 
    689697            try: 
    690                 code = obiKEGG.from_taxid(taxid) 
    691                 self.organismIndex = self.organismCodes.index(code) 
     698                self.organismIndex = self.organismTaxids.index(taxid) 
    692699            except Exception, ex: 
    693700                pass 
    694              
     701 
    695702            if obiGsea.already_have_correlations(data): 
    696703 
     
    800807    #d = orange.ExampleTable('tmp.tab') 
    801808    #d = orange.ExampleTable('../gene_three_lines_log.tab') 
    802     ow.setData(d) 
     809 
     810    QTimer.singleShot(1000, lambda : ow.setData(d)) 
    803811 
    804812    a.exec_() 
Note: See TracChangeset for help on using the changeset viewer.