LCUI 1.0 Beta 3 released, a graphical interface development library for C

  

LCUI is a graphical interface development library, mainly written in C language, with the help of CSS and XML to build simple desktop applications.

Changelog

bug fix

  • font:  DeleteFont() segfault due to miscalculation of font cache location ( 5465c6b )

  • timer:  timer thread may exit immediately after being created ( 0b01f88 )

  • util:  Compile under Unix system will report error: 'struct dirent' has no member named 'd_reclen' ( #141 ) ( 0416c42 )

new features

  • platform:  add frame buffer (FrameBuffer) driver for linux platform ( 6015838 )

  • platform:  add keyboard driver for linux platform ( ad3348e )

  • platform:  add mouse driver for linux platform ( 0ff7b70 )

Other changes

  • change code style

  • Add .clang-format configuration file

  • Add FIXME comments for some code to be improved

Release Notes

This update mainly adds support for the  Linux frame buffer (FrameBuffer) . In  the character terminal mode without  Xwindow service support, LCUI will use the Linux frame buffer to output graphics content, and directly from the mouse device (/dev/ input/mice) and standard input (stdin) to read user input. However, these supports are not perfect, and the author does not intend to continue to improve this function, the reason is very simple: it is useless, too lazy to waste time. If you have extensive Linux development experience, you can contribute improvements to this project and share your skills with others.

There is still a lot of code to be improved in the source code of LCUI, including: code that you plan to change, don't have time to change, don't want to change and don't want to change, some of the code has been marked with FIXME comments, some of these comments will explain why it is improved , and how to improve it. If you are interested, you can pay attention to the FIXME comments in the source code, or search for FIXME comments directly to see what can be helpful.

fixme

Only the main changes are listed in the changelog. For more details, please check the code submission record yourself, maybe the following command will help you.

# View only commits that contain new features
$ 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)
# View only commits containing functional code changes (including new features, fixes, refactorings, improvements)
$ 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

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

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325858032&siteId=291194637