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

#ifndef __javax_swing_plaf_BorderUIResource$BevelBorderUIResource__
#define __javax_swing_plaf_BorderUIResource$BevelBorderUIResource__

#pragma interface

#include <javax/swing/border/BevelBorder.h>
extern "Java"
{
  namespace java
  {
    namespace awt
    {
        class Color;
    }
  }
  namespace javax
  {
    namespace swing
    {
      namespace plaf
      {
          class BorderUIResource$BevelBorderUIResource;
      }
    }
  }
}

class javax::swing::plaf::BorderUIResource$BevelBorderUIResource : public ::javax::swing::border::BevelBorder
{

public:
  BorderUIResource$BevelBorderUIResource(jint);
  BorderUIResource$BevelBorderUIResource(jint, ::java::awt::Color *, ::java::awt::Color *);
  BorderUIResource$BevelBorderUIResource(jint, ::java::awt::Color *, ::java::awt::Color *, ::java::awt::Color *, ::java::awt::Color *);
private:
  static const jlong serialVersionUID = -1275542891108351642LL;
public:
  static ::java::lang::Class class$;
};

#endif // __javax_swing_plaf_BorderUIResource$BevelBorderUIResource__
