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

0001 /* ============================================================
0002  *
0003  * This file is a part of digiKam project
0004  * https://www.digikam.org
0005  *
0006  * Date        : 2014-05-24
0007  * Description : user script batch tool.
0008  *
0009  * SPDX-FileCopyrightText: 2009-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
0010  * SPDX-FileCopyrightText: 2014      by Hubert Law <hhclaw dot eb at gmail dot com>
0011  *
0012  * SPDX-License-Identifier: GPL-2.0-or-later
0013  *
0014  * ============================================================ */
0015 
0016 #ifndef DIGIKAM_BQM_USER_SCRIPT_H
0017 #define DIGIKAM_BQM_USER_SCRIPT_H
0018 
0019 // Local includes
0020 
0021 #include "batchtool.h"
0022 
0023 using namespace Digikam;
0024 
0025 namespace DigikamBqmUserScriptPlugin
0026 {
0027 
0028 class UserScript : public BatchTool
0029 {
0030     Q_OBJECT
0031 
0032 public:
0033 
0034     explicit UserScript(QObject* const parent = nullptr);
0035     ~UserScript()                                           override;
0036 
0037     QString outputSuffix()                            const override;
0038 
0039     BatchToolSettings defaultSettings()                     override;
0040 
0041     BatchTool* clone(QObject* const parent = nullptr) const override;
0042 
0043     void registerSettingsWidget()                           override;
0044 
0045 private:
0046 
0047     bool toolOperations()                                   override;
0048 
0049 private Q_SLOTS:
0050 
0051     void slotAssignSettings2Widget()                        override;
0052     void slotSettingsChanged()                              override;
0053 
0054 private:
0055 
0056     class Private;
0057     Private* const d;
0058 };
0059 
0060 } // namespace DigikamBqmUserScriptPlugin
0061 
0062 #endif // DIGIKAM_BQM_USER_SCRIPT_H