diff -r 56ef1ae1629d -r 567b1789aa1b Project/Project.py --- a/Project/Project.py Sat Aug 04 16:03:13 2018 +0200 +++ b/Project/Project.py Mon Aug 06 15:27:45 2018 +0200 @@ -1737,10 +1737,22 @@ # first perform the addition of source self.__addSingleDirectory(filetype, source, target, True) + ignore_patterns = [pattern for pattern, filetype in + self.pdata["FILETYPES"].items() + if filetype == '__IGNORE__'] + # now recurse into subdirectories for name in os.listdir(source): ns = os.path.join(source, name) if os.path.isdir(ns): + skip = False + for ignore_pattern in ignore_patterns: + if fnmatch.fnmatch(name, ignore_pattern): + skip = True + break + if skip: + continue + nt = os.path.join(target, name) self.__addRecursiveDirectory(filetype, ns, nt) @@ -4488,8 +4500,20 @@ recursiveSearch = Preferences.getProject("SearchNewFilesRecursively") newFiles = [] + ignore_patterns = [pattern for pattern, filetype in + self.pdata["FILETYPES"].items() + if filetype == '__IGNORE__'] + dirs = self.subdirs[:] for directory in dirs: + skip = False + for ignore_pattern in ignore_patterns: + if fnmatch.fnmatch(directory, ignore_pattern): + skip = True + break + if skip: + continue + curpath = os.path.join(self.ppath, directory) try: newSources = os.listdir(curpath)