private void showDlg() {
			String dlgPrompt = (prompt != null && !prompt.isBlank()) ? prompt : fsrl.getName();
			if (!dlgPrompt.endsWith(":")) {
				dlgPrompt += ":";
			}
			tryCount++;
			String dlgTitle =
				"Enter Password" + (tryCount > 1 ? " (Try " + tryCount + ")" : "");
			PasswordDialog pwdDialog = new PasswordDialog(dlgTitle, dlgPrompt);
			DockingWindowManager winMgr = DockingWindowManager.getActiveInstance();
			Component rootFrame = winMgr != null ? winMgr.getRootFrame() : null;
			DockingWindowManager.showDialog(rootFrame, pwdDialog);

			cancelled = pwdDialog.resultState == RESULT_STATE.CANCELED;
			password = cancelled ? null : Password.wrap(pwdDialog.passwordField.getPassword());
			sessionState.cancelAll |= cancelled && pwdDialog.cancelledAll;
			pwdDialog.dispose();
		}
Pops up a GUI dialog prompting the user to enter a password for the specified file.
<p>
The dialog is presented to the user when the iterator's hasNext() is called.
<p>
Repeated requests to the same iterator will adjust the dialog's title with a "try count" to
help the user understand the previous password was unsuccessful.
<p>
Iterator's hasNext() will return false if the user has previously canceled the dialog,
Ghidra/Features/Base/src/main/java/ghidra/formats/gfilesystem/crypto/PopupGUIPasswordProvider.java