QtCreator源码分析(一)——QtCreator源码简介-创新互联
QtCreator源码分析(一)——QtCreator源码简介
一、QtCreator简介
QtCreator是设计精巧的插件式系统,QtCreator的核心是一个插件管理器,其所有功能都是使用插件完成。在启动时,QtCreator会首先加载一个名为coreplugin的插件,coreplugin插件提供了Qt Creator最基本的功能和扩展点,其余的插件都是直接或间接依赖于coreplugin插件提供的机制,一步步扩充QtCreator的功能,最终将其变成一个功能完整的IDE。
针对QtCreator的插件机制设计,QtCreator源码分析会将关注重点放在插件管理器的实现、coreplugin的实现上面。QtCreator完全基于qmake的复杂开发模式,需要学会如何使用qmake管理一个相当复杂的项目(QtCreator近5000个文件),如何开发自定义插件管理器,如何使用插件扩展定制系统等。
二、QtCreator源码简介
1、QtCreator源码目录简介
QtCreator-2.8.1包含5000多个文件,代码行数超过了110万行。
源码目录如下:
![]
bin: 生成Linux平台shell脚本。
dist: 安装文件配置信息和版本更新记录。
doc: 生成doxygen文档的配置文件。
lib:Qt组件相关的QML文件
qbs:QBS 配置文件。QBS,即 Qt Build Suite,是一种跨平台的编译工具,目的是将高层的项目描述(使用类似QML的语言)转换成底层的编译描述(供 make 等工具使用的信息)。它可以简化多平台的编译过程。QBS与qmake类似,区别在于前者适用于任意项目,而后者一般仅供Qt项目使用。在阅读代码时将关注 qmake,不会深入研究QBS的使用。
scripts: QtCreator使用的perl以及python等脚本。
share: 源代码中所需要的一些非代码共享文件,例如代码模板等。
src: QtCreator源代码文件。
tests: QtCreator测试代码。
HACKING: QtCreator编码规范。
LICENSE.LGPL: LGPL协议。
qtcreator.pri: QtCreator项目需要使用的通用配置,一般会被include到大部分 pro文件。
qtcreator.pro: QtCreator的qmake项目文件。
qtcreator.qbs: Qt Creator 的 QBS 项目文件。
README: 有关如何编译QtCreator等相关事宜的一些说明。
.gitignore: git忽略文件配置。
.gitmodules:git 子模块配置
2、QtCreator源码编译
Linux环境下直接使用QtCreator-2.8.1+Qt4.8.6编译
运行结果如下:
三、QtCreator简介
QtCreator主要由主窗口区、菜单栏、模式选择器、常用按钮、定位器、输出面板等组成。
1、QtCreator菜单栏
QtCreator菜单栏包含文件、编辑、构建、调试、分析、工具、窗体、帮助八个菜单选项。
文件菜单包含新建、打开、关闭项目和文件,打印文件和退出等基本功能菜单。
编辑菜单包含撤销、剪切、复制、查找等常用功能,高级菜单包含标示空白符、折叠代码、改变字体大小等功能。
构建菜单包含构件和运行项目等相关菜单。
调试菜单包含调试程序相关的功能菜单。
分析菜单包含常用分析工具的菜单。
工具菜单包含快速定位菜单、版本控制工具菜单、界面编辑器菜单等。
窗体菜单包含设置窗口布局的一些菜单,如全局显示、隐藏边栏。
帮助菜单包含Qt帮助、QtCreator版本信息和插件管理等菜单。
2、QtCreator模式选择器
QtCreator模式选择器包括欢迎模式、编辑模式、设计器模式、调试模式、项目模式、分析模式、帮助模式。
欢迎模式主要提供一些功能的快捷入口,如打开帮助教程、打开示例程序、打开项目、新建项目、快速打开以前的项目和会话等功能
编辑模式主要提供查看和编辑程序代码,管理项目文件等功能。QtCreator编辑器具有关键字特殊颜色显示、代码自动补全、声明定义间快捷切换、函数原型提示、F1键快速打开相关帮助、全项目中进行查找等功能。
设计器模式整合了Qt Designer的功能,设计图形界面,进行部件属性设置、信号和槽设置、布局设置等。
调试模式,QtCreator默认使用GDB进行调试,支持设置断点、单步调试和远程调试等功能,包含局部变量和监视器、断点、线程、快照查看窗口等。
项目模式,包含具体项目的构建设置、运行设置、编辑器设置、依赖关系等页面。构建设置中可以对项目的版本、使用的Qt版本、编译步骤进行设置。编辑器设置中可以设置文件的默认编码。
帮助模式,整合了Qt助手,包含目录、查找、索引、书签等导航模式。
3、QtCreator常用按钮
QtCreator常用按钮包括目标选择器、运行按钮、调试按钮、构建按钮。目标选择器用来选择要构建哪个平台的项目;运行按钮实现项目的构建和运行;调试按钮进入调试模式,进行程序调试;构建按钮可以构建所有打开的项目。
4、QtCreator定位器
QtCreator中,定位器用来快速定位项目、文件、类、方法、帮助文档、文件系统,可以使用过滤器更加准确定位要查找的结果。
5、QtCreator输出面板
QtCreator输出面板包含了构建问题、搜索结果、应用程序输出、编译输出、QML/JS命令窗口、一般信息。
构建问题窗口显示程序编译时的错误和警告信息;搜索结果窗口显示执行搜索后的结果信息;应用程序输出窗口显示在程序运行过程中输出的所有信息;编译输出窗口显示在程序编译过程中输出的相关信息;QML命令窗口显示QML命令记录;版本控制系统窗口显示版本控制系统的记录。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
当前文章:QtCreator源码分析(一)——QtCreator源码简介-创新互联
本文路径:http://pwwzsj.com/article/gijch.html