21 #ifndef PLUGINMANAGER_H
22 #define PLUGINMANAGER_H
25 #include <QStringList>
27 #include <tulip/tulipconf.h>
35 struct TLP_QT_SCOPE PluginVersionInformation {
38 QString libraryLocation;
45 QStringList dependencies;
47 PluginVersionInformation();
48 PluginVersionInformation(
const PluginVersionInformation& copy);
52 _DEPRECATED_TYPEDEF(PluginVersionInformation, PluginVersionInformations);
54 struct TLP_QT_SCOPE PluginInformation {
57 PluginVersionInformation installedVersion;
58 PluginVersionInformation availableVersion;
61 PluginInformation(
const PluginInformation& copy);
67 _DEPRECATED_TYPEDEF(PluginInformation, PluginInformations);
69 class TLP_QT_SCOPE PluginManager {
70 static QStringList _markedForInstallation;
77 Q_DECLARE_FLAGS(PluginLocations, PluginLocation)
79 static const QString STABLE_LOCATION;
80 static const QString TESTING_LOCATION;
82 typedef QList<PluginVersionInformation> PluginVersionInformationList;
83 _DEPRECATED_TYPEDEF(QList<PluginVersionInformation>, PluginVersionInformationsList);
85 typedef QList<PluginInformation> PluginInformationList;
86 _DEPRECATED_TYPEDEF(QList<PluginInformation>, PluginInformationsList);
88 static
void addRemoteLocation(const QString& location);
89 static
void removeRemoteLocation(const QString& location);
90 static QStringList remoteLocations();
92 static PluginInformationList listPlugins(PluginLocations locations,const QString& nameFilter = QString(),const QString& categoryFilter = QString());
94 static
void markForRemoval(const QString& plugin);
95 static
void markForInstallation(const QString& plugin, QObject *recv, const
char* progressSlot);
97 static QStringList markedForInstallation();
98 static QStringList markedForRemoval();
99 static
void unmarkForRemoval(const QString& file);
102 Q_DECLARE_OPERATORS_FOR_FLAGS(PluginManager::PluginLocations)
105 #endif //PLUGINMANAGER_H
Top-level interface for plug-ins.