131 void updates(
const QString &directory,
const QList<std::pair<QString, QFileInfo>> &updates);
132 void newListOfFiles(
const QString &directory,
const QStringList &listOfFiles)
const;
133 void nameResolved(
const QString &fileName,
const QString &resolvedName)
const;
134 void directoryLoaded(
const QString &path);
137 explicit QFileInfoGatherer(QObject *parent =
nullptr);
138 ~QFileInfoGatherer();
140 QStringList watchedFiles()
const;
141 QStringList watchedDirectories()
const;
142 void watchPaths(
const QStringList &paths);
143 void unwatchPaths(
const QStringList &paths);
145 bool isWatching()
const;
146 void setWatching(
bool v);
150 void removePath(
const QString &path);
151 QExtendedInformation getInfo(
const QFileInfo &info)
const;
152 QAbstractFileIconProvider *iconProvider()
const;
153 bool resolveSymlinks()
const;
158 void list(
const QString &directoryPath);
159 void fetchExtendedInformation(
const QString &path,
const QStringList &files);
160 void updateFile(
const QString &path);
161 void setResolveSymlinks(
bool enable);
162 void setIconProvider(QAbstractFileIconProvider *provider);
169 bool event(QEvent *event) override;
174 void getFileInfos(
const QString &path,
const QStringList &files);
175 void fetch(
const QFileInfo &info, QElapsedTimer &base,
bool &firstTime,
176 QList<std::pair<QString, QFileInfo>> &updatedFiles,
const QString &path);
179 void createWatcher();
181 mutable QMutex mutex;
183 QWaitCondition condition;
184 QStack<QString> path;
185 QStack<QStringList> files;
188#if QT_CONFIG(filesystemwatcher)
189 QFileSystemWatcher *m_watcher =
nullptr;
191 QAbstractFileIconProvider *m_iconProvider;
192 QAbstractFileIconProvider defaultProvider;
194 bool m_resolveSymlinks =
true;
196#if QT_CONFIG(filesystemwatcher)
197 bool m_watching =
true;