private OptionsDialog createOptionsDialog() {

		if (optionsMap.size() == 0) {
			return null;
		}

		Options keyBindingOptions = getOptions(DockingToolConstants.KEY_BINDINGS);
		TreePath path = null;
		if (optionsDialog != null) {
			path = optionsDialog.getSelectedPath();
			optionsDialog.dispose();

			OptionsEditor oldEditor = keyBindingOptions.getOptionsEditor();
			oldEditor.dispose();
		}

		keyBindingOptions.registerOptionsEditor(() -> new KeyBindingOptionsEditor());
		OptionsDialog dialog =
			new OptionsDialog("Options for " + tool.getName(), "Options", getEditableOptions(),
				null, true);
		dialog.setSelectedPath(path);
		dialog.setHelpLocation(
			new HelpLocation(ToolConstants.TOOL_HELP_TOPIC, "ToolOptions_Dialog"));
		return dialog;
	}
Restore Options objects using the given XML Element.
@param root element to use to restore the Options objects
Ghidra/Framework/Project/src/main/java/ghidra/framework/plugintool/mgr/OptionsManager.java