#ifndef QFILEDIALOG_H
#define QFILEDIALOG_H 
#include <QtCore/qdir.h>
#include <QtCore/qstring.h>
#include <QtGui/qdialog.h>
typedef enum QtValidLicenseForGuiModule QtGuiModule;
#ifndef QT_NO_FILEDIALOG
struct QModelIndex;
struct QItemSelection;
struct QFileDialogArgs;
struct QFileIconProvider;
struct QFileDialogPrivate;
struct QAbstractItemDelegate;
class QFileDialog: public QDialog{
   public: virtual struct QMetaObject const * metaObject() const
   public: static struct QMetaObject const staticMetaObject;
   public: virtual void* qt_metacast(char const *);
   public: static inline class QString tr(char const * s, char const * c = 0);
   public: static inline class QString trUtf8(char const * s, char const * c = 0);
   public: static inline class QString tr(char const * s, char const * c, int n);
   public: static inline class QString trUtf8(char const * s, char const * c, int n);
   public: virtual int qt_metacall(enum QMetaObject::Call, int, void* *);
   public: enum ViewMode{
      Detail = 0,
      List = 1,
   };
   public: enum FileMode{
      AnyFile = 0,
      ExistingFile = 1,
      Directory = 2,
      ExistingFiles = 3,
      DirectoryOnly = 4,
   };
   public: enum AcceptMode{
      AcceptOpen = 0,
      AcceptSave = 1,
   };
   public: enum DialogLabel{
      LookIn = 0,
      FileName = 1,
      FileType = 2,
      Accept = 3,
      Reject = 4,
   };
   public: enum Option{
      ShowDirsOnly = 1,
      DontResolveSymlinks = 2,
      DontConfirmOverwrite = 4,
      DontUseSheet = 8,
      DontUseNativeDialog = 16,
   };
   public: typedef class QFlags < enum QFileDialog::Option > Options;
   public: QFileDialog(class QWidget* parent, Qt::WindowFlags f);
   public: explicit QFileDialog(class QWidget* parent = 0, class QString const & caption = QString::QString(), class QString const & directory = QString::QString(), class QString const & filter = QString::QString());
   public: virtual ~QFileDialog();
   public: void setDirectory(class QString const & directory);
   public: class QDir directory() const
   public: void selectFile(class QString const & filename);
   public: class QStringList selectedFiles() const
   public: void setFilter(class QString const & filter);
   public: void setFilters(class QStringList const & filters);
   public: class QStringList filters() const
   public: void selectFilter(class QString const & filter);
   public: class QString selectedFilter() const
   public: void setViewMode(enum QFileDialog::ViewMode mode);
   public: enum QFileDialog::ViewMode viewMode() const
   public: void setFileMode(enum QFileDialog::FileMode mode);
   public: enum QFileDialog::FileMode fileMode() const
   public: void setAcceptMode(enum QFileDialog::AcceptMode mode);
   public: enum QFileDialog::AcceptMode acceptMode() const
   public: void setReadOnly(bool enabled);
   public: bool isReadOnly() const
   public: void setResolveSymlinks(bool enabled);
   public: bool resolveSymlinks() const
   public: void setConfirmOverwrite(bool enabled);
   public: bool confirmOverwrite() const
   public: void setDefaultSuffix(class QString const & suffix);
   public: class QString defaultSuffix() const
   public: void setHistory(class QStringList const & paths);
   public: class QStringList history() const
   public: void setItemDelegate(struct QAbstractItemDelegate* delegate);
   public: struct QAbstractItemDelegate* itemDelegate() const
   public: void setIconProvider(struct QFileIconProvider* provider);
   public: struct QFileIconProvider* iconProvider() const
   public: void setLabelText(enum QFileDialog::DialogLabel label, class QString const & text);
   public: class QString labelText(enum QFileDialog::DialogLabel label) const
   protected: void filesSelected(class QStringList const & files);
   protected: void currentChanged(class QString const & path);
   public: static class QString getOpenFileName(class QWidget* parent = 0, class QString const & caption = QString::QString(), class QString const & dir = QString::QString(), class QString const & filter = QString::QString(), class QString* selectedFilter = 0, class QFlags < enum QFileDialog::Option > options = 0);
   public: static class QString getSaveFileName(class QWidget* parent = 0, class QString const & caption = QString::QString(), class QString const & dir = QString::QString(), class QString const & filter = QString::QString(), class QString* selectedFilter = 0, class QFlags < enum QFileDialog::Option > options = 0);
   public: static class QString getExistingDirectory(class QWidget* parent = 0, class QString const & caption = QString::QString(), class QString const & dir = QString::QString(), class QFlags < enum QFileDialog::Option > options = QFileDialog::ShowDirsOnly);
   public: static class QStringList getOpenFileNames(class QWidget* parent = 0, class QString const & caption = QString::QString(), class QString const & dir = QString::QString(), class QString const & filter = QString::QString(), class QString* selectedFilter = 0, class QFlags < enum QFileDialog::Option > options = 0);
   protected: QFileDialog(struct QFileDialogArgs const & args);
   protected: virtual void done(int result);
   protected: virtual void accept();
   private: inline struct QFileDialogPrivate* d_func();
   private: inline struct QFileDialogPrivate const * d_func() const
   private: QFileDialog(class QFileDialog const &);
   private: class QFileDialog& operator =(class QFileDialog const &);
   public: inline void setDirectory(class QDir const & adirectory);
   friend struct QFileDialogPrivate;
};
inline class QFlags < enum QFileDialog::Option > operator |(enum QFileDialog::Option f1, class QFlags < enum QFileDialog::Option > f2);
inline class QFlags < enum QFileDialog::Option > operator |(enum QFileDialog::Option f1, enum QFileDialog::Option f2);
#endif // QT_NO_FILEDIALOG
#endif // QFILEDIALOG_H