DtkCore
DTK Core module
dfilewatchermanager.h
1// SPDX-FileCopyrightText: 2017 - 2022 UnionTech Software Technology Co., Ltd.
2//
3// SPDX-License-Identifier: LGPL-3.0-or-later
4
5#ifndef DFILEWATCHERMANAGER_H
6#define DFILEWATCHERMANAGER_H
7
8#include "dtkcore_global.h"
9#include "dobject.h"
10
11#include <QObject>
12
13DCORE_BEGIN_NAMESPACE
14
15class DFileWatcher;
16
17class DFileWatcherManagerPrivate;
18class LIBDTKCORESHARED_EXPORT DFileWatcherManager : public QObject, public DObject
19{
20 Q_OBJECT
21
22public:
23 explicit DFileWatcherManager(QObject *parent = 0);
25
26 DFileWatcher *add(const QString &filePath);
27 void remove(const QString &filePath);
28
29Q_SIGNALS:
30 void fileDeleted(const QString &filePath);
31 void fileAttributeChanged(const QString &filePath);
32 void fileMoved(const QString &fromFilePath, const QString &toFilePath);
33 void subfileCreated(const QString &filePath);
34 void fileModified(const QString &filePath);
35 void fileClosed(const QString &filePath);
36
37private:
38 QScopedPointer<DFileWatcherManagerPrivate> d_ptr;
39
40 D_DECLARE_PRIVATE(DFileWatcherManager)
41 Q_DISABLE_COPY(DFileWatcherManager)
42};
43
44DCORE_END_NAMESPACE
45
46#endif // DFILEWATCHERMANAGER_H
Definition: dfilewatchermanager.h:19
Definition: dfilewatcher.h:14
Definition: dobject.h:25