code: def insert_files(self, rootpath, directoryInFilter=None, directoryExFilter=None, compileInFilter=None, compileExFilter=None, contentInFilter=None, contentExFilter=None):
          directoryInFilter = self.DirectoryInFilter if directoryInFilter is None else directoryInFilter
          directoryExFilter = self.DirectoryExFilter if directoryExFilter is None else directoryExFilter
          compileInFilter = self.CompileInFilter if compileInFilter is None else compileInFilter
          compileExFilter = self.CompileExFilter if compileExFilter is None else compileExFilter
          contentInFilter = self.ContentInFilter if contentInFilter is None else contentInFilter
          contentExFilter = self.ContentExFilter if contentExFilter is None else contentExFilter
          def filter(text, filters, explicit):
              if explicit:
                  return any(fnmatch.fnmatch(text, f) for f in filters)
              return not filters or any(fnmatch.fnmatch(text, f) for f in filters)
          for root, dirnames, filenames in os.walk(rootpath):
              searchdir = os.path.normpath(os.path.normcase(root))
              if filter(searchdir, directoryExFilter, True):
                  dirnames[:] = []
              elif filter(searchdir, directoryInFilter, False):
                  for filepath in [os.path.join(root, filename) for filename in filenames]:
                      if filter(filepath, compileInFilter, False) and not filter(filepath, compileExFilter, True):
                          self.CompileFiles.append(filepath)
                      elif filter(filepath, contentInFilter, False) and not filter(filepath, contentExFilter, True):
                          self.ContentFiles.append(filepath)