微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Rust 原生 GUI 工具包 Slint 1.1 发布,新增免版税许可证

Slint 1.1 的发布,这是 1.0 里程碑后的第一个重要功能更新。

除了新功能,Slint 1.1 带来了新的免版税开源许可证:之前 Slint 遵循 GPLv3 和专有商业许可,现在有了新的免版税许可选项。

此外,Slint 的示例和教程现在已获得 MIT 许可,同时该项目还采用了简化的贡献值协议( CLA )。

功能亮点

翻译

引入了基础设施来本地化您的应用程序。在 Slint 代码中使用新的 @tr() 宏来标记要翻译的字符串。然后使用 gettext 框架提取并处理这些字符串。

Text { text: @tr("Hello,World"); }

增强的流畅风格和新的小部件

Slint 1.1 调整了 fluent 小部件样式,以符合 Microsoft 的现代 Fluent2 设计原则。集合中添加了两个新的小部件, Switch 和 ProgressIndicator 。

新的小部件库现在展示了新调整的 Fluent2 风格,以及两个新的小部件:

AccessKit 的辅助功能

在 Slint 的早期版本中,要使用屏幕阅读器等辅助技术,需要安装 Qt。

现在有了新的 AccessKit 集成,所有桌面平台上均可启用辅助功能支持。 AccessKit 是一个丰富的跨平台库,提供了对操作系统可访问性 API 的抽象。

 

OpenGL集成

此版本中引入了 API,允许将 3D OpenGL 渲染直接集成到 Slint 场景中。

Slint 语言中的枚举声明

在 .slint 代码中声明枚举, export 将它们声明为 Rust 或 C++,并享受重构时增加的类型安全性。

enum Color { red,green,blue }

较小但值得注意的功能错误修复

启用新的 renderer-winit-skia-vulkan 功能以使用 Vulkan 渲染到屏幕。

使用 absolute-position 属性查询 Slint 中任何元素的窗口绝对坐标。

使用 spawn_local()在 Slint 的事件循环中运行 Rust futures 。

使用新的 mix 、 with-alpha 和 transparentize 颜色函数微调颜色。

修复了对使用文本渲染 SVG 的支持

有关所有更改的完整列表,请查看更改日志。

更宽松的许可证

除了 GPLv3 和专有商业许可,此版本添加了新的免版税许可作为第三个选项,该许可证可免费用于构建桌面或 Web 应用程序,并消除了 copyleft 许可证的限制。

所有示例、教程中的示例代码等现在都可以在宽松的 MIT 许可证下使用。这可以在应用程序中自由复制、修改和使用代码,而不受任何 copyleft 条款的限制。

简化了 CLA 协议,所有贡献现在均在 MIT 无署名许可证下实现,没有版权限制。

 

发布公告:https://slint.dev/blog/slint-1.1-released

原文地址:OSCHINA

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐