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

#ifndef __javax_swing_JEditorPane$PlainEditorKit__
#define __javax_swing_JEditorPane$PlainEditorKit__

#pragma interface

#include <javax/swing/text/DefaultEditorKit.h>
extern "Java"
{
  namespace javax
  {
    namespace swing
    {
        class JEditorPane$PlainEditorKit;
      namespace text
      {
          class ViewFactory;
      }
    }
  }
}

class javax::swing::JEditorPane$PlainEditorKit : public ::javax::swing::text::DefaultEditorKit
{

  JEditorPane$PlainEditorKit();
public:
  virtual ::javax::swing::text::ViewFactory * getViewFactory();
public: // actually package-private
  JEditorPane$PlainEditorKit(::javax::swing::JEditorPane$PlainEditorKit *);
public:
  static ::java::lang::Class class$;
};

#endif // __javax_swing_JEditorPane$PlainEditorKit__
