1
0
mirror of https://github.com/lvgl/lvgl.git synced 2025-02-04 07:13:00 +08:00
Victor Wheeler 7ecf7c2e52
feat(docs): widget proofread wrap-up (#7405)
Co-authored-by: Liam <30486941+liamHowatt@users.noreply.github.com>
2024-12-08 23:13:21 +01:00

97 lines
2.0 KiB
ReStructuredText

.. _lv_line:
==============
Line (lv_line)
==============
Overview
********
The Line Widget is capable of drawing straight lines between a set of
points.
.. _lv_line_parts_and_styles:
Parts and Styles
****************
- :cpp:enumerator:`LV_PART_MAIN` uses the :ref:`typical background <typical bg props>`
and line style properties.
.. _lv_line_usage:
Usage
*****
Set points
----------
A Line's points have to be stored in an :cpp:struct:`lv_point_precise_t` array and passed to
the Widget by the :cpp:expr:`lv_line_set_points(lines, point_array, point_cnt)`
function.
Their coordinates can either be specified as raw pixel coordinates
(e.g. ``{5, 10}``), or as a percentage of the Line's bounding box using
:cpp:expr:`lv_pct(x)`. In the latter case, the Line's width/height may need to
be set explicitly using :cpp:func:`lv_obj_set_width` and :cpp:func:`lv_obj_set_height`,
as percentage values do not automatically expand the bounding box.
Auto-size
---------
By default, the Line's width and height are set to :c:macro:`LV_SIZE_CONTENT`.
This means it will automatically set its size to fit all the points. If
the size is set explicitly, parts on the Line may not be visible.
Invert y
--------
By default, the *y == 0* point is in the top of the Widget. It might be
counter-intuitive in some cases so the y coordinates can be inverted
with :cpp:expr:`lv_line_set_y_invert(line, true)`. In this case, *y == 0* will
be at the bottom of the Widget. *y invert* is disabled by default.
.. _lv_line_events:
Events
******
Only :ref:`generic events <events>` are sent by Line Widgets.
.. admonition:: Further Reading
Learn more about :ref:`lv_obj_events` emitted by all Widgets.
Learn more about :ref:`events`.
.. _lv_line_keys:
Keys
****
No *Keys* are processed by Line Widgets.
.. admonition:: Further Reading
Learn more about :ref:`indev_keys`.
.. _lv_line_example:
Example
*******
.. include:: ../../examples/widgets/line/index.rst
.. _lv_line_api:
API
***