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

#ifndef __gnu_gcj_xlib_XUnmapEvent__
#define __gnu_gcj_xlib_XUnmapEvent__

#pragma interface

#include <gnu/gcj/xlib/XEvent.h>
extern "Java"
{
  namespace gnu
  {
    namespace gcj
    {
      namespace xlib
      {
          class Display;
          class Window;
          class XUnmapEvent;
      }
    }
  }
}

class gnu::gcj::xlib::XUnmapEvent : public ::gnu::gcj::xlib::XEvent
{

public:
  XUnmapEvent(::gnu::gcj::xlib::Display *, ::gnu::gcj::xlib::Window *, ::gnu::gcj::xlib::Window *, jboolean);
  virtual void setUnmappedWindow(::gnu::gcj::xlib::Window *);
  virtual void setFromConfigure(jboolean);
  static ::java::lang::Class class$;
};

#endif // __gnu_gcj_xlib_XUnmapEvent__
