private JPanel buildMessagePanel(String message, int messageType, Icon icon) {

		this.dialogMessage = message;

		JPanel panel = new JPanel(new BorderLayout());
		JPanel textPanel = createTextPanel(message);
		textPanel.setMaximumSize(textPanel.getPreferredSize());

		// we override preferred size here to compensate for html text that is being clipped on
		// some operating systems
		Icon messageIcon = (icon == null) ? getIconForMessageType(messageType) : icon;
		JLabel label = new GIconLabel(messageIcon) {
			@Override
			public Dimension getPreferredSize() {
				Dimension ps = super.getPreferredSize();
				ps.height += 10;
				return ps;
			}
		};

		panel.add(label, BorderLayout.WEST);
		panel.add(textPanel, BorderLayout.CENTER);
		return panel;
	}
Construct a simple one-option dialog with a Cancel button.
@param title the String to place in the dialog's title area.
@param message the message string explaining the user's option.
@param option1 The text to place on the first option button.
@param messageType used to specify a default icon, can be ERROR_MESSAGE,
	 		INFORMATION_MESSAGE, WARNING_MESSAGE, QUESTION_MESSAGE, or PLAIN_MESSAGE)
@param icon allows the user to specify the icon to be used.  If non-null,
    this will override the messageType.
@param defaultButtonName the name of the button to be made the default.
Ghidra/Framework/Docking/src/main/java/docking/widgets/OptionDialog.java