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

#ifndef __javax_swing_JColorChooser$DefaultOKCancelListener__
#define __javax_swing_JColorChooser$DefaultOKCancelListener__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace java
  {
    namespace awt
    {
      namespace event
      {
          class ActionEvent;
      }
    }
  }
  namespace javax
  {
    namespace swing
    {
        class JColorChooser$DefaultOKCancelListener;
        class JDialog;
    }
  }
}

class javax::swing::JColorChooser$DefaultOKCancelListener : public ::java::lang::Object
{

public:
  JColorChooser$DefaultOKCancelListener(::javax::swing::JDialog *);
  virtual void actionPerformed(::java::awt::event::ActionEvent *);
private:
  ::javax::swing::JDialog * __attribute__((aligned(__alignof__( ::java::lang::Object)))) dialog;
public:
  static ::java::lang::Class class$;
};

#endif // __javax_swing_JColorChooser$DefaultOKCancelListener__
