- Default `LV_BASE_DIR_AUTO`
- Inherited Yes
diff --git a/docs/overview/style.md b/docs/overview/style.md
index 41912fc22d..3b3f549f8c 100644
--- a/docs/overview/style.md
+++ b/docs/overview/style.md
@@ -68,7 +68,7 @@ For example, finding background colors for released, pressed, checked + pressed,
Instead, for example, use the background color for pressed and checked states and indicate the focused state with a different border color.
## Cascading styles
-It's not required to set all the properties in one style. It's possible to add more styles to an object and have the later added style modify or extend appearance.
+It's not required to set all the properties in one style. It's possible to add more styles to an object and have the latter added style modify or extend appearance.
For example, create a general gray button style and create a new one for red buttons where only the new background color is set.
This is much like in CSS when used classes are listed like ``.
diff --git a/docs/porting/display.md b/docs/porting/display.md
index eb03257c37..63b126451a 100644
--- a/docs/porting/display.md
+++ b/docs/porting/display.md
@@ -60,14 +60,14 @@ If the `direct_mode` flag is enabled in the display driver LVGL will draw direct
It this case `flush_cb` will be called only once when all dirty areas are redrawn.
With `direct_mode` the frame buffer always contains the current frame as it should be displayed on the screen.
If 2 frame buffers are provided as draw buffers LVGL will alter the buffers but always draw only the dirty areas.
-Therefore the the 2 buffers needs to synchronized in `flush_cb` like this:
+Therefore the 2 buffers needs to synchronized in `flush_cb` like this:
1. Display the frame buffer pointed by `color_p`
2. Copy the redrawn areas from `color_p` to the other buffer.
The get the redrawn areas to copy use the following functions
`_lv_refr_get_disp_refreshing()` returns the display being refreshed
`disp->inv_areas[LV_INV_BUF_SIZE]` contains the invalidated areas
-`disp->inv_area_joined[LV_INV_BUF_SIZE]` if 1 that area was joined into an other one and should be ignored
+`disp->inv_area_joined[LV_INV_BUF_SIZE]` if 1 that area was joined into another one and should be ignored
`disp->inv_p` number of valid elements in `inv_areas`
## Display driver
@@ -92,8 +92,8 @@ LVGL might render the screen in multiple chunks and therefore call `flush_cb` mu
There are some optional display driver data fields:
- `physical_hor_res` horizontal resolution of the full / physical display in pixels. Only set this when _not_ using the full screen (defaults to -1 / same as `hor_res`).
- `physical_ver_res` vertical resolution of the full / physical display in pixels. Only set this when _not_ using the full screen (defaults to -1 / same as `ver_res`).
-- `offset_x` horizontal offset from the the full / physical display in pixels. Only set this when _not_ using the full screen (defaults to 0).
-- `offset_y` vertical offset from the the full / physical display in pixels. Only set this when _not_ using the full screen (defaults to 0).
+- `offset_x` horizontal offset from the full / physical display in pixels. Only set this when _not_ using the full screen (defaults to 0).
+- `offset_y` vertical offset from the full / physical display in pixels. Only set this when _not_ using the full screen (defaults to 0).
- `color_chroma_key` A color which will be drawn as transparent on chrome keyed images. Set to `LV_COLOR_CHROMA_KEY` from `lv_conf.h` by default.
- `anti_aliasing` use anti-aliasing (edge smoothing). Enabled by default if `LV_COLOR_DEPTH` is set to at least 16 in `lv_conf.h`.
- `rotated` and `sw_rotate` See the [Rotation](#rotation) section below.
@@ -197,7 +197,7 @@ LVGL supports rotation of the display in 90 degree increments. You can select wh
If you select software rotation (`sw_rotate` flag set to 1), LVGL will perform the rotation for you. Your driver can and should assume that the screen width and height have not changed. Simply flush pixels to the display as normal. Software rotation requires no additional logic in your `flush_cb` callback.
-There is a noticeable amount of overhead to performing rotation in software. Hardware rotation is available to avoid unwanted slow downs. In this mode, LVGL draws into the buffer as if your screen width and height were swapped. You are responsible for rotating the provided pixels yourself.
+There is a noticeable amount of overhead to performing rotation in software. Hardware rotation is available to avoid unwanted slowdowns. In this mode, LVGL draws into the buffer as if your screen width and height were swapped. You are responsible for rotating the provided pixels yourself.
The default rotation of your display when it is initialized can be set using the `rotated` flag. The available options are `LV_DISP_ROT_NONE`, `LV_DISP_ROT_90`, `LV_DISP_ROT_180`, or `LV_DISP_ROT_270`. The rotation values are relative to how you would rotate the physical display in the clockwise direction. Thus, `LV_DISP_ROT_90` means you rotate the hardware 90 degrees clockwise, and the display rotates 90 degrees counterclockwise to compensate.
diff --git a/docs/porting/gpu.md b/docs/porting/gpu.md
index caf1519bca..83d0a75651 100644
--- a/docs/porting/gpu.md
+++ b/docs/porting/gpu.md
@@ -3,63 +3,59 @@
:github_url: |github_link_base|/porting/gpu.md
```
# Add custom GPU
-
LVGL has a flexible and extendable draw pipeline. You can hook it to do some rendering with a GPU or even completely replace the built-in software renderer.
## Draw context
-
The core structure of drawing is `lv_draw_ctx_t`.
It contains a pointer to a buffer where drawing should happen and a couple of callbacks to draw rectangles, texts, and other primitives.
### Fields
-
`lv_draw_ctx_t` has the following fields:
- `void * buf` Pointer to a buffer to draw into
-- `lv_area_t * buf_area` The the position and size of `buf` (absolute coordinates)
+- `lv_area_t * buf_area` The position and size of `buf` (absolute coordinates)
- `const lv_area_t * clip_area` The current clip area with absolute coordinates, always the same or smaller than `buf_area`. All drawings should be clipped to this area.
- `void (*draw_rect)()` Draw a rectangle with shadow, gradient, border, etc.
-- `void (*draw_arc)()` Draw and arc
+- `void (*draw_arc)()` Draw an arc
- `void (*draw_img_decoded)()` Draw an (A)RGB image that is already decoded by LVGL.
- `lv_res_t (*draw_img)()` Draw an image before decoding it (it bypasses LVGL's internal image decoders)
- `void (*draw_letter)()` Draw a letter
- `void (*draw_line)()` Draw a line
-- `void (*draw_polygon)()` Draw polygon
+- `void (*draw_polygon)()` Draw a polygon
- `void (*draw_bg)()` Replace the buffer with a rect without decoration like radius or borders.
- `void (*wait_for_finish)()` Wait until all background operation are finished. (E.g. GPU operations)
- `void * user_data` Custom user data for arbitrary purpose
(For the sake of simplicity the parameters of the callbacks are not shown here.)
-All `draw_*` callbacks receive a pointer to the current `draw_ctx` as their first parameter. Among the other parameters there is a descriptor too that tells what to draw.
-E.g. for `draw_rect` it's called [lv_draw_rect_dsc_t](https://github.com/lvgl/lvgl/blob/master/src/draw/lv_draw_rect.h),
-for `lv_draw_line` it's called [lv_draw_line_dsc_t](https://github.com/lvgl/lvgl/blob/master/src/draw/lv_draw_line.h), etc.
+All `draw_*` callbacks receive a pointer to the current `draw_ctx` as their first parameter. Among the other parameters there is a descriptor that tells what to draw,
+e.g. for `draw_rect` it's called [lv_draw_rect_dsc_t](https://github.com/lvgl/lvgl/blob/master/src/draw/lv_draw_rect.h),
+for `lv_draw_line` it's called [lv_draw_line_dsc_t](https://github.com/lvgl/lvgl/blob/master/src/draw/lv_draw_line.h), etc.
To correctly render according to a `draw_dsc` you need to be familiar with the [Boxing model](https://docs.lvgl.io/master/overview/coords.html#boxing-model) of LVGL and the meanings of the fields. The name and meaning of the fields are identical to name and meaning of the [Style properties](https://docs.lvgl.io/master/overview/style-props.html).
### Initialization
-
The `lv_disp_drv_t` has 4 fields related to the draw context:
- `lv_draw_ctx_t * draw_ctx` Pointer to the `draw_ctx` of this display
- `void (*draw_ctx_init)(struct _lv_disp_drv_t * disp_drv, lv_draw_ctx_t * draw_ctx)` Callback to initialize a `draw_ctx`
- `void (*draw_ctx_deinit)(struct _lv_disp_drv_t * disp_drv, lv_draw_ctx_t * draw_ctx)` Callback to de-initialize a `draw_ctx`
- `size_t draw_ctx_size` Size of the draw context structure. E.g. `sizeof(lv_draw_sw_ctx_t)`
-If you ignore these fields LVGL will set default values for callbacks and size in `lv_disp_drv_init()` based on the configuration in `lv_conf.h`.
+When you ignore these fields, LVGL will set default values for callbacks and size in `lv_disp_drv_init()` based on the configuration in `lv_conf.h`.
`lv_disp_drv_register()` will allocate a `draw_ctx` based on `draw_ctx_size` and call `draw_ctx_init()` on it.
However, you can overwrite the callbacks and the size values before calling `lv_disp_drv_register()`.
-It makes possible to use your own `draw_ctx` with your own callbacks.
+It makes it possible to use your own `draw_ctx` with your own callbacks.
## Software renderer
LVGL's built in software renderer extends the basic `lv_draw_ctx_t` structure and sets the draw callbacks. It looks like this:
```c
typedef struct {
- /** Include the basic draw_ctx type*/
- lv_draw_ctx_t base_draw;
+ /** Include the basic draw_ctx type*/
+ lv_draw_ctx_t base_draw;
- /** Blend a color or image to an area*/
- void (*blend)(lv_draw_ctx_t * draw_ctx, const lv_draw_sw_blend_dsc_t * dsc);
+ /** Blend a color or image to an area*/
+ void (*blend)(lv_draw_ctx_t * draw_ctx, const lv_draw_sw_blend_dsc_t * dsc);
} lv_draw_sw_ctx_t;
```
@@ -72,7 +68,7 @@ draw_sw_ctx->base_draw.draw_letter = lv_draw_sw_letter;
### Blend callback
As you saw above the software renderer adds the `blend` callback field. It's a special callback related to how the software renderer works.
-All draw operations end up in the `blend` callback which can either fill an area or copy an image to an area by considering an optional mask.
+All draw operations end up in the `blend` callback which can either fill an area or copy an image to an area by considering an optional mask.
The `lv_draw_sw_blend_dsc_t` parameter describes what and how to blend. It has the following fields:
- `const lv_area_t * blend_area` The area with absolute coordinates to draw on `draw_ctx->buf`. If `src_buf` is set, it's the coordinates of the image to blend.
@@ -81,8 +77,8 @@ The `lv_draw_sw_blend_dsc_t` parameter describes what and how to blend. It has t
- `lv_opa_t * mask_buf` NULL if ignored, or an alpha mask to apply on `blend_area`
- `lv_draw_mask_res_t mask_res` The result of the previous mask operation. (`LV_DRAW_MASK_RES_...`)
- `const lv_area_t * mask_area` The area of `mask_buf` with absolute coordinates
-- `lv_opa_t opa` The overall opacity
-- `lv_blend_mode_t blend_mode` E.g. `LV_BLEND_MODE_ADDITIVE`
+- `lv_opa_t opa` The overall opacity
+- `lv_blend_mode_t blend_mode` E.g. `LV_BLEND_MODE_ADDITIVE`
## Extend the software renderer
diff --git a/docs/porting/indev.md b/docs/porting/indev.md
index 4ecf9e8570..d06c421fa5 100644
--- a/docs/porting/indev.md
+++ b/docs/porting/indev.md
@@ -142,7 +142,7 @@ void encoder_with_keys_read(lv_indev_drv_t * drv, lv_indev_data_t*data){
If a button is pressed it will simulate the pressing on the assigned coordinate. (Similarly to a touchpad)
To assign buttons to coordinates use `lv_indev_set_button_points(my_indev, points_array)`.
-`points_array` should look like `const lv_point_t points_array[] = { {12,30},{60,90}, ...}`
+`points_array` should look like `const lv_point_t points_array[] = { {12,30},{60,90}, ...}`
``` important:: The points_array can't go out of scope. Either declare it as a global variable or as a static variable inside a function.
```
diff --git a/docs/widgets/core/btnmatrix.md b/docs/widgets/core/btnmatrix.md
index 5c00a61e37..6824d19a3b 100644
--- a/docs/widgets/core/btnmatrix.md
+++ b/docs/widgets/core/btnmatrix.md
@@ -6,7 +6,7 @@
## Overview
-The Button Matrix object is a lightweight way to display multiple buttons in rows and columns. Lightweight because the buttons are not actually created but just virtually drawn on the fly. This way, one button use only eight extra bytes of memory instead of the ~100-150 bytes a normal [Button](/widgets/core/btn) object plus the 100 or so bytes for the the [Label](/widgets/core/label) object.
+The Button Matrix object is a lightweight way to display multiple buttons in rows and columns. Lightweight because the buttons are not actually created but just virtually drawn on the fly. This way, one button use only eight extra bytes of memory instead of the ~100-150 bytes a normal [Button](/widgets/core/btn) object plus the 100 or so bytes for the [Label](/widgets/core/label) object.
The Button matrix is added to the default group (if one is set). Besides the Button matrix is an editable object to allow selecting and clicking the buttons with encoder navigation too.
diff --git a/docs/widgets/core/switch.md b/docs/widgets/core/switch.md
index e498f5e6f5..2c7a74765f 100644
--- a/docs/widgets/core/switch.md
+++ b/docs/widgets/core/switch.md
@@ -13,7 +13,7 @@ The Switch looks like a little slider and can be used to turn something on and o
## Parts and Styles
- `LV_PART_MAIN` The background of the switch uses all the typical background style properties. `padding` makes the indicator smaller in the respective direction.
- `LV_PART_INDICATOR` The indicator that shows the current state of the switch. Also uses all the typical background style properties.
-- `LV_PART_KNOB` A rectangle (or circle) drawn at left or right side of the indicator. Also uses all the typical background properties to describe the knob(s). By default the knob is square (with a optional corner radius) with side length equal to the smaller side of the slider. The knob can be made larger with the `padding` values. Padding values can be asymmetric too.
+- `LV_PART_KNOB` A rectangle (or circle) drawn at left or right side of the indicator. Also uses all the typical background properties to describe the knob(s). By default, the knob is square (with an optional corner radius) with side length equal to the smaller side of the slider. The knob can be made larger with the `padding` values. Padding values can be asymmetric too.
## Usage
diff --git a/docs/widgets/core/table.md b/docs/widgets/core/table.md
index f8a84441cd..dc86a7cd8f 100644
--- a/docs/widgets/core/table.md
+++ b/docs/widgets/core/table.md
@@ -70,7 +70,7 @@ The following *Keys* are processed by the Tables:
Note that, as usual, the state of `LV_KEY_ENTER` is translated to `LV_EVENT_PRESSED/PRESSING/RELEASED` etc.
-`lv_table_get_selected_cell(table, &row, &col)` can be sued the get currentéy selected cell. Row and column eill be set to `LV_TABLE_CELL_NONE` no cell is celected.
+`lv_table_get_selected_cell(table, &row, &col)` can be used to get the currently selected cell. Row and column will be set to `LV_TABLE_CELL_NONE` no cell is selected.
Learn more about [Keys](/overview/indev).
diff --git a/docs/widgets/core/textarea.md b/docs/widgets/core/textarea.md
index 7e2d6f83a3..deb64c2dd4 100644
--- a/docs/widgets/core/textarea.md
+++ b/docs/widgets/core/textarea.md
@@ -13,9 +13,9 @@ Long lines are wrapped and when the text becomes long enough the Text area can b
One line mode and password modes are supported.
## Parts and Styles
-- `LV_PART_MAIN` The background of the text area. Uses all the typical backgrond style properties and the text related style properties including `text_align` to align the text to the left, right or center.
+- `LV_PART_MAIN` The background of the text area. Uses all the typical background style properties and the text related style properties including `text_align` to align the text to the left, right or center.
- `LV_PART_SCROLLBAR` The scrollbar that is shown when the text is too long.
-- `LV_PART_SELECTED` Detemines the style of the [selected text](/widgets/core/label.html#text-selection). Only `text_color` and `bg_color` style properties can be used. `bg_color` should be set directly on the label of the text area.
+- `LV_PART_SELECTED` Determines the style of the [selected text](/widgets/core/label.html#text-selection). Only `text_color` and `bg_color` style properties can be used. `bg_color` should be set directly on the label of the text area.
- `LV_PART_CURSOR` Marks the position where the characters are inserted. The cursor's area is always the bounding box of the current character.
A block cursor can be created by adding a background color and background opacity to `LV_PART_CURSOR`'s style. The create line cursor leave the cursor transparent and set a left border.
The `anim_time` style property sets the cursor's blink time.
@@ -83,7 +83,7 @@ The maximum number of characters can be limited with `lv_textarea_set_max_length
### Very long texts
-If there is a very long text in the Text area (e. g. > 20k characters), scrolling and drawing might be slow.
+If there is a very long text in the Text area (e.g. > 20k characters), scrolling and drawing might be slow.
However, by enabling `LV_LABEL_LONG_TXT_HINT 1` in `lv_conf.h` the performance can be hugely improved.
This will save some additional information about the label to speed up its drawing.
Using `LV_LABEL_LONG_TXT_HINT` the scrolling and drawing will as fast as with "normal" short texts.
@@ -97,7 +97,7 @@ This works much like when you select text on your PC with your mouse.
The event parameter is the text about to be inserted. `lv_textarea_set_insert_replace(textarea, "New text")` replaces the text to insert.
The new text cannot be in a local variable which is destroyed when the event callback exists. `""` means do not insert anything.
- `LV_EVENT_VALUE_CHANGED` Sent when the content of the text area has been changed.
-- `LV_EVENT_READY` Sent when `LV_KEY_ENTER` is pressed (or(sent) to a one line text area.
+- `LV_EVENT_READY` Sent when `LV_KEY_ENTER` is pressed (or sent) to a one line text area.
See the events of the [Base object](/widgets/obj) too.
diff --git a/docs/widgets/extra/span.md b/docs/widgets/extra/span.md
index a70cb813ac..f3ddb44865 100644
--- a/docs/widgets/extra/span.md
+++ b/docs/widgets/extra/span.md
@@ -19,7 +19,7 @@ The spangroup object uses span to describe text and text style. so, first we nee
If spangroup object `mode != LV_SPAN_MODE_FIXED` you must call `lv_spangroup_refr_mode()` after you have modified `span` style(eg:set text, changed the font size, del span).
-### Retreiving a span child
+### Retrieving a span child
Spangroups store their children differently from normal objects, so normal functions for getting children won't work.
`lv_spangroup_get_child(spangroup, id)` will return a pointer to the child span at index `id`. In addition, `id` can be negative to index from the end of the spangroup where `-1` is the youngest child, `-2` is second youngest, etc.
diff --git a/docs/widgets/obj.md b/docs/widgets/obj.md
index a885f6130e..f8540bc8e1 100644
--- a/docs/widgets/obj.md
+++ b/docs/widgets/obj.md
@@ -98,7 +98,7 @@ Be sure to read the [Style overview](/overview/style). Here only the most essent
A new style can be added to an object with the `lv_obj_add_style(obj, &new_style, selector)` function.
`selector` is an ORed combination of part and state(s). E.g. `LV_PART_SCROLLBAR | LV_STATE_PRESSED`.
-The base objects use `LV_PART_MAIN` style properties and `LV_PART_SCROLLBAR` with the typical backgroud style properties.
+The base objects use `LV_PART_MAIN` style properties and `LV_PART_SCROLLBAR` with the typical background style properties.
### Flags
diff --git a/examples/anim/lv_example_anim_3.c b/examples/anim/lv_example_anim_3.c
index fb881a8520..536ee409b5 100644
--- a/examples/anim/lv_example_anim_3.c
+++ b/examples/anim/lv_example_anim_3.c
@@ -32,7 +32,7 @@ static void page_obj_init(lv_obj_t * par);
static void anim_x_cb(void * var, int32_t v);
/**
- * create a animation
+ * create an animation
*/
void lv_example_anim_3(void)
{
diff --git a/examples/arduino/LVGL_Arduino/LVGL_Arduino.ino b/examples/arduino/LVGL_Arduino/LVGL_Arduino.ino
index ec01d0ca67..7c40ae8b94 100644
--- a/examples/arduino/LVGL_Arduino/LVGL_Arduino.ino
+++ b/examples/arduino/LVGL_Arduino/LVGL_Arduino.ino
@@ -87,7 +87,7 @@ void setup()
tft.setRotation( 3 ); /* Landscape orientation, flipped */
/*Set the touchscreen calibration data,
- the actual data for your display can be aquired using
+ the actual data for your display can be acquired using
the Generic -> Touch_calibrate example from the TFT_eSPI library*/
uint16_t calData[5] = { 275, 3620, 264, 3532, 1 };
tft.setTouch( calData );
diff --git a/examples/event/lv_example_event_2.py b/examples/event/lv_example_event_2.py
index 027df9c55b..2da431c434 100644
--- a/examples/event/lv_example_event_2.py
+++ b/examples/event/lv_example_event_2.py
@@ -4,7 +4,7 @@ def event_cb(e,label):
label.set_text("The last button event:\nLV_EVENT_PRESSED")
elif code == lv.EVENT.CLICKED:
label.set_text("The last button event:\nLV_EVENT_CLICKED")
- elif code == lv.EVENT.LONG_PRESSED:
+ elif code == lv.EVENT.LONG_PRESSED:
label.set_text("The last button event:\nLV_EVENT_LONG_PRESSED")
elif code == lv.EVENT.LONG_PRESSED_REPEAT:
label.set_text("The last button event:\nLV_EVENT_LONG_PRESSED_REPEAT")
diff --git a/examples/get_started/lv_example_get_started_2.c b/examples/get_started/lv_example_get_started_2.c
index 362e7baf37..66f2cc486d 100644
--- a/examples/get_started/lv_example_get_started_2.c
+++ b/examples/get_started/lv_example_get_started_2.c
@@ -65,7 +65,7 @@ void lv_example_get_started_2(void)
lv_label_set_text(label, "Button");
lv_obj_center(label);
- /*Create an other button and use the red style too*/
+ /*Create another button and use the red style too*/
lv_obj_t * btn2 = lv_btn_create(lv_scr_act());
lv_obj_remove_style_all(btn2); /*Remove the styles coming from the theme*/
lv_obj_set_pos(btn2, 10, 80);
diff --git a/examples/get_started/lv_example_get_started_2.py b/examples/get_started/lv_example_get_started_2.py
index 59ab1cb195..431ba03eb8 100644
--- a/examples/get_started/lv_example_get_started_2.py
+++ b/examples/get_started/lv_example_get_started_2.py
@@ -46,7 +46,7 @@ label = lv.label(btn) # Add a label to the button
label.set_text("Button") # Set the labels text
label.center()
-# Create an other button and use the red style too
+# Create another button and use the red style too
btn2 = lv.btn(lv.scr_act())
btn2.remove_style_all() # Remove the styles coming from the theme
btn2.set_pos(10, 80) # Set its position
diff --git a/examples/layouts/grid/lv_example_grid_2.py b/examples/layouts/grid/lv_example_grid_2.py
index 9ffb26fe66..c713406ae7 100644
--- a/examples/layouts/grid/lv_example_grid_2.py
+++ b/examples/layouts/grid/lv_example_grid_2.py
@@ -11,7 +11,7 @@ cont.set_grid_dsc_array(col_dsc, row_dsc)
cont.set_size(300, 220)
cont.center()
-# Cell to 0;0 and align to to the start (left/top) horizontally and vertically too
+# Cell to 0;0 and align to the start (left/top) horizontally and vertically too
obj = lv.obj(cont)
obj.set_size(lv.SIZE.CONTENT, lv.SIZE.CONTENT)
obj.set_grid_cell(lv.GRID_ALIGN.START, 0, 1,
@@ -19,7 +19,7 @@ obj.set_grid_cell(lv.GRID_ALIGN.START, 0, 1,
label = lv.label(obj)
label.set_text("c0, r0")
-# Cell to 1;0 and align to to the start (left) horizontally and center vertically too
+# Cell to 1;0 and align to the start (left) horizontally and center vertically too
obj = lv.obj(cont)
obj.set_size(lv.SIZE.CONTENT, lv.SIZE.CONTENT)
obj.set_grid_cell(lv.GRID_ALIGN.START, 1, 1,
@@ -27,7 +27,7 @@ obj.set_grid_cell(lv.GRID_ALIGN.START, 1, 1,
label = lv.label(obj)
label.set_text("c1, r0")
-# Cell to 2;0 and align to to the start (left) horizontally and end (bottom) vertically too
+# Cell to 2;0 and align to the start (left) horizontally and end (bottom) vertically too
obj = lv.obj(cont)
obj.set_size(lv.SIZE.CONTENT, lv.SIZE.CONTENT)
obj.set_grid_cell(lv.GRID_ALIGN.START, 2, 1,
@@ -50,4 +50,3 @@ obj.set_grid_cell(lv.GRID_ALIGN.STRETCH, 0, 1,
lv.GRID_ALIGN.STRETCH, 1, 2)
label = lv.label(obj)
label.set_text("c0\nr1-2")
-
diff --git a/examples/libs/freetype/index.rst b/examples/libs/freetype/index.rst
index 03f6263a70..c214d28c86 100644
--- a/examples/libs/freetype/index.rst
+++ b/examples/libs/freetype/index.rst
@@ -1,4 +1,4 @@
-Open a front with FreeTpye
+Open a front with FreeType
"""""""""""""""""""""""""""""""""""""""""""""""
.. lv_example:: libs/freetype/lv_example_freetype_1
diff --git a/examples/libs/png/lv_example_png_1.py b/examples/libs/png/lv_example_png_1.py
index 0b90d69a57..a7fcdd6f23 100755
--- a/examples/libs/png/lv_example_png_1.py
+++ b/examples/libs/png/lv_example_png_1.py
@@ -8,7 +8,7 @@ decoder = lv.img.decoder_create()
decoder.info_cb = get_png_info
decoder.open_cb = open_png
-img_wink_png = lv.img_dsc_t(
+img_wink_png = lv.img_dsc_t(
{
"header": {"always_zero": 0, "w": 50, "h": 50, "cf": lv.img.CF.RAW_ALPHA},
"data_size": 5158,
diff --git a/examples/libs/rlottie/lv_example_rlottie_2.c b/examples/libs/rlottie/lv_example_rlottie_2.c
index 0f9cf6549b..1fccdc0710 100644
--- a/examples/libs/rlottie/lv_example_rlottie_2.c
+++ b/examples/libs/rlottie/lv_example_rlottie_2.c
@@ -7,7 +7,7 @@
*/
void lv_example_rlottie_2(void)
{
- /*The rlottie library uses STDIO file API, so there is no drievr letter for LVGL*/
+ /*The rlottie library uses STDIO file API, so there is no driver letter for LVGL*/
lv_obj_t * lottie = lv_rlottie_create_from_file(lv_scr_act(), 100, 100,
"lvgl/examples/libs/rlottie/lv_example_rlottie_approve.json");
lv_obj_center(lottie);
diff --git a/examples/porting/lv_port_disp_template.c b/examples/porting/lv_port_disp_template.c
index d451ba29c3..55d52091b3 100644
--- a/examples/porting/lv_port_disp_template.c
+++ b/examples/porting/lv_port_disp_template.c
@@ -87,7 +87,7 @@ void lv_port_disp_init(void)
/* Example for 3) also set disp_drv.full_refresh = 1 below*/
static lv_disp_draw_buf_t draw_buf_dsc_3;
static lv_color_t buf_3_1[MY_DISP_HOR_RES * MY_DISP_VER_RES]; /*A screen sized buffer*/
- static lv_color_t buf_3_2[MY_DISP_HOR_RES * MY_DISP_VER_RES]; /*An other screen sized buffer*/
+ static lv_color_t buf_3_2[MY_DISP_HOR_RES * MY_DISP_VER_RES]; /*Another screen sized buffer*/
lv_disp_draw_buf_init(&draw_buf_dsc_3, buf_3_1, buf_3_2, MY_DISP_VER_RES * LV_VER_RES_MAX); /*Initialize the display buffer*/
/*-----------------------------------
diff --git a/examples/scroll/lv_example_scroll_4.py b/examples/scroll/lv_example_scroll_4.py
index 92a009c2f8..9556f60fab 100644
--- a/examples/scroll/lv_example_scroll_4.py
+++ b/examples/scroll/lv_example_scroll_4.py
@@ -52,7 +52,7 @@ style.set_shadow_color(lv.palette_darken(lv.PALETTE.BLUE, 1))
style.set_transition(trans)
# Make the scrollbars wider and use 100% opacity when scrolled
-style_scrolled = lv.style_t()
+style_scrolled = lv.style_t()
style_scrolled.init()
style_scrolled.set_width(8)
style_scrolled.set_bg_opa(lv.OPA.COVER)
diff --git a/examples/styles/lv_example_style_10.py b/examples/styles/lv_example_style_10.py
index 27d728610f..b71afe8726 100644
--- a/examples/styles/lv_example_style_10.py
+++ b/examples/styles/lv_example_style_10.py
@@ -7,7 +7,7 @@ props = [lv.STYLE.BG_COLOR, lv.STYLE.BORDER_COLOR, lv.STYLE.BORDER_WIDTH, 0]
# A default transition
# Make it fast (100ms) and start with some delay (200 ms)
-trans_def = lv.style_transition_dsc_t()
+trans_def = lv.style_transition_dsc_t()
trans_def.init(props, lv.anim_t.path_linear, 100, 200, None)
# A special transition when going to pressed state
diff --git a/examples/styles/lv_example_style_11.c b/examples/styles/lv_example_style_11.c
index ccf002ee9c..2693df8505 100644
--- a/examples/styles/lv_example_style_11.c
+++ b/examples/styles/lv_example_style_11.c
@@ -36,7 +36,7 @@ void lv_example_style_11(void)
lv_label_set_text(label, "Base");
lv_obj_center(label);
- /*Create an other object with the base style and earnings style too*/
+ /*Create another object with the base style and earnings style too*/
lv_obj_t * obj_warning = lv_obj_create(lv_scr_act());
lv_obj_add_style(obj_warning, &style_base, 0);
lv_obj_add_style(obj_warning, &style_warning, 0);
diff --git a/examples/styles/lv_example_style_11.py b/examples/styles/lv_example_style_11.py
index 816dbef8de..68f3f11f00 100644
--- a/examples/styles/lv_example_style_11.py
+++ b/examples/styles/lv_example_style_11.py
@@ -32,7 +32,7 @@ label = lv.label(obj_base)
label.set_text("Base")
label.center()
-# Create an other object with the base style and earnings style too
+# Create another object with the base style and earnings style too
obj_warning = lv.obj(lv.scr_act())
obj_warning.add_style(style_base, 0)
obj_warning.add_style(style_warning, 0)
diff --git a/examples/styles/lv_example_style_14.c b/examples/styles/lv_example_style_14.c
index 0510bd6fd7..cdb208639e 100644
--- a/examples/styles/lv_example_style_14.c
+++ b/examples/styles/lv_example_style_14.c
@@ -32,7 +32,7 @@ static void new_theme_init_and_set(void)
lv_theme_set_parent(&th_new, th_act);
lv_theme_set_apply_cb(&th_new, new_theme_apply_cb);
- /*Assign the new theme the the current display*/
+ /*Assign the new theme to the current display*/
lv_disp_set_theme(NULL, &th_new);
}
diff --git a/examples/widgets/bar/lv_example_bar_4.py b/examples/widgets/bar/lv_example_bar_4.py
index 59e5849418..3d534a4b32 100644
--- a/examples/widgets/bar/lv_example_bar_4.py
+++ b/examples/widgets/bar/lv_example_bar_4.py
@@ -25,7 +25,7 @@ def get_icon(filename,xres,yres):
#
img_skew_strip_dsc = get_icon("img_skew_strip",80,20)
-style_indic = lv.style_t()
+style_indic = lv.style_t()
style_indic.init()
style_indic.set_bg_img_src(img_skew_strip_dsc)
diff --git a/examples/widgets/btn/lv_example_btn_2.c b/examples/widgets/btn/lv_example_btn_2.c
index addde71abe..fc32a6c134 100644
--- a/examples/widgets/btn/lv_example_btn_2.c
+++ b/examples/widgets/btn/lv_example_btn_2.c
@@ -35,7 +35,7 @@ void lv_example_btn_2(void)
static lv_style_t style_pr;
lv_style_init(&style_pr);
- /*Ad a large outline when pressed*/
+ /*Add a large outline when pressed*/
lv_style_set_outline_width(&style_pr, 30);
lv_style_set_outline_opa(&style_pr, LV_OPA_TRANSP);
@@ -44,7 +44,7 @@ void lv_example_btn_2(void)
lv_style_set_bg_color(&style_pr, lv_palette_darken(LV_PALETTE_BLUE, 2));
lv_style_set_bg_grad_color(&style_pr, lv_palette_darken(LV_PALETTE_BLUE, 4));
- /*Add a transition to the the outline*/
+ /*Add a transition to the outline*/
static lv_style_transition_dsc_t trans;
static lv_style_prop_t props[] = {LV_STYLE_OUTLINE_WIDTH, LV_STYLE_OUTLINE_OPA, 0};
lv_style_transition_dsc_init(&trans, props, lv_anim_path_linear, 300, 0, NULL);
diff --git a/examples/widgets/btn/lv_example_btn_2.py b/examples/widgets/btn/lv_example_btn_2.py
index a4f859bd1f..38c09a1eda 100644
--- a/examples/widgets/btn/lv_example_btn_2.py
+++ b/examples/widgets/btn/lv_example_btn_2.py
@@ -40,7 +40,7 @@ style_pr.set_shadow_ofs_y(3)
style_pr.set_bg_color(lv.palette_darken(lv.PALETTE.BLUE, 2))
style_pr.set_bg_grad_color(lv.palette_darken(lv.PALETTE.BLUE, 4))
-# Add a transition to the the outline
+# Add a transition to the outline
trans = lv.style_transition_dsc_t()
props = [lv.STYLE.OUTLINE_WIDTH, lv.STYLE.OUTLINE_OPA, 0]
trans.init(props, lv.anim_t.path_linear, 300, 0, None)
diff --git a/examples/widgets/btnmatrix/lv_example_btnmatrix_2.c b/examples/widgets/btnmatrix/lv_example_btnmatrix_2.c
index df13bbf42c..5f42d5dbeb 100644
--- a/examples/widgets/btnmatrix/lv_example_btnmatrix_2.c
+++ b/examples/widgets/btnmatrix/lv_example_btnmatrix_2.c
@@ -60,7 +60,7 @@ static void event_cb(lv_event_t * e)
}
/**
- * Add custom drawer to the button matrix to customize butons one by one
+ * Add custom drawer to the button matrix to customize buttons one by one
*/
void lv_example_btnmatrix_2(void)
{
diff --git a/examples/widgets/canvas/lv_example_canvas_1.c b/examples/widgets/canvas/lv_example_canvas_1.c
index fb408d6c07..6dd9ab0d2c 100644
--- a/examples/widgets/canvas/lv_example_canvas_1.c
+++ b/examples/widgets/canvas/lv_example_canvas_1.c
@@ -36,7 +36,7 @@ void lv_example_canvas_1(void)
lv_canvas_draw_text(canvas, 40, 20, 100, &label_dsc, "Some text on text canvas");
- /*Test the rotation. It requires an other buffer where the orignal image is stored.
+ /*Test the rotation. It requires another buffer where the original image is stored.
*So copy the current image to buffer and rotate it to the canvas*/
static lv_color_t cbuf_tmp[CANVAS_WIDTH * CANVAS_HEIGHT];
memcpy(cbuf_tmp, cbuf, sizeof(cbuf_tmp));
diff --git a/examples/widgets/canvas/lv_example_canvas_1.py b/examples/widgets/canvas/lv_example_canvas_1.py
index 5a3da3b23e..d07cee4bb2 100644
--- a/examples/widgets/canvas/lv_example_canvas_1.py
+++ b/examples/widgets/canvas/lv_example_canvas_1.py
@@ -1,5 +1,5 @@
-_CANVAS_WIDTH = 200
-_CANVAS_HEIGHT = 150
+_CANVAS_WIDTH = 200
+_CANVAS_HEIGHT = 150
LV_IMG_ZOOM_NONE = 256
rect_dsc = lv.draw_rect_dsc_t()
@@ -30,7 +30,7 @@ canvas.fill_bg(lv.palette_lighten(lv.PALETTE.GREY, 3), lv.OPA.COVER)
canvas.draw_rect(70, 60, 100, 70, rect_dsc)
canvas.draw_text(40, 20, 100, label_dsc, "Some text on text canvas")
-# Test the rotation. It requires an other buffer where the original image is stored.
+# Test the rotation. It requires another buffer where the original image is stored.
# So copy the current image to buffer and rotate it to the canvas
img = lv.img_dsc_t()
diff --git a/examples/widgets/chart/lv_example_chart_3.c b/examples/widgets/chart/lv_example_chart_3.c
index 8291c008c1..4a750b89e3 100644
--- a/examples/widgets/chart/lv_example_chart_3.c
+++ b/examples/widgets/chart/lv_example_chart_3.c
@@ -54,7 +54,7 @@ void lv_example_chart_3(void)
lv_chart_set_next_value(chart, ser1, 22);
lv_chart_set_next_value(chart, ser1, 58);
- lv_coord_t * ser2_array = lv_chart_get_y_array(chart, ser2);
+ lv_coord_t * ser2_array = lv_chart_get_y_array(chart, ser2);
/*Directly set points on 'ser2'*/
ser2_array[0] = 92;
ser2_array[1] = 71;
diff --git a/examples/widgets/chart/lv_example_chart_3.py b/examples/widgets/chart/lv_example_chart_3.py
index 1d563cabd7..6dc125961f 100644
--- a/examples/widgets/chart/lv_example_chart_3.py
+++ b/examples/widgets/chart/lv_example_chart_3.py
@@ -46,7 +46,7 @@ chart.set_next_value(ser1, 22)
chart.set_next_value(ser1, 58)
# Directly set points on 'ser2'
-ser2.y_points = [92,71,61,15,21,35,35,58,31,53,33,73]
+ser2.y_points = [92,71,61,15,21,35,35,58,31,53,33,73]
-chart.refresh() #Required after direct set
+chart.refresh() # Required after direct set
diff --git a/examples/widgets/chart/lv_example_chart_8.c b/examples/widgets/chart/lv_example_chart_8.c
index 164903bc0f..6561da249a 100644
--- a/examples/widgets/chart/lv_example_chart_8.c
+++ b/examples/widgets/chart/lv_example_chart_8.c
@@ -39,7 +39,7 @@ static void draw_event_cb(lv_event_t *e)
a.x1 = dsc->p1->x;
a.x2 = dsc->p2->x;
a.y1 = LV_MIN(dsc->p1->y, dsc->p2->y);
- a.y2 = obj->coords.y2 - 13; /* -13 cuts off where the rectangle draws over the chart margin. Without this an area of 0 doesnt look like 0 */
+ a.y2 = obj->coords.y2 - 13; /* -13 cuts off where the rectangle draws over the chart margin. Without this an area of 0 doesn't look like 0 */
lv_draw_rect(dsc->draw_ctx, &draw_rect_dsc, &a);
/*Remove the mask*/
@@ -119,7 +119,7 @@ void lv_example_chart_8(void)
/* Draw to the series in the reverse order to which they were initialised.
Without this the higher values will draw on top of the lower ones.
- This is because the Z-height of a series matches the order it was initialsied */
+ This is because the Z-height of a series matches the order it was initialised */
lv_chart_set_next_value(stacked_area_chart.obj, stacked_area_chart.series_list[3 - series_index - 1], draw_heights[series_index]);
}
}
diff --git a/examples/widgets/chart/lv_example_chart_8.py b/examples/widgets/chart/lv_example_chart_8.py
index c080df87ae..8bc0f2ca03 100644
--- a/examples/widgets/chart/lv_example_chart_8.py
+++ b/examples/widgets/chart/lv_example_chart_8.py
@@ -40,7 +40,7 @@ def draw_event_cb(e):
a.x1 = dsc.p1.x
a.x2 = dsc.p2.x
a.y1 = min(dsc.p1.y, dsc.p2.y)
- a.y2 = cont_a.y2 - 13 # -13 cuts off where the rectangle draws over the chart margin. Without this an area of 0 doesnt look like 0
+ a.y2 = cont_a.y2 - 13 # -13 cuts off where the rectangle draws over the chart margin. Without this an area of 0 doesn't look like 0
lv.draw_rect(a, dsc.clip_area, draw_rect_dsc)
# Remove the mask
@@ -116,7 +116,7 @@ def lv_example_chart_8():
# Draw to the series in the reverse order to which they were initialised.
# Without this the higher values will draw on top of the lower ones.
- # This is because the Z-height of a series matches the order it was initialsied
+ # This is because the Z-height of a series matches the order it was initialised
stacked_area_chart.obj.set_next_value( stacked_area_chart.series_list[3 - series_index - 1], draw_heights[series_index])
stacked_area_chart.obj.refresh()
diff --git a/examples/widgets/checkbox/lv_example_checkbox_2.c b/examples/widgets/checkbox/lv_example_checkbox_2.c
index 9c4ca89412..46391ec539 100644
--- a/examples/widgets/checkbox/lv_example_checkbox_2.c
+++ b/examples/widgets/checkbox/lv_example_checkbox_2.c
@@ -17,7 +17,7 @@ static void radio_event_handler(lv_event_t * e)
if(act_cb == cont) return;
lv_obj_clear_state(old_cb, LV_STATE_CHECKED); /*Uncheck the previous radio button*/
- lv_obj_add_state(act_cb, LV_STATE_CHECKED); /*Uncheck the curernt radio button*/
+ lv_obj_add_state(act_cb, LV_STATE_CHECKED); /*Uncheck the current radio button*/
*active_id = lv_obj_get_index(act_cb);
diff --git a/examples/widgets/meter/lv_example_meter_3.c b/examples/widgets/meter/lv_example_meter_3.c
index b41058280a..6b51f851e1 100644
--- a/examples/widgets/meter/lv_example_meter_3.c
+++ b/examples/widgets/meter/lv_example_meter_3.c
@@ -23,7 +23,7 @@ void lv_example_meter_3(void)
lv_meter_set_scale_ticks(meter, scale_min, 61, 1, 10, lv_palette_main(LV_PALETTE_GREY));
lv_meter_set_scale_range(meter, scale_min, 0, 60, 360, 270);
- /*Create an other scale for the hours. It's only visual and contains only major ticks*/
+ /*Create another scale for the hours. It's only visual and contains only major ticks*/
lv_meter_scale_t * scale_hour = lv_meter_add_scale(meter);
lv_meter_set_scale_ticks(meter, scale_hour, 12, 0, 0, lv_palette_main(LV_PALETTE_GREY)); /*12 ticks*/
lv_meter_set_scale_major_ticks(meter, scale_hour, 1, 2, 20, lv_color_black(), 10); /*Every tick is major*/
diff --git a/examples/widgets/meter/lv_example_meter_3.py b/examples/widgets/meter/lv_example_meter_3.py
index d93ebde2c3..7f0e7f9125 100644
--- a/examples/widgets/meter/lv_example_meter_3.py
+++ b/examples/widgets/meter/lv_example_meter_3.py
@@ -51,7 +51,7 @@ scale_min = meter.add_scale()
meter.set_scale_ticks(scale_min, 61, 1, 10, lv.palette_main(lv.PALETTE.GREY))
meter.set_scale_range(scale_min, 0, 60, 360, 270)
-# Create an other scale for the hours. It's only visual and contains only major ticks
+# Create another scale for the hours. It's only visual and contains only major ticks
scale_hour = meter.add_scale()
meter.set_scale_ticks(scale_hour, 12, 0, 0, lv.palette_main(lv.PALETTE.GREY)) # 12 ticks
meter.set_scale_major_ticks(scale_hour, 1, 2, 20, lv.color_black(), 10) # Every tick is major
@@ -59,7 +59,7 @@ meter.set_scale_range(scale_hour, 1, 12, 330, 300) #
# LV_IMG_DECLARE(img_hand)
-# Add a the hands from images
+# Add the hands from images
indic_min = meter.add_needle_img(scale_min, img_hand_min_dsc, 5, 5)
indic_hour = meter.add_needle_img(scale_min, img_hand_hour_dsc, 5, 5)
diff --git a/examples/widgets/roller/lv_example_roller_2.py b/examples/widgets/roller/lv_example_roller_2.py
index 9cbf6084bb..08e5e2950f 100644
--- a/examples/widgets/roller/lv_example_roller_2.py
+++ b/examples/widgets/roller/lv_example_roller_2.py
@@ -1,5 +1,6 @@
import fs_driver
+
def event_handler(e):
code = e.get_code()
obj = e.get_target()
@@ -13,7 +14,7 @@ def event_handler(e):
#
# A style to make the selected option larger
-style_sel = lv.style_t()
+style_sel = lv.style_t()
style_sel.init()
try:
@@ -38,7 +39,7 @@ roller.align(lv.ALIGN.LEFT_MID, 10, 0)
roller.add_event_cb(event_handler, lv.EVENT.ALL, None)
roller.set_selected(2, lv.ANIM.OFF)
-# A roller on the middle with center aligned text, and auto (default) width
+# A roller in the middle with center aligned text, and auto (default) width
roller = lv.roller(lv.scr_act())
roller.set_options(opts, lv.roller.MODE.NORMAL)
roller.set_visible_row_count(3)
@@ -57,4 +58,3 @@ roller.set_style_text_align(lv.TEXT_ALIGN.RIGHT, 0)
roller.align(lv.ALIGN.RIGHT_MID, -10, 0)
roller.add_event_cb(event_handler, lv.EVENT.ALL, None)
roller.set_selected(8, lv.ANIM.OFF)
-
diff --git a/examples/widgets/roller/lv_example_roller_3.py b/examples/widgets/roller/lv_example_roller_3.py
index a74bb6b575..be073dcbc1 100644
--- a/examples/widgets/roller/lv_example_roller_3.py
+++ b/examples/widgets/roller/lv_example_roller_3.py
@@ -10,7 +10,7 @@ class Lv_Roller_3():
#
# Add a fade mask to roller.
#
- style = lv.style_t()
+ style = lv.style_t()
style.init()
style.set_bg_color(lv.color_black())
style.set_text_color(lv.color_white())
diff --git a/examples/widgets/slider/lv_example_slider_2.py b/examples/widgets/slider/lv_example_slider_2.py
index d7ef967572..1dd916a023 100644
--- a/examples/widgets/slider/lv_example_slider_2.py
+++ b/examples/widgets/slider/lv_example_slider_2.py
@@ -7,7 +7,7 @@ transition_dsc = lv.style_transition_dsc_t()
transition_dsc.init(props, lv.anim_t.path_linear, 300, 0, None)
style_main = lv.style_t()
-style_indicator = lv.style_t()
+style_indicator = lv.style_t()
style_knob = lv.style_t()
style_pressed_color = lv.style_t()
style_main.init()
diff --git a/examples/widgets/table/lv_example_table_1.py b/examples/widgets/table/lv_example_table_1.py
index 90d37afff3..7faf004955 100644
--- a/examples/widgets/table/lv_example_table_1.py
+++ b/examples/widgets/table/lv_example_table_1.py
@@ -48,6 +48,6 @@ table.set_cell_value(7, 1, "$9")
table.set_height(200)
table.center()
-# Add an event callback to to apply some custom drawing
+# Add an event callback to apply some custom drawing
table.add_event_cb(draw_part_event_cb, lv.EVENT.DRAW_PART_BEGIN, None)
diff --git a/examples/widgets/table/lv_example_table_2.c b/examples/widgets/table/lv_example_table_2.c
index f2e1b70935..4e02c688ee 100644
--- a/examples/widgets/table/lv_example_table_2.c
+++ b/examples/widgets/table/lv_example_table_2.c
@@ -19,7 +19,7 @@ static void draw_event_cb(lv_event_t * e)
lv_area_t sw_area;
sw_area.x1 = dsc->draw_area->x2 - 50;
sw_area.x2 = sw_area.x1 + 40;
- sw_area.y1 = dsc->draw_area->y1 + lv_area_get_height(dsc->draw_area) / 2 - 10;
+ sw_area.y1 = dsc->draw_area->y1 + lv_area_get_height(dsc->draw_area) / 2 - 10;
sw_area.y2 = sw_area.y1 + 20;
lv_draw_rect(dsc->draw_ctx, &rect_dsc, &sw_area);
diff --git a/examples/widgets/table/lv_example_table_2.py b/examples/widgets/table/lv_example_table_2.py
index e99206e1ca..ec54d50fb5 100644
--- a/examples/widgets/table/lv_example_table_2.py
+++ b/examples/widgets/table/lv_example_table_2.py
@@ -80,7 +80,7 @@ for i in range(ITEM_CNT):
table.align(lv.ALIGN.CENTER, 0, -20)
-# Add an event callback to to apply some custom drawing
+# Add an event callback to apply some custom drawing
table.add_event_cb(draw_event_cb, lv.EVENT.DRAW_PART_END, None)
table.add_event_cb(change_event_cb, lv.EVENT.VALUE_CHANGED, None)
diff --git a/examples/widgets/textarea/lv_example_textarea_1.py b/examples/widgets/textarea/lv_example_textarea_1.py
index d828fd681e..5363a00165 100644
--- a/examples/widgets/textarea/lv_example_textarea_1.py
+++ b/examples/widgets/textarea/lv_example_textarea_1.py
@@ -1,21 +1,22 @@
-def textarea_event_handler(e,ta):
+def textarea_event_handler(e, ta):
print("Enter was pressed. The current text is: " + ta.get_text())
-
-def btnm_event_handler(e,ta):
+
+def btnm_event_handler(e, ta):
obj = e.get_target()
txt = obj.get_btn_text(obj.get_selected_btn())
if txt == lv.SYMBOL.BACKSPACE:
ta.del_char()
elif txt == lv.SYMBOL.NEW_LINE:
- lv.event_send(ta,lv.EVENT.READY,None)
+ lv.event_send(ta, lv.EVENT.READY, None)
elif txt:
ta.add_text(txt)
+
ta = lv.textarea(lv.scr_act())
ta.set_one_line(True)
ta.align(lv.ALIGN.TOP_MID, 0, 10)
-ta.add_event_cb(lambda e: textarea_event_handler(e,ta), lv.EVENT.READY, None)
+ta.add_event_cb(lambda e: textarea_event_handler(e, ta), lv.EVENT.READY, None)
ta.add_state(lv.STATE.FOCUSED) # To be sure the cursor is visible
btnm_map = ["1", "2", "3", "\n",
@@ -26,7 +27,6 @@ btnm_map = ["1", "2", "3", "\n",
btnm = lv.btnmatrix(lv.scr_act())
btnm.set_size(200, 150)
btnm.align(lv.ALIGN.BOTTOM_MID, 0, -10)
-btnm.add_event_cb(lambda e: btnm_event_handler(e,ta), lv.EVENT.VALUE_CHANGED, None)
+btnm.add_event_cb(lambda e: btnm_event_handler(e, ta), lv.EVENT.VALUE_CHANGED, None)
btnm.clear_flag(lv.obj.FLAG.CLICK_FOCUSABLE) # To keep the text area focused on button clicks
btnm.set_map(btnm_map)
-
diff --git a/examples/widgets/tileview/lv_example_tileview_1.c b/examples/widgets/tileview/lv_example_tileview_1.c
index b24eb0afec..c153d013b5 100644
--- a/examples/widgets/tileview/lv_example_tileview_1.c
+++ b/examples/widgets/tileview/lv_example_tileview_1.c
@@ -4,7 +4,7 @@
/**
* Create a 2x2 tile view and allow scrolling only in an "L" shape.
* Demonstrate scroll chaining with a long list that
- * scrolls the tile view when it cant't be scrolled further.
+ * scrolls the tile view when it can't be scrolled further.
*/
void lv_example_tileview_1(void)
{
@@ -29,7 +29,7 @@ void lv_example_tileview_1(void)
lv_obj_center(btn);
/*Tile3: a list*/
- lv_obj_t * tile3 = lv_tileview_add_tile(tv, 1, 1, LV_DIR_LEFT);
+ lv_obj_t * tile3 = lv_tileview_add_tile(tv, 1, 1, LV_DIR_LEFT);
lv_obj_t * list = lv_list_create(tile3);
lv_obj_set_size(list, LV_PCT(100), LV_PCT(100));
diff --git a/examples/widgets/tileview/lv_example_tileview_1.py b/examples/widgets/tileview/lv_example_tileview_1.py
index cf1767c9b4..2e8b67c362 100644
--- a/examples/widgets/tileview/lv_example_tileview_1.py
+++ b/examples/widgets/tileview/lv_example_tileview_1.py
@@ -1,7 +1,7 @@
#
# Create a 2x2 tile view and allow scrolling only in an "L" shape.
# Demonstrate scroll chaining with a long list that
-# scrolls the tile view when it cant't be scrolled further.
+# scrolls the tile view when it can't be scrolled further.
#
tv = lv.tileview(lv.scr_act())
@@ -23,7 +23,7 @@ btn.set_size(lv.SIZE.CONTENT, lv.SIZE.CONTENT)
btn.center()
# Tile3: a list
-tile3 = tv.add_tile(1, 1, lv.DIR.LEFT)
+tile3 = tv.add_tile(1, 1, lv.DIR.LEFT)
list = lv.list(tile3)
list.set_size(lv.pct(100), lv.pct(100))
@@ -37,4 +37,3 @@ list.add_btn(None, "Seven")
list.add_btn(None, "Eight")
list.add_btn(None, "Nine")
list.add_btn(None, "Ten")
-
diff --git a/examples/widgets/win/lv_example_win_1.c b/examples/widgets/win/lv_example_win_1.c
index ba0385f14e..bf49e54b95 100644
--- a/examples/widgets/win/lv_example_win_1.c
+++ b/examples/widgets/win/lv_example_win_1.c
@@ -23,8 +23,8 @@ void lv_example_win_1(void)
btn = lv_win_add_btn(win, LV_SYMBOL_CLOSE, 60);
lv_obj_add_event_cb(btn, event_handler, LV_EVENT_CLICKED, NULL);
- lv_obj_t * cont = lv_win_get_content(win); /*Content can be aded here*/
- lv_obj_t * label = lv_label_create(cont);
+ lv_obj_t * cont = lv_win_get_content(win); /*Content can be added here*/
+ lv_obj_t * label = lv_label_create(cont);
lv_label_set_text(label, "This is\n"
"a pretty\n"
"long text\n"
diff --git a/examples/widgets/win/lv_example_win_1.py b/examples/widgets/win/lv_example_win_1.py
index e5f6e67606..6d67191aae 100644
--- a/examples/widgets/win/lv_example_win_1.py
+++ b/examples/widgets/win/lv_example_win_1.py
@@ -4,17 +4,18 @@ def event_handler(e):
if code == lv.EVENT.CLICKED:
print("Button {:d} clicked".format(obj.get_child_id()))
+
win = lv.win(lv.scr_act(), 60)
btn1 = win.add_btn(lv.SYMBOL.LEFT, 40)
-btn1.add_event_cb(event_handler,lv.EVENT.ALL, None)
+btn1.add_event_cb(event_handler, lv.EVENT.ALL, None)
win.add_title("A title")
btn2=win.add_btn(lv.SYMBOL.RIGHT, 40)
-btn2.add_event_cb(event_handler,lv.EVENT.ALL, None)
+btn2.add_event_cb(event_handler, lv.EVENT.ALL, None)
btn3 = win.add_btn(lv.SYMBOL.CLOSE, 60)
-btn3.add_event_cb(event_handler,lv.EVENT.ALL, None)
+btn3.add_event_cb(event_handler, lv.EVENT.ALL, None)
-cont = win.get_content() #Content can be aded here
-label = lv.label(cont)
+cont = win.get_content() # Content can be added here
+label = lv.label(cont)
label.set_text("""This is
a pretty
long text
@@ -33,4 +34,3 @@ text to be
sure it
overflows.
""")
-
diff --git a/lv_conf_template.h b/lv_conf_template.h
index a11643bceb..ef3385c0d5 100644
--- a/lv_conf_template.h
+++ b/lv_conf_template.h
@@ -295,7 +295,7 @@
/*Attribute to mark large constant arrays for example font's bitmaps*/
#define LV_ATTRIBUTE_LARGE_CONST
-/*Complier prefix for a big array declaration in RAM*/
+/*Compiler prefix for a big array declaration in RAM*/
#define LV_ATTRIBUTE_LARGE_RAM_ARRAY
/*Place performance critical functions into a faster memory (e.g RAM)*/
@@ -342,7 +342,7 @@
/*Demonstrate special features*/
#define LV_FONT_MONTSERRAT_12_SUBPX 0
#define LV_FONT_MONTSERRAT_28_COMPRESSED 0 /*bpp = 3*/
-#define LV_FONT_DEJAVU_16_PERSIAN_HEBREW 0 /*Hebrew, Arabic, Perisan letters and all their forms*/
+#define LV_FONT_DEJAVU_16_PERSIAN_HEBREW 0 /*Hebrew, Arabic, Persian letters and all their forms*/
#define LV_FONT_SIMSUN_16_CJK 0 /*1000 most common CJK radicals*/
/*Pixel perfect monospace fonts*/
diff --git a/scripts/lv_conf_internal_gen.py b/scripts/lv_conf_internal_gen.py
index 1a2a1627f1..3801a07e58 100755
--- a/scripts/lv_conf_internal_gen.py
+++ b/scripts/lv_conf_internal_gen.py
@@ -129,7 +129,7 @@ for line in fin.read().splitlines():
)
elif re.search('^ *typedef .*;.*$', line):
- continue #ignore typedefs to avoide redeclaration
+ continue #ignore typedefs to avoid redeclaration
else:
fout.write(f'{line}\n')
@@ -145,7 +145,7 @@ LV_EXPORT_CONST_INT(LV_DPI_DEF);
#undef _LV_KCONFIG_PRESENT
-/*Set some defines if a dependecy is disabled*/
+/*Set some defines if a dependency is disabled*/
#if LV_USE_LOG == 0
#define LV_LOG_LEVEL LV_LOG_LEVEL_NONE
#define LV_LOG_TRACE_MEM 0
diff --git a/scripts/release/patch.py b/scripts/release/patch.py
index 41da455ded..1100a38a3b 100755
--- a/scripts/release/patch.py
+++ b/scripts/release/patch.py
@@ -1,11 +1,11 @@
#!/usr/bin/env python3
-# Applies a commit or commits on baranch or branches
+# Applies a commit or commits on branch or branches
# USAGE:
# patch.py -c -b [-p] [-t]
# - : list of commit SHAs to apply.
# - : branches where the commit should be applied. * can be used as wildchar
-# - p: push the changes to
+# - p: push the changes to
# - t: increment version number and create a tag
@@ -21,7 +21,7 @@ def clone(repo):
com.cmd("git pull origin --tags")
os.chdir("..")
-# Get the list of realted minor version branches
+# Get the list of related minor version branches
#clone("lvgl")
os.chdir("lvgl")
@@ -72,4 +72,3 @@ com.cmd("git tag -a " + t + " -m \"Start " + t + "\"")
if push:
com.cmd("git push origin master --tags")
-
diff --git a/scripts/style_api_gen.py b/scripts/style_api_gen.py
index ece478c33d..5ad874e050 100755
--- a/scripts/style_api_gen.py
+++ b/scripts/style_api_gen.py
@@ -64,7 +64,7 @@ props = [
'style_type': 'num', 'var_type': 'lv_coord_t', 'default':0, 'inherited': 0, 'layout': 1, 'ext_draw': 1,
'dsc': " Rotate image-like objects. Added to the rotation set on the object. The value is interpreted in 0.1 degree unit. E.g. 45 deg. = 450 " },
-{'section': 'Padding', 'dsc':'Properties to describe spacing betwwen the parent\'s sides and the children and among the children. Very similar to the padding properties in HTML.' },
+{'section': 'Padding', 'dsc':'Properties to describe spacing between the parent\'s sides and the children and among the children. Very similar to the padding properties in HTML.' },
{'name': 'PAD_TOP',
'style_type': 'num', 'var_type': 'lv_coord_t', 'default':0, 'inherited': 0, 'layout': 1, 'ext_draw': 0,
'dsc': "Sets the padding on the top. It makes the content area smaller in this direction."},
@@ -149,7 +149,7 @@ props = [
{'name': 'BG_IMG_TILED',
'style_type': 'num', 'var_type': 'bool', 'default':0, 'inherited': 0, 'layout': 0, 'ext_draw': 0,
- 'dsc': "If enbaled the background image will be tiled. The possible values are `true` or `false`."},
+ 'dsc': "If enabled the background image will be tiled. The possible values are `true` or `false`."},
{'section': 'Border', 'dsc':'Properties to describe the borders' },
{'name': 'BORDER_COLOR',
@@ -161,7 +161,7 @@ props = [
{'name': 'BORDER_OPA',
'style_type': 'num', 'var_type': 'lv_opa_t' , 'default':'`LV_OPA_COVER`', 'inherited': 0, 'layout': 0, 'ext_draw': 0,
- 'dsc': "Set the opcitiy of the border. Value 0, `LV_OPA_0` or `LV_OPA_TRANSP` means fully transparent, 256, `LV_OPA_100` or `LV_OPA_COVER` means fully covering, other values or LV_OPA_10, LV_OPA_20, etc means semi transparency."},
+ 'dsc': "Set the opacity of the border. Value 0, `LV_OPA_0` or `LV_OPA_TRANSP` means fully transparent, 256, `LV_OPA_100` or `LV_OPA_COVER` means fully covering, other values or LV_OPA_10, LV_OPA_20, etc means semi transparency."},
{'name': 'BORDER_WIDTH',
'style_type': 'num', 'var_type': 'lv_coord_t' , 'default':0, 'inherited': 0, 'layout': 1, 'ext_draw': 0,
@@ -169,11 +169,11 @@ props = [
{'name': 'BORDER_SIDE',
'style_type': 'num', 'var_type': 'lv_border_side_t', 'default':'`LV_BORDER_SIDE_NONE`', 'inherited': 0, 'layout': 0, 'ext_draw': 0,
- 'dsc': "Set ony which side(s) the border should be drawn. The possible values are `LV_BORDER_SIDE_NONE/TOP/BOTTOM/LEFT/RIGHT/INTERNAL`. OR-ed calues an be used as well, e.g. `LV_BORDER_SIDE_TOP | LV_BORDER_SIDE_LEFT`."},
+ 'dsc': "Set only which side(s) the border should be drawn. The possible values are `LV_BORDER_SIDE_NONE/TOP/BOTTOM/LEFT/RIGHT/INTERNAL`. OR-ed values can be used as well, e.g. `LV_BORDER_SIDE_TOP | LV_BORDER_SIDE_LEFT`."},
{'name': 'BORDER_POST',
'style_type': 'num', 'var_type': 'bool' , 'default':0, 'inherited': 0, 'layout': 0, 'ext_draw': 0,
- 'dsc': "Sets whether the the border should be drawn before or after the children ar drawn. `true`: after children, `false`: before children"},
+ 'dsc': "Sets whether the border should be drawn before or after the children are drawn. `true`: after children, `false`: before children"},
{'section': 'Outline', 'dsc':'Properties to describe the outline. It\'s like a border but drawn outside of the rectangles.' },
{'name': 'OUTLINE_WIDTH',
@@ -210,7 +210,7 @@ props = [
{'name': 'SHADOW_SPREAD',
'style_type': 'num', 'var_type': 'lv_coord_t' , 'default':0, 'inherited': 0, 'layout': 0, 'ext_draw': 1,
- 'dsc': "Make the shadow calcuation to use a larger or smaller rectangle as base. The value can be in pixel to make the area larger/smaller"},
+ 'dsc': "Make the shadow calculation to use a larger or smaller rectangle as base. The value can be in pixel to make the area larger/smaller"},
{'name': 'SHADOW_COLOR',
'style_type': 'color', 'var_type': 'lv_color_t' , 'default':'`0x000000`', 'inherited': 0, 'layout': 0, 'ext_draw': 0,
@@ -270,7 +270,7 @@ props = [
{'section': 'Arc', 'dsc':'TODO' },
{'name': 'ARC_WIDTH',
'style_type': 'num', 'var_type': 'lv_coord_t' , 'default':0, 'inherited': 0, 'layout': 0, 'ext_draw': 1,
- 'dsc': "Set the width (ticjkness) of the arcs in pixel."},
+ 'dsc': "Set the width (thickness) of the arcs in pixel."},
{'name': 'ARC_ROUNDED',
'style_type': 'num', 'var_type': 'bool' , 'default':0, 'inherited': 0, 'layout': 0, 'ext_draw': 0,
@@ -291,7 +291,7 @@ props = [
'style_type': 'ptr', 'var_type': 'const void *', 'default':'`NULL`', 'inherited': 0, 'layout': 0, 'ext_draw': 0,
'dsc': "Set an image from which the arc will be masked out. It's useful to display complex effects on the arcs. Can be a pointer to `lv_img_dsc_t` or a path to a file"},
-{'section': 'Text', 'dsc':'Properties to describe the propeties of text. All these properties are inherited.' },
+{'section': 'Text', 'dsc':'Properties to describe the properties of text. All these properties are inherited.' },
{'name': 'TEXT_COLOR',
'style_type': 'color', 'var_type': 'lv_color_t', 'default':'`0x000000`', 'inherited': 1, 'layout': 0, 'ext_draw': 0,
'dsc': "Sets the color of the text."},
@@ -323,7 +323,7 @@ props = [
'style_type': 'num', 'var_type': 'lv_text_align_t' , 'default':'`LV_TEXT_ALIGN_AUTO`', 'inherited': 1, 'layout': 1, 'ext_draw': 0,
'dsc': "Set how to align the lines of the text. Note that it doesn't align the object itself, only the lines inside the object. The possible values are `LV_TEXT_ALIGN_LEFT/CENTER/RIGHT/AUTO`. `LV_TEXT_ALIGN_AUTO` detect the text base direction and uses left or right alignment accordingly"},
-{'section': 'Miscellaneous', 'dsc':'Mixed proprites for various purposes.' },
+{'section': 'Miscellaneous', 'dsc':'Mixed properties for various purposes.' },
{'name': 'RADIUS',
'style_type': 'num', 'var_type': 'lv_coord_t', 'default':0, 'inherited': 0, 'layout': 0, 'ext_draw': 0,
'dsc': "Set the radius on every corner. The value is interpreted in pixel (>= 0) or `LV_RADIUS_CIRCLE` for max. radius"},
@@ -346,11 +346,11 @@ props = [
{'name': 'ANIM_TIME',
'style_type': 'num', 'var_type': 'uint32_t' , 'default':0, 'inherited': 0, 'layout': 0, 'ext_draw': 0,
- 'dsc': "The animation time in milliseconds. It's meaning is widget specific. E.g. blink time of the cursor on the text area or scroll time of a roller. See the widgets' documentation to learn more."},
+ 'dsc': "The animation time in milliseconds. Its meaning is widget specific. E.g. blink time of the cursor on the text area or scroll time of a roller. See the widgets' documentation to learn more."},
{'name': 'ANIM_SPEED',
'style_type': 'num', 'var_type': 'uint32_t' , 'default':0, 'inherited': 0, 'layout': 0, 'ext_draw': 0,
- 'dsc': "The animation speed in pixel/sec. It's meaning is widget specific. E.g. scroll speed of label. See the widgets' documentation to learn more."},
+ 'dsc': "The animation speed in pixel/sec. Its meaning is widget specific. E.g. scroll speed of label. See the widgets' documentation to learn more."},
{'name': 'TRANSITION',
'style_type': 'ptr', 'var_type': 'const lv_style_transition_dsc_t *' , 'default':'`NULL`', 'inherited': 0, 'layout': 0, 'ext_draw': 0,
@@ -358,7 +358,7 @@ props = [
{'name': 'BLEND_MODE',
'style_type': 'num', 'var_type': 'lv_blend_mode_t' , 'default':'`LV_BLEND_MODE_NORMAL`', 'inherited': 0, 'layout': 0, 'ext_draw': 0,
- 'dsc': "Describes how to blend the colors to the background. The possibel values are `LV_BLEND_MODE_NORMAL/ADDITIVE/SUBTRACTIVE/MULTIPLY`"},
+ 'dsc': "Describes how to blend the colors to the background. The possible values are `LV_BLEND_MODE_NORMAL/ADDITIVE/SUBTRACTIVE/MULTIPLY`"},
{'name': 'LAYOUT',
'style_type': 'num', 'var_type': 'uint16_t', 'default':0, 'inherited': 0, 'layout': 1, 'ext_draw': 0,
@@ -366,7 +366,7 @@ props = [
{'name': 'BASE_DIR',
'style_type': 'num', 'var_type': 'lv_base_dir_t', 'default':'`LV_BASE_DIR_AUTO`', 'inherited': 1, 'layout': 1, 'ext_draw': 0,
- 'dsc': "Set the base direction of the obejct. The possible values are `LV_BIDI_DIR_LTR/RTL/AUTO`."},
+ 'dsc': "Set the base direction of the object. The possible values are `LV_BIDI_DIR_LTR/RTL/AUTO`."},
]
diff --git a/src/core/lv_event.c b/src/core/lv_event.c
index 276dfb72a2..143ff34b87 100644
--- a/src/core/lv_event.c
+++ b/src/core/lv_event.c
@@ -66,7 +66,7 @@ lv_res_t lv_event_send(lv_obj_t * obj, lv_event_code_t event_code, void * param)
e.stop_processing = 0;
/*Build a simple linked list from the objects used in the events
- *It's important to know if an this object was deleted by a nested event
+ *It's important to know if this object was deleted by a nested event
*called from this `event_cb`.*/
e.prev = event_head;
event_head = &e;
diff --git a/src/core/lv_event.h b/src/core/lv_event.h
index 9095a663ca..038570b72e 100644
--- a/src/core/lv_event.h
+++ b/src/core/lv_event.h
@@ -87,7 +87,7 @@ typedef enum {
_LV_EVENT_LAST, /** Number of default events*/
- LV_EVENT_PREPROCESS = 0x80, /** This is a flag that can be set with a event so it's processed
+ LV_EVENT_PREPROCESS = 0x80, /** This is a flag that can be set with an event so it's processed
before the class default event processing */
} lv_event_code_t;
@@ -149,7 +149,7 @@ lv_res_t lv_event_send(struct _lv_obj_t * obj, lv_event_code_t event_code, void
* Used by the widgets internally to call the ancestor widget types's event handler
* @param class_p pointer to the class of the widget (NOT the ancestor class)
* @param e pointer to the event descriptor
- * @return LV_RES_OK: the taget object was not deleted in the event; LV_RES_INV: it was deleted in the event_code
+ * @return LV_RES_OK: the target object was not deleted in the event; LV_RES_INV: it was deleted in the event_code
*/
lv_res_t lv_obj_event_base(const lv_obj_class_t * class_p, lv_event_t * e);
@@ -191,14 +191,14 @@ void * lv_event_get_user_data(lv_event_t * e);
/**
* Stop the event from bubbling.
- * This is only valid when called in the middle of a event processing chain.
+ * This is only valid when called in the middle of an event processing chain.
* @param e pointer to the event descriptor
*/
void lv_event_stop_bubbling(lv_event_t * e);
/**
* Stop processing this event.
- * This is only valid when called in the middle of a event processing chain.
+ * This is only valid when called in the middle of an event processing chain.
* @param e pointer to the event descriptor
*/
void lv_event_stop_processing(lv_event_t * e);
@@ -240,7 +240,7 @@ struct _lv_event_dsc_t * lv_obj_add_event_cb(struct _lv_obj_t * obj, lv_event_cb
/**
* Remove an event handler function for an object.
* @param obj pointer to an object
- * @param event_cb the event function to remove, or `NULL` to remove the the firstly added event callback
+ * @param event_cb the event function to remove, or `NULL` to remove the firstly added event callback
* @return true if any event handlers were removed
*/
bool lv_obj_remove_event_cb(struct _lv_obj_t * obj, lv_event_cb_t event_cb);
@@ -256,7 +256,7 @@ bool lv_obj_remove_event_cb_with_user_data(struct _lv_obj_t * obj, lv_event_cb_t
const void * event_user_data);
/**
- * DEPRACTED because doesn't work if multiple event handlers are added to an object.
+ * DEPRECATED because doesn't work if multiple event handlers are added to an object.
* Remove an event handler function for an object.
* @param obj pointer to an object
* @param event_dsc pointer to an event descriptor to remove (returned by ::lv_obj_add_event_cb)
@@ -265,7 +265,7 @@ bool lv_obj_remove_event_cb_with_user_data(struct _lv_obj_t * obj, lv_event_cb_t
bool lv_obj_remove_event_dsc(struct _lv_obj_t * obj, struct _lv_event_dsc_t * event_dsc);
/**
- * The the user data of an event obejct event callback. Always the first match with `event_cb` will be returned.
+ * The user data of an event object event callback. Always the first match with `event_cb` will be returned.
* @param obj pointer to an object
* @param event_cb the event function
* @return the user_data
diff --git a/src/core/lv_group.c b/src/core/lv_group.c
index 2a5c7cf2f5..3e13b0b796 100644
--- a/src/core/lv_group.c
+++ b/src/core/lv_group.c
@@ -158,8 +158,8 @@ void lv_group_swap_obj(lv_obj_t * obj1, lv_obj_t * obj2)
/*Do not add the object twice*/
lv_obj_t ** obj_i;
_LV_LL_READ(&g1->obj_ll, obj_i) {
- if((*obj_i) == obj1)(*obj_i) = obj2;
- else if((*obj_i) == obj2)(*obj_i) = obj1;
+ if((*obj_i) == obj1)(*obj_i) = obj2;
+ else if((*obj_i) == obj2)(*obj_i) = obj1;
}
if(*g1->obj_focus == obj1) lv_group_focus_obj(obj2);
diff --git a/src/core/lv_indev.c b/src/core/lv_indev.c
index 86796c1ba3..079aa943cd 100644
--- a/src/core/lv_indev.c
+++ b/src/core/lv_indev.c
@@ -724,7 +724,7 @@ static void indev_encoder_proc(lv_indev_t * i, lv_indev_data_t * data)
}
/**
- * Process new points from a input device. indev->state.pressed has to be set
+ * Process new points from an input device. indev->state.pressed has to be set
* @param indev pointer to an input device state
* @param x x coordinate of the next point
* @param y y coordinate of the next point
@@ -1058,7 +1058,7 @@ static void indev_click_focus(_lv_indev_proc_t * proc)
/**
* Handle the gesture of indev_proc_p->types.pointer.act_obj
-* @param indev pointer to a input device state
+* @param indev pointer to an input device state
*/
void indev_gesture(_lv_indev_proc_t * proc)
{
diff --git a/src/core/lv_indev_scroll.c b/src/core/lv_indev_scroll.c
index 5d69753672..96fa2f66d9 100644
--- a/src/core/lv_indev_scroll.c
+++ b/src/core/lv_indev_scroll.c
@@ -100,7 +100,7 @@ void _lv_indev_scroll_throw_handler(_lv_indev_proc_t * proc)
lv_indev_t * indev_act = lv_indev_get_act();
- lv_coord_t scroll_throw = indev_act->driver->scroll_throw;
+ lv_coord_t scroll_throw = indev_act->driver->scroll_throw;
if(lv_obj_has_flag(scroll_obj, LV_OBJ_FLAG_SCROLL_MOMENTUM) == false) {
proc->types.pointer.scroll_throw_vect.y = 0;
@@ -244,7 +244,7 @@ static lv_obj_t * find_scroll_obj(_lv_indev_proc_t * proc)
lv_obj_t * obj_candidate = NULL;
lv_dir_t dir_candidate = LV_DIR_NONE;
lv_indev_t * indev_act = lv_indev_get_act();
- lv_coord_t scroll_limit = indev_act->driver->scroll_limit;
+ lv_coord_t scroll_limit = indev_act->driver->scroll_limit;
/*Go until find a scrollable object in the current direction
*More precisely:
@@ -299,14 +299,14 @@ static lv_obj_t * find_scroll_obj(_lv_indev_proc_t * proc)
*is propagated to this object it can show at least elastic scroll effect.
*But if not hor/ver scrollable do not scroll it at all (so it's not a good candidate)*/
if((st > 0 || sb > 0) &&
- ((up_en && proc->types.pointer.scroll_sum.y >= scroll_limit) ||
+ ((up_en && proc->types.pointer.scroll_sum.y >= scroll_limit) ||
(down_en && proc->types.pointer.scroll_sum.y <= - scroll_limit))) {
obj_candidate = obj_act;
dir_candidate = LV_DIR_VER;
}
if((sl > 0 || sr > 0) &&
- ((left_en && proc->types.pointer.scroll_sum.x >= scroll_limit) ||
+ ((left_en && proc->types.pointer.scroll_sum.x >= scroll_limit) ||
(right_en && proc->types.pointer.scroll_sum.x <= - scroll_limit))) {
obj_candidate = obj_act;
dir_candidate = LV_DIR_HOR;
@@ -541,11 +541,11 @@ static void scroll_limit_diff(_lv_indev_proc_t * proc, lv_coord_t * diff_x, lv_c
static lv_coord_t scroll_throw_predict_y(_lv_indev_proc_t * proc)
{
- lv_coord_t y = proc->types.pointer.scroll_throw_vect.y;
+ lv_coord_t y = proc->types.pointer.scroll_throw_vect.y;
lv_coord_t move = 0;
lv_indev_t * indev_act = lv_indev_get_act();
- lv_coord_t scroll_throw = indev_act->driver->scroll_throw;
+ lv_coord_t scroll_throw = indev_act->driver->scroll_throw;
while(y) {
move += y;
@@ -557,11 +557,11 @@ static lv_coord_t scroll_throw_predict_y(_lv_indev_proc_t * proc)
static lv_coord_t scroll_throw_predict_x(_lv_indev_proc_t * proc)
{
- lv_coord_t x = proc->types.pointer.scroll_throw_vect.x;
+ lv_coord_t x = proc->types.pointer.scroll_throw_vect.x;
lv_coord_t move = 0;
lv_indev_t * indev_act = lv_indev_get_act();
- lv_coord_t scroll_throw = indev_act->driver->scroll_throw;
+ lv_coord_t scroll_throw = indev_act->driver->scroll_throw;
while(x) {
move += x;
diff --git a/src/core/lv_obj_draw.c b/src/core/lv_obj_draw.c
index 99c544e175..ccfd207a5a 100644
--- a/src/core/lv_obj_draw.c
+++ b/src/core/lv_obj_draw.c
@@ -63,12 +63,12 @@ void lv_obj_init_draw_rect_dsc(lv_obj_t * obj, uint32_t part, lv_draw_rect_dsc_t
lv_memcpy(&draw_dsc->bg_grad, grad, sizeof(*grad));
}
else {
- draw_dsc->bg_grad.dir = lv_obj_get_style_bg_grad_dir(obj, part);
+ draw_dsc->bg_grad.dir = lv_obj_get_style_bg_grad_dir(obj, part);
if(draw_dsc->bg_grad.dir != LV_GRAD_DIR_NONE) {
draw_dsc->bg_grad.stops[0].color = lv_obj_get_style_bg_color_filtered(obj, part);
draw_dsc->bg_grad.stops[1].color = lv_obj_get_style_bg_grad_color_filtered(obj, part);
- draw_dsc->bg_grad.stops[0].frac = lv_obj_get_style_bg_main_stop(obj, part);
- draw_dsc->bg_grad.stops[1].frac = lv_obj_get_style_bg_grad_stop(obj, part);
+ draw_dsc->bg_grad.stops[0].frac = lv_obj_get_style_bg_main_stop(obj, part);
+ draw_dsc->bg_grad.stops[1].frac = lv_obj_get_style_bg_grad_stop(obj, part);
}
draw_dsc->bg_grad.dither = lv_obj_get_style_bg_dither_mode(obj, part);
}
diff --git a/src/core/lv_obj_pos.c b/src/core/lv_obj_pos.c
index 67dfd03bf0..92d4bc4d96 100644
--- a/src/core/lv_obj_pos.c
+++ b/src/core/lv_obj_pos.c
@@ -202,7 +202,7 @@ bool lv_obj_refr_size(lv_obj_t * obj)
lv_obj_readjust_scroll(obj, LV_ANIM_OFF);
/*If the object was out of the parent invalidate the new scrollbar area too.
- *If it wasn't out of the parent but out now, also invalidate the srollbars*/
+ *If it wasn't out of the parent but out now, also invalidate the scrollbars*/
bool on2 = _lv_area_is_in(&obj->coords, &parent_fit_area, 0);
if(on1 || (!on1 && on2)) lv_obj_scrollbar_invalidate(parent);
@@ -579,7 +579,7 @@ lv_coord_t lv_obj_get_content_height(const lv_obj_t * obj)
LV_ASSERT_OBJ(obj, MY_CLASS);
lv_coord_t top = lv_obj_get_style_pad_top(obj, LV_PART_MAIN);
- lv_coord_t bottom = lv_obj_get_style_pad_bottom(obj, LV_PART_MAIN);
+ lv_coord_t bottom = lv_obj_get_style_pad_bottom(obj, LV_PART_MAIN);
lv_coord_t border_width = lv_obj_get_style_border_width(obj, LV_PART_MAIN);
return lv_obj_get_height(obj) - top - bottom - 2 * border_width;
diff --git a/src/core/lv_obj_pos.h b/src/core/lv_obj_pos.h
index 9fe7817928..60130398e1 100644
--- a/src/core/lv_obj_pos.h
+++ b/src/core/lv_obj_pos.h
@@ -35,7 +35,7 @@ typedef struct {
**********************/
/**
- * Set the the position of an object relative to the set alignment.
+ * Set the position of an object relative to the set alignment.
* @param obj pointer to an object
* @param x new x coordinate
* @param y new y coordinate
@@ -47,7 +47,7 @@ typedef struct {
void lv_obj_set_pos(struct _lv_obj_t * obj, lv_coord_t x, lv_coord_t y);
/**
- * Set the x coordinate of a object
+ * Set the x coordinate of an object
* @param obj pointer to an object
* @param x new x coordinate
* @note With default alignment it's the distance from the top left corner
@@ -58,7 +58,7 @@ void lv_obj_set_pos(struct _lv_obj_t * obj, lv_coord_t x, lv_coord_t y);
void lv_obj_set_x(struct _lv_obj_t * obj, lv_coord_t x);
/**
- * Set the y coordinate of a object
+ * Set the y coordinate of an object
* @param obj pointer to an object
* @param y new y coordinate
* @note With default alignment it's the distance from the top left corner
@@ -153,7 +153,7 @@ void lv_obj_mark_layout_as_dirty(struct _lv_obj_t * obj);
void lv_obj_update_layout(const struct _lv_obj_t * obj);
/**
- * Regsiter a new layout
+ * Register a new layout
* @param cb the layout update callback
* @param user_data custom data that will be passed to `cb`
* @return the ID of the new layout
diff --git a/src/core/lv_obj_style.c b/src/core/lv_obj_style.c
index b8eef34b17..82e1ebba25 100644
--- a/src/core/lv_obj_style.c
+++ b/src/core/lv_obj_style.c
@@ -269,7 +269,7 @@ lv_res_t lv_obj_get_local_style_prop(lv_obj_t * obj, lv_style_prop_t prop, lv_st
uint32_t i;
for(i = 0; i < obj->style_cnt; i++) {
if(obj->styles[i].is_local &&
- obj->styles[i].selector == selector) {
+ obj->styles[i].selector == selector) {
return lv_style_get_prop(obj->styles[i].style, prop, value);
}
}
diff --git a/src/core/lv_obj_style.h b/src/core/lv_obj_style.h
index 35d16a7155..7fb2723c89 100644
--- a/src/core/lv_obj_style.h
+++ b/src/core/lv_obj_style.h
@@ -214,13 +214,13 @@ static inline void lv_obj_set_style_pad_ver(struct _lv_obj_t * obj, lv_coord_t v
lv_obj_set_style_pad_bottom(obj, value, selector);
}
-static inline void lv_obj_set_style_pad_gap(struct _lv_obj_t * obj, lv_coord_t value, lv_style_selector_t selector)
+static inline void lv_obj_set_style_pad_gap(struct _lv_obj_t * obj, lv_coord_t value, lv_style_selector_t selector)
{
lv_obj_set_style_pad_row(obj, value, selector);
lv_obj_set_style_pad_column(obj, value, selector);
}
-static inline void lv_obj_set_style_size(struct _lv_obj_t * obj, lv_coord_t value, lv_style_selector_t selector)
+static inline void lv_obj_set_style_size(struct _lv_obj_t * obj, lv_coord_t value, lv_style_selector_t selector)
{
lv_obj_set_style_width(obj, value, selector);
lv_obj_set_style_height(obj, value, selector);
diff --git a/src/draw/lv_draw.h b/src/draw/lv_draw.h
index d4a9f6fd10..8e3c6cb945 100644
--- a/src/draw/lv_draw.h
+++ b/src/draw/lv_draw.h
@@ -48,7 +48,7 @@ typedef struct _lv_draw_ctx_t {
void * buf;
/**
- * The the position and size of `buf` (absolute coordinates)
+ * The position and size of `buf` (absolute coordinates)
*/
lv_area_t * buf_area;
@@ -86,7 +86,7 @@ typedef struct _lv_draw_ctx_t {
void (*draw_bg)(struct _lv_draw_ctx_t * draw_ctx, const lv_draw_rect_dsc_t * draw_dsc, const lv_area_t * coords);
/**
- * Wait until all background operation are finished. (E.g. GPU opertions)
+ * Wait until all background operations are finished. (E.g. GPU operations)
*/
void (*wait_for_finish)(struct _lv_draw_ctx_t * draw);
diff --git a/src/draw/lv_draw_label.c b/src/draw/lv_draw_label.c
index 942c609f5e..8569c7dd09 100644
--- a/src/draw/lv_draw_label.c
+++ b/src/draw/lv_draw_label.c
@@ -111,7 +111,7 @@ LV_ATTRIBUTE_FAST_MEM void lv_draw_label(lv_draw_ctx_t * draw_ctx, const lv_draw
w = lv_area_get_width(coords);
}
else {
- /*If EXAPND is enabled then not limit the text's width to the object's width*/
+ /*If EXPAND is enabled then not limit the text's width to the object's width*/
lv_point_t p;
lv_txt_get_size(&p, txt, dsc->font, dsc->letter_space, dsc->line_space, LV_COORD_MAX,
dsc->flag);
diff --git a/src/draw/lv_draw_mask.c b/src/draw/lv_draw_mask.c
index 2c8a7e3fe1..430fd56ae3 100644
--- a/src/draw/lv_draw_mask.c
+++ b/src/draw/lv_draw_mask.c
@@ -259,10 +259,10 @@ bool lv_draw_mask_is_any(const lv_area_t * a)
uint8_t i;
for(i = 0; i < _LV_MASK_MAX_NUM; i++) {
- _lv_draw_mask_common_dsc_t * comm_param = LV_GC_ROOT(_lv_draw_mask_list[i]).param;
+ _lv_draw_mask_common_dsc_t * comm_param = LV_GC_ROOT(_lv_draw_mask_list[i]).param;
if(comm_param == NULL) continue;
if(comm_param->type == LV_DRAW_MASK_TYPE_RADIUS) {
- lv_draw_mask_radius_param_t * radius_param = LV_GC_ROOT(_lv_draw_mask_list[i]).param;
+ lv_draw_mask_radius_param_t * radius_param = LV_GC_ROOT(_lv_draw_mask_list[i]).param;
if(radius_param->cfg.outer) {
if(!_lv_area_is_out(a, &radius_param->cfg.rect, radius_param->cfg.radius)) return true;
}
@@ -1077,7 +1077,7 @@ LV_ATTRIBUTE_FAST_MEM static lv_draw_mask_res_t lv_draw_mask_radius(lv_opa_t * m
(abs_y >= rect.y1 + radius && abs_y <= rect.y2 - radius)) {
if(outer == false) {
/*Remove the edges*/
- int32_t last = rect.x1 - abs_x;
+ int32_t last = rect.x1 - abs_x;
if(last > len) return LV_DRAW_MASK_RES_TRANSP;
if(last >= 0) {
lv_memset_00(&mask_buf[0], last);
@@ -1095,7 +1095,7 @@ LV_ATTRIBUTE_FAST_MEM static lv_draw_mask_res_t lv_draw_mask_radius(lv_opa_t * m
int32_t first = rect.x1 - abs_x;
if(first < 0) first = 0;
if(first <= len) {
- int32_t last = rect.x2 - abs_x - first + 1;
+ int32_t last = rect.x2 - abs_x - first + 1;
if(first + last > len) last = len - first;
if(last >= 0) {
lv_memset_00(&mask_buf[first], last);
@@ -1380,10 +1380,10 @@ static void circ_calc_aa4(_lv_draw_mask_radius_circle_dsc_t * c, lv_coord_t radi
/*Special case, handle manually*/
if(radius == 1) {
- c->cir_opa[0] = 180;
- c->opa_start_on_y[0] = 0;
- c->opa_start_on_y[1] = 1;
- c->x_start_on_y[0] = 0;
+ c->cir_opa[0] = 180;
+ c->opa_start_on_y[0] = 0;
+ c->opa_start_on_y[1] = 1;
+ c->x_start_on_y[0] = 0;
return;
}
diff --git a/src/draw/lv_img_buf.c b/src/draw/lv_img_buf.c
index 07ea03c52e..a6d0efc36a 100644
--- a/src/draw/lv_img_buf.c
+++ b/src/draw/lv_img_buf.c
@@ -667,7 +667,7 @@ bool _lv_img_buf_transform_anti_alias(lv_img_transform_dsc_t * dsc)
xr = xs_fract + 0x80;
}
else if(xs_fract > 0x90) {
- xn = 1;
+ xn = 1;
if(dsc->tmp.xs_int + xn >= dsc->cfg.src_w) xn = 0;
xr = (0xFF - xs_fract) + 0x80;
}
@@ -686,7 +686,7 @@ bool _lv_img_buf_transform_anti_alias(lv_img_transform_dsc_t * dsc)
yr = ys_fract + 0x80;
}
else if(ys_fract > 0x90) {
- yn = 1;
+ yn = 1;
if(dsc->tmp.ys_int + yn >= dsc->cfg.src_h) yn = 0;
yr = (0xFF - ys_fract) + 0x80;
diff --git a/src/draw/sw/lv_draw_sw.h b/src/draw/sw/lv_draw_sw.h
index da070ea0df..cba5b480b5 100644
--- a/src/draw/sw/lv_draw_sw.h
+++ b/src/draw/sw/lv_draw_sw.h
@@ -51,8 +51,7 @@ void lv_draw_sw_arc(lv_draw_ctx_t * draw_ctx, const lv_draw_arc_dsc_t * dsc, con
void lv_draw_sw_rect(lv_draw_ctx_t * draw_ctx, const lv_draw_rect_dsc_t * dsc, const lv_area_t * coords);
void lv_draw_sw_bg(lv_draw_ctx_t * draw_ctx, const lv_draw_rect_dsc_t * dsc, const lv_area_t * coords);
-
-void lv_draw_sw_letter(lv_draw_ctx_t * draw_ctx, const lv_draw_label_dsc_t * dsc, const lv_point_t * pos_p,
+void lv_draw_sw_letter(lv_draw_ctx_t * draw_ctx, const lv_draw_label_dsc_t * dsc, const lv_point_t * pos_p,
uint32_t letter);
LV_ATTRIBUTE_FAST_MEM void lv_draw_sw_img_decoded(struct _lv_draw_ctx_t * draw_ctx, const lv_draw_img_dsc_t * draw_dsc,
diff --git a/src/draw/sw/lv_draw_sw_arc.c b/src/draw/sw/lv_draw_sw_arc.c
index 775944d7c1..d020fdd4f1 100644
--- a/src/draw/sw/lv_draw_sw_arc.c
+++ b/src/draw/sw/lv_draw_sw_arc.c
@@ -147,7 +147,7 @@ void lv_draw_sw_arc(lv_draw_ctx_t * draw_ctx, const lv_draw_arc_dsc_t * dsc, con
q_dsc.start_quarter = (start_angle / 90) & 0x3;
q_dsc.end_quarter = (end_angle / 90) & 0x3;
q_dsc.width = width;
- q_dsc.draw_dsc = &cir_dsc;
+ q_dsc.draw_dsc = &cir_dsc;
q_dsc.draw_area = &area_out;
q_dsc.draw_ctx = draw_ctx;
diff --git a/src/draw/sw/lv_draw_sw_blend.c b/src/draw/sw/lv_draw_sw_blend.c
index 3ef29cf407..82d0138882 100644
--- a/src/draw/sw/lv_draw_sw_blend.c
+++ b/src/draw/sw/lv_draw_sw_blend.c
@@ -411,7 +411,7 @@ static void fill_blended(lv_color_t * dest_buf, const lv_area_t * dest_area,
lv_opa_t last_mask = LV_OPA_TRANSP;
last_dest_color = dest_buf[0];
lv_opa_t opa_tmp = mask[0] >= LV_OPA_MAX ? opa : (uint32_t)((uint32_t)mask[0] * opa) >> 8;
- last_res_color = blend_fp(color, last_dest_color, opa_tmp);
+ last_res_color = blend_fp(color, last_dest_color, opa_tmp);
for(y = 0; y < h; y++) {
for(x = 0; x < w; x++) {
diff --git a/src/draw/sw/lv_draw_sw_img.c b/src/draw/sw/lv_draw_sw_img.c
index e7129db980..76c308419f 100644
--- a/src/draw/sw/lv_draw_sw_img.c
+++ b/src/draw/sw/lv_draw_sw_img.c
@@ -109,11 +109,11 @@ LV_ATTRIBUTE_FAST_MEM void lv_draw_sw_img_decoded(struct _lv_draw_ctx_t * draw_c
mask_buf[px_i] = px_opa;
if(px_opa) {
#if LV_COLOR_DEPTH == 8 || LV_COLOR_DEPTH == 1
- src_buf_rgb[px_i].full = map_px[0];
+ src_buf_rgb[px_i].full = map_px[0];
#elif LV_COLOR_DEPTH == 16
- src_buf_rgb[px_i].full = map_px[0] + (map_px[1] << 8);
+ src_buf_rgb[px_i].full = map_px[0] + (map_px[1] << 8);
#elif LV_COLOR_DEPTH == 32
- src_buf_rgb[px_i].full = *((uint32_t *)map_px);
+ src_buf_rgb[px_i].full = *((uint32_t *)map_px);
#endif
}
#if LV_COLOR_DEPTH == 32
@@ -243,11 +243,11 @@ LV_ATTRIBUTE_FAST_MEM void lv_draw_sw_img_decoded(struct _lv_draw_ctx_t * draw_c
#if LV_COLOR_DEPTH == 1
c.full = map_px[0];
#elif LV_COLOR_DEPTH == 8
- c.full = map_px[0];
+ c.full = map_px[0];
#elif LV_COLOR_DEPTH == 16
- c.full = map_px[0] + (map_px[1] << 8);
+ c.full = map_px[0] + (map_px[1] << 8);
#elif LV_COLOR_DEPTH == 32
- c.full = *((uint32_t *)map_px);
+ c.full = *((uint32_t *)map_px);
c.ch.alpha = 0xFF;
#endif
if(cf == LV_IMG_CF_TRUE_COLOR_CHROMA_KEYED) {
diff --git a/src/draw/sw/lv_draw_sw_letter.c b/src/draw/sw/lv_draw_sw_letter.c
index a098187a9f..e7578cffb6 100644
--- a/src/draw/sw/lv_draw_sw_letter.c
+++ b/src/draw/sw/lv_draw_sw_letter.c
@@ -470,7 +470,7 @@ static void draw_letter_subpx(lv_draw_ctx_t * draw_ctx, const lv_draw_label_dsc_
#endif
#if LV_COLOR_DEPTH == 32
- res_color.ch.alpha = 0xff;
+ res_color.ch.alpha = 0xff;
#endif
if(font_rgb[0] == 0 && font_rgb[1] == 0 && font_rgb[2] == 0) mask_buf[mask_p] = LV_OPA_TRANSP;
diff --git a/src/draw/sw/lv_draw_sw_polygon.c b/src/draw/sw/lv_draw_sw_polygon.c
index 717728130f..a05b4713e8 100644
--- a/src/draw/sw/lv_draw_sw_polygon.c
+++ b/src/draw/sw/lv_draw_sw_polygon.c
@@ -1,5 +1,5 @@
/**
- * @file lv_draw_polygon.c
+ * @file lv_draw_sw_polygon.c
*
*/
@@ -154,9 +154,9 @@ void lv_draw_sw_polygon(lv_draw_ctx_t * draw_ctx, const lv_draw_rect_dsc_t * dra
if(i_next_right < 0) i_next_right = point_cnt + i_next_right;
}
- if(p[i_next_left].y >= p[i_prev_left].y) {
+ if(p[i_next_left].y >= p[i_prev_left].y) {
if(p[i_next_left].y != p[i_prev_left].y &&
- p[i_next_left].x != p[i_prev_left].x) {
+ p[i_next_left].x != p[i_prev_left].x) {
lv_draw_mask_line_points_init(mp_next, p[i_prev_left].x, p[i_prev_left].y,
p[i_next_left].x, p[i_next_left].y,
LV_DRAW_MASK_LINE_SIDE_RIGHT);
@@ -169,9 +169,9 @@ void lv_draw_sw_polygon(lv_draw_ctx_t * draw_ctx, const lv_draw_rect_dsc_t * dra
if(mask_cnt == point_cnt) break;
- if(p[i_next_right].y >= p[i_prev_right].y) {
+ if(p[i_next_right].y >= p[i_prev_right].y) {
if(p[i_next_right].y != p[i_prev_right].y &&
- p[i_next_right].x != p[i_prev_right].x) {
+ p[i_next_right].x != p[i_prev_right].x) {
lv_draw_mask_line_points_init(mp_next, p[i_prev_right].x, p[i_prev_right].y,
p[i_next_right].x, p[i_next_right].y,
diff --git a/src/draw/sw/lv_draw_sw_rect.c b/src/draw/sw/lv_draw_sw_rect.c
index f5928eb672..63bd9252e8 100644
--- a/src/draw/sw/lv_draw_sw_rect.c
+++ b/src/draw/sw/lv_draw_sw_rect.c
@@ -37,7 +37,7 @@ static void draw_outline(lv_draw_ctx_t * draw_ctx, const lv_draw_rect_dsc_t * ds
#if LV_DRAW_COMPLEX
LV_ATTRIBUTE_FAST_MEM static void draw_shadow(lv_draw_ctx_t * draw_ctx, const lv_draw_rect_dsc_t * dsc,
const lv_area_t * coords);
-LV_ATTRIBUTE_FAST_MEM static void shadow_draw_corner_buf(const lv_area_t * coords, uint16_t * sh_buf, lv_coord_t s,
+LV_ATTRIBUTE_FAST_MEM static void shadow_draw_corner_buf(const lv_area_t * coords, uint16_t * sh_buf, lv_coord_t s,
lv_coord_t r);
LV_ATTRIBUTE_FAST_MEM static void shadow_blur_corner(lv_coord_t size, lv_coord_t sw, uint16_t * sh_ups_buf);
#endif
diff --git a/src/extra/README.md b/src/extra/README.md
index fbcf876b58..11742114dc 100644
--- a/src/extra/README.md
+++ b/src/extra/README.md
@@ -22,7 +22,7 @@ Here some ideas as inspiration feel free to contribute with ideas too.
- Ruler, horizontal or vertical with major and minor ticks and labels
- New [List items types](https://github.com/lvgl/lvgl/tree/master/src/extra/widgets/list)
- [Preloaders](https://www.google.com/search?q=preloader&sxsrf=ALeKk01ddA4YB0WEgLLN1bZNSm8YER7pkg:1623080551559&source=lnms&tbm=isch&sa=X&ved=2ahUKEwiwoN6d7oXxAhVuw4sKHVedBB4Q_AUoAXoECAEQAw&biw=952&bih=940)
-- Drop-down list with a container to which an content can be added
+- Drop-down list with a container to which content can be added
- 9 patch button: Similar to [lv_imgbtn](https://docs.lvgl.io/8.0/widgets/extra/imgbtn.html) but 9 images for 4 corner, 4 sides and the center
## Contributors
diff --git a/src/extra/layouts/flex/lv_flex.c b/src/extra/layouts/flex/lv_flex.c
index 4ba4415811..1180342738 100644
--- a/src/extra/layouts/flex/lv_flex.c
+++ b/src/extra/layouts/flex/lv_flex.c
@@ -274,7 +274,7 @@ static void flex_update(lv_obj_t * cont, void * user_data)
place_content(track_cross_place, max_cross_size, total_track_cross_size, track_cnt, cross_pos, &gap);
}
- track_first_item = f.rev ? cont->spec_attr->child_cnt - 1 : 0;
+ track_first_item = f.rev ? cont->spec_attr->child_cnt - 1 : 0;
if(rtl && !f.row) {
*cross_pos += total_track_cross_size;
diff --git a/src/extra/layouts/grid/lv_grid.c b/src/extra/layouts/grid/lv_grid.c
index 027f6af31b..6812a04a2d 100644
--- a/src/extra/layouts/grid/lv_grid.c
+++ b/src/extra/layouts/grid/lv_grid.c
@@ -420,7 +420,7 @@ static void calc(lv_obj_t * cont, _lv_grid_calc_t * calc_out)
/**
* Free the a grid calculation's data
- * @param calc pointer to the calculated gtrid cell coordinates
+ * @param calc pointer to the calculated grid cell coordinates
*/
static void calc_free(_lv_grid_calc_t * calc)
{
diff --git a/src/extra/widgets/calendar/lv_calendar.h b/src/extra/widgets/calendar/lv_calendar.h
index a91ce4b229..2511b2fac2 100644
--- a/src/extra/widgets/calendar/lv_calendar.h
+++ b/src/extra/widgets/calendar/lv_calendar.h
@@ -82,7 +82,7 @@ void lv_calendar_set_today_date(lv_obj_t * obj, uint32_t year, uint32_t month, u
void lv_calendar_set_showed_date(lv_obj_t * obj, uint32_t year, uint32_t month);
/**
- * Set the the highlighted dates
+ * Set the highlighted dates
* @param obj pointer to a calendar object
* @param highlighted pointer to an `lv_calendar_date_t` array containing the dates.
* Only the pointer will be saved so this variable can't be local which will be destroyed later.
@@ -126,7 +126,7 @@ const lv_calendar_date_t * lv_calendar_get_today_date(const lv_obj_t * calendar)
const lv_calendar_date_t * lv_calendar_get_showed_date(const lv_obj_t * calendar);
/**
- * Get the the highlighted dates
+ * Get the highlighted dates
* @param calendar pointer to a calendar object
* @return pointer to an `lv_calendar_date_t` array containing the dates.
*/
diff --git a/src/extra/widgets/chart/lv_chart.h b/src/extra/widgets/chart/lv_chart.h
index 9772761698..8a9b8cfc0d 100644
--- a/src/extra/widgets/chart/lv_chart.h
+++ b/src/extra/widgets/chart/lv_chart.h
@@ -330,7 +330,7 @@ lv_chart_cursor_t * lv_chart_add_cursor(lv_obj_t * obj, lv_color_t color, lv_di
* Set the coordinate of the cursor with respect to the paddings
* @param obj pointer to a chart object
* @param cursor pointer to the cursor
- * @param pos the new coordinate of cursor relative the the chart
+ * @param pos the new coordinate of cursor relative to the chart
*/
void lv_chart_set_cursor_pos(lv_obj_t * chart, lv_chart_cursor_t * cursor, lv_point_t * pos);
diff --git a/src/extra/widgets/keyboard/lv_keyboard.h b/src/extra/widgets/keyboard/lv_keyboard.h
index 875b544acd..7f65cd75a8 100644
--- a/src/extra/widgets/keyboard/lv_keyboard.h
+++ b/src/extra/widgets/keyboard/lv_keyboard.h
@@ -141,7 +141,7 @@ static inline const char ** lv_keyboard_get_map_array(const lv_obj_t * kb)
/**
* Get the index of the lastly "activated" button by the user (pressed, released, focused etc)
- * Useful in the the `event_cb` to get the text of the button, check if hidden etc.
+ * Useful in the `event_cb` to get the text of the button, check if hidden etc.
* @param obj pointer to button matrix object
* @return index of the last released button (LV_BTNMATRIX_BTN_NONE: if unset)
*/
diff --git a/src/extra/widgets/led/lv_led.c b/src/extra/widgets/led/lv_led.c
index 03e1362728..513ecfb9d1 100644
--- a/src/extra/widgets/led/lv_led.c
+++ b/src/extra/widgets/led/lv_led.c
@@ -66,7 +66,7 @@ lv_obj_t * lv_led_create(lv_obj_t * parent)
/**
* Set the color of the LED
* @param led pointer to a LED object
- * @param color the color of the the LED
+ * @param color the color of the LED
*/
void lv_led_set_color(lv_obj_t * obj, lv_color_t color)
{
diff --git a/src/extra/widgets/led/lv_led.h b/src/extra/widgets/led/lv_led.h
index 725b7e8b75..368bcd23cc 100644
--- a/src/extra/widgets/led/lv_led.h
+++ b/src/extra/widgets/led/lv_led.h
@@ -66,7 +66,7 @@ lv_obj_t * lv_led_create(lv_obj_t * parent);
/**
* Set the color of the LED
* @param led pointer to a LED object
- * @param color the color of the the LED
+ * @param color the color of the LED
*/
void lv_led_set_color(lv_obj_t * led, lv_color_t color);
diff --git a/src/extra/widgets/menu/lv_menu.c b/src/extra/widgets/menu/lv_menu.c
index 03df339880..9c6b5423a7 100644
--- a/src/extra/widgets/menu/lv_menu.c
+++ b/src/extra/widgets/menu/lv_menu.c
@@ -724,7 +724,7 @@ static void lv_menu_back_event_cb(lv_event_t * e)
static void lv_menu_value_changed_event_cb(lv_event_t * e)
{
- lv_obj_t * obj = lv_event_get_user_data(e);
+ lv_obj_t * obj = lv_event_get_user_data(e);
lv_menu_t * menu = (lv_menu_t *)obj;
lv_menu_page_t * main_page = (lv_menu_page_t *)lv_menu_get_cur_main_page(obj);
diff --git a/src/extra/widgets/menu/lv_menu.h b/src/extra/widgets/menu/lv_menu.h
index aa256358f1..0449059f8d 100644
--- a/src/extra/widgets/menu/lv_menu.h
+++ b/src/extra/widgets/menu/lv_menu.h
@@ -209,7 +209,7 @@ lv_obj_t * lv_menu_get_sidebar_header(lv_obj_t * obj);
lv_obj_t * lv_menu_get_sidebar_header_back_btn(lv_obj_t * obj);
/**
- * Check if a obj is a root back btn
+ * Check if an obj is a root back btn
* @param menu pointer to the menu
* @return true if it is a root back btn
*/
diff --git a/src/lv_conf_internal.h b/src/lv_conf_internal.h
index a3def3c534..853037c68b 100644
--- a/src/lv_conf_internal.h
+++ b/src/lv_conf_internal.h
@@ -830,7 +830,7 @@
#endif
#endif
-/*Complier prefix for a big array declaration in RAM*/
+/*Compiler prefix for a big array declaration in RAM*/
#ifndef LV_ATTRIBUTE_LARGE_RAM_ARRAY
#ifdef CONFIG_LV_ATTRIBUTE_LARGE_RAM_ARRAY
#define LV_ATTRIBUTE_LARGE_RAM_ARRAY CONFIG_LV_ATTRIBUTE_LARGE_RAM_ARRAY
@@ -1053,7 +1053,7 @@
#ifdef CONFIG_LV_FONT_DEJAVU_16_PERSIAN_HEBREW
#define LV_FONT_DEJAVU_16_PERSIAN_HEBREW CONFIG_LV_FONT_DEJAVU_16_PERSIAN_HEBREW
#else
- #define LV_FONT_DEJAVU_16_PERSIAN_HEBREW 0 /*Hebrew, Arabic, Perisan letters and all their forms*/
+ #define LV_FONT_DEJAVU_16_PERSIAN_HEBREW 0 /*Hebrew, Arabic, Persian letters and all their forms*/
#endif
#endif
#ifndef LV_FONT_SIMSUN_16_CJK
@@ -2134,7 +2134,7 @@ LV_EXPORT_CONST_INT(LV_DPI_DEF);
#undef _LV_KCONFIG_PRESENT
-/*Set some defines if a dependecy is disabled*/
+/*Set some defines if a dependency is disabled*/
#if LV_USE_LOG == 0
#define LV_LOG_LEVEL LV_LOG_LEVEL_NONE
#define LV_LOG_TRACE_MEM 0
diff --git a/src/misc/lv_anim.h b/src/misc/lv_anim.h
index 6f51bf001f..18317eb381 100644
--- a/src/misc/lv_anim.h
+++ b/src/misc/lv_anim.h
@@ -205,7 +205,7 @@ static inline void lv_anim_set_start_cb(lv_anim_t * a, lv_anim_start_cb_t start_
/**
* Set a function to use the current value of the variable and make start and end value
- * relative the the returned current value.
+ * relative to the returned current value.
* @param a pointer to an initialized `lv_anim_t` variable
* @param get_value_cb a function call when the animation starts
*/
diff --git a/src/misc/lv_anim_timeline.h b/src/misc/lv_anim_timeline.h
index ed8782e198..d4dd0fcf36 100644
--- a/src/misc/lv_anim_timeline.h
+++ b/src/misc/lv_anim_timeline.h
@@ -32,7 +32,7 @@ typedef struct _lv_anim_timeline_t lv_anim_timeline_t;
**********************/
/**
- * Create a animation timeline.
+ * Create an animation timeline.
* @return pointer to the animation timeline.
*/
lv_anim_timeline_t * lv_anim_timeline_create(void);
diff --git a/src/misc/lv_txt.c b/src/misc/lv_txt.c
index 02224fb54d..3879b48d9d 100644
--- a/src/misc/lv_txt.c
+++ b/src/misc/lv_txt.c
@@ -746,7 +746,7 @@ static uint32_t lv_txt_utf8_get_length(const char * txt)
#elif LV_TXT_ENC == LV_TXT_ENC_ASCII
/*******************************
- * ASCII ENCODER/DECOER
+ * ASCII ENCODER/DECODER
******************************/
/**
diff --git a/src/widgets/lv_arc.c b/src/widgets/lv_arc.c
index 6f0a00720d..89aacfc2f1 100644
--- a/src/widgets/lv_arc.c
+++ b/src/widgets/lv_arc.c
@@ -84,8 +84,8 @@ void lv_arc_set_start_angle(lv_obj_t * obj, uint16_t start)
if(start > 360) start -= 360;
- int16_t old_delta = arc->indic_angle_end - arc->indic_angle_start;
- int16_t new_delta = arc->indic_angle_end - start;
+ int16_t old_delta = arc->indic_angle_end - arc->indic_angle_start;
+ int16_t new_delta = arc->indic_angle_end - start;
if(old_delta < 0) old_delta = 360 + old_delta;
if(new_delta < 0) new_delta = 360 + new_delta;
@@ -103,8 +103,8 @@ void lv_arc_set_end_angle(lv_obj_t * obj, uint16_t end)
lv_arc_t * arc = (lv_arc_t *)obj;
if(end > 360) end -= 360;
- int16_t old_delta = arc->indic_angle_end - arc->indic_angle_start;
- int16_t new_delta = end - arc->indic_angle_start;
+ int16_t old_delta = arc->indic_angle_end - arc->indic_angle_start;
+ int16_t new_delta = end - arc->indic_angle_start;
if(old_delta < 0) old_delta = 360 + old_delta;
if(new_delta < 0) new_delta = 360 + new_delta;
@@ -129,8 +129,8 @@ void lv_arc_set_bg_start_angle(lv_obj_t * obj, uint16_t start)
if(start > 360) start -= 360;
- int16_t old_delta = arc->bg_angle_end - arc->bg_angle_start;
- int16_t new_delta = arc->bg_angle_end - start;
+ int16_t old_delta = arc->bg_angle_end - arc->bg_angle_start;
+ int16_t new_delta = arc->bg_angle_end - start;
if(old_delta < 0) old_delta = 360 + old_delta;
if(new_delta < 0) new_delta = 360 + new_delta;
@@ -151,8 +151,8 @@ void lv_arc_set_bg_end_angle(lv_obj_t * obj, uint16_t end)
if(end > 360) end -= 360;
- int16_t old_delta = arc->bg_angle_end - arc->bg_angle_start;
- int16_t new_delta = end - arc->bg_angle_start;
+ int16_t old_delta = arc->bg_angle_end - arc->bg_angle_start;
+ int16_t new_delta = end - arc->bg_angle_start;
if(old_delta < 0) old_delta = 360 + old_delta;
if(new_delta < 0) new_delta = 360 + new_delta;
@@ -372,13 +372,13 @@ static void lv_arc_event(const lv_obj_class_t * class_p, lv_event_t * e)
lv_coord_t r;
get_center(obj, ¢er, &r);
- p.x -= center.x;
- p.y -= center.y;
+ p.x -= center.x;
+ p.y -= center.y;
/*Enter dragging mode if pressed out of the knob*/
if(arc->dragging == false) {
lv_coord_t indic_width = lv_obj_get_style_arc_width(obj, LV_PART_INDICATOR);
- r -= indic_width;
+ r -= indic_width;
/*Add some more sensitive area if there is no advanced git testing.
* (Advanced hit testing is more precise)*/
if(lv_obj_has_flag(obj, LV_OBJ_FLAG_ADV_HITTEST)) {
diff --git a/src/widgets/lv_btnmatrix.c b/src/widgets/lv_btnmatrix.c
index 8dc0955c05..62f86f7944 100644
--- a/src/widgets/lv_btnmatrix.c
+++ b/src/widgets/lv_btnmatrix.c
@@ -584,7 +584,7 @@ static void lv_btnmatrix_event(const lv_obj_class_t * class_p, lv_event_t * e)
}
else if(c == LV_KEY_DOWN) {
lv_coord_t col_gap = lv_obj_get_style_pad_column(obj, LV_PART_MAIN);
- /*Find the area below the the current*/
+ /*Find the area below the current*/
if(btnm->btn_id_sel == LV_BTNMATRIX_BTN_NONE) {
btnm->btn_id_sel = 0;
while(button_is_hidden(btnm->ctrl_bits[btnm->btn_id_sel]) || button_is_inactive(btnm->ctrl_bits[btnm->btn_id_sel])) {
@@ -612,7 +612,7 @@ static void lv_btnmatrix_event(const lv_obj_class_t * class_p, lv_event_t * e)
}
else if(c == LV_KEY_UP) {
lv_coord_t col_gap = lv_obj_get_style_pad_column(obj, LV_PART_MAIN);
- /*Find the area below the the current*/
+ /*Find the area below the current*/
if(btnm->btn_id_sel == LV_BTNMATRIX_BTN_NONE) {
btnm->btn_id_sel = 0;
while(button_is_hidden(btnm->ctrl_bits[btnm->btn_id_sel]) || button_is_inactive(btnm->ctrl_bits[btnm->btn_id_sel])) {
diff --git a/src/widgets/lv_btnmatrix.h b/src/widgets/lv_btnmatrix.h
index 83e0b4647e..cf586d723f 100644
--- a/src/widgets/lv_btnmatrix.h
+++ b/src/widgets/lv_btnmatrix.h
@@ -182,7 +182,7 @@ const char ** lv_btnmatrix_get_map(const lv_obj_t * obj);
/**
* Get the index of the lastly "activated" button by the user (pressed, released, focused etc)
- * Useful in the the `event_cb` to get the text of the button, check if hidden etc.
+ * Useful in the `event_cb` to get the text of the button, check if hidden etc.
* @param obj pointer to button matrix object
* @return index of the last released button (LV_BTNMATRIX_BTN_NONE: if unset)
*/
diff --git a/src/widgets/lv_dropdown.c b/src/widgets/lv_dropdown.c
index 5c97a16372..e7e6503880 100644
--- a/src/widgets/lv_dropdown.c
+++ b/src/widgets/lv_dropdown.c
@@ -701,7 +701,7 @@ static void lv_dropdown_event(const lv_obj_class_t * class_p, lv_event_t * e)
}
else if(c == LV_KEY_ENTER) {
/* Handle the ENTER key only if it was send by an other object.
- * Do no process it if ENTER is sent by the dropdown becasue it's handled in LV_EVENT_RELEASED */
+ * Do no process it if ENTER is sent by the dropdown because it's handled in LV_EVENT_RELEASED */
lv_obj_t * indev_obj = lv_indev_get_obj_act();
if(indev_obj != obj) {
res = btn_release_handler(obj);
@@ -947,7 +947,7 @@ static void draw_box_label(lv_obj_t * dropdown_obj, lv_draw_ctx_t * draw_ctx, ui
lv_state_t state_orig = list_obj->state;
if(state != list_obj->state) {
- list_obj->state = state;
+ list_obj->state = state;
list_obj->skip_trans = 1;
}
diff --git a/src/widgets/lv_dropdown.h b/src/widgets/lv_dropdown.h
index 9c72dc43d2..63412f73e8 100644
--- a/src/widgets/lv_dropdown.h
+++ b/src/widgets/lv_dropdown.h
@@ -40,7 +40,7 @@ typedef struct {
lv_obj_t * list; /**< The dropped down list*/
const char * text; /**< Text to display on the dropdown's button*/
const void * symbol; /**< Arrow or other icon when the drop-down list is closed*/
- char * options; /**< Options in a a '\n' separated list*/
+ char * options; /**< Options in a '\n' separated list*/
uint16_t option_cnt; /**< Number of options*/
uint16_t sel_opt_id; /**< Index of the currently selected option*/
uint16_t sel_opt_id_orig; /**< Store the original index on focus*/
@@ -76,7 +76,7 @@ lv_obj_t * lv_dropdown_create(lv_obj_t * parent);
/**
* Set text of the drop-down list's button.
* If set to `NULL` the selected option's text will be displayed on the button.
- * If set to a specific text then that text will be shown regardless the selected option.
+ * If set to a specific text then that text will be shown regardless of the selected option.
* @param obj pointer to a drop-down list object
* @param txt the text as a string (Only its pointer is saved)
*/
@@ -107,7 +107,7 @@ void lv_dropdown_set_options_static(lv_obj_t * obj, const char * options);
void lv_dropdown_add_option(lv_obj_t * obj, const char * option, uint32_t pos);
/**
- * Clear all options in a drop-down list. Works with both static and dynamic optins.
+ * Clear all options in a drop-down list. Works with both static and dynamic options.
* @param obj pointer to drop-down list object
*/
void lv_dropdown_clear_options(lv_obj_t * obj);
@@ -127,7 +127,7 @@ void lv_dropdown_set_selected(lv_obj_t * obj, uint16_t sel_opt);
void lv_dropdown_set_dir(lv_obj_t * obj, lv_dir_t dir);
/**
- * Set an arrow or other symbol to display when on drop-down list's button. Typically a down caret or arrow.
+ * Set an arrow or other symbol to display when on drop-down list's button. Typically a down caret or arrow.
* @param obj pointer to drop-down list object
* @param symbol a text like `LV_SYMBOL_DOWN`, an image (pointer or path) or NULL to not draw symbol icon
* @note angle and zoom transformation can be applied if the symbol is an image.
diff --git a/src/widgets/lv_img.h b/src/widgets/lv_img.h
index 5d8e023ce8..2a00564318 100644
--- a/src/widgets/lv_img.h
+++ b/src/widgets/lv_img.h
@@ -60,7 +60,7 @@ enum {
/** If the object size is set to SIZE_CONTENT, then object size equals zoomed image size.
* It causes layout recalculation.
- * If the object size is set explicitly the the image will be cropped if zoomed in.*/
+ * If the object size is set explicitly, the image will be cropped when zoomed in.*/
LV_IMG_SIZE_MODE_REAL,
};
@@ -82,7 +82,7 @@ lv_obj_t * lv_img_create(lv_obj_t * parent);
*====================*/
/**
- * Set the image data to display on the the object
+ * Set the image data to display on the object
* @param obj pointer to an image object
* @param src_img 1) pointer to an ::lv_img_dsc_t descriptor (converted by LVGL's image converter) (e.g. &my_img) or
* 2) path to an image file (e.g. "S:/dir/img.bin")or
diff --git a/src/widgets/lv_label.c b/src/widgets/lv_label.c
index 012bf857c9..0b8a1657a4 100644
--- a/src/widgets/lv_label.c
+++ b/src/widgets/lv_label.c
@@ -355,7 +355,7 @@ void lv_label_get_letter_pos(const lv_obj_t * obj, uint32_t char_id, lv_point_t
/*Handle Bidi*/
if(new_line_start == byte_id) {
visual_byte_pos = base_dir == LV_BASE_DIR_RTL ? 0 : byte_id - line_start;
- bidi_txt = &txt[line_start];
+ bidi_txt = &txt[line_start];
}
else {
uint32_t line_char_id = _lv_txt_encoded_get_char_id(&txt[line_start], byte_id - line_start);
diff --git a/src/widgets/lv_roller.c b/src/widgets/lv_roller.c
index d8177f1b44..d66f8595fa 100644
--- a/src/widgets/lv_roller.c
+++ b/src/widgets/lv_roller.c
@@ -325,7 +325,7 @@ static void lv_roller_event(const lv_obj_class_t * class_p, lv_event_t * e)
if(code == LV_EVENT_GET_SELF_SIZE) {
lv_point_t * p = lv_event_get_param(e);
- p->x = get_selected_label_width(obj);
+ p->x = get_selected_label_width(obj);
}
else if(code == LV_EVENT_STYLE_CHANGED) {
lv_obj_t * label = get_label(obj);
diff --git a/src/widgets/lv_textarea.c b/src/widgets/lv_textarea.c
index ea99be4d67..0dff383d70 100644
--- a/src/widgets/lv_textarea.c
+++ b/src/widgets/lv_textarea.c
@@ -809,7 +809,7 @@ static void lv_textarea_constructor(const lv_obj_class_t * class_p, lv_obj_t * o
ta->accepted_chars = NULL;
ta->max_length = 0;
ta->cursor.show = 1;
- /*It will be set to zero later (with zero value lv_textarea_set_cursor_pos(obj, 0); woldn't do anything as there is no difference)*/
+ /*It will be set to zero later (with zero value lv_textarea_set_cursor_pos(obj, 0); wouldn't do anything as there is no difference)*/
ta->cursor.pos = 1;
ta->cursor.click_pos = 1;
ta->cursor.valid_x = 0;
diff --git a/tests/README.md b/tests/README.md
index 12b41c7e32..373bebe3e4 100644
--- a/tests/README.md
+++ b/tests/README.md
@@ -37,7 +37,7 @@ GitHub's CI automatically runs these tests on pushes and pull requests to `maste
## Add new tests
### Create new test file
-New test needs to be added into the `src/test_cases` folder. The name of the files should look like `test_.c`. The the basic skeleton of a test file copy `_test_template.c`.
+New test needs to be added into the `src/test_cases` folder. The name of the files should look like `test_.c`. The basic skeleton of a test file copy `_test_template.c`.
### Asserts
See the list of asserts [here](https://github.com/ThrowTheSwitch/Unity/blob/master/docs/UnityAssertionsReference.md).