Krita Source Code Documentation
Loading...
Searching...
No Matches
KisLayerThumbnailCache.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2023 Dmitry Kazakov <dimula73@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6#ifndef KISLAYERTHUMBNAILCACHE_H
7#define KISLAYERTHUMBNAILCACHE_H
8
9#include <kritaui_export.h>
10#include <QScopedPointer>
11#include <QObject>
12
13#include "kis_types.h"
14
16
17
18class KRITAUI_EXPORT KisLayerThumbnailCache : public QObject
19{
20 Q_OBJECT
21public:
24
25 void setImage(KisImageSP image);
26 void setIdleTaskManager(KisIdleTasksManager *manager);
27 void setImage(KisImageSP image, KisIdleTasksManager *manager);
28 void setMaxSize(int maxSize);
29 int maxSize() const;
30
31 QImage thumbnail(KisNodeSP node) const;
32
33 void notifyNodeAdded(KisNodeSP node);
34 void notifyNodeRemoved(KisNodeSP node);
35
37
38 void clear();
39
40Q_SIGNALS:
42
43private Q_SLOTS:
44 void slotThumbnailGenerated(KisNodeSP node, int seqNo, int maxSize, const QImage &thumb);
45private:
46 void setIdleTaskManagerImpl(KisIdleTasksManager *manager);
47
48private:
49 struct Private;
50 QScopedPointer<Private> m_d;
51};
52
53#endif // KISLAYERTHUMBNAILCACHE_H
void sigLayerThumbnailUpdated(KisNodeSP node)
QScopedPointer< Private > m_d