digiKam
Loading...
Searching...
No Matches
dplugindimg.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 : 2019-09-19
7 * Description : digiKam plugin definition for DImg image loader.
8 *
9 * SPDX-FileCopyrightText: 2019-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
10 *
11 * SPDX-License-Identifier: GPL-2.0-or-later
12 *
13 * ============================================================ */
14
15#pragma once
16
17// Qt includes
18
19#include <QFileInfo>
20#include <QWidget>
21
22// Local includes
23
24#include "dplugin.h"
25#include "dimgloader.h"
26#include "dimgloadersettings.h"
27#include "dpluginloader.h"
28#include "digikam_export.h"
29#include "drawdecoding.h"
30
31namespace Digikam
32{
33
34class DIGIKAM_EXPORT DPluginDImg : public DPlugin
35{
36 Q_OBJECT
37
38public:
39
43 explicit DPluginDImg(QObject* const parent = nullptr);
44
48 ~DPluginDImg() override = default;
49
50public:
51
55 int count() const override
56 {
57 return 1;
58 };
59
63 QStringList categories() const override
64 {
65 return QStringList();
66 };
67
71 void setVisible(bool) override
72 {
73 };
74
78 QString ifaceIid() const override
79 {
80 return QLatin1String(DIGIKAM_DPLUGIN_DIMG_IID);
81 };
82
86 bool hasVisibilityProperty() const override
87 {
88 return false;
89 };
90
94 QMap<QString, QStringList> extraAboutData() const override;
95 QStringList extraAboutDataRowTitles() const override;
96 QString extraAboutDataTitle() const override;
97
98public:
99
104 virtual QString loaderName() const = 0;
105
111 virtual QString typeMimes() const = 0;
112
116 virtual bool previewSupported() const { return false; };
117
127 virtual int canRead(const QFileInfo& fileInfo, bool magic) const = 0;
128
133 virtual int canWrite(const QString& format) const = 0;
134
138 virtual DImgLoader* loader(DImg* const image,
139 const DRawDecoding& rawSettings = DRawDecoding()) const = 0;
140
145 virtual DImgLoaderSettings* exportWidget(const QString& format) const = 0;
146};
147
148} // namespace Digikam
149
Definition dimgloadersettings.h:37
Definition dimgloader.h:41
Definition dimg.h:52
Definition dplugindimg.h:35
QString ifaceIid() const override
Definition dplugindimg.h:78
virtual DImgLoaderSettings * exportWidget(const QString &format) const =0
virtual bool previewSupported() const
Definition dplugindimg.h:116
~DPluginDImg() override=default
virtual QString loaderName() const =0
virtual int canWrite(const QString &format) const =0
virtual QString typeMimes() const =0
virtual int canRead(const QFileInfo &fileInfo, bool magic) const =0
void setVisible(bool) override
Definition dplugindimg.h:71
QStringList categories() const override
Definition dplugindimg.h:63
virtual DImgLoader * loader(DImg *const image, const DRawDecoding &rawSettings=DRawDecoding()) const =0
bool hasVisibilityProperty() const override
Definition dplugindimg.h:86
int count() const override
Definition dplugindimg.h:55
Definition dplugin.h:51
Definition drawdecoding.h:38
#define DIGIKAM_DPLUGIN_DIMG_IID
Definition dplugin.h:42
Definition datefolderview.cpp:34