anchor.diff:    dir := extractFilePath(fname);
     if not DirectoryExists(dir) then exit;
     //
  +  fProject.beginUpdate;
     for i:= fProject.Sources.Count-1 downto 0 do
       if extractFilePath(fProject.getAbsoluteSourceName(i)) = dir then
         fProject.Sources.Delete(i);
  +  fProject.endUpdate;
     UpdateByEvent;
   end;
   
  
positive.code:   else dir := '';
    if selectDirectory('sources', dir, dir, true, 0) then
    begin
      lst := TStringList.Create;
      try
        listFiles(lst, dir, true);
  
negative.code:       end;
      finally
        lst.Free;
        fProject.endUpdate;
      end;
    end;
  end;
  