File indexing completed on 2025-03-09 03:58:52

0001 /* ============================================================
0002  *
0003  * This file is a part of digiKam project
0004  * https://www.digikam.org
0005  *
0006  * Date        : 2008-11-27
0007  * Description : a view to show Batch Tool Settings.
0008  *
0009  * SPDX-FileCopyrightText: 2008-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 #ifndef DIGIKAM_BQM_TOOL_SETTINGS_VIEW_H
0016 #define DIGIKAM_BQM_TOOL_SETTINGS_VIEW_H
0017 
0018 // Qt includes
0019 
0020 #include <QStackedWidget>
0021 
0022 // Local includes
0023 
0024 #include "batchtool.h"
0025 #include "batchtoolutils.h"
0026 
0027 namespace Digikam
0028 {
0029 
0030 class ToolSettingsView : public QStackedWidget
0031 {
0032     Q_OBJECT
0033 
0034 public:
0035 
0036     explicit ToolSettingsView(QWidget* const parent = nullptr);
0037     ~ToolSettingsView() override;
0038 
0039     void setBusy(bool b);
0040 
0041 Q_SIGNALS:
0042 
0043     void signalSettingsChanged(const BatchToolSet&);
0044 
0045 public Q_SLOTS:
0046 
0047     void slotToolSelected(const BatchToolSet&);
0048 
0049 private Q_SLOTS:
0050 
0051     void slotSettingsChanged(const BatchToolSettings&);
0052     void slotThemeChanged();
0053     void slotAboutPlugin();
0054     void slotHelpPlugin();
0055 
0056 private:
0057 
0058     int  viewMode() const;
0059     void setViewMode(int mode);
0060     void setToolSettingsWidget(QWidget* const w);
0061 
0062 private:
0063 
0064     class Private;
0065     Private* const d;
0066 };
0067 
0068 } // namespace Digikam
0069 
0070 #endif // DIGIKAM_BQM_TOOL_SETTINGS_VIEW_H