1
/****************************************************************************
3
** Copyright (C) 1992-2005 Trolltech AS. All rights reserved.
5
** This file is part of the designer application of the Qt Toolkit.
7
** This file may be distributed under the terms of the Q Public License
8
** as defined by Trolltech AS of Norway and appearing in the file
9
** LICENSE.QPL included in the packaging of this file.
11
** This file may be distributed and/or modified under the terms of the
12
** GNU General Public License version 2 as published by the Free Software
13
** Foundation and appearing in the file LICENSE.GPL included in the
14
** packaging of this file.
16
** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
17
** information about Qt Commercial License Agreements.
18
** See http://www.trolltech.com/qpl/ for QPL licensing information.
19
** See http://www.trolltech.com/gpl/ for GPL licensing information.
21
** Contact info@trolltech.com if any conditions of this licensing are
24
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
25
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
27
****************************************************************************/
33
// This file is not part of the Qt API. It exists for the convenience
34
// of Qt Designer. This header
35
// file may change from version to version without notice, or even be removed.
40
#ifndef PLUGINMANAGER_H
41
#define PLUGINMANAGER_H
43
#include "shared_global_p.h"
45
#include <QtCore/QStringList>
46
#include <QtCore/QSettings>
48
class QDesignerFormEditorInterface;
49
class QDesignerCustomWidgetInterface;
51
class QT_SHARED_EXPORT PluginManager: public QObject
55
PluginManager(QDesignerFormEditorInterface *core);
56
virtual ~PluginManager();
58
QDesignerFormEditorInterface *core() const;
60
QObject *instance(const QString &plugin) const;
62
QStringList registeredPlugins() const;
64
QStringList findPlugins(const QString &path);
66
QStringList pluginPaths() const;
67
void setPluginPaths(const QStringList &plugin_paths);
69
QStringList disabledPlugins() const;
70
void setDisabledPlugins(const QStringList &disabled_plugins);
72
QList<QObject*> instances() const;
73
QList<QDesignerCustomWidgetInterface*> registeredCustomWidgets() const;
77
void ensureInitialized();
80
void updateRegisteredPlugins();
81
void registerPath(const QString &path);
82
void registerPlugin(const QString &plugin);
85
QDesignerFormEditorInterface *m_core;
86
QStringList m_pluginPaths;
87
QStringList m_registeredPlugins;
88
QStringList m_disabledPlugins;
89
QList<QDesignerCustomWidgetInterface*> m_customWidgets;
91
QStringList defaultPluginPaths() const;
94
#endif // PLUGINMANAGER_H