File indexing completed on 2025-03-09 03:50:14

0001 /* ============================================================
0002  *
0003  * This file is a part of digiKam project
0004  * https://www.digikam.org
0005  *
0006  * Date        : 2022-04-03
0007  * Description : a BQM plugin to convert to AVIF.
0008  *
0009  * SPDX-FileCopyrightText: 2022 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 "converttoavifplugin.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 "converttoavif.h"
0031 
0032 namespace DigikamBqmConvertToAvifPlugin
0033 {
0034 
0035 ConvertToAvifPlugin::ConvertToAvifPlugin(QObject* const parent)
0036     : DPluginBqm(parent)
0037 {
0038 }
0039 
0040 ConvertToAvifPlugin::~ConvertToAvifPlugin()
0041 {
0042 }
0043 
0044 QString ConvertToAvifPlugin::name() const
0045 {
0046     return i18nc("@title", "Convert To AVIF");
0047 }
0048 
0049 QString ConvertToAvifPlugin::iid() const
0050 {
0051     return QLatin1String(DPLUGIN_IID);
0052 }
0053 
0054 QIcon ConvertToAvifPlugin::icon() const
0055 {
0056     return QIcon::fromTheme(QLatin1String("image-x-generic"));
0057 }
0058 
0059 QString ConvertToAvifPlugin::description() const
0060 {
0061     return i18nc("@info", "A tool to convert images to AVIF format");
0062 }
0063 
0064 QString ConvertToAvifPlugin::details() const
0065 {
0066     return xi18nc("@info", "<para>This Batch Queue Manager tool can convert images data to AVIF format.</para>"
0067                   "<para>AV1 Image File Format is an image file format specification for storing images or image sequences compressed with AV1 "
0068                   "in the ISOBMFF container format.</para>"
0069                   "<para>See details about this format from <a href='https://en.wikipedia.org/wiki/AVIF'>this page</a>.</para>");
0070 }
0071 
0072 QString ConvertToAvifPlugin::handbookSection() const
0073 {
0074     return QLatin1String("batch_queue");
0075 }
0076 
0077 QString ConvertToAvifPlugin::handbookChapter() const
0078 {
0079     return QLatin1String("base_tools");
0080 }
0081 
0082 QString ConvertToAvifPlugin::handbookReference() const
0083 {
0084     return QLatin1String("bqm-converttools");
0085 }
0086 
0087 QList<DPluginAuthor> ConvertToAvifPlugin::authors() const
0088 {
0089     return QList<DPluginAuthor>()
0090             << DPluginAuthor(QString::fromUtf8("Gilles Caulier"),
0091                              QString::fromUtf8("caulier dot gilles at gmail dot com"),
0092                              QString::fromUtf8("(C) 2022"))
0093             ;
0094 }
0095 
0096 void ConvertToAvifPlugin::setup(QObject* const parent)
0097 {
0098     ConvertToAVIF* const tool = new ConvertToAVIF(parent);
0099     tool->setPlugin(this);
0100 
0101     addTool(tool);
0102 }
0103 
0104 } // namespace DigikamBqmConvertToAvifPlugin
0105 
0106 #include "moc_converttoavifplugin.cpp"