class QCurseRunnable(QRunnable): def __init__(self, addOnName): QRunnable.__init__(self) self.addOnName = addOnName self.downloader = None self.setAutoDelete(False) def run(self): if AddOnDB().hasKey(self.addOnName): if checkUpdate(self.addOnName)[0]: print "ok" self.downloader = CurseDownloader(AddOnDB().value(self.addOnName)[1]) self.downloader.loadFinished.connect(self.download) self.downloader.load() def download(self, ok): self.downloader.download(ok)
#ClientData() #AddOnDB() # #print "max thread count " + str(QThreadPool.globalInstance().maxThreadCount()) # #list = [] # #for addon in getAddOnList(WowPath): # if AddOnDB().hasKey(addon): # if checkUpdate(addon)[0]: # list.append(CurseDownloader(AddOnDB().value(addon)[1])) # #print "queue created" # #for i in range(len(list[:-1])): # list[i].loadFinished.connect(list[i+1].load) # #list[-1].downloadComplete.connect(quitter) # #list[0].load() # QThreadPool.globalInstance().start(QCurseRunnable("OmniCC")) #QThreadPool.globalInstance().start(QCurseRunnable("OmniCC")) url = AddOnDB().value("ArkInventory")[1] downloader = CurseDownloader(url) downloader.load() app.exec_()