def update(self): self.pg = ProgBar("Updating...", False, "libs/images/", True) self.pg.addMessage("updating from " + self.version + " to " + self.latest_version) cd = os.curdir f_names = os.listdir(cd) self.pg.startSubProcess(5.0, 2) if os.access("ref_list.dat", os.F_OK): os.remove("ref_list.dat") self.pg.incSub("Retrieving ref_list.dat..") self.updater.getRefreshList(self.latest_version) self.pg.incSub("ref_list.dat finished..") list_file = open("ref_list.dat") refresh_list = cPickle.load(list_file) list_file.close() self.pg.startSubProcess(10.0, len(refresh_list)) for f in f_names: if f in refresh_list: self.pg.incSub("Deleted " + f) if os.path.isdir(cd + "/" + f): shutil.rmtree(cd + "/" + f) else: os.remove(cd + "/" + f) elif os.path.isdir(cd + "/" + f): f_names2 = os.listdir(cd + "/" + f) for f2 in f_names2: tmp = f + "/" + f2 if tmp in refresh_list: self.pg.incSub("Deleted " + f + "/" + f2) if os.path.isdir(cd + "/" + f + "/" + f2): shutil.rmtree(cd + "/" + f + "/" + f2) else: os.remove(cd + "/" + f + "/" + f2) self.pg.startSubProcess(80.0, 100) self.pg.addMessage("Downloading package.zip...") self.updater.getPackage(self.latest_version, self.pg) self.pg.addMessage("package.zip finished...") self.pg.startSubProcess(5.0, 2) self.pg.incSub("Extracting package.zip..") self.updater.extract() self.pg.incSub("package.zip extracted...") self.pg.addMessage("done...") self.pg.exit() self.root.destroy()