public static void showImportSingleFileDialog(FSRL fsrl, DomainFolder destinationFolder,
			String suggestedPath, PluginTool tool, ProgramManager programManager,
			TaskMonitor monitor) {

		try {
			ByteProvider provider = fsService.getByteProvider(fsrl, true, monitor);
			LoaderMap loaderMap = LoaderService.getAllSupportedLoadSpecs(provider);

			SystemUtilities.runSwingLater(() -> {
				ImporterDialog importerDialog = new ImporterDialog(tool, programManager, loaderMap,
					provider, suggestedPath);
				if (destinationFolder != null) {
					importerDialog.setDestinationFolder(destinationFolder);
				}

				tool.showDialog(importerDialog);
			});
		}
		catch (IOException ioe) {
			Msg.showError(ImporterUtilities.class, tool.getActiveWindow(), "Error Importing File",
				"Error when importing file " + fsrl, ioe);
		}
		catch (CancelledException e) {
			Msg.info(ImporterUtilities.class, "Import single file " + fsrl + " cancelled");
		}
	}
Constructs a {@link ImporterDialog} and shows it in the swing thread.


@param fsrl the file system resource locater (can be a simple file or an element of
			a more complex file such as a zip file)
@param destinationFolder the default destination folder for the imported file. Can be null
@param suggestedPath optional string path that will automatically be pre-pended
			to the destination filename
@param tool the parent UI component
@param programManager optional {@link ProgramManager} instance to open the imported file in
@param monitor {@link TaskMonitor}
Ghidra/Features/Base/src/main/java/ghidra/plugin/importer/ImporterUtilities.java