qt6windows7/tests/manual/examples/widgets/tools/plugandpaint/app/plugindialog.h

39 lines
918 B
C
Raw Normal View History

2023-10-30 06:33:08 +08:00
// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
#ifndef PLUGINDIALOG_H
#define PLUGINDIALOG_H
#include <QDialog>
#include <QIcon>
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