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

#ifndef __javax_swing_JDialog$AccessibleJDialog__
#define __javax_swing_JDialog$AccessibleJDialog__

#pragma interface

#include <java/awt/Dialog$AccessibleAWTDialog.h>
extern "Java"
{
  namespace javax
  {
    namespace swing
    {
        class JDialog;
        class JDialog$AccessibleJDialog;
    }
  }
}

class javax::swing::JDialog$AccessibleJDialog : public ::java::awt::Dialog$AccessibleAWTDialog
{

public: // actually protected
  JDialog$AccessibleJDialog(::javax::swing::JDialog *);
public: // actually package-private
  ::javax::swing::JDialog * __attribute__((aligned(__alignof__( ::java::awt::Dialog$AccessibleAWTDialog)))) this$0;
public:
  static ::java::lang::Class class$;
};

#endif // __javax_swing_JDialog$AccessibleJDialog__
