Oops you missed "MODE" in the enum.
ex) ELM_CALENDAR_SELECT_ALWAYS -> ELM_CALENDAR_SELECT_MODE_ALWAYS
We have ELM_OBJECT_SELECT_MODE_ALWAYS. So I think it'll good to sync with them.

Thanks.

Daniel Juyung Seo (SeoZ)


On Thu, Apr 19, 2012 at 5:46 PM, Enlightenment SVN
<[email protected]> wrote:
> Log:
> elementary: elm_calendar deprecate 
> elm_calendar_day_selection_disabled_set/get, instead now use 
> elm_calendar_select_mode_set/get. ELM_CALENDAR_SELECT_MODE_ONDEMAND is 
> present but not supported yet
>
> Author:       yoz
> Date:         2012-04-19 01:46:22 -0700 (Thu, 19 Apr 2012)
> New Revision: 70319
> Trac:         http://trac.enlightenment.org/e/changeset/70319
>
> Modified:
>  trunk/elementary/src/bin/test_calendar.c 
> trunk/elementary/src/lib/elm_calendar.c 
> trunk/elementary/src/lib/elm_calendar.h 
> trunk/elementary/src/lib/elm_deprecated.h
>
> Modified: trunk/elementary/src/bin/test_calendar.c
> ===================================================================
> --- trunk/elementary/src/bin/test_calendar.c    2012-04-19 08:41:47 UTC (rev 
> 70318)
> +++ trunk/elementary/src/bin/test_calendar.c    2012-04-19 08:46:22 UTC (rev 
> 70319)
> @@ -70,7 +70,7 @@
>               time_t sec_per_day = (60*60*24);
>               time_t sec_per_year = sec_per_day * 365;
>               time_t the_time = (sec_per_year * 41) + (sec_per_day * 10); /* 
> Set date to JAN 01, 2011 */
> -              elm_calendar_day_selection_disabled_set(cal, EINA_TRUE);
> +              elm_calendar_select_mode_set(cal, ELM_CALENDAR_SELECT_NONE);
>               elm_calendar_selected_time_set(cal, gmtime(&the_time));
>            }
>          break;
> @@ -81,7 +81,7 @@
>               time_t sec_per_year = sec_per_day * 365;
>               time_t the_time = (sec_per_year * 41) + (sec_per_day * 40); /* 
> Set date to FEB 01, 2011 */
>               elm_calendar_marks_clear(cal);
> -              elm_calendar_day_selection_disabled_set(cal, EINA_TRUE);
> +              elm_calendar_select_mode_set(cal, ELM_CALENDAR_SELECT_NONE);
>               elm_calendar_selected_time_set(cal, gmtime(&the_time));
>            }
>          break;
> @@ -174,7 +174,7 @@
>
>    interval = elm_calendar_interval_get(cal);
>    elm_calendar_min_max_year_get(cal, &year_min, &year_max);
> -   sel_enabled = !elm_calendar_day_selection_disabled_get(cal);
> +   sel_enabled = !!(elm_calendar_select_mode_get(cal) != 
> ELM_CALENDAR_SELECT_NONE);
>    wds = elm_calendar_weekdays_names_get(cal);
>
>    snprintf(info, sizeof(info),
> @@ -241,7 +241,7 @@
>    cal2 = elm_calendar_add(win);
>    evas_object_size_hint_weight_set(cal2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
>    evas_object_size_hint_align_set(cal2, EVAS_HINT_FILL, EVAS_HINT_FILL);
> -   elm_calendar_day_selection_disabled_set(cal2, EINA_TRUE);
> +   elm_calendar_select_mode_set(cal2, ELM_CALENDAR_SELECT_NONE);
>    evas_object_show(cal2);
>    elm_box_pack_end(bxh, cal2);
>
> @@ -307,4 +307,53 @@
>    evas_object_smart_callback_add(cal, "changed", _print_cal_info_cb, en);
>  }
>
> +
> +void
> +test_calendar3(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void 
> *event_info __UNUSED__)
> +{
> +   Evas_Object *win, *cal, *bxx;
> +   api_data *api = calloc(1, sizeof(api_data));
> +
> +   win = elm_win_util_standard_add("calendar", "Calendar");
> +   elm_win_autodel_set(win, EINA_TRUE);
> +   evas_object_event_callback_add(win, EVAS_CALLBACK_FREE, _cleanup_cb, api);
> +
> +   bxx = elm_box_add(win);
> +   elm_win_resize_object_add(win, bxx);
> +   evas_object_size_hint_weight_set(bxx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
> +   evas_object_show(bxx);
> +   /*
> +
> +   bx = elm_box_add(win);
> +   evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
> +   api->box = bx;
> +   evas_object_show(bx);
> +
> +   bt = elm_button_add(win);
> +   elm_object_text_set(bt, "Next API function");
> +   evas_object_smart_callback_add(bt, "clicked", _api_bt_clicked, (void *) 
> api);
> +   elm_box_pack_end(bxx, bt);
> +   elm_object_disabled_set(bt, api->state == API_STATE_LAST);
> +   evas_object_show(bt);
> +
> +   elm_box_pack_end(bxx, bx);
> +   */
> +
> +   cal = elm_calendar_add(win);
> +   elm_calendar_first_day_of_week_set(cal, ELM_DAY_THURSDAY);
> +   elm_calendar_select_mode_set(cal, ELM_CALENDAR_SELECT_ONDEMAND);
> +   evas_object_size_hint_weight_set(cal, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
> +   elm_box_pack_end(bxx, cal);
> +//
> +//   time_t sec_per_day = (60*60*24);
> +//   time_t sec_per_year = sec_per_day * 365;
> +//   time_t the_time = (sec_per_year * 41) + (sec_per_day * 9); /* Set date 
> to DEC 31, 2010 */
> +//   elm_calendar_selected_time_set(cal, gmtime(&the_time));
> +//   elm_calendar_min_max_year_set(cal, 2010, 2012);
> +//
> +   evas_object_show(cal);
> +
> +   evas_object_show(win);
> +}
> +
>  #endif
>
> Modified: trunk/elementary/src/lib/elm_calendar.c
> ===================================================================
> --- trunk/elementary/src/lib/elm_calendar.c     2012-04-19 08:41:47 UTC (rev 
> 70318)
> +++ trunk/elementary/src/lib/elm_calendar.c     2012-04-19 08:46:22 UTC (rev 
> 70319)
> @@ -31,7 +31,7 @@
>    const char *weekdays[ELM_DAY_LAST];
>    struct tm current_time, selected_time;
>    Day_Color day_color[42]; // EINA_DEPRECATED
> -   Eina_Bool selection_enabled : 1;
> +   Elm_Calendar_Select_Mode select_mode;
>  };
>
>  struct _Elm_Calendar_Mark
> @@ -302,7 +302,7 @@
>              if ((wd->selected_it > -1) && (wd->selected_it != i))
>                _unselect(wd, wd->selected_it);
>
> -             if (wd->selection_enabled) _select(wd, i);
> +             if (wd->select_mode != ELM_CALENDAR_SELECT_NONE) _select(wd, i);
>
>              wd->selected_it = i;
>           }
> @@ -600,7 +600,7 @@
>  {
>    int day;
>    Widget_Data *wd = elm_widget_data_get(obj);
> -   if ((!wd) || (!wd->selection_enabled))
> +   if ((!wd) || (wd->select_mode == ELM_CALENDAR_SELECT_NONE))
>      return;
>
>    day = _get_item_day(obj, sel_it);
> @@ -621,7 +621,7 @@
>  {
>    int sel_it;
>    Widget_Data *wd = elm_widget_data_get(data);
> -   if ((!wd) || (!wd->selection_enabled))
> +   if ((!wd) || (wd->select_mode == ELM_CALENDAR_SELECT_NONE))
>      return;
>    sel_it = atoi(source);
>
> @@ -668,7 +668,7 @@
>
>    if (!wd) return EINA_FALSE;
>    if (elm_widget_disabled_get(obj)) return EINA_FALSE;
> -   if (!wd->selection_enabled) return EINA_FALSE;
> +   if (wd->select_mode ==  ELM_CALENDAR_SELECT_NONE) return EINA_FALSE;
>
>    if ((!strcmp(ev->keyname, "Left")) ||
>        ((!strcmp(ev->keyname, "KP_Left")) && (!ev->string)))
> @@ -736,7 +736,6 @@
>    wd->today_it = -1;
>    wd->selected_it = -1;
>    wd->first_day_it = -1;
> -   wd->selection_enabled = EINA_TRUE;
>    wd->format_func = _format_month_year;
>    wd->marks = NULL;
>
> @@ -864,26 +863,22 @@
>    if (max) *max = wd->year_max + 1900;
>  }
>
> -EAPI void
> +EINA_DEPRECATED EAPI void
>  elm_calendar_day_selection_disabled_set(Evas_Object *obj, Eina_Bool disabled)
>  {
> -   ELM_CHECK_WIDTYPE(obj, widtype);
> -   Widget_Data *wd = elm_widget_data_get(obj);
> -   if (!wd) return;
> -   wd->selection_enabled = (!disabled);
> -   if (!disabled)
> -     _select(wd, wd->selected_it);
> +   if (disabled)
> +     elm_calendar_select_mode_set(obj, ELM_CALENDAR_SELECT_NONE);
>    else
> -     _unselect(wd, wd->selected_it);
> +     elm_calendar_select_mode_set(obj, ELM_CALENDAR_SELECT_DEFAULT);
>  }
>
> -EAPI Eina_Bool
> +EINA_DEPRECATED EAPI Eina_Bool
>  elm_calendar_day_selection_disabled_get(const Evas_Object *obj)
>  {
>    ELM_CHECK_WIDTYPE(obj, widtype) EINA_FALSE;
>    Widget_Data *wd = elm_widget_data_get(obj);
>    if (!wd) return EINA_FALSE;
> -   return (!wd->selection_enabled);
> +   return !!(wd->select_mode == ELM_CALENDAR_SELECT_NONE);
>  }
>
>  EAPI void
> @@ -1003,3 +998,32 @@
>    if (!wd) return -1;
>    return wd->first_week_day;
>  }
> +
> +EAPI void
> +elm_calendar_select_mode_set(Evas_Object *obj, Elm_Calendar_Select_Mode mode)
> +{
> +   ELM_CHECK_WIDTYPE(obj, widtype);
> +   Widget_Data *wd = elm_widget_data_get(obj);
> +   if (!wd) return;
> +   if ((mode >= ELM_CALENDAR_SELECT_DEFAULT)
> +       && (mode <= ELM_CALENDAR_SELECT_ONDEMAND)
> +       && (wd->select_mode != mode))
> +     {
> +        wd->select_mode = mode;
> +        if (wd->select_mode == ELM_CALENDAR_SELECT_ALWAYS)
> +          _select(wd, wd->selected_it);
> +        else
> +          _unselect(wd, wd->selected_it);
> +     }
> +}
> +
> +EAPI Elm_Calendar_Select_Mode
> +elm_calendar_select_mode_get(const Evas_Object *obj)
> +{
> +   ELM_CHECK_WIDTYPE(obj, widtype) -1;
> +   Widget_Data *wd = elm_widget_data_get(obj);
> +   if (!wd) return -1;
> +   return wd->select_mode;
> +}
> +
> +
>
> Modified: trunk/elementary/src/lib/elm_calendar.h
> ===================================================================
> --- trunk/elementary/src/lib/elm_calendar.h     2012-04-19 08:41:47 UTC (rev 
> 70318)
> +++ trunk/elementary/src/lib/elm_calendar.h     2012-04-19 08:46:22 UTC (rev 
> 70319)
> @@ -86,6 +86,27 @@
>  */
>  typedef _Elm_Calendar_Weekday Elm_Calendar_Weekday;
>
> +
> +typedef enum
> +{
> +   ELM_CALENDAR_SELECT_DEFAULT = 0, /**< Default value. a day is always 
> selected. */
> +   ELM_CALENDAR_SELECT_ALWAYS, /**< a day is always selected. */
> +   ELM_CALENDAR_SELECT_NONE, /**< None of the days can be selected. */
> +   ELM_CALENDAR_SELECT_ONDEMAND /**< User may have selected a day or not. 
> (not supported yet)*/
> +} _Elm_Calendar_Select_Mode;
> +
> +/**
> + * @enum _Elm_Calendar_Select_Mode
> + * @typedef Elm_Calendar_Select_Mode
> + *
> + * the mode, who determine how user could select a day
> + *
> + * @see elm_calendar_select_mode_set()
> + *
> + * @ingroup Calendar
> + */
> +typedef _Elm_Calendar_Select_Mode Elm_Calendar_Select_Mode;
> +
>  typedef struct _Elm_Calendar_Mark Elm_Calendar_Mark;    /**< Item handle for 
> a calendar mark. Created with elm_calendar_mark_add() and deleted with 
> elm_calendar_mark_del(). */
>
>  /**
> @@ -207,41 +228,31 @@
>  EAPI void                 elm_calendar_min_max_year_get(const Evas_Object 
> *obj, int *min, int *max);
>
>  /**
> - * Enable or disable day selection
> + * Set select day mode to use.
>  *
>  * @param obj The calendar object.
> - * @param disabled @c EINA_TRUE to disable selection or @c EINA_FALSE to
> - * enable it.
> + * @param select_mdoe The select mode to use.
>  *
> - * Enabled by default. If disabled, the user still can select months,
> - * but not days. Selected days are highlighted on calendar.
> - * It should be used if you won't need such selection for the widget usage.
> + * Set the day selection mode used.
>  *
> - * When a day is selected, or month is changed, smart callbacks for
> - * signal "changed" will be called.
> - *
> - * @see elm_calendar_day_selection_disabled_get()
> - *
> - * @ref calendar_example_04
> - *
>  * @ingroup Calendar
>  */
> -EAPI void                 
> elm_calendar_day_selection_disabled_set(Evas_Object *obj, Eina_Bool disabled);
> +EAPI void                 elm_calendar_select_mode_set(Evas_Object *obj, 
> Elm_Calendar_Select_Mode mode);
>
>  /**
> - * Get a value whether day selection is disabled or not.
> + * Get the select day mode used.
>  *
>  * @param obj The calendar object.
> - * @return EINA_TRUE means day selection is disabled. EINA_FALSE indicates
> - * it's enabled. If @p obj is NULL, EINA_FALSE is returned.
>  *
> - * @see elm_calendar_day_selection_disabled_set() for details.
> + * @return the selected mode
>  *
> - * @ref calendar_example_05
> + * Get the day selection mode used.
>  *
> + * @see elm_calendar_select_mode_set() for more details
> + *
>  * @ingroup Calendar
>  */
> -EAPI Eina_Bool            elm_calendar_day_selection_disabled_get(const 
> Evas_Object *obj);
> +EAPI Elm_Calendar_Select_Mode elm_calendar_select_mode_get(const Evas_Object 
> *obj);
>
>  /**
>  * Set selected date to be highlighted on calendar.
>
> Modified: trunk/elementary/src/lib/elm_deprecated.h
> ===================================================================
> --- trunk/elementary/src/lib/elm_deprecated.h   2012-04-19 08:41:47 UTC (rev 
> 70318)
> +++ trunk/elementary/src/lib/elm_deprecated.h   2012-04-19 08:46:22 UTC (rev 
> 70319)
> @@ -410,3 +410,14 @@
>  * @deprecated Use elm_object_item_data_set instead.
>  */
>  EINA_DEPRECATED EAPI void elm_multibuttonentry_item_data_set(Elm_Object_Item 
> *it, void *data);
> +
> +/**
> + * @deprecated Use elm_calendar_select_mode_set instead.
> + */
> +EINA_DEPRECATED EAPI void                 
> elm_calendar_day_selection_disabled_set(Evas_Object *obj, Eina_Bool disabled);
> +
> +/**
> + * @deprecated Use elm_calendar_select_mode_get instead.
> + */
> +EINA_DEPRECATED EAPI Eina_Bool            
> elm_calendar_day_selection_disabled_get(const Evas_Object *obj);
> +
>
>
> ------------------------------------------------------------------------------
> For Developers, A Lot Can Happen In A Second.
> Boundary is the first to Know...and Tell You.
> Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
> http://p.sf.net/sfu/Boundary-d2dvs2
> _______________________________________________
> enlightenment-svn mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/enlightenment-svn

------------------------------------------------------------------------------
For Developers, A Lot Can Happen In A Second.
Boundary is the first to Know...and Tell You.
Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
http://p.sf.net/sfu/Boundary-d2dvs2
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to