C
Qt for MCUs 2.4 新功能
Qt Quick Ultralite 在次要版本之间保持源代码兼容性。然而,一些更改可能需要您适应应用程序代码。以下部分突出了此类更改
重要更改
- QmlProject 是配置项目的默认方式。
- 已过时的 CMake API。如果您的项目使用了这些 API,请考虑将其迁移到 QmlProject。有关更多信息,请参阅迁移指南。
- 移除了对 NXP RT1050/60/64 平台的触摸驱动程序定制。这些平台现在使用 NXP SDK 提供的驱动程序。
- 在 Renesas EKRA6M3G 平台上,应用程序的图像和字体资源默认存储在内部闪存中。添加了
QulFontResourceDataExtFlash
和QulResourceDataExtFlash
链接器部分,以启用外部闪存的使用。有关更多信息,请参阅 MCU.Config.glyphsStorageSection、 MCU.Config.fontFilesStorageSection 和 ImageFiles.MCU.resourceStorageSection。
新增功能
- 添加了 AnimatedSpriteDirectory QML 类型,以便使用一系列图像进行动画。
- 添加了 Loader::sourceComponent 属性来定义 Loader 应实例化的组件。
- 添加了对 TVII-C-2D-6M BGA 327 板修订版本的支持。
- 添加了对 MCU.Config.platformRenderBatchHeight QmlProject 配置变量的支持,以设置单缓冲图形的批处理高度。
- 启用 Qul::PlatformInterface::Allocator 在分配失败时引发错误。这在使用 Qul::PlatformInterface::Vector API 时非常有用。
- 升级
- Renesas FSP v4.2.0
- FreeRTOS 内核 V10.4.6 (FSP 4.2.0)
- Traveo II SDK v2e.1.0 用于 TVII-C-2D-6M-327-SET 板
- 删除了
QUL_PLATFORM_DEVICELINK_CHANNEL
CMake 选项。如果需要配置 UART,请在平台移植中进行。 - 在 Infineon Traveo II 平台配置中添加了 alpha 和路径缓冲区大小。这应使应用程序能够调整用于绘制大型和复杂形状的大小。
- 添加了对 Infineon/Cypress Traveo II 4M 作为参考平台的支持。
- QmlProject 更新
- 警告:使用具有
directory
属性的 QmlFiles 节点来包含给定路径中的所有.qml
文件可能会有严重后果。 - 改进了 QmlProject 工具的错误报告。
- 启用
qmlprojectexporter
以使用 --generate-entrypoint 命令行选项生成入口点信息。 - 选择所有位于给定 FontFiles.directory 的受支持的字体文件。
- 警告:使用具有
platformexporter
更新- 导出 Renesas RH850 和 Infineon Traveo II 扩展库的源代码和头文件。
- 生成 GHS ARM Multi IDE 项目文件
- 增加了 Infineon Traveo II、Renesas RH850-D1M1A 和 NXP RT1170 的快速入门指南。
qulrcc
更新- 预处理图像序列,以减小使用一个或多个图像的精灵的图像数据大小。
- 通过重用对纹理数据的现有指针来优化 RAM 内存的使用。
- 更新 perspective_transforms,以支持不支持触摸的平台。
- 更新 thermo 演示,以使用 Loader 类型按需实例化 QML 组件。此更改使演示可使用的 RAM 至少减少 10%。
修复问题
- 仅当您将图像比例缩小超过 50% 时才应用抗锯齿。这修复了在使用支持转换的平台进行基于 QPainter 的混合时出现的编译错误。
- 修复了 NXP RT1170 上的不一致的图形效果。
- 修复
qmlprojectexporter
以包括源文件信息,使 Qt Creator 能够在项目视图中列出它们。 - 修复了 RH850 和 TVII 平台的套餐创建逻辑,以配置其第三方依赖项(如引导实用程序、RGL 库等)的正确安装路径。
- 修复了
visible
属性的事件传播逻辑。这应确保将子项的属性更改传播到其父项。 - 将编译定义移动到平台头文件,以便使用除 CMake 之外的工具容易构建。在早期版本的 Qt for MCU 中,这些定义是使用
QUL_PLATFORM_*
和QUL_*
CMake API 添加的。 - 修复 FreeRTOS 平台端口对
suspend
函数逻辑。 - 删除了 STM32 平台端口的硬件配置代码。这些平台端口现在使用 STMCubeMX 生成的配置代码。
- 删除了 NXP 平台硬件配置代码。这些平台端口现在使用 MCUXpresso 生成的配置代码。
- 修复
platformexporter
以确保包含路径中只有已导出的目录。 - 针对示例和演示的修复
- 调整 perspective_transforms 示例,以适应较小的屏幕分辨率。
- 通过在 swipe_game 演示中禁用旋转图像的拆分图像优化来避免渲染伪影。
- 对于 STM32F4 和 STM32F7 平台禁用 thermo_small。
- 将 NXP RT1170 上 Shapes 示例的方向更改为垂直。
- 更新 sprite_animations 示例,以在无需触摸输入的平台上默认运行动画。
- 修复了 BorderImage 的回归,该问题是在设置了
DontUpdateRenderNode
标志时,rasterBuffer
为空。 - 修复了当
QUL_ENABLE_HARDWARE_PERFORMANCE_LOGGING
为on
时记录硬件性能的回归。
新 API
应用开发 API
新的 QML 类型
新的 QML 属性
QML 类型 Loader
sourceComponent : Component |
先前版本中的更改
v1.1.0 的更改 | |
v1.2.0 的更改 | |
v1.3.0 的更改 | |
v1.4.0 的更改 | |
v1.5.0 的更改 | |
v1.6.0 的更改 | |
v1.7.0 的更改 | |
v1.8.0 的更改 | |
v1.9.0 的更改 | |
v2.0.0 的更改 | |
v2.1 的更改 | |
v2.2 的更改 | |
v2.3 的更改 | |
v2.4.0 的更改 | |
v2.5 的更改 | |
v2.6.0 的更改 | |
v2.7.0 的更改 |
适用于某些 Qt 许可证。
了解更多。