qt creator源码全方面分析(2-5)
Creating Wizards in Code
介绍
如果基于模板的自定义向导提供的功能不足以满足您的情况,则可以用代码编写向导。
Qt Creator中的向导是实现Core::IWizardFactory接口的类的实例,该接口具有使用IWizardFactory::registerFactoryCreator注册的创建函数。
实现向导需要:
编写从Core::IWizardFactory派生的工厂类。这是一个非常通用的界面,不会对向导的功能及其UI外观做出任何假设。
提供一组参数,这些参数确定向导在“新建文件”或“项目”对话框的向导列表中的显示方式。
从Core: IWizardFactory派生时,构造函数必须调用基类提供的以下设置函数:
setIdsetWizardKindsetIconsetDescriptionsetDisplayNamesetCategorysetDisplayCategorysetDescriptionImagesetRequiredFeaturessetFlags
实现向导UI
通常,这将是派生自Utils::Wizard的类。Utils::Wizard扩展了QWizard的功能,以在左侧显示进度条。实现向导功能
建议使用Core::GeneratedFile表示需要写入磁盘的文件。它们允许延迟写入实际数据到磁盘,直到向导完成。
相关类
| 类 | 描述 |
|---|---|
| Core::IWizardFactory | Qt Creator向导界面,在ExtensionSystem::PluginManager中注册其类的实现。 |
| Core::GeneratedFile | 文件,包含名称,内容和相关属性。 |
| Utils::FileWizardPage | 介绍性向导页面,询问文件名和路径。 |
| Utils::ProjectIntroPage | 介绍性向导页面,询问项目名和路径。 |
IWizardFactory的设置器和获取器
下面列出的设置器和获取器,确定向导在“新建文件”或“项目”对话框的向导列表中的显示方式。
| 类型 | 参数名 | 描述 |
|---|---|---|
| Core::IWizardFactory::WizardKind | kind | 指示向导类型(项目或文件)的枚举值。 |
| QIcon | icon | 显示的图标。 |
| QString | description | 描述性文本。 |
| QString | displayName | 要在列表中显示的名称。 |
| QString | id | 向导的唯一标识符。它还决定类别中的顺序。 |
| QString | category | 列出向导所属类别的标识符。它还确定类别的顺序。 |
| QString | displayCategory | 类别的描述。 |
具有相同类别集的所有向导,在“新建文件”或“项目”对话框中被组合在一起。
原创造福大家,共享改变世界
献出一片爱心,温暖作者心灵

qt creator源码全方面分析(2-5)的更多相关文章
- qt creator源码全方面分析(3-3)
目录 qtcreatordata.pri 定义stripStaticBase替换函数 设置自定义编译和安装 QMAKE_EXTRA_COMPILERS Adding Compilers 示例1 示例2 ...
- qt creator源码全方面分析(3-5)
目录 qtcreatorlibrary.pri 使用实例 上半部 下半部 结果 qtcreatorlibrary.pri 上一章节,我们介绍了src.pro,这里乘此机会,把src目录下的所有项目文件 ...
- qt creator源码全方面分析(0)
本人主攻C++和Qt. 上两天刚研究完Qt install framework(IFW)应用程序安装框架. google没发现有正儿八经的官方文档的翻译,我就进行了翻译哈!! 系列文章具体见:http ...
- qt creator源码全方面分析(4-0)
Qt系统 Qt Creator源码是在Qt对象和框架基础下写的,因此,阅读Qt Creator源码,你首先对Qt得有一定的了解. Qt Core Qt Core特征: The Meta-Object ...
- qt creator源码全方面分析(4-2)
目录 global头文件 global.h xx.h global头文件 插件的本质就是动态链接库,对于库,需要导出符号,供用户导入使用.在qt creator的源码中,存在固定的导入导出模式. gl ...
- qt creator源码全方面分析(4-5)
目录 Qt中的字符串 QLatinString 详细介绍 源码 小结 QStringLiteral(str) 详细介绍 源码 小结 Qt中的字符串 Qt中处理字符串最常用的肯定是QString,但是在 ...
- qt creator源码全方面分析(4-6)
目录 Qt插件基础 Qt插件基础 我们知道Qt Creator源码是基于插件架构的,那么我们先来介绍下插件基础知识. 相关内容如下: How to Create Qt Plugins [ - Defi ...
- qt creator源码全方面分析(3-2)
目录 qtcreator.pri 判断重复包含 定义版本信息 VERSION 定义IDE名称 启用C++14 CONFIG 自定义函数 Replace Functions Test Functions ...
- qt creator源码全方面分析(2-7)
目录 Completing Code 补全代码片段 编辑代码片段 添加和编辑片段 删除片段 重置片段 补全Nim代码 Completing Code 在编写代码时,Qt Creator建议使用属性,I ...
- qt creator源码全方面分析(2-10-1)
目录 Getting and Building Qt Creator 获取Qt 获取和构建Qt Creator Getting and Building Qt Creator 待办事项:应该对此进行扩 ...
随机推荐
- target 和 currentTarget的区别
target是当前点击的组件,currentTarget是扑捉到事件的组件
- 测试工具Fiddler(三)—— 常见功能介绍
Fiddler的功能面板 1.statistics:请求的性能指标:全世界范围的性能测试: RTP:一个请求的从发送出去到返回的时间: Show chart可以看出图表的示例: 2.inspector ...
- 如何优雅的用策略模式,取代臃肿的 if-else 嵌套,看这篇就够了
经常听同事抱怨,订单来源又加了一种,代码又要加一层if-else判断,光判断订单来源的if-else就好几百行代码,代码我都不想看了,相信很多同行都有过这样的感受! Java的二十几种设计模式背的滚瓜 ...
- ThinkPad全家族机型对比
如图所示
- 浏览器警告Failed to decode downloaded font和OTS parsing error: Failed to convert *** font to ***
昨晚,在做一个自己感兴趣的东西时,发现浏览器报警告,Failed to decode downloaded font以及OTS parsing error: Failed to convert *** ...
- synchronized底层实现
1.锁升级的过程 当多个线程同时竞争一个对象监视器时:当前对象结构中的mark word中是否是当前线程id,如果是则当前线程获得偏向锁. 如果不是,则通过CAS将当前线程id置换到mark word ...
- 手把手写一个基于Spring Boot框架下的参数校验组件(JSR-303)
前言 之前参与的新开放平台研发的过程中,由于不同的接口需要对不同的入参进行校验,这就涉及到通用参数的校验封装,如果不进行封装,那么写出来的校验代码将会风格不统一.校验工具类不一致.维护风险高等其它因素 ...
- 废旧手机利用之装一个Linux系统
开篇: 在废旧手机变废为宝的路上一直没有停下,做过电脑遥控器,家居监控器,给电脑扩展屏幕以及跟着大佬学过智能机器人,但是都是一时兴趣,除了家具监控器目前正在使用之外其他也没有使用了. 最近在学习Lin ...
- Ubuntu学习之路1
最近重装了系统,对自己很久的win7 say goodBye.学习了自制U盘系统盘,重装了win8,然后在win8上倒腾,发现还是不错的.于是又在win8上装回了win7上的VMware,捣鼓了一下U ...
- linux--->阿里云centos6.9环境配置安装lnmp
阿里云centos6.9环境配置安装lnmp mysql安装 本人博客:http://www.cnblogs.com/frankltf/p/8615418.html PHP安装 1.安装依赖关系 yu ...