Exemplo n.º 1
0
	def execute_rename(self):

		if self.inRenameEntry.get() == "":
			self.update_result_text("Must select an input directory.\n\n")
			return

		if self.outRenameEntry.get() == "":
			self.update_result_text("Must select an ouput directory.\n\n")
			return
			
		if self.outputAsText.get() == 0 and self.outputAsBin.get() == 0:
			self.update_result_text("Must selexct output file type.\n\n")
			return

		self.update_result_text("Renaming files...\n")
		self.update_result_text("  From : " + self.inRenameEntry.get() + "\n")
		self.update_result_text("  To   : " + self.outRenameEntry.get() + "\n")
		self.update_result_text("Running file...\n")
		
		try:
			minE = float(self.minEastingEntry.get())
			minN = float(self.minNorthingEntry.get());
			blkS = int(self.blkSizeEntry.get());
			bDir = self.inRenameEntry.get();
			outDir = self.outRenameEntry.get()
			zThr = float(self.bbbEntry.get())
			outTxt = self.outputAsText.get()
			outBin = self.outputAsBin.get()
			
			if outTxt == 1:
				if not(os.path.isdir(outDir + "/text")):
					os.makedirs(outDir + "/text")
					
			if outBin == 1:
				if not(os.path.isdir(outDir + "/bin")):
					os.makedirs(outDir + "/bin")
			
			logFile = open(outDir + "/log.txt", "w");
			self.update_result_text(str(logFile) + "\n")
                
			dirList  = os.listdir(self.inRenameEntry.get())
			badFiles = []
			
			for fname in dirList:
				if not(fname.endswith(".bin")):
					badFiles.append(fname)
			
			for badFile in badFiles:
				dirList.remove(badFile)
				
			fileCount = len(dirList)
			currIndex = 1
				
			for fname in dirList:
					
				self.update_result_text("   - " + str(currIndex) + " of " + str(fileCount) + "\n")
				
				try:
					outFile = Bio_module.rename(bDir + "/" + fname, outDir, minE, minN, blkS, zThr, outTxt, outBin)
					logFile.write(bDir + "/" + fname + " " + outFile + "\n")
				except:
					self.update_result_text("Error renaming file " + fname + ".\n")
					
				currIndex = currIndex + 1
			
			logFile.close()
		except:
			self.handle_exception(sys.exc_info())

		self.update_result_text("Complete.\n\n")