Progressbar
This feature is supported in wearable applications only.
The progressbar component is used to display the progress status of a given job. It inherits from the layout component, so all function concerning the layout component is used on the progressbar component.
For more information, see the Progress bar API.
Figure: Progressbar component
Figure: Progressbar hierarchy
Adding a Progressbar Component
To create a progressbar component, use the elm_progressbar_add() function:
Evas_Object *pb = elm_progressbar_add(win);
Using the Progressbar Styles
The progressbar has several styles.
-
The following styles are available for a rectangular UI screen:
- default
- pending_list
- process
- process/groupindex
- process/popup/small
-
The following styles are available for a circular UI screen:
- process
- process/small
Set the style of the progressbar to pending_list:
elm_object_style_set(pb, "pending_list");
Configuring the Progressbar for a Rectangular Screen
To configure the progressbar:
-
Activate the progressbar pulse mode to make the progressbar loop infinitely between the start and end position:
elm_progressbar_pulse_set(pb, EINA_TRUE); elm_progressbar_pulse(pb, EINA_TRUE);
-
Invert the progressbar. In the inverted mode the high values are on the left and the low values on the right.
elm_progressbar_inverted_set(pb, EINA_TRUE);
-
Change the value with the elm_progressbar_value_set() function. The progressbar emits the changed signal when the progress value changes. In the following example, the pb progress value is set to 20%.
elm_progressbar_value_set(pb, 0.2);
-
Read the current value:
double value = elm_progressbar_value_get(pb);
Configuring the Progressbar for a Circular Screen
To configure the progressbar:
-
Change the value with the elm_progressbar_value_set() function. The progressbar emits the changed signal when the progress value changes. In the following example, the pb progress value is set to 20%.
elm_progressbar_value_set(pb, 0.2);
-
Read the current value:
double value = elm_progressbar_value_get(pb);
Using the Progressbar Callbacks
The changed signal is the only signal specifically emitted by the progressbar component.
The following example shows how to register a callback on this signal.
{ evas_object_smart_callback_add(pb, "changed", changed_cb, data); } // Callback function for the "changed" signal // This callback is called when the progressbar value changes void changed_cb(void *data, Evas_Object *obj, void *event_info) { dlog_print(DLOG_INFO, LOG_TAG, "The value has changed\n"); }
Note |
---|
Except as noted, this content is licensed under LGPLv2.1+. |