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

#ifndef __gnu_java_awt_peer_gtk_GtkPanelPeer__
#define __gnu_java_awt_peer_gtk_GtkPanelPeer__

#pragma interface

#include <gnu/java/awt/peer/gtk/GtkContainerPeer.h>
extern "Java"
{
  namespace gnu
  {
    namespace java
    {
      namespace awt
      {
        namespace peer
        {
          namespace gtk
          {
              class GtkPanelPeer;
          }
        }
      }
    }
  }
  namespace java
  {
    namespace awt
    {
        class AWTEvent;
        class Panel;
    }
  }
}

class gnu::java::awt::peer::gtk::GtkPanelPeer : public ::gnu::java::awt::peer::gtk::GtkContainerPeer
{

public: // actually package-private
  virtual void create();
public:
  GtkPanelPeer(::java::awt::Panel *);
  virtual void handleEvent(::java::awt::AWTEvent *);
public: // actually package-private
  virtual void connectSignals();
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_java_awt_peer_gtk_GtkPanelPeer__
