kio
kdirwatch.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _KDIRWATCH_H
00019 #define _KDIRWATCH_H
00020
00021 #include <qtimer.h>
00022 #include <qdatetime.h>
00023 #include <qmap.h>
00024
00025 #include <kdelibs_export.h>
00026
00027 #define kdirwatch KDirWatch::self()
00028
00029 class KDirWatchPrivate;
00030
00063 class KIO_EXPORT KDirWatch : public QObject
00064 {
00065 Q_OBJECT
00066
00067 public:
00076 KDirWatch (QObject* parent = 0, const char* name = 0);
00077
00083 ~KDirWatch();
00084
00099 void addDir(const QString& path,
00100 bool watchFiles = false, bool recursive = false);
00101
00106 void addFile(const QString& file);
00107
00113 QDateTime ctime(const QString& path);
00114
00121 void removeDir(const QString& path);
00122
00129 void removeFile(const QString& file);
00130
00143 bool stopDirScan(const QString& path);
00144
00158 bool restartDirScan(const QString& path);
00159
00176 void startScan( bool notify=false, bool skippedToo=false );
00177
00183 void stopScan();
00184
00190 bool isStopped() { return _isStopped; }
00191
00197 bool contains( const QString& path ) const;
00198
00203 static void statistics();
00204
00209 void setCreated( const QString &path );
00214 void setDirty( const QString &path );
00219 void setDeleted( const QString &path );
00220
00221 enum Method { FAM, DNotify, Stat, INotify };
00227 Method internalMethod();
00228
00241 static KDirWatch* self();
00248 static bool exists();
00249
00250 signals:
00251
00265 void dirty (const QString &path);
00266
00271 void created (const QString &path );
00272
00279 void deleted (const QString &path );
00280
00281 private:
00282 bool _isStopped;
00283
00284 KDirWatchPrivate *d;
00285 static KDirWatch* s_pSelf;
00286 };
00287
00288 #endif
00289
00290