Changeset 7798:42b00b464c87 in orange


Ignore:
Timestamp:
04/02/11 15:36:44 (3 years ago)
Author:
matija <matija.polajnar@…>
Branch:
default
Convert:
ab17ffea65977650405e43c76196c5f8092db924
Message:

Download add-ons list on dialog opening; forgot to commit this earlier. :(

File:
1 edited

Legend:

Unmodified
Added
Removed
  • orange/OrangeCanvas/orngCanvas.pyw

    r7788 r7798  
    685685 
    686686    def menuItemAddOns(self): 
     687        import time 
     688        t = time.time() 
     689        lastRefresh = self.settings["lastAddonsRefresh"] 
     690        if t - lastRefresh > 7*24*3600: 
     691            if QMessageBox.question(self, "Refresh", 
     692                                    "List of add-ons in repositories has %s. Do you want to %s the lists now?" % 
     693                                    (("not yet been loaded" if lastRefresh==0 else "not been refreshed for more than a week"), 
     694                                     ("download" if lastRefresh==0 else "reload")), 
     695                                     QMessageBox.Yes | QMessageBox.Default, 
     696                                     QMessageBox.No | QMessageBox.Escape) == QMessageBox.Yes: 
     697                 
     698                anyFailed = False 
     699                anyDone = False 
     700                for r in orngAddOns.availableRepositories: 
     701                    #TODO: # Should show some progress (and enable cancellation) 
     702                    try: 
     703                        if r.refreshData(force=False): 
     704                            anyDone = True 
     705                        else: 
     706                            anyFailed = True 
     707                    except Exception, e: 
     708                        anyFailed = True 
     709                        print "Unable to refresh repository %s! Error: %s" % (r.name, e) 
     710                 
     711                if anyDone: 
     712                    self.settings["lastAddonsRefresh"] = t 
     713                if anyFailed: 
     714                    QMessageBox.warning(self,'Download Failed', "Download of add-on list has failed for at least one repostitory.") 
     715         
    687716        dlg = orngDlgs.AddOnManagerDialog(self, self) 
    688717        if dlg.exec_() == QDialog.Accepted: 
     
    743772                       "outputVerbosity": 0, "synchronizeHelp": 1, 
    744773                       "ocShow": 1, "owShow": 0, "ocInfo": 1, "owInfo": 1, "ocWarning": 1, "owWarning": 1, "ocError": 1, "owError": 1, 
    745                        } 
     774                       "lastAddonsRefresh": 0} 
    746775        if RedR: 
    747776            self.setting.update({"svnSettings": None, "versionNumber": "Version0"}) 
Note: See TracChangeset for help on using the changeset viewer.