Fluent-Qt

扩展模块

插件

按依赖顺序激活应用内的扩展,并正确停用。

注册与激活

链接 FluentQt::Plugins。把 Plugin 对象注册到 PluginManager,再用插件 metadata() 中的 ID 调用 activate()。管理器会先激活依赖,其中一个失败就回滚本次激活。它不负责加载动态库。

#include <FluentQt/Plugins.h>

// greetingPlugin.metadata().id == "example.greeting"
fluent::plugins::PluginManager manager(host);
if (manager.registerPlugin(&greetingPlugin))
    manager.activate(QStringLiteral("example.greeting"));

归属与线程

PluginManager 只借用插件、宿主和 WidgetPlugin 创建的控件,它们归应用所有。所有调用都要在管理器所在的线程进行,销毁宿主或模型之前先调用 deactivateAll()。

API 参考