digiKam
Loading...
Searching...
No Matches
dimgfiltermanager.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2010-06-24
7 * Description : manager for filters (registering, creating etc)
8 *
9 * SPDX-FileCopyrightText: 2010-2011 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
10 * SPDX-FileCopyrightText: 2010 by Martin Klapetek <martin dot klapetek at gmail dot com>
11 *
12 * SPDX-License-Identifier: GPL-2.0-or-later
13 *
14 * ============================================================ */
15
16#pragma once
17
18// Qt includes
19
20#include <QStringList>
21#include <QList>
22#include <QString>
23
24// Local includes
25
26#include "dimgfiltergenerator.h"
27#include "digikam_export.h"
28
29namespace Digikam
30{
31
32class FilterAction;
33
34class DIGIKAM_EXPORT DImgFilterManager : public DImgFilterGenerator
35{
36public:
37
38 static DImgFilterManager* instance();
39
43 QStringList supportedFilters() override;
44
48 QList<int> supportedVersions(const QString& filterIdentifier) override;
49
55 QString displayableName(const QString& filterIdentifier) override;
56
60 QString i18nDisplayableName(const QString& filterIdentifier);
61 QString i18nDisplayableName(const FilterAction& action);
62
67 QString filterIcon(const QString& filterIdentifier);
68 QString filterIcon(const FilterAction& action);
69
74 bool isSupported(const QString& filterIdentifier) override;
75 bool isSupported(const QString& filterIdentifier, int version) override;
76
81 bool isRawConversion(const QString& filterIdentifier);
82
89 DImgThreadedFilter* createFilter(const QString& filterIdentifier,
90 int version) override;
91
95 void addGenerator(DImgFilterGenerator* const generator);
96 void removeGenerator(DImgFilterGenerator* const generator);
97
98private:
99
100 // Disable
102 ~DImgFilterManager() override;
103 DImgFilterManager(const DImgFilterManager&) = delete;
104 DImgFilterManager& operator=(const DImgFilterManager&) = delete;
105
106private:
107
108 friend class DImgFilterManagerCreator;
109
110 class Private;
111 Private* const d = nullptr;
112};
113
114} // namespace Digikam
Definition dimgfiltergenerator.h:33
Definition dimgfiltermanager.h:35
Definition dimgthreadedfilter.h:31
Definition filteraction.h:33
Definition datefolderview.cpp:34