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

#ifndef __javax_swing_JTable__
#define __javax_swing_JTable__

#pragma interface

#include <javax/swing/JComponent.h>
#include <gcj/array.h>

extern "Java"
{
  namespace java
  {
    namespace awt
    {
      class Rectangle;
      class Dimension;
    }
  }
  namespace javax
  {
    namespace swing
    {
      class JTable;
      namespace event
      {
        class TableModelEvent;
        class ListSelectionEvent;
        class ChangeEvent;
        class TableColumnModelEvent;
      }
      class ListSelectionModel;
      namespace table
      {
        class TableColumnModel;
        class TableModel;
      }
    }
  }
}

class javax::swing::JTable : public ::javax::swing::JComponent
{
public:
  JTable ();
  JTable (jint, jint);
  JTable (JArray<JArray< ::java::lang::Object *> *> *, JArray< ::java::lang::Object *> *);
  JTable (::javax::swing::table::TableModel *);
  JTable (::javax::swing::table::TableModel *, ::javax::swing::table::TableColumnModel *);
  JTable (::javax::swing::table::TableModel *, ::javax::swing::table::TableColumnModel *, ::javax::swing::ListSelectionModel *);
  JTable (::java::util::Vector *, ::java::util::Vector *);
  virtual void columnAdded (::javax::swing::event::TableColumnModelEvent *);
  virtual void columnMarginChanged (::javax::swing::event::ChangeEvent *);
  virtual void columnMoved (::javax::swing::event::TableColumnModelEvent *);
  virtual void columnRemoved (::javax::swing::event::TableColumnModelEvent *);
  virtual void columnSelectionChanged (::javax::swing::event::ListSelectionEvent *);
  virtual void editingCanceled (::javax::swing::event::ChangeEvent *);
  virtual void editingStopped (::javax::swing::event::ChangeEvent *);
  virtual ::javax::swing::table::TableColumnModel *getColumnModel ();
  virtual ::java::awt::Dimension *getPreferredScrollableViewportSize ();
  virtual jint getScrollableBlockIncrement (::java::awt::Rectangle *, jint, jint);
  virtual jboolean getScrollableTracksViewportHeight ();
  virtual jboolean getScrollableTracksViewportWidth ();
  virtual jint getScrollableUnitIncrement (::java::awt::Rectangle *, jint, jint);
  virtual jint getSelectedRow ();
  virtual ::javax::swing::ListSelectionModel *getSelectionModel ();
  virtual void tableChanged (::javax::swing::event::TableModelEvent *);
  virtual void setModel (::javax::swing::table::TableModel *);
  virtual void setSelectionMode (jint);
  virtual void setSelectionModel (::javax::swing::ListSelectionModel *);
  virtual void setShowGrid (jboolean);
  virtual void valueChanged (::javax::swing::event::ListSelectionEvent *);
  static const jint AUTO_RESIZE_ALL_COLUMNS = 4L;
  static const jint AUTO_RESIZE_LAST_COLUMN = 3L;
  static const jint AUTO_RESIZE_NEXT_COLUMN = 1L;
  static const jint AUTO_RESIZE_OFF = 0L;
  static const jint AUTO_RESIZE_SUBSEQUENT_COLUMNS = 2L;

  static ::java::lang::Class class$;
};

#endif /* __javax_swing_JTable__ */
