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

#ifndef __javax_swing_DefaultButtonModel__
#define __javax_swing_DefaultButtonModel__

#pragma interface

#include <java/lang/Object.h>
#include <gcj/array.h>

extern "Java"
{
  namespace java
  {
    namespace awt
    {
      namespace event
      {
        class ItemListener;
        class ActionListener;
        class ActionEvent;
        class ItemEvent;
      }
    }
  }
  namespace javax
  {
    namespace swing
    {
      class DefaultButtonModel;
      namespace event
      {
        class ChangeListener;
        class ChangeEvent;
      }
      class JComponent;
      class ButtonGroup;
    }
  }
};

class ::javax::swing::DefaultButtonModel : public ::java::lang::Object
{
public: // actually package-private
  DefaultButtonModel (::javax::swing::JComponent *);
public:
  virtual JArray< ::java::lang::Object *> *getSelectedObjects () { return 0; }
  virtual void fireItemStateChanged (::java::awt::event::ItemEvent *);
  virtual void fireStateChanged (::javax::swing::event::ChangeEvent *);
  virtual void fireActionPerformed (::java::awt::event::ActionEvent *);
  virtual jboolean isArmed () { return arm; }
  virtual void setArmed (jboolean);
  virtual jboolean isEnabled () { return enabled; }
  virtual void setEnabled (jboolean);
  virtual void setPressed (jboolean);
  virtual jboolean isPressed () { return pressed; }
  virtual void removeActionListener (::java::awt::event::ActionListener *);
  virtual void addActionListener (::java::awt::event::ActionListener *);
  virtual void addItemListener (::java::awt::event::ItemListener *);
  virtual void removeItemListener (::java::awt::event::ItemListener *);
  virtual void addChangeListener (::javax::swing::event::ChangeListener *);
  virtual void removeChangeListener (::javax::swing::event::ChangeListener *);
  virtual void setRollover (jboolean);
  virtual jboolean isRollover () { return roll; }
  virtual jint getMnemonic () { return mne; }
  virtual void setMnemonic (jint);
  virtual void setActionCommand (::java::lang::String *);
  virtual ::java::lang::String *getActionCommand () { return com; }
  virtual void setGroup (::javax::swing::ButtonGroup *);
  virtual void setSelected (jboolean);
  virtual jboolean isSelected () { return sel; }
public: // actually package-private
  ::java::util::Vector * __attribute__((aligned(__alignof__( ::java::lang::Object )))) actions;
  ::java::util::Vector *items;
  ::java::util::Vector *changes;
  ::javax::swing::ButtonGroup *group;
  ::javax::swing::JComponent *comp;
  jboolean arm;
  jboolean enabled;
  jboolean pressed;
  jboolean roll;
  jint mne;
  ::java::lang::String *com;
  jboolean sel;
public:

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

#endif /* __javax_swing_DefaultButtonModel__ */
