spinner: added signals "spinner,drag,start" and "spinner,drag,stop"

Reviewers: seoz

CC: seoz

Differential Revision: https://phab.enlightenment.org/D271
This commit is contained in:
Christophe Sadoine 2013-10-23 22:43:02 +09:00 committed by Daniel Juyung Seo
parent 329eb907f1
commit fbe18f2eab
5 changed files with 34 additions and 0 deletions

View File

@ -1719,3 +1719,7 @@
2013-10-22 Amitesh Singh (_ami_)
* slider : Show popup on left/right/up/down key down press and hide on left/right/up/down key up press.
2013-10-23 Christophe Sadoine
* spinner: added signals "spinner,drag,start" and "spinner,drag,stop".

View File

@ -99,6 +99,7 @@ Additions:
* Add elm_object_item_signal_emit support in hoversel. This works only when the item is created.
* Add elm_fileselector_multi_select_set/get() and elm_fileselector_selected_paths_get to support multi-selection.
* Add elm_fileselector_hidden_visible_set/get() to show or hide hidden files/directories.
* Add signals "spinner,drag,start" and "spinner,drag,stop" to the spinner widget.
Improvements:

View File

@ -3,6 +3,21 @@
#endif
#include <Elementary.h>
#ifndef ELM_LIB_QUICKLAUNCH
static void
_spinner_drag_start_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
void *event EINA_UNUSED)
{
printf("spinner drag started\n");
}
static void
_spinner_drag_stop_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
void *event EINA_UNUSED)
{
printf("spinner drag stopped\n");
}
void
test_spinner(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
{
@ -24,6 +39,10 @@ test_spinner(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_i
elm_spinner_min_max_set(sp, -50.0, 250.0);
evas_object_size_hint_align_set(sp, EVAS_HINT_FILL, 0.5);
evas_object_size_hint_weight_set(sp, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_smart_callback_add(sp, "spinner,drag,start",
_spinner_drag_start_cb, NULL);
evas_object_smart_callback_add(sp, "spinner,drag,stop",
_spinner_drag_stop_cb, NULL);
elm_box_pack_end(bx, sp);
evas_object_show(sp);

View File

@ -17,6 +17,8 @@ EAPI Eo_Op ELM_OBJ_SPINNER_BASE_ID = EO_NOOP;
#define MY_CLASS_NAME "elm_spinner"
static const char SIG_CHANGED[] = "changed";
static const char SIG_DRAG_START[] = "spinner,drag,start";
static const char SIG_DRAG_STOP[] = "spinner,drag,stop";
static const char SIG_DELAY_CHANGED[] = "delay,changed";
static const char SIG_LANG_CHANGED[] = "language,changed";
@ -24,6 +26,8 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = {
{SIG_CHANGED, ""},
{SIG_DELAY_CHANGED, ""},
{SIG_LANG_CHANGED, ""},
{SIG_DRAG_START, ""},
{SIG_DRAG_STOP, ""},
{"focused", ""}, /**< handled by elm_widget */
{"unfocused", ""}, /**< handled by elm_widget */
{NULL, NULL}
@ -204,6 +208,8 @@ _drag_start_cb(void *data,
ELM_SPINNER_DATA_GET(data, sd);
sd->drag_start_val = sd->val;
evas_object_smart_callback_call(obj, SIG_DRAG_START, NULL);
}
static void
@ -218,6 +224,8 @@ _drag_stop_cb(void *data,
sd->drag_start_val = 0;
edje_object_part_drag_value_set
(wd->resize_obj, "elm.dragable.slider", 0.0, 0.0);
evas_object_smart_callback_call(obj, SIG_DRAG_STOP, NULL);
}
static void

View File

@ -34,6 +34,8 @@
* - @c "language,changed" - the program's language changed
* - @c "focused" - When the spinner has received focus. (since 1.8)
* - @c "unfocused" - When the spinner has lost focus. (since 1.8)
* - @c "spinner,drag,start" - When dragging has started. (since 1.8)
* - @c "spinner,drag,stop" - When dragging has stopped. (since 1.8)
*
* Available styles for it:
* - @c "default";