热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

GuiLite2.8发布:解释核心,简化移植,拉手Qt

友好的开源项目,不仅仅是上传代码,更是开源设计思路,开箱即用,让开发者无痛快速的获得新思路,新方法和新工具。为了让GuiLite对所有开发者都足够友善,我们又作了一些更新。解释核心:大家反应最为强烈的代

友好的开源项目,不仅仅是上传代码,更是开源设计思路,开箱即用,让开发者无痛/快速的获得新思路,新方法和新工具。为了让 GuiLite 对所有开发者都足够友善,我们又作了一些更新。

解释核心:大家反应最为强烈的代码注释问题,得到了比较大的改善,增加了如下文档更新:

  1. 完成 display.cpp 的函数注释;该文件,负责对显示设备的适配和GUI的移植;
  2. 完成 surface.cpp 的函数注释;该文件,负责底层渲染及图层管理;
  3. 完成 wnd.cpp 的函数注释;该文件,负责基本窗口的管理和基本功能的实现;

相信这3个文件的代码注释,能帮助大家快速领会 GuiLite 核心运作机制。

简化移植:为了再次提高移植效率,我们作了以下调整:

  1. 所有 HelloXXX 实例的 GuiLite 头文件由 24 个,降低到 1 个 GuiLite.h(由 1h-1cpp.sh 脚本生成)
  2. HelloParticle、HelloWidgets、HelloGuiLite 支持 GuiLite 源码级的调试(删除了 GuiLite 库,由GuiLite-xxx.cpp 源码代替 - 该文件由 1h-1cpp.sh 脚本生成)
  3. 解决了个别 Ubuntu 虚拟机环境下,UI 无法显示的问题

虽然,GuiLite 可移植性的口碑一直很好;但降低文件/代码数量的事情,我们一直乐此不疲。

牵手 Qt:即使在 GuiLite 开发群,依然有很多 Qt 的粉丝,考虑到大家对 Qt IDE 的钟爱,我们作了以下工作:

  1. 为 HelloGuiLite、HelloWidghets 增加了 Qt 工程(BuildQt),大家以后可以在 Qt creator 的开发环境中对 GuiLite 进行源码级开发和调试
  2. HelloGuiLite、HelloWidghets 可以编译为纯正的 Qt App,一些同学已经实现了 GuiLite 与 Qt 原生接口的互相调用,制作了很多惊人的效果
  3. 虽然 HelloGuiLite、HelloWidghets 是普通 Qt App,但资源占用率,以及运行效率有着很大的提高

感谢开发群中 Qt 大神的代码贡献,希望这种新方式,对大家改善现有 Qt 项目有所帮助,相信混合编程,能给大家带来更多的选择。

最后,也预告一下,GuiLite 即将带来新的实例,该实例支持:Windows,Linux,Qt 及单片机;具体效果如下。有兴趣的同学,请保持关注,谢谢

GuiLite 2.8 发布:解释核心,简化移植,拉手 Qt


以上所述就是小编给大家介绍的《GuiLite 2.8 发布:解释核心,简化移植,拉手 Qt》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 我们 的支持!


推荐阅读
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • Java和JavaScript是什么关系?java跟javaScript都是编程语言,只是java跟javaScript没有什么太大关系,一个是脚本语言(前端语言),一个是面向对象 ... [详细]
  • 如何实现JDK版本的切换功能,解决开发环境冲突问题
    本文介绍了在开发过程中遇到JDK版本冲突的情况,以及如何通过修改环境变量实现JDK版本的切换功能,解决开发环境冲突的问题。通过合理的切换环境,可以更好地进行项目开发。同时,提醒读者注意不仅限于1.7和1.8版本的转换,还要适应不同项目和个人开发习惯的需求。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • github上_idea上传本地项目到github上(图解)
    本文由编程笔记#小编为大家整理,主要介绍了idea上传本地项目到github上(图解)相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • 本文介绍了在多平台下进行条件编译的必要性,以及具体的实现方法。通过示例代码展示了如何使用条件编译来实现不同平台的功能。最后总结了只要接口相同,不同平台下的编译运行结果也会相同。 ... [详细]
  • C++字符字符串处理及字符集编码方案
    本文介绍了C++中字符字符串处理的问题,并详细解释了字符集编码方案,包括UNICODE、Windows apps采用的UTF-16编码、ASCII、SBCS和DBCS编码方案。同时说明了ANSI C标准和Windows中的字符/字符串数据类型实现。文章还提到了在编译时需要定义UNICODE宏以支持unicode编码,否则将使用windows code page编译。最后,给出了相关的头文件和数据类型定义。 ... [详细]
  • 如何搭建Java开发环境并开发WinCE项目
    本文介绍了如何搭建Java开发环境并开发WinCE项目,包括搭建开发环境的步骤和获取SDK的几种方式。同时还解答了一些关于WinCE开发的常见问题。通过阅读本文,您将了解如何使用Java进行嵌入式开发,并能够顺利开发WinCE应用程序。 ... [详细]
  • 本文介绍了在Mac上安装Xamarin并使用Windows上的VS开发iOS app的方法,包括所需的安装环境和软件,以及使用Xamarin.iOS进行开发的步骤。通过这种方法,即使没有Mac或者安装苹果系统,程序员们也能轻松开发iOS app。 ... [详细]
  • 本文介绍了响应式页面的概念和实现方式,包括针对不同终端制作特定页面和制作一个页面适应不同终端的显示。分析了两种实现方式的优缺点,提出了选择方案的建议。同时,对于响应式页面的需求和背景进行了讨论,解释了为什么需要响应式页面。 ... [详细]
  • 2016 linux发行版排行_灵越7590 安装 linux (manjarognome)
    RT之前做了一次灵越7590黑苹果炒作业的文章,希望能够分享给更多不想折腾的人。kawauso:教你如何给灵越7590黑苹果抄作业​zhuanlan.z ... [详细]
author-avatar
太空豆888_189
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有