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

#ifndef __gnu_java_awt_peer_qt_QtComponentPeer$RepaintTimerTask__
#define __gnu_java_awt_peer_qt_QtComponentPeer$RepaintTimerTask__

#pragma interface

#include <java/util/TimerTask.h>
extern "Java"
{
  namespace gnu
  {
    namespace java
    {
      namespace awt
      {
        namespace peer
        {
          namespace qt
          {
              class QtComponentPeer;
              class QtComponentPeer$RepaintTimerTask;
          }
        }
      }
    }
  }
}

class gnu::java::awt::peer::qt::QtComponentPeer$RepaintTimerTask : public ::java::util::TimerTask
{

public: // actually package-private
  QtComponentPeer$RepaintTimerTask(::gnu::java::awt::peer::qt::QtComponentPeer *, ::gnu::java::awt::peer::qt::QtComponentPeer *, jint, jint, jint, jint);
public:
  virtual void run();
private:
  jint __attribute__((aligned(__alignof__( ::java::util::TimerTask)))) x;
  jint y;
  jint w;
  jint h;
  ::gnu::java::awt::peer::qt::QtComponentPeer * peer;
public: // actually package-private
  ::gnu::java::awt::peer::qt::QtComponentPeer * this$0;
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_java_awt_peer_qt_QtComponentPeer$RepaintTimerTask__
