private boolean preprocessStartFilesAndFolders(TaskMonitor monitor) {
		try {
			long start_ts = System.currentTimeMillis();

			monitor.initialize(startFiles.size());
			monitor.setMessage("Checking files");
			for (DomainFile file : startFiles) {
				monitor.checkCancelled();
				preprocessFile(file, monitor);
				monitor.incrementProgress(1);
			}

			// Recursively check all files in the folders given to this task.
			monitor =
				new UnknownProgressWrappingTaskMonitor(monitor, Math.max(startFolders.size(), 1));
			monitor.setMessage("Checking folders");
			for (DomainFolder folder : startFolders) {
				monitor.checkCancelled();
				preprocessFolder(folder, monitor);
			}

			long end_ts = System.currentTimeMillis();
			elapsedTime += (end_ts - start_ts);

			return true;
		}
		catch (CancelledException ce) {
			return false;
		}
	}
Iterates over the user-supplied files and folders, saving the discovered files and
subfolders and their files into {@link #filesToDelete} and {@link #foldersToDelete}.

@param monitor
@return
Ghidra/Framework/Project/src/main/java/ghidra/framework/main/projectdata/actions/ProjectDataDeleteTask.java