QuaZIP  quazip-0-5
quazipdir.h
1 #ifndef QUAZIP_QUAZIPDIR_H
2 #define QUAZIP_QUAZIPDIR_H
3 
4 class QuaZipDirPrivate;
5 
6 #include "quazip.h"
7 #include "quazipfileinfo.h"
8 #include <QDir>
9 #include <QList>
10 #include <QSharedDataPointer>
11 
13 
29 class QUAZIP_EXPORT QuaZipDir {
30 private:
31  QSharedDataPointer<QuaZipDirPrivate> d;
32 public:
34  QuaZipDir(const QuaZipDir &that);
36 
40  QuaZipDir(QuaZip *zip, const QString &dir = QString());
42  ~QuaZipDir();
44  bool operator==(const QuaZipDir &that);
46 
50  inline bool operator!=(const QuaZipDir &that) {return !operator==(that);}
52 
56  QuaZipDir& operator=(const QuaZipDir &that);
58  QString operator[](int pos) const;
60  QuaZip::CaseSensitivity caseSensitivity() const;
62 
71  bool cd(const QString &dirName);
73  bool cdUp();
75  uint count() const;
77 
80  QString dirName() const;
82 
89  QList<QuaZipFileInfo> entryInfoList(const QStringList &nameFilters,
90  QDir::Filters filters = QDir::NoFilter,
91  QDir::SortFlags sort = QDir::NoSort) const;
93 
98  QList<QuaZipFileInfo> entryInfoList(QDir::Filters filters = QDir::NoFilter,
99  QDir::SortFlags sort = QDir::NoSort) const;
101 
105  QStringList entryList(const QStringList &nameFilters,
106  QDir::Filters filters = QDir::NoFilter,
107  QDir::SortFlags sort = QDir::NoSort) const;
109 
114  QStringList entryList(QDir::Filters filters = QDir::NoFilter,
115  QDir::SortFlags sort = QDir::NoSort) const;
117 
123  bool exists(const QString &fileName) const;
125  bool exists() const;
127 
130  QString filePath(const QString &fileName) const;
132  QDir::Filters filter();
134 
137  bool isRoot() const;
139  QStringList nameFilters() const;
141 
145  QString path() const;
147  QString relativeFilePath(const QString &fileName) const;
149  void setCaseSensitivity(QuaZip::CaseSensitivity caseSensitivity);
151  void setFilter(QDir::Filters filters);
153  void setNameFilters(const QStringList &nameFilters);
155 
164  void setPath(const QString &path);
166  void setSorting(QDir::SortFlags sort);
168  QDir::SortFlags sorting() const;
169 };
170 
171 #endif // QUAZIP_QUAZIPDIR_H