swift
|
Base class for all contexts that provide plugin support. More...
Public Member Functions | |
IPluginManager (QObject *parent=nullptr) | |
Constructor. | |
virtual void | collectPlugins () |
Looks for all available plugins. | |
QString | getPluginConfigId (const QString &identifier) |
If the plugin specifies its config plugin, its identifier can be obtained using this method. You can get the plugin config instance later, using getPluginById() . | |
template<class T > | |
T * | getPluginById (const QString &identifier) |
Loads the given plugin (if necessary), casts it to the desired type and returns its instance. Returns nullptr on failure. | |
![]() | |
QBindable< QString > | bindableObjectName () |
QObject (QObject *parent) | |
QT_NO_CONTEXTLESS_CONNECT QT_NO_CONTEXTLESS_CONNECT | |
QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT | |
Q_CLASSINFO (Name, Value) | |
Q_EMIT Q_EMIT | |
Q_ENUM (...) | |
Q_ENUMS (...) | |
Q_ENUM_NS (...) | |
Q_FLAG (...) | |
Q_FLAGS (...) | |
Q_FLAG_NS (...) | |
Q_GADGET Q_GADGET | |
Q_GADGET_EXPORT (EXPORT_MACRO) | |
Q_INTERFACES (...) | |
Q_INVOKABLE Q_INVOKABLE | |
Q_MOC_INCLUDE Q_MOC_INCLUDE | |
Q_NAMESPACE Q_NAMESPACE | |
Q_NAMESPACE_EXPORT (EXPORT_MACRO) | |
Q_OBJECT Q_OBJECT | |
Q_PROPERTY (...) | |
Q_REVISION Q_REVISION | |
Q_SET_OBJECT_NAME (Object) | |
Q_SIGNAL Q_SIGNAL | |
Q_SIGNALS Q_SIGNALS | |
Q_SLOT Q_SLOT | |
Q_SLOTS Q_SLOTS | |
T | qobject_cast (QObject *object) |
T | qobject_cast (const QObject *object) |
bool | blockSignals (bool block) |
virtual bool | event (QEvent *e) |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
bool | moveToThread (QThread *targetThread) |
bool | setProperty (const char *name, QVariant &&value) |
bool | setProperty (const char *name, const QVariant &value) |
int | startTimer (int interval, Qt::TimerType timerType) |
int | startTimer (std::chrono::nanoseconds interval, Qt::TimerType timerType) |
void | deleteLater () |
void | destroyed (QObject *obj) |
void | installEventFilter (QObject *filterObj) |
void | killTimer (Qt::TimerId id) |
void | killTimer (int id) |
void | objectNameChanged (const QString &objectName) |
void | removeEventFilter (QObject *obj) |
void | setObjectName (QAnyStringView name) |
void | setObjectName (const QString &name) |
void | setParent (QObject *parent) |
QList< QByteArray > | dynamicPropertyNames () const const |
QList< T > | findChildren (QAnyStringView name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const |
QObject * | parent () const const |
QString | objectName () const const |
QThread * | thread () const const |
QVariant | property (const char *name) const const |
T | findChild (QAnyStringView name, Qt::FindChildOptions options) const const |
T | findChild (Qt::FindChildOptions options) const const |
bool | disconnect (const QObject *receiver, const char *method) const const |
bool | disconnect (const char *signal, const QObject *receiver, const char *method) const const |
bool | inherits (const char *className) const const |
bool | isQuickItemType () const const |
bool | isWidgetType () const const |
bool | isWindowType () const const |
bool | signalsBlocked () const const |
virtual const QMetaObject * | metaObject () const const |
const QObjectList & | children () const const |
void | dumpObjectInfo () const const |
void | dumpObjectTree () const const |
Protected Member Functions | |
virtual swift::misc::CSequence< QString > | acceptedIids () const =0 |
Returns the list of valid IIDs for the implementation. | |
virtual const QString & | pluginDirectory () const |
Where to look for plugins, absolute path. Default implementation returns plugins in the application dir. | |
virtual bool | isValid (const QJsonObject &metadata) const |
Defines whether the given plugin is valid or not, based on its metadata. The default implementation checks if all values common for all plugins (i.e. MetaData and identifier) are present and valid. It also checks if each plugin meets one of the specified in acceptedIids() IIDs. Override custom plugin validation in the subclass if needed. | |
QString | pluginIdentifier (const QJsonObject &metadata) const |
Gets the plugin identifier from the metadata. | |
QString | getIdByPlugin (const QObject *instance) const |
Gets plugin identifier by its instance. | |
const swift::misc::CSequence< QJsonObject > & | getPlugins () const |
Gets direct access to all plugins' metadata. | |
![]() | |
virtual void | childEvent (QChildEvent *event) |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | customEvent (QEvent *event) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
virtual void | timerEvent (QTimerEvent *event) |
QObject * | sender () const const |
bool | isSignalConnected (const QMetaMethod &signal) const const |
int | receivers (const char *signal) const const |
int | senderSignalIndex () const const |
Additional Inherited Members | |
![]() | |
enum | TimerId |
![]() | |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, Functor functor) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type) |
QString | tr (const char *sourceText, const char *disambiguation, int n) |
bool | disconnect (const QMetaObject::Connection &connection) |
bool | disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method) |
bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method) |
![]() | |
typedef | QObjectList |
Invalid | |
![]() | |
objectName | |
Base class for all contexts that provide plugin support.
It is responsible for locating, validating and loading plugins.
Definition at line 23 of file pluginmanager.h.