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

#ifndef __javax_swing_JCheckBox$AccessibleJCheckBox__
#define __javax_swing_JCheckBox$AccessibleJCheckBox__

#pragma interface

#include <javax/swing/JToggleButton$AccessibleJToggleButton.h>
extern "Java"
{
  namespace javax
  {
    namespace accessibility
    {
        class AccessibleRole;
    }
    namespace swing
    {
        class JCheckBox;
        class JCheckBox$AccessibleJCheckBox;
    }
  }
}

class javax::swing::JCheckBox$AccessibleJCheckBox : public ::javax::swing::JToggleButton$AccessibleJToggleButton
{

public: // actually protected
  JCheckBox$AccessibleJCheckBox(::javax::swing::JCheckBox *);
public:
  virtual ::javax::accessibility::AccessibleRole * getAccessibleRole();
public: // actually package-private
  ::javax::swing::JCheckBox * __attribute__((aligned(__alignof__( ::javax::swing::JToggleButton$AccessibleJToggleButton)))) this$0;
public:
  static ::java::lang::Class class$;
};

#endif // __javax_swing_JCheckBox$AccessibleJCheckBox__
