// Copyright (C) 2016 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause #ifndef PLUGINDIALOG_H #define PLUGINDIALOG_H #include #include QT_BEGIN_NAMESPACE class QLabel; class QPushButton; class QTreeWidget; class QTreeWidgetItem; QT_END_NAMESPACE class PluginDialog : public QDialog { Q_OBJECT public: PluginDialog(const QString &path, const QStringList &fileNames, QWidget *parent = nullptr); private: void findPlugins(const QString &path, const QStringList &fileNames); void populateTreeWidget(QObject *plugin, const QString &text); void addItems(QTreeWidgetItem *pluginItem, const char *interfaceName, const QStringList &features); QLabel *label = nullptr; QTreeWidget *treeWidget = nullptr; QPushButton *okButton = nullptr; QIcon interfaceIcon; QIcon featureIcon; }; #endif