LCUI 1.0 Beta 3 发布,C 的图形界面开发库

栏目: 软件资讯 · 发布时间: 8年前

内容简介:LCUI 是一个图形界面开发库,主要使用 C 语言编写,可借助 CSS 和 XML 来构建简单的桌面应用程序。 更新日志 问题修复 font: 因字体缓存位置计算错误而导致的 DeleteFont() 段错误 (5465c6b) timer: 定时器线程...

LCUI 是一个图形界面开发库,主要使用 C 语言编写,可借助 CSS 和 XML 来构建简单的桌面应用程序。

更新日志

问题修复

  • font: 因字体缓存位置计算错误而导致的 DeleteFont() 段错误 (5465c6b)

  • timer: 定时器线程在被创建后可能会立刻退出 (0b01f88)

  • util: 在 Unix 系统下编译会报错:'struct dirent' has no member named 'd_reclen' (#141) (0416c42)

新特性

  • platform: 添加 linux 平台的帧缓存(FrameBuffer)驱动 (6015838)

  • platform: 添加 linux 平台的键盘驱动 (ad3348e)

  • platform: 添加 linux 平台的鼠标驱动 (0ff7b70)

其它改动

  • 更改代码风格

  • 添加 .clang-format 配置文件

  • 为部分待改进的代码添加 FIXME 注释

发行说明

本次更新主要添加了对 Linux 的帧缓存(FrameBuffer)的支持,在没有 Xwindow 服务支持的字符终端模式下,LCUI 会改用 Linux 的帧缓存来输出图形内容,并直接从鼠标设备(/dev/input/mice)和标准输入(stdin)中读取用户输入。不过,这些支持并不完善,而作者也没有打算继续完善这块功能,理由很简单:没什么用,懒得浪费时间。如果你有丰富的 Linux 开发经验,可以向此项目提供改进方案,与其他人分享你的技术。

LCUI 的源代码中还有很多待改进的代码,包括:打算改、没时间改、懒得改和不想改的代码,其中有一部分代码已经用 FIXME 注释标记,这些注释中有的会说明为什么改进它,以及怎么改进它,如果你感兴趣,可以留意源代码中的 FIXME 注释内容,或者直接搜索 FIXME 注释,看看有哪些是可以帮上忙的。

LCUI 1.0 Beta 3 发布,C 的图形界面开发库

更新日志中只列出了主要的改动,如需了解更多细节,请自行查看代码提交记录,或许以下命令会对你有所帮助。

# 只查看包含新特性(Feature)的提交信息
$ git log --pretty=format:"%h %ad %s %d" --date=short --grep "^feat"

ad3348ea 2018-04-22 feat(platform): add linux keyboard driver
0ff7b70e 2018-04-22 feat(platform): add linux mouse driver
6015838d 2018-04-22 feat(platform): add linux framebuffer driver
8c1d1056 2018-02-20 feat(widget-event): add "link" event, rename "remove" event to "unlink"
f032f6ff 2018-02-20 feat(timer): add LCUITimer_SetTimeout() and LCUITimer_SetInterval()
30de5b82 2018-02-11 feat(css): add parsing support for "border-left: 0;"
9193c0a5 2018-01-19 feat(textview): add word-break property support
cb7749d3 2018-01-16 feat(widget): add "disabled" attribute processing
7aaac407 2018-01-14 feat(widget): add `http://` and `file:` url support for anchor widget
9532d89a 2018-01-14 feat(widget): allow multiple widgets to have the same id
0616d855 2018-01-13 feat(mainloop): set mainloop to processing only one task  per frame
adc8ba30 2018-01-07 feat(textlayer): add i tag support (#115)
# 只查看包含功能代码改动的提交信息(包括新功能、修复、重构、改进)
$ git log --pretty=format:"%h %ad %s %d" --date=short --grep "^\(feat\|fix\|refactor\|perf\)"

3a888110 2018-05-05 refactor(display): change to right type
b00139bc 2018-05-05 refactor: rename is_inited and is_working to active
090d1c40 2018-05-05 refactor: rename COLOR_TYPE_* to LCUI_COLOR_TYPE_*
de3bb33e 2018-05-05 refactor(graph): rename some functions
b113cf21 2018-04-23 refactor: SVT_* -> LCUI_STYPE_*
cb3c2a89 2018-04-23 refactor(input): LCUIKEY_* -> LCUI_KEY_*
4bf3f91f 2018-04-23 refactor(display): LCDM_* -> LCUI_DMODE, DET_* -> LCUI_DEVENT_*
0b01f88f 2018-04-22 fix(timer): timer thread may quit after it is created
5465c6bc 2018-04-17 fix(font): segmentation fault in DeleteFont()
78eeca61 2018-04-17 refactor(ime): add LCUIIME_ToUpperCase()
2538d79b 2018-04-15 refactor(platform): update ime selection in the linux
ad3348ea 2018-04-22 feat(platform): add linux keyboard driver
0ff7b70e 2018-04-22 feat(platform): add linux mouse driver
6015838d 2018-04-22 feat(platform): add linux framebuffer driver
eb04b2c3 2018-04-07 refactor(cursor): add LCUICursor_Paint(), remove unused code
0416c421 2018-03-27 fix(util): 'struct dirent' has no member named 'd_reclen' (#141)
7d577b0b 2018-03-13 refactor(textlayer): add "LCUI_" prefix for some type names

来自:https://gitee.com/lc-soft/LCUI/releases/v1.0.0-beta.3


【声明】文章转载自:开源中国社区 [http://www.oschina.net]


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。

大演算

大演算

佩德羅.多明戈斯 / 張正苓,胡玉城 / 三采 / 2016-8-1 / 620

揭開大數據、人工智慧、機器學習的祕密, 打造人類文明史上最強大的科技——終極演算法! 有一個終極演算法,可以解開宇宙所有的祕密, 現在大家都在競爭,誰能最先解開它! .機器學習是什麼?大演算又是什麼? .大演算如何運作與發展,機器可以預測什麼? .我們可以信任機器學過的東西嗎? .商業、政治為什麼要擁抱機器學習? .不只商業與政治,醫學與科學界也亟需......一起来看看 《大演算》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

MD5 加密
MD5 加密

MD5 加密工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具