File indexing completed on 2025-05-04 04:51:07

0001 /*
0002    SPDX-FileCopyrightText: 2016-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include "../viewerpluginexternalscriptsloadjob.h"
0010 #include <QWidget>
0011 class QListWidget;
0012 class QPushButton;
0013 class QListWidgetItem;
0014 class ViewerPluginExternalConfigureWidget : public QWidget
0015 {
0016     Q_OBJECT
0017 public:
0018     explicit ViewerPluginExternalConfigureWidget(QWidget *parent = nullptr);
0019     ~ViewerPluginExternalConfigureWidget() override;
0020     void load();
0021     void save();
0022 
0023 private:
0024     void modifyScript(QListWidgetItem *item);
0025     void fillScriptInfo(const QList<ViewerPluginExternalScriptInfo> &scriptInfos);
0026     void slotAddScript();
0027     void slotModifyScript();
0028     void updateButtons();
0029     void slotRemoveScript();
0030     void slotDoubleClicked(QListWidgetItem *item);
0031     QStringList mFilesToRemove;
0032 
0033     QListWidget *const mListExternal;
0034     QPushButton *const mAddScript;
0035     QPushButton *const mRemoveScript;
0036     QPushButton *const mModifyScript;
0037 };