File indexing completed on 2025-01-05 03:51:26

0001 /* ============================================================
0002  *
0003  * This file is a part of digiKam project
0004  * https://www.digikam.org
0005  *
0006  * Date        : 2019-09-02
0007  * Description : a BQM plugin to convert to HEIF.
0008  *
0009  * SPDX-FileCopyrightText: 2020-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
0010  *
0011  * SPDX-License-Identifier: GPL-2.0-or-later
0012  *
0013  * ============================================================ */
0014 
0015 #include "converttoheifplugin.h"
0016 
0017 // Qt includes
0018 
0019 #include <QPointer>
0020 #include <QString>
0021 #include <QApplication>
0022 
0023 // KDE includes
0024 
0025 #include <klocalizedstring.h>
0026 
0027 // Local includes
0028 
0029 #include "digikam_debug.h"
0030 #include "converttoheif.h"
0031 
0032 namespace DigikamBqmConvertToHeifPlugin
0033 {
0034 
0035 ConvertToHeifPlugin::ConvertToHeifPlugin(QObject* const parent)
0036     : DPluginBqm(parent)
0037 {
0038 }
0039 
0040 ConvertToHeifPlugin::~ConvertToHeifPlugin()
0041 {
0042 }
0043 
0044 QString ConvertToHeifPlugin::name() const
0045 {
0046     return i18nc("@title", "Convert To HEIF");
0047 }
0048 
0049 QString ConvertToHeifPlugin::iid() const
0050 {
0051     return QLatin1String(DPLUGIN_IID);
0052 }
0053 
0054 QIcon ConvertToHeifPlugin::icon() const
0055 {
0056     return QIcon::fromTheme(QLatin1String("image-x-generic"));
0057 }
0058 
0059 QString ConvertToHeifPlugin::description() const
0060 {
0061     return i18nc("@info", "A tool to convert images to HEIF format");
0062 }
0063 
0064 QString ConvertToHeifPlugin::details() const
0065 {
0066     return xi18nc("@info", "<para>This Batch Queue Manager tool can convert images data to HEIF format.</para>"
0067                   "<para>High Efficiency Image File Format (HEIF), also known as High Efficiency Image Coding (HEIC), "
0068                   "is a file format for individual images and image sequences. It was developed by the "
0069                   "Moving Picture Experts Group (MPEG) and it claims that twice as much information can be "
0070                   "stored in a HEIF image as in a JPEG image of the same size, resulting in a better quality image. "
0071                   "HEIF also supports animation, and is capable of storing more information than an animated GIF "
0072                   "at a small fraction of the size.</para>"
0073                   "<para>See <a href='https://en.wikipedia.org/wiki/High_Efficiency_Image_File_Format'>"
0074                   "High Efficiency Image File Format</a> for details.</para>");
0075 }
0076 
0077 QString ConvertToHeifPlugin::handbookSection() const
0078 {
0079     return QLatin1String("batch_queue");
0080 }
0081 
0082 QString ConvertToHeifPlugin::handbookChapter() const
0083 {
0084     return QLatin1String("base_tools");
0085 }
0086 
0087 QString ConvertToHeifPlugin::handbookReference() const
0088 {
0089     return QLatin1String("bqm-converttools");
0090 }
0091 
0092 QList<DPluginAuthor> ConvertToHeifPlugin::authors() const
0093 {
0094     return QList<DPluginAuthor>()
0095             << DPluginAuthor(QString::fromUtf8("Gilles Caulier"),
0096                              QString::fromUtf8("caulier dot gilles at gmail dot com"),
0097                              QString::fromUtf8("(C) 2019-2022"))
0098             ;
0099 }
0100 
0101 void ConvertToHeifPlugin::setup(QObject* const parent)
0102 {
0103     ConvertToHEIF* const tool = new ConvertToHEIF(parent);
0104     tool->setPlugin(this);
0105 
0106     addTool(tool);
0107 }
0108 
0109 } // namespace DigikamBqmConvertToHeifPlugin
0110 
0111 #include "moc_converttoheifplugin.cpp"