def apply(self): # protect against repeated double-clicking if (self.project): return False path = self.file_select.getDirectory() if not doesRepositoryContainProject( path) and not getPossibleProjectFiles(path): self.file_select.changeDir(path) return False self.disableOk() self.project = None if not path: showError('No path', 'Need to select path', self) self.enableOk() return False try: self.project = self.load_project(path) except ApiError, e: showError('Loading project', e.error_msg, self) self.enableOk() return False
def getEntryColor(self, fileName): # this function returns background color for entry if doesRepositoryContainProject(fileName): color = '#C0FFC0' # green elif getPossibleProjectFiles(fileName): color = '#FFFFC0' # yellow else: color = None # default return color
def getProjectFileText(self, fileName): if doesRepositoryContainProject(fileName): tt = time.localtime(os.path.getmtime(fileName)) tt = '%4d-%02d-%02d %02d:%02d:%02d' % tt[:6] data = 'OK (%s)' % tt else: files = getPossibleProjectFiles(fileName) nfiles = len(files) if nfiles == 1: data = '%s' % os.path.basename(files[0]) elif nfiles: data = '%d possible' % nfiles else: data = None data = (data, ) return data
def isProjectDirectory(self, directory): return (doesRepositoryContainProject(directory) or getPossibleProjectFiles(directory))