
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __javax_swing_JOptionPane__
#define __javax_swing_JOptionPane__

#pragma interface

#include <javax/swing/JComponent.h>
#include <gcj/array.h>

extern "Java"
{
  namespace java
  {
    namespace awt
    {
        class Component;
        class Frame;
    }
  }
  namespace javax
  {
    namespace accessibility
    {
        class AccessibleContext;
    }
    namespace swing
    {
        class Icon;
        class JDesktopPane;
        class JDialog;
        class JInternalFrame;
        class JOptionPane;
      namespace plaf
      {
          class OptionPaneUI;
      }
    }
  }
}

class javax::swing::JOptionPane : public ::javax::swing::JComponent
{

public:
  JOptionPane();
  JOptionPane(::java::lang::Object *);
  JOptionPane(::java::lang::Object *, jint);
  JOptionPane(::java::lang::Object *, jint, jint);
  JOptionPane(::java::lang::Object *, jint, jint, ::javax::swing::Icon *);
  JOptionPane(::java::lang::Object *, jint, jint, ::javax::swing::Icon *, JArray< ::java::lang::Object * > *);
  JOptionPane(::java::lang::Object *, jint, jint, ::javax::swing::Icon *, JArray< ::java::lang::Object * > *, ::java::lang::Object *);
  virtual ::javax::swing::JDialog * createDialog(::java::awt::Component *, ::java::lang::String *);
  virtual ::javax::swing::JInternalFrame * createInternalFrame(::java::awt::Component *, ::java::lang::String *);
  virtual ::javax::accessibility::AccessibleContext * getAccessibleContext();
  static ::javax::swing::JDesktopPane * getDesktopPaneForComponent(::java::awt::Component *);
  static ::java::awt::Frame * getFrameForComponent(::java::awt::Component *);
  virtual ::javax::swing::Icon * getIcon();
  virtual ::java::lang::Object * getInitialSelectionValue();
  virtual ::java::lang::Object * getInitialValue();
  virtual ::java::lang::Object * getInputValue();
  virtual jint getMaxCharactersPerLineCount();
  virtual ::java::lang::Object * getMessage();
  virtual jint getMessageType();
  virtual JArray< ::java::lang::Object * > * getOptions();
  virtual jint getOptionType();
  static ::java::awt::Frame * getRootFrame();
  virtual JArray< ::java::lang::Object * > * getSelectionValues();
  virtual ::javax::swing::plaf::OptionPaneUI * getUI();
  virtual ::java::lang::String * getUIClassID();
  virtual ::java::lang::Object * getValue();
  virtual jboolean getWantsInput();
public: // actually protected
  virtual ::java::lang::String * paramString();
public:
  virtual void selectInitialValue();
  virtual void setIcon(::javax::swing::Icon *);
  virtual void setInitialSelectionValue(::java::lang::Object *);
  virtual void setInitialValue(::java::lang::Object *);
  virtual void setInputValue(::java::lang::Object *);
  virtual void setMessage(::java::lang::Object *);
  virtual void setMessageType(jint);
  virtual void setOptions(JArray< ::java::lang::Object * > *);
  virtual void setOptionType(jint);
  static void setRootFrame(::java::awt::Frame *);
  virtual void setSelectionValues(JArray< ::java::lang::Object * > *);
  virtual void setUI(::javax::swing::plaf::OptionPaneUI *);
  virtual void setValue(::java::lang::Object *);
  virtual void setWantsInput(jboolean);
  static jint showConfirmDialog(::java::awt::Component *, ::java::lang::Object *);
  static jint showConfirmDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint);
  static jint showConfirmDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint, jint);
  static jint showConfirmDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint, jint, ::javax::swing::Icon *);
  static ::java::lang::String * showInputDialog(::java::awt::Component *, ::java::lang::Object *);
  static ::java::lang::String * showInputDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::Object *);
  static ::java::lang::String * showInputDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint);
  static ::java::lang::Object * showInputDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint, ::javax::swing::Icon *, JArray< ::java::lang::Object * > *, ::java::lang::Object *);
  static ::java::lang::String * showInputDialog(::java::lang::Object *);
  static ::java::lang::String * showInputDialog(::java::lang::Object *, ::java::lang::Object *);
  static jint showInternalConfirmDialog(::java::awt::Component *, ::java::lang::Object *);
  static jint showInternalConfirmDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint);
  static jint showInternalConfirmDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint, jint);
  static jint showInternalConfirmDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint, jint, ::javax::swing::Icon *);
  static ::java::lang::String * showInternalInputDialog(::java::awt::Component *, ::java::lang::Object *);
  static ::java::lang::String * showInternalInputDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint);
  static ::java::lang::Object * showInternalInputDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint, ::javax::swing::Icon *, JArray< ::java::lang::Object * > *, ::java::lang::Object *);
  static void showInternalMessageDialog(::java::awt::Component *, ::java::lang::Object *);
  static void showInternalMessageDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint);
  static void showInternalMessageDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint, ::javax::swing::Icon *);
  static jint showInternalOptionDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint, jint, ::javax::swing::Icon *, JArray< ::java::lang::Object * > *, ::java::lang::Object *);
  static void showMessageDialog(::java::awt::Component *, ::java::lang::Object *);
  static void showMessageDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint);
  static void showMessageDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint, ::javax::swing::Icon *);
  static jint showOptionDialog(::java::awt::Component *, ::java::lang::Object *, ::java::lang::String *, jint, jint, ::javax::swing::Icon *, JArray< ::java::lang::Object * > *, ::java::lang::Object *);
  virtual void updateUI();
private:
  jboolean validMessageType(jint);
  jboolean validOptionType(jint);
  static void startModal(::javax::swing::JInternalFrame *);
  static const jlong serialVersionUID = 5231143276678566796LL;
public:
  static const jint CANCEL_OPTION = 2;
  static const jint CLOSED_OPTION = -1;
  static const jint DEFAULT_OPTION = -1;
  static const jint NO_OPTION = 1;
  static const jint OK_CANCEL_OPTION = 2;
  static const jint OK_OPTION = 0;
  static const jint YES_NO_CANCEL_OPTION = 1;
  static const jint YES_NO_OPTION = 0;
  static const jint YES_OPTION = 0;
  static const jint ERROR_MESSAGE = 0;
  static const jint INFORMATION_MESSAGE = 1;
  static const jint PLAIN_MESSAGE = -1;
  static const jint QUESTION_MESSAGE = 3;
  static const jint WARNING_MESSAGE = 2;
  static ::java::lang::String * ICON_PROPERTY;
  static ::java::lang::String * INITIAL_SELECTION_VALUE_PROPERTY;
  static ::java::lang::String * INITIAL_VALUE_PROPERTY;
  static ::java::lang::String * INPUT_VALUE_PROPERTY;
  static ::java::lang::String * MESSAGE_PROPERTY;
  static ::java::lang::String * MESSAGE_TYPE_PROPERTY;
  static ::java::lang::String * OPTION_TYPE_PROPERTY;
  static ::java::lang::String * OPTIONS_PROPERTY;
  static ::java::lang::String * SELECTION_VALUES_PROPERTY;
  static ::java::lang::String * VALUE_PROPERTY;
  static ::java::lang::String * WANTS_INPUT_PROPERTY;
  static ::java::lang::Object * UNINITIALIZED_VALUE;
public: // actually protected
  ::javax::swing::Icon * __attribute__((aligned(__alignof__( ::javax::swing::JComponent)))) icon;
  ::java::lang::Object * initialSelectionValue;
  ::java::lang::Object * initialValue;
  ::java::lang::Object * inputValue;
  ::java::lang::Object * message;
  jint messageType;
  JArray< ::java::lang::Object * > * options;
  jint optionType;
  JArray< ::java::lang::Object * > * selectionValues;
  ::java::lang::Object * value;
  jboolean wantsInput;
private:
  static ::java::awt::Frame * privFrame;
public:
  static ::java::lang::Class class$;
};

#endif // __javax_swing_JOptionPane__
