BaseFileWizardFactory 类

Core::BaseFileWizardFactory

BaseFileWizardFactory 类实现了用于创建文件的通用向导。 更多...

头文件 #include <coreplugin/basefilewizardfactory.h>
继承自 Core::IWizardFactory

静态公共成员

Utils::FilePathbuildFileName(const Utils::FilePath &path, const QString &baseName, const QString &extension)

受保护函数

virtual Core::BaseFileWizard *create(QWidget *parent, const Core::WizardDialogParameters &parameters) const = 0
virtual Core::GeneratedFilesgenerateFiles(const QWizard *w, QString *errorMessage) const = 0
virtual boolpostGenerateFiles(const QWizard *w, const Core::GeneratedFiles &l, QString *errorMessage) const
virtual boolwriteFiles(const Core::GeneratedFiles &files, QString *errorMessage) const

静态受保护成员

boolpostGenerateOpenEditors(const Core::GeneratedFiles &l, QString *errorMessage = nullptr)
QStringpreferredSuffix(const QString &mimeType)
Core::BaseFileWizardFactory::OverwriteResultpromptOverwrite(Core::GeneratedFiles *files, QString *errorMessage)

详细描述

以下抽象函数必须实现

可以通过覆盖虚拟函数 postGenerateFiles 进一步自定义行为,该函数在生成文件后调用。

注意: 建议不要使用此类,而是创建基于 JSON 的向导,具体做法请参照 添加新自定义向导 相关说明。

另请参阅:Core::GeneratedFileCore::WizardDialogParametersCore::BaseFileWizard

成员函数文档

[静态] Utils::FilePath BaseFileWizardFactory::buildFileName(const Utils::FilePath &path, const QString &baseName, const QString &extension)

构建一个包含 path、(除非 baseName 已经包含)添加 extension 的文件名。

[纯虚受保护] Core::BaseFileWizard *BaseFileWizardFactory::create(QWidget *parent, const Core::WizardDialogParameters &parameters) const

parent上使用parameters创建向导。

[纯虚受保护] Core::GeneratedFiles BaseFileWizardFactory::generateFiles(const QWizard *w, QString *errorMessage) const

重写以从向导w查询参数并生成文件。

可能错误保留在errorMessage中。

注意:这不会生成物理文件,而只是Core::GeneratedFile的列表。

[虚受保护] bool BaseFileWizardFactory::postGenerateFiles(const QWizard *w, const Core::GeneratedFiles &l, QString *errorMessage) const

重写以执行由向导wl指定的文件实际上创建后要执行的操作。

默认实现打开具有GeneratedFile::OpenEditorAttribute设置的编辑器。

如果发生错误,返回errorMessage

[静态受保护] bool BaseFileWizardFactory::postGenerateOpenEditors(const Core::GeneratedFiles &l, QString *errorMessage = nullptr)

如果设置GeneratedFile::OpenEditorAttribute属性,则打开文件l的编辑器。

如果无法打开编辑器,返回false并将errorMessage设置为显示给用户的消息。

[静态受保护] QString BaseFileWizardFactory::preferredSuffix(const QString &mimeType)

返回mimeType的首选后缀。

[静态受保护] Core::BaseFileWizardFactory::OverwriteResult BaseFileWizardFactory::promptOverwrite(Core::GeneratedFiles *files, QString *errorMessage)

对一组files执行覆盖检查。检查文件是否存在并且是否可以覆盖,然后向用户显示摘要。

如果无法覆盖文件,返回errorMessage

[虚受保护] bool BaseFileWizardFactory::writeFiles(const Core::GeneratedFiles &files, QString *errorMessage) const

物理写入files

如果文件无法写入,返回false并将errorMessage设置为显示给用户的消息。

重新实现(调用基类实现)以创建设置了GeneratedFile::CustomGeneratorAttribute设置的文件。

©2024 本文档中包含的Qt公司文档贡献归各自所有者所有版权。提供的文档受自由软件基金会发布的GNU自由文档许可1.3版条款许可。Qt及其相应标志是芬兰及/或其他国家全球的商标。所有其他商标均归各自所有者所有。