chore: fix observer docs

This commit is contained in:
Gabor Kiss-Vamosi
2023-10-10 07:19:59 +02:00
parent 955656f958
commit 9bf50c65cf
+5
View File
@@ -15,6 +15,7 @@ It consists of
A typical use case looks like this: A typical use case looks like this:
.. code:: c .. code:: c
//It's a global variable //It's a global variable
lv_subject_t my_subject; lv_subject_t my_subject;
@@ -131,6 +132,7 @@ to subscribe to a subject the following function can be used:
Where the observer callback should look like this: Where the observer callback should look like this:
.. code:: c .. code:: c
static void some_observer_cb(lv_subject_t * subject, lv_observer_t * observer) static void some_observer_cb(lv_subject_t * subject, lv_observer_t * observer)
@@ -143,12 +145,14 @@ It's also possible to save a target widget when subscribing to a subject.
In this case when widget is deleted, it will automatically unsubscribe from the subject. In this case when widget is deleted, it will automatically unsubscribe from the subject.
In the observer callback ``lv_observer_get_target(observer)`` can be used to get the saved widget. In the observer callback ``lv_observer_get_target(observer)`` can be used to get the saved widget.
.. code:: c .. code:: c
lv_observer_t * observer = lv_subject_add_observer_obj(&some_subject, some_observer_cb, obj, user_data); lv_observer_t * observer = lv_subject_add_observer_obj(&some_subject, some_observer_cb, obj, user_data);
In more generic case any pointer can be saved a target: In more generic case any pointer can be saved a target:
.. code:: c .. code:: c
lv_observer_t * observer = lv_subject_add_observer_with_target(&some_subject, some_observer_cb, some_pointer, user_data); lv_observer_t * observer = lv_subject_add_observer_with_target(&some_subject, some_observer_cb, some_pointer, user_data);
@@ -187,6 +191,7 @@ For these kind of scenarios subject groups can be created.
For the above example it looks like this: For the above example it looks like this:
.. code:: c .. code:: c
lv_subject_t subject_mode; //Voltage or Current lv_subject_t subject_mode; //Voltage or Current
lv_subject_t subject_value; //Measured value lv_subject_t subject_value; //Measured value
lv_subject_t subject_unit; //The unit lv_subject_t subject_unit; //The unit