From 9ae9ffce20f6118c37292c82bb76ccc336220758 Mon Sep 17 00:00:00 2001 From: Sohyun Kim Date: Mon, 13 Sep 2010 15:53:47 +0900 Subject: [PATCH] [elm_datefield]add apis for getting state --- src/lib/Elementary.h.in | 3 +++ src/lib/elm_bubble.c | 4 ++-- src/lib/elm_datefield.c | 63 +++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 68 insertions(+), 2 deletions(-) mode change 100644 => 100755 src/lib/Elementary.h.in diff --git a/src/lib/Elementary.h.in b/src/lib/Elementary.h.in old mode 100644 new mode 100755 index 9eda929..3669a15 --- a/src/lib/Elementary.h.in +++ b/src/lib/Elementary.h.in @@ -1960,10 +1960,13 @@ extern "C" { EAPI Evas_Object *elm_datefield_add(Evas_Object *parent); EAPI void elm_datefield_layout_set(Evas_Object *obj, Elm_Datefield_Layout layout); + EAPI Elm_Datefield_Layout elm_datefield_layout_get(Evas_Object *obj); EAPI void elm_datefield_date_set(Evas_Object *obj, int year, int month, int day, int hour, int min); EAPI void elm_datefield_date_get(Evas_Object *obj, int *year, int *month, int *day, int *hour, int *min); EAPI void elm_datefield_time_mode_set(Evas_Object *obj, Eina_Bool mode); + EAPI Eina_Bool elm_datefield_time_mode_get(Evas_Object *obj); EAPI void elm_datefield_date_format_set(Evas_Object *obj, const char *fmt); + EAPI const char *elm_datefield_date_format_get(Evas_Object *obj); EAPI void elm_datefield_input_panel_state_callback_add(Evas_Object *obj, void (*pEventCallbackFunc) (void *data, Evas_Object *obj, int value), void *data); EAPI void elm_datefield_input_panel_state_callback_del(Evas_Object *obj, void (*pEventCallbackFunc) (void *data, Evas_Object *obj, int value)); diff --git a/src/lib/elm_bubble.c b/src/lib/elm_bubble.c index cee5a8e..95df88e 100755 --- a/src/lib/elm_bubble.c +++ b/src/lib/elm_bubble.c @@ -138,8 +138,8 @@ elm_bubble_label_set(Evas_Object *obj, const char *label) ELM_CHECK_WIDTYPE(obj, widtype); Widget_Data *wd = elm_widget_data_get(obj); if (!wd) return; - if (label) edje_object_signal_emit(wd->bbl, "elm,state,label,add", "elm"); - else edje_object_signal_emit(wd->bbl, "elm,state,label,del", "elm"); + if (label) edje_object_signal_emit(wd->bbl, "elm,state,label,visible", "elm"); + else edje_object_signal_emit(wd->bbl, "elm,state,label,hidden", "elm"); eina_stringshare_replace(&wd->label, label); edje_object_part_text_set(wd->bbl, "elm.text", label); _sizing_eval(obj); diff --git a/src/lib/elm_datefield.c b/src/lib/elm_datefield.c index c202562..6f73c02 100755 --- a/src/lib/elm_datefield.c +++ b/src/lib/elm_datefield.c @@ -743,6 +743,25 @@ elm_datefield_layout_set(Evas_Object *obj, Elm_Datefield_Layout layout) } /** + * get layout of the datefield + * + * @param obj The datefield object + * @return layout of the datefield + * + * @ingroup Datefield + */ +EAPI Elm_Datefield_Layout +elm_datefield_layout_get(Evas_Object *obj) +{ + ELM_CHECK_WIDTYPE(obj, widtype); + Widget_Data *wd = elm_widget_data_get(obj); + + if (!wd) return 0; + + return wd->layout; +} + +/** * Set selected date of the datefield * * @param obj The datefield object @@ -870,6 +889,25 @@ elm_datefield_time_mode_set(Evas_Object *obj, Eina_Bool mode) } /** + * get time mode of the datefield + * + * @param obj The datefield object + * @return time mode (EINA_TRUE: 12hour mode / EINA_FALSE: 24hour mode) + * + * @ingroup Datefield + */ +EAPI Eina_Bool +elm_datefield_time_mode_get(Evas_Object *obj) +{ + ELM_CHECK_WIDTYPE(obj, widtype); + Widget_Data *wd = elm_widget_data_get(obj); + + if (!wd) return EINA_FALSE; + + return wd->time_mode; +} + +/** * Set date format of datefield * * @param obj The datefield object @@ -902,6 +940,31 @@ elm_datefield_date_format_set(Evas_Object *obj, const char *fmt) } /** + * get date format of the datefield + * + * @param obj The datefield object + * @return date format string. ex) yymmdd + * + * @ingroup Datefield + */ +EAPI const char * +elm_datefield_date_format_get(Evas_Object *obj) +{ + ELM_CHECK_WIDTYPE(obj, widtype); + Widget_Data *wd = elm_widget_data_get(obj); + + switch (wd->date_format) + { + case DATE_FORMAT_YYMMDD: return "yymmdd"; + case DATE_FORMAT_YYDDMM: return "yyddmm"; + case DATE_FORMAT_MMYYDD: return "mmyydd"; + case DATE_FORMAT_MMDDYY: return "mmddyy"; + case DATE_FORMAT_DDYYMM: return "ddyymm"; + case DATE_FORMAT_DDMMYY: return "ddmmyy"; + } +} + +/** * Add a callback function for input panel state * * @param obj The datefield object -- 2.7.4