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

#ifndef __javax_swing_plaf_metal_MetalFileChooserUI__
#define __javax_swing_plaf_metal_MetalFileChooserUI__

#pragma interface

#include <javax/swing/plaf/basic/BasicFileChooserUI.h>
extern "Java"
{
  namespace java
  {
    namespace awt
    {
        class Dimension;
      namespace event
      {
          class MouseListener;
      }
    }
    namespace beans
    {
        class PropertyChangeListener;
    }
  }
  namespace javax
  {
    namespace swing
    {
        class ActionMap;
        class JButton;
        class JComboBox;
        class JComponent;
        class JFileChooser;
        class JLabel;
        class JList;
        class JPanel;
        class JScrollPane;
        class JTable;
        class JTextField;
      namespace event
      {
          class ListSelectionEvent;
          class ListSelectionListener;
      }
      namespace plaf
      {
          class ComponentUI;
        namespace metal
        {
            class MetalFileChooserUI;
            class MetalFileChooserUI$DirectoryComboBoxModel;
            class MetalFileChooserUI$DirectoryComboBoxRenderer;
            class MetalFileChooserUI$FilterComboBoxModel;
            class MetalFileChooserUI$FilterComboBoxRenderer;
            class MetalFileChooserUI$SingleClickListener;
            class MetalFileChooserUI$TableClickListener;
        }
      }
    }
  }
}

class javax::swing::plaf::metal::MetalFileChooserUI : public ::javax::swing::plaf::basic::BasicFileChooserUI
{

public:
  static ::javax::swing::plaf::ComponentUI * createUI(::javax::swing::JComponent *);
  MetalFileChooserUI(::javax::swing::JFileChooser *);
  virtual void installUI(::javax::swing::JComponent *);
  virtual void uninstallUI(::javax::swing::JComponent *);
  virtual void installComponents(::javax::swing::JFileChooser *);
  virtual void uninstallComponents(::javax::swing::JFileChooser *);
public: // actually protected
  virtual ::javax::swing::JPanel * getButtonPanel();
  virtual ::javax::swing::JPanel * getBottomPanel();
  virtual void installStrings(::javax::swing::JFileChooser *);
  virtual void installListeners(::javax::swing::JFileChooser *);
  virtual void uninstallListeners(::javax::swing::JFileChooser *);
  virtual ::javax::swing::ActionMap * getActionMap();
  virtual ::javax::swing::ActionMap * createActionMap();
  virtual ::javax::swing::JPanel * createList(::javax::swing::JFileChooser *);
  virtual ::javax::swing::JPanel * createDetailsView(::javax::swing::JFileChooser *);
public: // actually package-private
  virtual ::javax::swing::JPanel * updateTable();
private:
  ::java::lang::String * formatSize(jlong);
public:
  virtual ::javax::swing::event::ListSelectionListener * createListSelectionListener(::javax::swing::JFileChooser *);
  virtual ::java::awt::Dimension * getPreferredSize(::javax::swing::JComponent *);
  virtual ::java::awt::Dimension * getMinimumSize(::javax::swing::JComponent *);
  virtual ::java::awt::Dimension * getMaximumSize(::javax::swing::JComponent *);
  virtual ::java::beans::PropertyChangeListener * createPropertyChangeListener(::javax::swing::JFileChooser *);
public: // actually protected
  virtual ::javax::swing::plaf::metal::MetalFileChooserUI$DirectoryComboBoxModel * createDirectoryComboBoxModel(::javax::swing::JFileChooser *);
  virtual ::javax::swing::plaf::metal::MetalFileChooserUI$DirectoryComboBoxRenderer * createDirectoryComboBoxRenderer(::javax::swing::JFileChooser *);
  virtual ::javax::swing::plaf::metal::MetalFileChooserUI$FilterComboBoxModel * createFilterComboBoxModel();
  virtual ::javax::swing::plaf::metal::MetalFileChooserUI$FilterComboBoxRenderer * createFilterComboBoxRenderer();
  virtual void addControlButtons();
  virtual void removeControlButtons();
public:
  virtual void rescanCurrentDirectory(::javax::swing::JFileChooser *);
  virtual ::java::lang::String * getFileName();
  virtual void setFileName(::java::lang::String *);
  virtual void valueChanged(::javax::swing::event::ListSelectionEvent *);
public: // actually protected
  virtual ::javax::swing::JButton * getApproveButton(::javax::swing::JFileChooser *);
public: // actually package-private
  static void access$0(::javax::swing::plaf::metal::MetalFileChooserUI *, ::java::lang::String *);
  static ::java::lang::String * access$1(::javax::swing::plaf::metal::MetalFileChooserUI *);
  static ::java::lang::String * access$2(::javax::swing::plaf::metal::MetalFileChooserUI *);
  static ::java::lang::String * access$3(::javax::swing::plaf::metal::MetalFileChooserUI *);
  static ::java::lang::String * access$4(::javax::swing::plaf::metal::MetalFileChooserUI *);
  static ::java::lang::String * access$5(::javax::swing::plaf::metal::MetalFileChooserUI *);
  static void access$6(::javax::swing::plaf::metal::MetalFileChooserUI *, jboolean);
  static void access$7(::javax::swing::plaf::metal::MetalFileChooserUI *, ::java::io::File *);
  static ::javax::swing::plaf::metal::MetalFileChooserUI$FilterComboBoxModel * access$8(::javax::swing::plaf::metal::MetalFileChooserUI *);
  static ::javax::swing::JButton * access$9(::javax::swing::plaf::metal::MetalFileChooserUI *);
  static ::javax::swing::JPanel * access$10(::javax::swing::plaf::metal::MetalFileChooserUI *);
  static ::javax::swing::JPanel * access$11(::javax::swing::plaf::metal::MetalFileChooserUI *);
private:
  ::java::lang::String * __attribute__((aligned(__alignof__( ::javax::swing::plaf::basic::BasicFileChooserUI)))) directoryLabel;
  ::javax::swing::JComboBox * directoryComboBox;
public: // actually package-private
  ::javax::swing::plaf::metal::MetalFileChooserUI$DirectoryComboBoxModel * directoryModel;
private:
  ::java::lang::String * fileLabel;
  ::javax::swing::JTextField * fileTextField;
  ::java::lang::String * filterLabel;
  ::javax::swing::JPanel * topPanel;
  ::javax::swing::JPanel * controls;
  ::javax::swing::JPanel * bottomPanel;
  ::javax::swing::JPanel * buttonPanel;
  ::javax::swing::JButton * approveButton;
public: // actually package-private
  ::javax::swing::JList * fileList;
  ::javax::swing::JTable * fileTable;
  ::javax::swing::JPanel * fileListPanel;
  ::javax::swing::JPanel * fileTablePanel;
private:
  ::javax::swing::plaf::metal::MetalFileChooserUI$FilterComboBoxModel * filterModel;
  ::javax::swing::ActionMap * actionMap;
public: // actually package-private
  jboolean listView;
  jboolean startEditing;
  ::javax::swing::JScrollPane * scrollPane;
  ::java::lang::String * save;
  ::java::lang::String * look;
  ::javax::swing::JLabel * dirLabel;
  ::javax::swing::event::ListSelectionListener * listSelList;
  ::java::awt::event::MouseListener * doubleClickList;
  ::javax::swing::plaf::metal::MetalFileChooserUI$SingleClickListener * singleClickList;
  ::javax::swing::plaf::metal::MetalFileChooserUI$TableClickListener * tableClickList;
public:
  static ::java::lang::Class class$;
};

#endif // __javax_swing_plaf_metal_MetalFileChooserUI__
