From c6bf07973edadedd671fa6489f5c844058473da1 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Thu, 17 Aug 2017 11:15:08 +0200 Subject: [PATCH 01/23] Update TODO_MINOR.md --- docs/TODO_MINOR.md | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/docs/TODO_MINOR.md b/docs/TODO_MINOR.md index 560328f7e..32447bc16 100644 --- a/docs/TODO_MINOR.md +++ b/docs/TODO_MINOR.md @@ -12,14 +12,16 @@ Here are ideas which are not assigned to a minor version yet: - files app update: show content as text - GUI remote control - automatically build GUI from file (e.g. XML, JSON or HTML) -- lv_split: new object type, a hor. or ver. line for decoration purpose -- lv_valset: new object type, a label with "+" and "-" buttons -- lv_tabview: new object type to organise content with tabs -- lv_btngrp: new object type to display more buttons to choose an option from them -- lv_switch: new object type, turn on/off by tap (a little slider) -- lv_roller: new object type, a roller to select a value (like on smartphones) -## v4.2 +## v4.3 (In progress) +- [ ] lv_split: new object type, a hor. or ver. line for decoration purpose +- [ ] lv_valset: new object type, a label with "+" and "-" buttons +- [ ] lv_tabview: new object type to organise content with tabs +- [ ] lv_btngrp: new object type to display more buttons to choose an option from them +- [ ] lv_switch: new object type, turn on/off by tap (a little slider) +- [ ] lv_roller: new object type, a roller to select a value (like on smartphones) + +## v4.2 (released at: 17.08.2017) - [x] Double VDB support: one for rendering, another to transfer former rendered image to frame buffer in the background (e.g. with DMA) [#15](https://github.com/littlevgl/lvgl/issues/15) - [x] lv_group: to control without touch pad. Issue [#14](https://github.com/littlevgl/lvgl/issues/14) - [x] lv_page: scrl def fit modification: hor:false, ver:true, and always set width to parent width From a053641ea52375df5fdcab2e9f95e6c6ebdb100e Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Thu, 17 Aug 2017 11:15:42 +0200 Subject: [PATCH 02/23] Update TODO_PATCH.md --- docs/TODO_PATCH.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/TODO_PATCH.md b/docs/TODO_PATCH.md index 838cc8e85..f333777dd 100644 --- a/docs/TODO_PATCH.md +++ b/docs/TODO_PATCH.md @@ -8,6 +8,6 @@ The bugfixes of the still not released version are in `beta` branche. ## Contributing Please create an issue to introduce a bug instead of adding pull request to this file. -## Next release +## v.4.2 (released at: 17.08.2017) - [x] lv_slider: don't let indicator or bar to disappear because of hpad/vpad - [x] lv_ta: memory leak if deleted in password mode From def6cb2c925553640c22f38b7539974965f142c7 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Thu, 17 Aug 2017 11:16:09 +0200 Subject: [PATCH 03/23] Update TODO_MINOR.md --- docs/TODO_MINOR.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/TODO_MINOR.md b/docs/TODO_MINOR.md index 32447bc16..9c7d41bbc 100644 --- a/docs/TODO_MINOR.md +++ b/docs/TODO_MINOR.md @@ -13,7 +13,7 @@ Here are ideas which are not assigned to a minor version yet: - GUI remote control - automatically build GUI from file (e.g. XML, JSON or HTML) -## v4.3 (In progress) +## v4.3 (in progress) - [ ] lv_split: new object type, a hor. or ver. line for decoration purpose - [ ] lv_valset: new object type, a label with "+" and "-" buttons - [ ] lv_tabview: new object type to organise content with tabs From 798e0218036b283785f3da3d1ec60a59af8b3980 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Thu, 17 Aug 2017 13:19:59 +0200 Subject: [PATCH 04/23] Update TODO_PATCH.md --- docs/TODO_PATCH.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/TODO_PATCH.md b/docs/TODO_PATCH.md index f333777dd..a7d2cfa74 100644 --- a/docs/TODO_PATCH.md +++ b/docs/TODO_PATCH.md @@ -8,6 +8,10 @@ The bugfixes of the still not released version are in `beta` branche. ## Contributing Please create an issue to introduce a bug instead of adding pull request to this file. -## v.4.2 (released at: 17.08.2017) + +## Nest release +- [ ] lv_btnm: check hide code (\177) at 0. byte position too (if width is not specified) + +## v4.2 (released at: 17.08.2017) - [x] lv_slider: don't let indicator or bar to disappear because of hpad/vpad - [x] lv_ta: memory leak if deleted in password mode From fa5edfb53e17b60f0222666585c1f851d5f900ea Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Sun, 20 Aug 2017 02:18:38 +0200 Subject: [PATCH 05/23] Update TODO_PATCH.md --- docs/TODO_PATCH.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/TODO_PATCH.md b/docs/TODO_PATCH.md index a7d2cfa74..dcddcc18e 100644 --- a/docs/TODO_PATCH.md +++ b/docs/TODO_PATCH.md @@ -9,8 +9,8 @@ The bugfixes of the still not released version are in `beta` branche. Please create an issue to introduce a bug instead of adding pull request to this file. -## Nest release -- [ ] lv_btnm: check hide code (\177) at 0. byte position too (if width is not specified) +## Next release +- [x] lv_btnm: check hide code (\177) at 0. byte position too (if width is not specified) ## v4.2 (released at: 17.08.2017) - [x] lv_slider: don't let indicator or bar to disappear because of hpad/vpad From 4b59ae097625be11b30299ce535decc106423364 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Sun, 20 Aug 2017 02:20:01 +0200 Subject: [PATCH 06/23] Update TODO_MINOR.md --- docs/TODO_MINOR.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/TODO_MINOR.md b/docs/TODO_MINOR.md index 9c7d41bbc..af568fdda 100644 --- a/docs/TODO_MINOR.md +++ b/docs/TODO_MINOR.md @@ -17,9 +17,9 @@ Here are ideas which are not assigned to a minor version yet: - [ ] lv_split: new object type, a hor. or ver. line for decoration purpose - [ ] lv_valset: new object type, a label with "+" and "-" buttons - [ ] lv_tabview: new object type to organise content with tabs -- [ ] lv_btngrp: new object type to display more buttons to choose an option from them -- [ ] lv_switch: new object type, turn on/off by tap (a little slider) +- [x] lv_sw: new object type, switch, turn on/off by tap (a little slider) - [ ] lv_roller: new object type, a roller to select a value (like on smartphones) +- [x] lv_btnm: toggle last buttonto create a button group ## v4.2 (released at: 17.08.2017) - [x] Double VDB support: one for rendering, another to transfer former rendered image to frame buffer in the background (e.g. with DMA) [#15](https://github.com/littlevgl/lvgl/issues/15) From 2aab61b91d7100658ac928e7d5f914c4cbb735db Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Sun, 20 Aug 2017 19:26:16 +0200 Subject: [PATCH 07/23] Update TODO_PATCH.md --- docs/TODO_PATCH.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/TODO_PATCH.md b/docs/TODO_PATCH.md index dcddcc18e..a84ca9c15 100644 --- a/docs/TODO_PATCH.md +++ b/docs/TODO_PATCH.md @@ -11,6 +11,8 @@ Please create an issue to introduce a bug instead of adding pull request to this ## Next release - [x] lv_btnm: check hide code (\177) at 0. byte position too (if width is not specified) +- [ ] lv_img: define *lv_img_raw_header* in *lv_draw.h* because now lv_img van't be disabled +- [ ] lv_list: ignore image related things when *lv_img* is not enebled ## v4.2 (released at: 17.08.2017) - [x] lv_slider: don't let indicator or bar to disappear because of hpad/vpad From e6028a913c62117f0fb5c9f4896e1bddd1eccd8b Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Tue, 22 Aug 2017 09:41:13 +0200 Subject: [PATCH 08/23] Update CONTRIBUTING.md --- docs/CONTRIBUTING.md | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index 38b2427ad..0f957b49b 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -1,7 +1,7 @@ # Contributing to Littlev Graphics Library First of all thank you for reading these guide before contributing! -In this guide you can read how can you help in developing the Littlev Graphic Library. These are not strict rules rather just suggestions. If you have a constructive idea just create pull request on this document! +In this guide you can read how can you help in developing the Littlev Graphic Library. If you have a constructive idea just create pull request on this document! ### Table Of Content * [Who can contribute?](#who-can-contribute) @@ -11,19 +11,17 @@ In this guide you can read how can you help in developing the Littlev Graphic Li * [How to suggest a feature?](#how-to-suggest-a-feature) * [How to implement a feature?](#how-to-implement-a-feature) * [Styling guide](#styling-guide) - * [Git Commit Messages](#Git-commit-messages) * [File format](#file-format) * [Functions](#functions) * [Variables](#variables) * [Defines](#defines) + * [Typedefs](#typedefs) * [Comments](#comments) * [Formatting](#formatting) ## Who can contribute? -Everybody is welcome in contributing independently from skills, programming level or any personal attribute. - -There are several ways to contribute in the graphics library like: +As graphical interfaces for embedded systems has an increasing relevance today. You also might find important to work with a good graphics library. Now - independently from skills, programming level or any personal attributes - you can influence the development of the graphics library with: * Report an issue * Suggest feature * Fix an issue @@ -31,11 +29,9 @@ There are several ways to contribute in the graphics library like: Please, take a look at [CODE_OF_CONDUCT](https://github.com/littlevgl/lvgl/blob/master/docs/CODE_OF_CONDUCT.md) +Continue reading to know how you can be part of the development! We are waiting for you! + ## How to report an issue? -There are 3 permanent branches: - * `master` for stable, released versions - * `beta` for developers, all feature branches merged here first - * `bugfix` for hotfixes, not new features ### Simple issue If you find an issue which is very simple to fix, and you fixed it, please send a pull request against `beta` branch. @@ -72,21 +68,15 @@ If you have a good and useful idea you can use GitHub issues to suggest a new fe After a discussion we figure out the specification of the new feature and the technical details/implementation possibilities. With the knowledge of how to do it somebody can implement the new feature. -The new feature should be in a new branch. - Keep in mind if you wouldn't like to do the implementation there is no guarantee that it will be ready in the new future. However if you would like to force it, take a look at this page: [Feature request service](http://www.gl.littlev.hu/services#feature) ## How to implement a feature? In [docs/TODO_MINOR.md](https://github.com/littlevgl/lvgl/blob/master/docs/TODO_MINOR.md) and [docs/TODO_PATCH.md](https://github.com/littlevgl/lvgl/blob/master/docs/TODO_PATCH.md) you can see some ideas which are waiting for somebody to realize them! If want to deal with a feature from this files, please start an issue and discusse the details. -## Styling guide +The new feature should be in a new branch. -### Git Commit Messages -* Use the present tense ("Add feature" not "Added feature") -* Use the imperative mood ("Move cursor to..." not "Moves cursor to...") -* Limit the first line to 72 characters or less -* Reference issues and pull requests liberally after the first line +## Styling guide ### File format Use [misc/templ/templ.c](https://github.com/littlevgl/misc/blob/master/templ/templ.c) and [misc/templ/templ.h](https://github.com/littlevgl/misc/blob/master/templ/templ.h) @@ -114,19 +104,28 @@ Names can be used freely. ### Variables * words sparated by '_' * always lower case -* one line one declaration (BAD: char x, y;) +* one line, one declaration (BAD: char x, y;) * use `` (*uint8_t*, *int32_t* etc) * declare variables when needed (not all at function start) * use the smallest required scope * variables in a file (outside functions) are always *static* * do not use global variables (use functions to set/get static variables) -### Defines +### Defines * always upper case * starts with *LV_* * followed by the modul: *OBJ*, *BTN* etc. * closed by the subject: *ANIM_TIME*, *VALUE_MIN*, *WIDTH_DEF* +### Typedefs +- prefer `typedef struct` instead of `struct name` +- prefer `typedef enum` instead of `enum name` +- types always lowercase speperated by '_' +- first word for public typedefs is *lv_...* +- next word identifies the modul: *lv_obj_...*, *lv_btn_...* +- always add closing *..._t* +- Examples: *lv_obj_t*, *lv_cont_layout_t* + ### Comments Before every function have a comment like this: From dc7ac427b536ba9a8ef6a5e2e30fde30b1e0d99e Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Wed, 23 Aug 2017 05:32:17 +0200 Subject: [PATCH 09/23] Update CONTRIBUTING.md --- docs/CONTRIBUTING.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index 0f957b49b..c9bee1008 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -129,7 +129,7 @@ Names can be used freely. ### Comments Before every function have a comment like this: -``` +```c /** * Return with the screen of an object * @param obj pointer to an object @@ -149,7 +149,7 @@ You should write **why** have you done this: ### Formatting Here is example to show bracket placing and using of white spaces: -``` +```c /** * Set a new text for a label. Memory will be allocated to store the text by the label. * @param label pointer to a label object From d0d46d482e7a3133e58352afd284d24acda5451d Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Wed, 23 Aug 2017 09:25:25 +0200 Subject: [PATCH 10/23] Update TODO_MINOR.md --- docs/TODO_MINOR.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/TODO_MINOR.md b/docs/TODO_MINOR.md index af568fdda..e29c20c2a 100644 --- a/docs/TODO_MINOR.md +++ b/docs/TODO_MINOR.md @@ -19,6 +19,7 @@ Here are ideas which are not assigned to a minor version yet: - [ ] lv_tabview: new object type to organise content with tabs - [x] lv_sw: new object type, switch, turn on/off by tap (a little slider) - [ ] lv_roller: new object type, a roller to select a value (like on smartphones) +- [x] lv_kb: new object type, Keyboard - [x] lv_btnm: toggle last buttonto create a button group ## v4.2 (released at: 17.08.2017) From ed8df15de4b414ec2e5f4c806cba4b87197ea24c Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Thu, 24 Aug 2017 14:24:35 +0200 Subject: [PATCH 11/23] Update TODO_MAJOR.md --- docs/TODO_MAJOR.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/TODO_MAJOR.md b/docs/TODO_MAJOR.md index 0e10a5b7e..108bf0673 100644 --- a/docs/TODO_MAJOR.md +++ b/docs/TODO_MAJOR.md @@ -5,8 +5,16 @@ Major versions released typically when API changes are required Please create an issue to suggest a new feature instead of adding pull request to this file. ## v5 +**Architectural changes** - [ ] rename repository from *lvgl* to *littlevgl* +- [ ] rename repository from *proj_pc* to *pc_simulator* +- [ ] integrate *hal* in LittlevGL as a normal folder +- [ ] integrate *misc* in LittlevGl as submodule +- [ ] create a new repository for examples +- [ ] convert Applications into simple examples + +**API changes** - [ ] define renames: e.g. *USE_LV_BTN* to *LV_BTN_USE* - [ ] Remove LV_DOWNSCALE (LV_ANTIALIAS will be used instead) - [ ] *lv_ta_get_txt* rename to *lv_ta_get_text* -- [ ] btnm_action pass text instead of text_id +- [ ] lv_btnm_set_styles for *tpr*, t*rel* and *ina* too From 45f4b64cd4ed8adf45d56496f22ed5337e7c0489 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Wed, 13 Sep 2017 12:44:16 +0200 Subject: [PATCH 12/23] Update TODO_PATCH.md --- docs/TODO_PATCH.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/TODO_PATCH.md b/docs/TODO_PATCH.md index a84ca9c15..ce1cedb8e 100644 --- a/docs/TODO_PATCH.md +++ b/docs/TODO_PATCH.md @@ -11,8 +11,9 @@ Please create an issue to introduce a bug instead of adding pull request to this ## Next release - [x] lv_btnm: check hide code (\177) at 0. byte position too (if width is not specified) -- [ ] lv_img: define *lv_img_raw_header* in *lv_draw.h* because now lv_img van't be disabled +- [ ] lv_img: define *lv_img_raw_header* in *lv_draw.h* because now lv_img can't be disabled - [ ] lv_list: ignore image related things when *lv_img* is not enebled +- [ ] lv_ta: fix hegiht if *one_line* and *FONT_ANTIALIAS* ## v4.2 (released at: 17.08.2017) - [x] lv_slider: don't let indicator or bar to disappear because of hpad/vpad From 1782af2abb0f66cc0e23cb48855fa777a0791146 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Wed, 13 Sep 2017 15:41:32 +0200 Subject: [PATCH 13/23] Update TODO_MINOR.md --- docs/TODO_MINOR.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/TODO_MINOR.md b/docs/TODO_MINOR.md index e29c20c2a..93544acfe 100644 --- a/docs/TODO_MINOR.md +++ b/docs/TODO_MINOR.md @@ -20,7 +20,8 @@ Here are ideas which are not assigned to a minor version yet: - [x] lv_sw: new object type, switch, turn on/off by tap (a little slider) - [ ] lv_roller: new object type, a roller to select a value (like on smartphones) - [x] lv_kb: new object type, Keyboard -- [x] lv_btnm: toggle last buttonto create a button group +- [x] lv_btnm: lv_btnm_set_tgl() to toggle last button +- [ ]lv_ta: cursor types ## v4.2 (released at: 17.08.2017) - [x] Double VDB support: one for rendering, another to transfer former rendered image to frame buffer in the background (e.g. with DMA) [#15](https://github.com/littlevgl/lvgl/issues/15) From cb6824755daee27ffed798ac6d8248440684f82a Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Wed, 13 Sep 2017 15:41:51 +0200 Subject: [PATCH 14/23] Update TODO_MINOR.md --- docs/TODO_MINOR.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/TODO_MINOR.md b/docs/TODO_MINOR.md index 93544acfe..5744574e9 100644 --- a/docs/TODO_MINOR.md +++ b/docs/TODO_MINOR.md @@ -21,7 +21,7 @@ Here are ideas which are not assigned to a minor version yet: - [ ] lv_roller: new object type, a roller to select a value (like on smartphones) - [x] lv_kb: new object type, Keyboard - [x] lv_btnm: lv_btnm_set_tgl() to toggle last button -- [ ]lv_ta: cursor types +- [ ] lv_ta: cursor types ## v4.2 (released at: 17.08.2017) - [x] Double VDB support: one for rendering, another to transfer former rendered image to frame buffer in the background (e.g. with DMA) [#15](https://github.com/littlevgl/lvgl/issues/15) From 0b8daf5283c79314cca75207088a8871d255c812 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Thu, 14 Sep 2017 06:46:31 +0200 Subject: [PATCH 15/23] Update TODO_MINOR.md --- docs/TODO_MINOR.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/TODO_MINOR.md b/docs/TODO_MINOR.md index 5744574e9..ca7932e52 100644 --- a/docs/TODO_MINOR.md +++ b/docs/TODO_MINOR.md @@ -8,8 +8,6 @@ Please create an issue to suggest a new feature instead of adding pull request t Here are ideas which are not assigned to a minor version yet: - label: add a horzintal line (e.g. underline or line through). - label long mode: dot begin -- music player app -- files app update: show content as text - GUI remote control - automatically build GUI from file (e.g. XML, JSON or HTML) From d610872ee7cd3a51a16c4962ecf1b2f1530cd5d8 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Thu, 21 Sep 2017 14:18:54 +0200 Subject: [PATCH 16/23] Update TODO_MAJOR.md --- docs/TODO_MAJOR.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/TODO_MAJOR.md b/docs/TODO_MAJOR.md index 108bf0673..07a902487 100644 --- a/docs/TODO_MAJOR.md +++ b/docs/TODO_MAJOR.md @@ -18,3 +18,5 @@ Please create an issue to suggest a new feature instead of adding pull request t - [ ] Remove LV_DOWNSCALE (LV_ANTIALIAS will be used instead) - [ ] *lv_ta_get_txt* rename to *lv_ta_get_text* - [ ] lv_btnm_set_styles for *tpr*, t*rel* and *ina* too +- [ ] LV_LABEL_LONG_DOTS removed, use LV_LABEL_LONG_ROLL instead +- [ ] lv_list_set_element_text_roll removed. From d07d4f530065b5b8cc8a9e57dcdee597a41fedb0 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Fri, 22 Sep 2017 23:56:56 +0200 Subject: [PATCH 17/23] Update TODO_MAJOR.md --- docs/TODO_MAJOR.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/TODO_MAJOR.md b/docs/TODO_MAJOR.md index 07a902487..ad888c81a 100644 --- a/docs/TODO_MAJOR.md +++ b/docs/TODO_MAJOR.md @@ -20,3 +20,4 @@ Please create an issue to suggest a new feature instead of adding pull request t - [ ] lv_btnm_set_styles for *tpr*, t*rel* and *ina* too - [ ] LV_LABEL_LONG_DOTS removed, use LV_LABEL_LONG_ROLL instead - [ ] lv_list_set_element_text_roll removed. +- [ ] lv_ddlist_set_fix_height instead of auto_size From fbb88452fbd0033e9d81fadd1a3520917715c2c6 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Sat, 23 Sep 2017 23:25:12 +0200 Subject: [PATCH 18/23] Update README.md --- docs/README.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/README.md b/docs/README.md index 25d631ea3..c642f1c0a 100644 --- a/docs/README.md +++ b/docs/README.md @@ -4,7 +4,7 @@ LittlevGL is a graphics library to create Graphical User Interfaces (GUI) on TFT, LCD or monochrome displays using microcontroller based embedded systems. -Transparency, anti-aliassing and smooth animations can be used with no double buffering so typically no external memories are required. +Transparency, anti-aliassing and smooth animations can be used with no double buffering so typically no external memories are required. Layouts, scrolling, word-wrapping, layers and other features make your job easier. The graphics library is written in C and it is completely hardware independent. You can even run it in a PC simulator without any embedded hardware. @@ -23,6 +23,11 @@ Homepage: http://gl.littlev.hu * Transparency * Gradient colors * Smooth dragging and scrolling +* Built-in features + * Layouts (to auto-arrange items) + * Scrolling + * Auto-size (aligned to the content) + * Word wrapping * Layers * Customizable appearance with styles * Applications for complex tasks From a6f5141f4249970fab070f3a0ab23dd96591eb6e Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Sat, 23 Sep 2017 23:27:17 +0200 Subject: [PATCH 19/23] Update README.md --- docs/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/README.md b/docs/README.md index c642f1c0a..6fe2df978 100644 --- a/docs/README.md +++ b/docs/README.md @@ -17,6 +17,7 @@ Homepage: http://gl.littlev.hu * Build GUI from simple graphical objects * Buttons, Labels, Images * Charts, Lists, Bars, Sliders, Text areas etc. +* Create or delete graphical object dynamically in run time * High level graphical features without double buffering * Antialiassing (font or full screen) * Animations From 0afd6cee4612d8d51c301d55511ab7c1b6e77a53 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Sat, 23 Sep 2017 23:28:06 +0200 Subject: [PATCH 20/23] Update README.md --- docs/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README.md b/docs/README.md index 6fe2df978..8cdde5624 100644 --- a/docs/README.md +++ b/docs/README.md @@ -2,7 +2,7 @@ ![LittlevGL cover](http://www.gl.littlev.hu/home/main_cover_small.png) -LittlevGL is a graphics library to create Graphical User Interfaces (GUI) on TFT, LCD or monochrome displays using microcontroller based embedded systems. +LittlevGL is a graphics library to create Graphical User Interfaces (GUI) on TFT, LCD or monochrome displays for microcontroller based embedded systems. Transparency, anti-aliassing and smooth animations can be used with no double buffering so typically no external memories are required. Layouts, scrolling, word-wrapping, layers and other features make your job easier. From 1544f6b6edbd5a496f734aab1ee047b0148fa0dd Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Tue, 3 Oct 2017 11:37:13 +0200 Subject: [PATCH 21/23] Update TODO_MINOR.md --- docs/TODO_MINOR.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/TODO_MINOR.md b/docs/TODO_MINOR.md index ca7932e52..6631ddf05 100644 --- a/docs/TODO_MINOR.md +++ b/docs/TODO_MINOR.md @@ -12,6 +12,7 @@ Here are ideas which are not assigned to a minor version yet: - automatically build GUI from file (e.g. XML, JSON or HTML) ## v4.3 (in progress) +- [x] UTF-8 support - [ ] lv_split: new object type, a hor. or ver. line for decoration purpose - [ ] lv_valset: new object type, a label with "+" and "-" buttons - [ ] lv_tabview: new object type to organise content with tabs @@ -19,7 +20,7 @@ Here are ideas which are not assigned to a minor version yet: - [ ] lv_roller: new object type, a roller to select a value (like on smartphones) - [x] lv_kb: new object type, Keyboard - [x] lv_btnm: lv_btnm_set_tgl() to toggle last button -- [ ] lv_ta: cursor types +- [x] lv_ta: cursor types ## v4.2 (released at: 17.08.2017) - [x] Double VDB support: one for rendering, another to transfer former rendered image to frame buffer in the background (e.g. with DMA) [#15](https://github.com/littlevgl/lvgl/issues/15) From eb067af0987a8c98dc8df1efe26de3c93c22a89b Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Mon, 9 Oct 2017 08:31:52 +0200 Subject: [PATCH 22/23] Update TODO_MAJOR.md --- docs/TODO_MAJOR.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/docs/TODO_MAJOR.md b/docs/TODO_MAJOR.md index ad888c81a..dddf6501a 100644 --- a/docs/TODO_MAJOR.md +++ b/docs/TODO_MAJOR.md @@ -17,7 +17,8 @@ Please create an issue to suggest a new feature instead of adding pull request t - [ ] define renames: e.g. *USE_LV_BTN* to *LV_BTN_USE* - [ ] Remove LV_DOWNSCALE (LV_ANTIALIAS will be used instead) - [ ] *lv_ta_get_txt* rename to *lv_ta_get_text* -- [ ] lv_btnm_set_styles for *tpr*, t*rel* and *ina* too -- [ ] LV_LABEL_LONG_DOTS removed, use LV_LABEL_LONG_ROLL instead -- [ ] lv_list_set_element_text_roll removed. -- [ ] lv_ddlist_set_fix_height instead of auto_size +- [x] lv_btnm_set_styles for *tpr*, *trel* and *ina* too +- [x] LV_LABEL_LONG_DOTS removed, use LV_LABEL_LONG_ROLL instead +- [x] *lv_list_set_element_text_roll()* removed. +- [x] *lv_ddlist_set_fix_height()* instead of *auto_size* +- [x] rename *lv_dispi_...* to *lv_indev_proc_...* (except *lv_dispi_t* -> *lv_indev_t*) From f7c8fe985750400622bbf7602c43a56d0d8a4795 Mon Sep 17 00:00:00 2001 From: scopa90 Date: Mon, 9 Oct 2017 13:24:28 +0100 Subject: [PATCH 23/23] Update lv_btn.c Allow NULL as parameter to lv_btn_set_styles for any style which is not to be changed. --- lv_objx/lv_btn.c | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/lv_objx/lv_btn.c b/lv_objx/lv_btn.c index ddfb22be7..f6e1ee5ef 100644 --- a/lv_objx/lv_btn.c +++ b/lv_objx/lv_btn.c @@ -295,7 +295,7 @@ void lv_btn_set_lpr_rep_action(lv_obj_t * btn, lv_action_t lpr_rep_action) } /** - * Set styles of a button is each state + * Set styles of a button is each state. Use NULL for any style which are not be changed. * @param btn pointer to button object * @param rel pointer to a style for releases state * @param pr pointer to a style for pressed state @@ -308,14 +308,18 @@ void lv_btn_set_styles(lv_obj_t * btn, lv_style_t * rel, lv_style_t * pr, lv_style_t * ina) { lv_btn_ext_t * ext = lv_obj_get_ext(btn); - ext->styles[LV_BTN_STATE_REL] = rel; - ext->styles[LV_BTN_STATE_PR] = pr; - ext->styles[LV_BTN_STATE_TREL] = trel; - ext->styles[LV_BTN_STATE_TPR] = tpr; - ext->styles[LV_BTN_STATE_INA] = ina; + + if(rel != NULL) ext->styles[LV_BTN_STATE_REL] = rel; + + if(pr != NULL) ext->styles[LV_BTN_STATE_PR] = pr; + + if(trel) ext->styles[LV_BTN_STATE_TREL] = trel; + + if(tpr) ext->styles[LV_BTN_STATE_TPR] = tpr; + + if(ina) ext->styles[LV_BTN_STATE_INA] = ina; lv_obj_set_style(btn, ext->styles[ext->state]); - } /*=====================