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 "../viewerpluginexternalscriptinfo.h" 0010 #include <QWidget> 0011 class QLineEdit; 0012 class KUrlRequester; 0013 class ViewerPluginExternalEditWidget : public QWidget 0014 { 0015 Q_OBJECT 0016 public: 0017 explicit ViewerPluginExternalEditWidget(QWidget *parent = nullptr); 0018 ~ViewerPluginExternalEditWidget() override; 0019 0020 void setScriptInfo(const ViewerPluginExternalScriptInfo &info); 0021 [[nodiscard]] ViewerPluginExternalScriptInfo scriptInfo() const; 0022 0023 void save(); 0024 void setExistingsNames(const QStringList &existingsNames); 0025 0026 Q_SIGNALS: 0027 void scriptIsValid(bool valid); 0028 0029 private: 0030 void slotLinkClicked(const QString &link); 0031 void slotInfoChanged(); 0032 ViewerPluginExternalScriptInfo mScriptInfo; 0033 QStringList mExistingsNames; 0034 QString mCommandWhatsThis; 0035 QLineEdit *const mName; 0036 QLineEdit *const mDescription; 0037 QLineEdit *const mCommandLine; 0038 KUrlRequester *const mExecutable; 0039 };