PluginSpec类

class ExtensionSystem::PluginSpec

PluginSpec类包含插件内嵌元数据及其当前状态的信息。更多...

头文件 #include <extensionsystem/pluginspec.h>

公有类型

枚举State {无效,读取,解析,加载,初始化,…,删除}

公有函数

virtual voidaddArgument(const QString &argument)
virtual ExtensionSystem::PluginSpec::PluginArgumentDescriptionsargumentDescriptions() const
virtual QStringListarguments() const
virtual QStringcategory() const
virtual QStringcompatVersion() const
virtual QStringcopyright() const
virtual QVector<ExtensionSystem::PluginDependency>dependencies() const
virtual QHash<ExtensionSystem::PluginDependency, ExtensionSystem::PluginSpec *>dependencySpecs() const
virtual QStringdescription() const
virtual QStringerrorString() const
virtual Utils::FilePathfilePath() const
virtual boolhasError() const
virtual boolisAvailableForHostPlatform() const
virtual boolisDeprecated() const
virtual boolisEffectivelyEnabled() const
virtual boolisEnabledByDefault() const
virtual boolisEnabledBySettings() const
virtual boolisEnabledIndirectly() const
virtual boolisExperimental() const
virtual boolisForceDisabled() const
virtual boolisForceEnabled() const
virtual boolisRequired() const
virtual boolisSoftLoadable() const
virtual QStringlicense() const
virtual Utils::FilePathlocation() const
virtual QStringlongDescription() const
virtual QJsonObjectmetaData() const
virtual QStringname() const
(自3.0版起) virtual QRegularExpressionplatformSpecification() const
virtual boolprovides(ExtensionSystem::PluginSpec *spec, const ExtensionSystem::PluginDependency &dependency) const
virtual boolrequiresAny(const QSet<ExtensionSystem::PluginSpec *> &plugins) const
virtual voidsetArguments(const QStringList &arguments)
virtual voidsetEnabledBySettings(bool value)
virtual ExtensionSystem::PluginSpec::Statestate() const
virtual QStringurl() const
virtual QStringvendor() const
virtual QStringversion() const

详细描述

在插件加载过程中,插件规范也包含更多信息(见PluginSpec::State)。如果出现错误,插件规范是查找错误详情的地方。

成员类型文档

enum PluginSpec::State

State 枚举表示插件加载过程中所处的状态。

状态在出错情况下提供了错误发生原因的提示。

常量描述
ExtensionSystem::PluginSpec::Invalid0起始点:即使插件元数据未读取。
ExtensionSystem::PluginSpec::Read1插件元数据已成功读取,其信息可通过PluginSpec访问。
ExtensionSystem::PluginSpec::Resolved2描述文件中给出的依赖项已成功找到,可通过dependencySpecs()函数访问。
ExtensionSystem::PluginSpec::Loaded3插件库已加载,插件实例已创建(通过plugin()访问)。
ExtensionSystem::PluginSpec::Initialized4已调用插件实例的IPlugin::initialize()函数,并返回成功值。
ExtensionSystem::PluginSpec::Running5插件的依赖项已成功初始化,已调用extensionsInitialized。加载过程完成。
ExtensionSystem::PluginSpec::Stopped6插件已关闭,即已调用插件IPlugin::aboutToShutdown()函数。
ExtensionSystem::PluginSpec::Deleted7插件实例已被删除。

成员函数文档

[虚拟] void PluginSpec::addArgument(const QString &argument)

argument添加到特定于插件的命令行参数中。

[虚拟] ExtensionSystem::PluginSpec::PluginArgumentDescriptions PluginSpec::argumentDescriptions() const

返回插件处理的命令行参数描述列表。

[虚拟] QStringList PluginSpec::arguments() const

返回特定于插件的命令行参数。在启动时设置。

另请参阅setArguments().

[虚拟] QString PluginSpec::category() const

返回插件所属的分类。分类用于在UI中将插件分组。如果插件不属于任何分类,则返回空字符串。

[虚拟] QString PluginSpec::compatVersion() const

返回插件的兼容性版本。在达到PluginSpec::Read状态后有效。

返回插件版权信息。在达到PluginSpec::Read状态后有效。

[虚拟] QVector<ExtensionSystem::PluginDependency> PluginSpec::dependencies() const

插件依赖列表。在达到PluginSpec::Read状态后有效。

[虚拟] QHash<ExtensionSystem::PluginDependency, ExtensionSystem::PluginSpec *> PluginSpec::dependencySpecs() const

返回依赖列表,已解析为现有的插件规格。在达到PluginSpec::Resolved状态时有效。

另请参阅 PluginSpec::dependencies

[虚拟] QString PluginSpec::description() const

返回插件描述。在达到PluginSpec::Read状态后有效。

[虚拟] QString PluginSpec::errorString() const

在出现错误时返回详细的多行错误描述。

[虚拟] Utils::FilePath PluginSpec::filePath() const

返回插件的绝对路径。

[虚拟] bool PluginSpec::hasError() const

返回在读取或启动插件过程中是否发生错误。

[虚拟] bool PluginSpec::isAvailableForHostPlatform() const

返回插件是否在宿主平台上工作。

[虚拟] bool PluginSpec::isDeprecated() const

返回插件是否设置了过时标志。

[虚拟] bool PluginSpec::isEffectivelyEnabled() const

返回插件在启动时是否被加载。

另请参阅 isEnabledBySettings

[虚拟] bool PluginSpec::isEnabledByDefault() const

返回插件是否默认启用。插件可能因为为实验性或已过时,或者因为安装设置将其定义为默认禁用而被禁用。

[虚拟] bool PluginSpec::isEnabledBySettings() const

返回插件是否应在启动时加载,考虑默认启用状态和用户设置。

注意:即使插件作为另一个已启用插件的必需品被加载,此函数也可能返回 false

另请参阅:isEffectivelyEnabled

[虚拟] bool PluginSpec::isEnabledIndirectly() const

如果加载不是因为用户取消选择此插件或其依赖项,则返回 true

[虚拟] bool PluginSpec::isExperimental() const

返回插件是否设置了实验性标志。

[虚拟] bool PluginSpec::isForceDisabled() const

返回插件是否通过命令行上的 -noload 选项被禁用。

[虚拟] bool PluginSpec::isForceEnabled() const

返回插件是否通过命令行上的 -load 选项被启用。

[虚拟] bool PluginSpec::isRequired() const

返回插件是否为必需。

[虚拟] bool PluginSpec::isSoftLoadable() const

返回插件是否允许在无需重启的情况下在运行时加载。

[虚拟] QString PluginSpec::license() const

返回插件许可。此操作在 PluginSpec::Read 状态有效后进行。

[虚拟] Utils::FilePath PluginSpec::location() const

返回包含插件的目录的绝对路径。

[虚拟] QString PluginSpec::longDescription() const

返回插件的长描述。此操作在 PluginSpec::Read 状态有效后进行。

[虚拟] QJsonObject PluginSpec::metaData() const

返回插件元数据。

[虚拟] QString PluginSpec::name() const

返回插件名称。此操作在 PluginSpec::Read 状态有效后进行。

[虚拟,自3.0版本以来] QRegularExpression PluginSpec::platformSpecification() const

返回匹配此插件工作的平台的 QRegularExpression。空的模式表示所有平台。

此函数自 Qt 3.0 版本开始引入。

[虚函数] bool PluginSpec::provides(ExtensionSystem::PluginSpec *spec, const ExtensionSystem::PluginDependency &dependency) const

返回是否可以使用插件 spec 来满足本插件的 dependency

另请参阅 PluginSpec::dependencies

[虚函数] bool PluginSpec::requiresAny(const QSet<ExtensionSystem::PluginSpec *> &plugins) const

返回插件是否需要 plugins 中指定的任何插件。

[虚函数] void PluginSpec::setArguments(const QStringList &arguments)

将特定于插件的命令行参数设置为 arguments

另请参阅参数

[虚函数] void PluginSpec::setEnabledBySettings(bool value)

将插件启动时是否加载设置为 value

另请参阅 isEnabledBySettings

[虚函数] ExtensionSystem::PluginSpec::State PluginSpec::state() const

返回插件当前的状态。请参阅 PluginSpec::State 枚举的描述以获取详细信息。

[虚函数] QString PluginSpec::url() const

返回可以找到有关插件更多信息的位置的插件 URL。此 URL 在达到 PluginSpec::Read 状态后有效。

[虚函数] QString PluginSpec::vendor() const

返回插件厂商。此值在达到 PluginSpec::Read 状态后有效。

[虚函数] QString PluginSpec::version() const

返回插件的版本号。此值在达到 PluginSpec::Read 状态后有效。

©2024 本文档中包含的 Qt 公司有限公司的文档贡献是其各自拥有者的版权。提供的文档受自由软件基金会发布的 GNU 自由文档许可证版本 1.3 条款的约束。Qt 及相关标识是芬兰及/或世界上其他地区的 Qt 公司的商标。所有其他商标均为其各自拥有者的财产。