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

#ifndef __javax_swing_JInternalFrame__
#define __javax_swing_JInternalFrame__

#pragma interface

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

extern "Java"
{
  namespace java
  {
    namespace awt
    {
      class LayoutManager;
      class Graphics;
      class Container;
      class Component;
      class Rectangle;
    }
  }
  namespace javax
  {
    namespace accessibility
    {
      class AccessibleContext;
    }
    namespace swing
    {
      class JInternalFrame;
      namespace plaf
      {
        class InternalFrameUI;
      }
      class JLayeredPane;
      class JMenuBar;
      class JDesktopPane;
      namespace event
      {
        class InternalFrameListener;
      }
      class JRootPane;
      class Icon;
      class JInternalFrame$JDesktopIcon;
    }
  }
}

class javax::swing::JInternalFrame : public ::javax::swing::JComponent
{
public:
  JInternalFrame ();
  JInternalFrame (::java::lang::String *);
  JInternalFrame (::java::lang::String *, jboolean);
  JInternalFrame (::java::lang::String *, jboolean, jboolean);
  JInternalFrame (::java::lang::String *, jboolean, jboolean, jboolean);
  JInternalFrame (::java::lang::String *, jboolean, jboolean, jboolean, jboolean);
public:  // actually protected
  virtual void addImpl (::java::awt::Component *, ::java::lang::Object *, jint);
public:
  virtual void addInternalFrameListener (::javax::swing::event::InternalFrameListener *);
public:  // actually protected
  virtual ::javax::swing::JRootPane *createRootPane ();
public:
  virtual void dispose ();
  virtual void doDefaultCloseAction ();
public:  // actually protected
  virtual void fireInternalFrameEvent (jint);
public:
  virtual ::javax::accessibility::AccessibleContext *getAccessibleContext ();
  virtual ::java::awt::Container *getContentPane ();
  virtual jint getDefaultCloseOperation () { return defaultCloseOperation; }
  virtual ::javax::swing::JInternalFrame$JDesktopIcon *getDesktopIcon () { return desktopIcon; }
  virtual ::javax::swing::JDesktopPane *getDesktopPane ();
  virtual ::java::awt::Container *getFocusCycleRootAncestor () { return 0; }
  virtual ::java::awt::Component *getFocusOwner ();
  virtual ::javax::swing::Icon *getFrameIcon () { return frameIcon; }
  virtual ::java::awt::Component *getGlassPane ();
  virtual JArray< ::javax::swing::event::InternalFrameListener *> *getInternalFrameListeners ();
  virtual ::javax::swing::JMenuBar *getJMenuBar ();
  virtual jint getLayer ();
  virtual ::javax::swing::JLayeredPane *getLayeredPane ();
  virtual ::javax::swing::JMenuBar *getMenuBar ();
  virtual ::java::awt::Component *getMostRecentFocusOwner ();
  virtual ::java::awt::Rectangle *getNormalBounds ();
  virtual ::javax::swing::JRootPane *getRootPane () { return rootPane; }
  virtual ::java::lang::String *getTitle () { return title; }
  virtual ::javax::swing::plaf::InternalFrameUI *getUI ();
  virtual ::java::lang::String *getUIClassID ();
  virtual ::java::lang::String *getWarningString () { return 0; }
  virtual void hide ();
  virtual jboolean isClosable () { return closable; }
  virtual jboolean isClosed () { return isClosed__; }
  virtual jboolean isFocusCycleRoot ();
  virtual jboolean isIcon () { return isIcon__; }
  virtual jboolean isIconifiable () { return iconable; }
  virtual jboolean isMaximizable () { return maximizable; }
  virtual jboolean isMaximum () { return isMaximum__; }
  virtual jboolean isResizable () { return resizable; }
public:  // actually protected
  virtual jboolean isRootPaneCheckingEnabled () { return rootPaneCheckingEnabled; }
public:
  virtual jboolean isSelected () { return isSelected__; }
  virtual void moveToBack ();
  virtual void moveToFront ();
  virtual void pack ();
public:  // actually protected
  virtual void paintComponent (::java::awt::Graphics *);
  virtual ::java::lang::String *paramString ();
public:
  virtual void remove (::java::awt::Component *);
  virtual void removeInternalFrameListener (::javax::swing::event::InternalFrameListener *);
  virtual void reshape (jint, jint, jint, jint);
  virtual void restoreSubcomponentFocus ();
  virtual void setClosable (jboolean);
  virtual void setClosed (jboolean);
  virtual void setContentPane (::java::awt::Container *);
  virtual void setDefaultCloseOperation (jint);
  virtual void setDesktopIcon (::javax::swing::JInternalFrame$JDesktopIcon *);
  virtual void setFocusCycleRoot (jboolean) { }
  virtual void setFrameIcon (::javax::swing::Icon *);
  virtual void setGlassPane (::java::awt::Component *);
  virtual void setIcon (jboolean);
  virtual void setIconifiable (jboolean);
  virtual void setJMenuBar (::javax::swing::JMenuBar *);
  virtual void setLayer (jint);
  virtual void setLayer (::java::lang::Integer *);
  virtual void setLayeredPane (::javax::swing::JLayeredPane *);
  virtual void setMaximizable (jboolean);
  virtual void setLayout (::java::awt::LayoutManager *);
  virtual void setMaximum (jboolean);
  virtual void setMenuBar (::javax::swing::JMenuBar *);
  virtual void setNormalBounds (::java::awt::Rectangle *);
  virtual void setResizable (jboolean);
public:  // actually protected
  virtual void setRootPane (::javax::swing::JRootPane *);
  virtual void setRootPaneCheckingEnabled (jboolean);
public:
  virtual void setSelected (jboolean);
  virtual void setTitle (::java::lang::String *);
  virtual void show ();
  virtual void setUI (::javax::swing::plaf::InternalFrameUI *);
  virtual void toBack ();
  virtual void toFront ();
  virtual void updateUI ();
public: // actually package-private
  virtual void setWasIcon (jboolean, ::java::lang::String *);
  virtual jboolean getWasIcon () { return wasIcon; }
private:
  void fireVetoableChange (::java::lang::String *, jboolean, jboolean);
  static const jlong serialVersionUID = -5425177187760785402LL;
public:
  static ::java::lang::String *CONTENT_PANE_PROPERTY;
  static ::java::lang::String *FRAME_ICON_PROPERTY;
  static ::java::lang::String *GLASS_PANE_PROPERTY;
  static ::java::lang::String *IS_CLOSED_PROPERTY;
  static ::java::lang::String *IS_ICON_PROPERTY;
  static ::java::lang::String *IS_MAXIMUM_PROPERTY;
  static ::java::lang::String *IS_SELECTED_PROPERTY;
  static ::java::lang::String *LAYERED_PANE_PROPERTY;
  static ::java::lang::String *MENU_BAR_PROPERTY;
  static ::java::lang::String *ROOT_PANE_PROPERTY;
  static ::java::lang::String *TITLE_PROPERTY;
public:  // actually protected
  jboolean __attribute__((aligned(__alignof__( ::javax::swing::JComponent ))))  closable;
  jboolean iconable;
  jboolean isClosed__;
  jboolean isIcon__;
  jboolean isMaximum__;
  jboolean isSelected__;
  jboolean maximizable;
  jboolean rootPaneCheckingEnabled;
  jboolean resizable;
  ::javax::swing::JInternalFrame$JDesktopIcon *desktopIcon;
  ::javax::swing::Icon *frameIcon;
  ::javax::swing::JRootPane *rootPane;
  ::java::lang::String *title;
private:
  ::java::awt::Rectangle *storedBounds;
  ::java::awt::Component *defaultFocus;
  jint defaultCloseOperation;
  jboolean isFirstTimeVisible;
  jboolean wasIcon;

  friend class javax_swing_JInternalFrame$JDesktopIcon;
  friend class javax_swing_JInternalFrame$AccessibleJInternalFrame;
public:

  static ::java::lang::Class class$;
};

#endif /* __javax_swing_JInternalFrame__ */
