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

#ifndef __gnu_java_beans_editors_NativeByteEditor__
#define __gnu_java_beans_editors_NativeByteEditor__

#pragma interface

#include <java/beans/PropertyEditorSupport.h>
extern "Java"
{
  namespace gnu
  {
    namespace java
    {
      namespace beans
      {
        namespace editors
        {
            class NativeByteEditor;
        }
      }
    }
  }
}

class gnu::java::beans::editors::NativeByteEditor : public ::java::beans::PropertyEditorSupport
{

public:
  NativeByteEditor();
  virtual void setAsText(::java::lang::String *);
  virtual ::java::lang::String * getAsText();
  static ::java::lang::Class class$;
};

#endif // __gnu_java_beans_editors_NativeByteEditor__
