Krita Source Code Documentation
Loading...
Searching...
No Matches
KisRecentFilesManager.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2022 Alvin Wong <alvin@alvinhc.com>
3 *
4 * SPDX-License-Identifier: GPL-3.0-or-later
5 */
6
7#ifndef KIS_RECENT_FILES_MANAGER_H
8#define KIS_RECENT_FILES_MANAGER_H
9
10#include <QObject>
11#include <QString>
12#include <QUrl>
13#include <QVector>
14
15#include <kritawidgetutils_export.h>
16
17class KConfigGroup;
18
19struct KRITAWIDGETUTILS_EXPORT KisRecentFilesEntry
20{
21 QUrl m_url;
23}; /* struct KisRecentFilesEntry */
24
25class KRITAWIDGETUTILS_EXPORT KisRecentFilesManager : public QObject
26{
27 Q_OBJECT
28
29 class Private;
31
34
35 Q_DISABLE_COPY(KisRecentFilesManager)
36
37public:
39
40 void clear();
41
42 void add(const QUrl &url);
43 void remove(const QUrl &url);
44
45 QVector<KisRecentFilesEntry> recentFiles() const;
46 QList<QUrl> recentUrlsLatestFirst() const;
47
48private:
49 void loadEntries(const KConfigGroup &config);
50 void saveEntries(const KConfigGroup &config);
51
52Q_SIGNALS:
53 void fileAdded(const QUrl &url);
54 void fileRemoved(const QUrl &url);
56}; /* class KisRecentFileRegistry */
57
58#endif /* KIS_RECENT_FILES_MANAGER_H */
PythonPluginManager * instance
void fileAdded(const QUrl &url)
void fileRemoved(const QUrl &url)