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

#ifndef __javax_swing_text_StyleConstants$ColorConstants__
#define __javax_swing_text_StyleConstants$ColorConstants__

#pragma interface

#include <javax/swing/text/StyleConstants.h>
extern "Java"
{
  namespace javax
  {
    namespace swing
    {
      namespace text
      {
          class StyleConstants$ColorConstants;
      }
    }
  }
}

class javax::swing::text::StyleConstants$ColorConstants : public ::javax::swing::text::StyleConstants
{

  StyleConstants$ColorConstants(::java::lang::String *);
public:
  static ::java::lang::Object * Foreground;
  static ::java::lang::Object * Background;
  static ::java::lang::Class class$;
};

#endif // __javax_swing_text_StyleConstants$ColorConstants__
