/**
   * Returns the icon from the JOptionPane the receiver is providing the look and feel for, or the
   * default icon as returned from <code>getDefaultIcon</code>.
   */
  protected Icon getIcon() {
    Icon mIcon = (optionPane == null ? null : optionPane.getIcon());

    if (mIcon == null && optionPane != null) mIcon = getIconForType(optionPane.getMessageType());
    return mIcon;
  }