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

#ifndef __javax_swing_UIDefaults$1__
#define __javax_swing_UIDefaults$1__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace javax
  {
    namespace swing
    {
        class UIDefaults;
        class UIDefaults$1;
        class UIDefaults$ProxyLazyValue;
    }
  }
}

class javax::swing::UIDefaults$1 : public ::java::lang::Object
{

public: // actually package-private
  UIDefaults$1(::javax::swing::UIDefaults$ProxyLazyValue *, ::java::lang::String *);
public:
  virtual ::java::lang::Object * createValue(::javax::swing::UIDefaults *);
public: // actually package-private
  ::javax::swing::UIDefaults$ProxyLazyValue * __attribute__((aligned(__alignof__( ::java::lang::Object)))) this$1;
private:
  ::java::lang::String * val$className;
public:
  static ::java::lang::Class class$;
};

#endif // __javax_swing_UIDefaults$1__
