public static <T> T selectFromList(List<T> list, String title, String prompt,
			Function<T, String> toStringFunction) {
		SelectFromListDialog<T> dialog =
			new SelectFromListDialog<>(title, prompt, list, toStringFunction);
		SystemUtilities.runSwingNow(() -> dialog.doSelect());
		return dialog.actionComplete ? dialog.getSelectedObject() : null;
	}
Modally shows the user a dialog with a list of strings, and returns the picked object.
<p>
(automatically switches to Swing thread)

@param list list of object of type T
@param title title of dialog
@param prompt prompt shown above list
@param toStringFunction function that converts a T into a String.
@return the chosen T object, or null if dialog canceled.
Ghidra/Framework/Docking/src/main/java/docking/widgets/SelectFromListDialog.java