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

#ifndef __javax_swing_JEditorPane$2__
#define __javax_swing_JEditorPane$2__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace javax
  {
    namespace swing
    {
        class JEditorPane$2;
        class JEditorPane$PageLoader;
    }
  }
}

class javax::swing::JEditorPane$2 : public ::java::lang::Object
{

public: // actually package-private
  JEditorPane$2(::javax::swing::JEditorPane$PageLoader *);
public:
  void run();
public: // actually package-private
  ::javax::swing::JEditorPane$PageLoader * __attribute__((aligned(__alignof__( ::java::lang::Object)))) this$1;
public:
  static ::java::lang::Class class$;
};

#endif // __javax_swing_JEditorPane$2__
