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

#ifndef __javax_swing_tree_DefaultTreeSelectionModel__
#define __javax_swing_tree_DefaultTreeSelectionModel__

#pragma interface

#include <java/lang/Object.h>
#include <gcj/array.h>

extern "Java"
{
  namespace java
  {
    namespace beans
    {
      class PropertyChangeListener;
    }
  }
  namespace javax
  {
    namespace swing
    {
      class DefaultListSelectionModel;
      namespace tree
      {
        class DefaultTreeSelectionModel;
        class RowMapper;
        class TreePath;
      }
      namespace event
      {
        class TreeSelectionEvent;
        class TreeSelectionListener;
        class EventListenerList;
        class SwingPropertyChangeSupport;
      }
    }
  }
};

class ::javax::swing::tree::DefaultTreeSelectionModel : public ::java::lang::Object
{
public:
  DefaultTreeSelectionModel ();
  virtual ::java::lang::Object *clone () { return 0; }
  virtual ::java::lang::String *toString () { return 0; }
private:
  void writeObject (::java::io::ObjectOutputStream *) { }
  void readObject (::java::io::ObjectInputStream *) { }
public:
  virtual void setRowMapper (::javax::swing::tree::RowMapper *) { }
  virtual ::javax::swing::tree::RowMapper *getRowMapper () { return 0; }
  virtual void setSelectionMode (jint) { }
  virtual jint getSelectionMode ();
  virtual void setSelectionPath (::javax::swing::tree::TreePath *) { }
  virtual void setSelectionPaths (JArray< ::javax::swing::tree::TreePath *> *) { }
  virtual void addSelectionPath (::javax::swing::tree::TreePath *) { }
  virtual void addSelectionPaths (JArray< ::javax::swing::tree::TreePath *> *) { }
  virtual void removeSelectionPath (::javax::swing::tree::TreePath *) { }
  virtual void removeSelectionPaths (JArray< ::javax::swing::tree::TreePath *> *) { }
  virtual ::javax::swing::tree::TreePath *getSelectionPath () { return 0; }
  virtual JArray< ::javax::swing::tree::TreePath *> *getSelectionPaths () { return 0; }
  virtual jint getSelectionCount ();
  virtual jboolean isPathSelected (::javax::swing::tree::TreePath *);
  virtual jboolean isSelectionEmpty ();
  virtual void clearSelection () { }
  virtual void addTreeSelectionListener (::javax::swing::event::TreeSelectionListener *) { }
  virtual void removeTreeSelectionListener (::javax::swing::event::TreeSelectionListener *) { }
public:  // actually protected
  virtual void fireValueChanged (::javax::swing::event::TreeSelectionEvent *) { }
public:
  virtual JArray< ::java::util::EventListener *> *getListeners (::java::lang::Class *) { return 0; }
  virtual jintArray getSelectionRows () { return 0; }
  virtual jint getMinSelectionRow ();
  virtual jint getMaxSelectionRow ();
  virtual jboolean isRowSelected (jint);
  virtual void resetRowSelection () { }
  virtual jint getLeadSelectionRow ();
  virtual ::javax::swing::tree::TreePath *getLeadSelectionPath () { return 0; }
  virtual void addPropertyChangeListener (::java::beans::PropertyChangeListener *);
  virtual void removePropertyChangeListener (::java::beans::PropertyChangeListener *);
public:  // actually protected
  virtual void insureRowContinuity () { }
  virtual jboolean arePathsContiguous (JArray< ::javax::swing::tree::TreePath *> *);
  virtual jboolean canPathsBeAdded (JArray< ::javax::swing::tree::TreePath *> *);
  virtual jboolean canPathsBeRemoved (JArray< ::javax::swing::tree::TreePath *> *);
  virtual void notifyPathChange (::java::util::Vector *, ::javax::swing::tree::TreePath *) { }
  virtual void updateLeadIndex () { }
  virtual void insureUniqueness () { }
public:
  static ::java::lang::String *SELECTION_MODE_PROPERTY;
public:  // actually protected
  ::javax::swing::event::SwingPropertyChangeSupport * __attribute__((aligned(__alignof__( ::java::lang::Object )))) changeSupport;
  JArray< ::javax::swing::tree::TreePath *> *selection;
  ::javax::swing::event::EventListenerList *listenerList;
  ::javax::swing::tree::RowMapper *rowMapper;
  ::javax::swing::DefaultListSelectionModel *listSelectionModel;
  jint selectionMode;
  ::javax::swing::tree::TreePath *leadPath;
  jint leadIndex;
  jint leadRow;
public:

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

#endif /* __javax_swing_tree_DefaultTreeSelectionModel__ */
