@Override
	public void actionPerformed(ActionContext context) {
		Symbol symbol = getExternalSymbol(context);
		if (symbol == null) {
			return;
		}

		ExternalManager externalManager = symbol.getProgram().getExternalManager();
		ExternalLocation externalLocation = externalManager.getExternalLocation(symbol);
		if (externalLocation == null) {
			return; // assume symbol has been deleted
		}

		final EditExternalLocationDialog dialog = new EditExternalLocationDialog(externalLocation);

		dialog.setHelpLocation(new HelpLocation(plugin.getName(), "EditExternalLocation"));
		plugin.getTool().showDialog(dialog);
	}
Creates the action for editing an existing external location or external function in the 
symbol tree.
@param plugin the symbol tree plugin, which owns this action.
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/symboltree/actions/EditExternalLocationAction.java