On Sun, Jan 26, 2014 at 6:09 PM, Carsten Haitzler <ras...@rasterman.com>wrote:

> On Wed, 15 Jan 2014 17:20:08 +0900 (KST) ChunEon Park <her...@naver.com>
> said:
>
> ok. here's the catch. since it's a move lock... it's normally off so you
> want
>
> elm_tooltip_movement_freeze()
> elm_tooltip_movement_thaw()
>
> these are in fact better - but then it'd need to be not a bitfiled but a
> push/pop (freeze/thaw) thing with a counter... and it's not. :) so this is
> probably about right. :)
>
>
I also agree with this idea as "freeze" is used as different meanings per
each case in efl.
Btw, the API name is "move" not "movement" :)
elm_tooltip_move_freeze()/thaw().

Thanks.

Daniel Juyung Seo (SeoZ)



> > elm_tooltip_movement_lock_set() ?
> >
> > how about _freeze_set() ?
> > we already use the freeze word entirely.
> >
> > ------------------------------------
> > -Regards, Hermet-
> >
> > -----Original Message-----
> > From: "abhi"<a.aryadi...@samsung.com>
> > To: <g...@lists.enlightenment.org>;
> > Cc:
> > Sent: 2014-01-13 (월) 15:47:26
> > Subject: [EGIT] [core/elementary] master 01/06: Adding
> > elm_tooltip_movement_lock_set() and elm_tooltip_movement_lock_get()
> >
> > raster pushed a commit to branch master.
> >
> >
> http://git.enlightenment.org/core/elementary.git/commit/?id=1832450176b188773557c39e5cf1eee0f47a8858
> >
> > commit 1832450176b188773557c39e5cf1eee0f47a8858
> > Author: abhi <a.aryadipta>@samsung.com>
> > Date:   Mon Jan 13 15:22:47 2014 +0900
> >
> >     Adding elm_tooltip_movement_lock_set() and
> elm_tooltip_movement_lock_get()
> >
> >     Summary: These APIs allow to enable/disable a tooltip to move with
> > respect to mouse pointer
> >     Test Plan: elm_tooltip_movement_lock_set(),
> elm_tooltip_movement_lock_get
> > (), elementary_test -to tooltip
> >     Reviewers: singh.amitesh, seoz, raster
> >
> >     Reviewed By: raster
> >
> >     CC: raster
> >
> >     Differential Revision: https://phab.enlightenment.org/D369
> > ---
> >  ChangeLog                4 ++++
> >  NEWS                     2 ++
> >  src/bin/test_tooltip.c  24 ++++++++++++++++++++++++
> >  src/lib/elm_tooltip.h   32 ++++++++++++++++++++++++++++++++
> >  src/lib/els_tooltip.c   29 ++++++++++++++++++++++++-----
> >  5 files changed, 86 insertions(+), 5 deletions(-)
> >
> > diff --git a/ChangeLog b/ChangeLog
> > index 56975bb..f845744 100644
> > --- a/ChangeLog
> > +++ b/ChangeLog
> > @@ -1772,3 +1772,7 @@
> >  2013-12-01  Mike Blumenkrantz
> >
> >          * fix mouse eventing on e border theme
> > +
> > +2013-12-09  Abhinandan Aryadipta (aryarockstar)
> > +
> > +        * tooltip: Added elm_tooltip_move_lock_set() and
> > elm_tooltip_move_lock_get(). diff --git a/NEWS b/NEWS
> > index 85da746..a32848f 100644
> > --- a/NEWS
> > +++ b/NEWS
> > @@ -7,6 +7,8 @@ Changes since Elementary 1.8.0:
> >
> >  Additions:
> >
> > +   * Add elm_tooltip_move_lock_set() and elm_tooltip_move_lock_get()
> > +
> >  Improvements:
> >
> >  Fixes:
> > diff --git a/src/bin/test_tooltip.c b/src/bin/test_tooltip.c
> > index 332eced..d5ac0af 100644
> > --- a/src/bin/test_tooltip.c
> > +++ b/src/bin/test_tooltip.c
> > @@ -200,6 +200,23 @@ _tt_text_replace(void *data       EINA_UNUSED,
> >  }
> >
> >  static void
> > +_tt_move_lock(void *data       EINA_UNUSED,
> > +              Evas_Object     *obj,
> > +              void *event_info EINA_UNUSED)
> > +{
> > +   if (!elm_tooltip_move_lock_get(obj))
> > +     {
> > +        elm_tooltip_move_lock_set(obj, EINA_TRUE);
> > +        elm_object_tooltip_text_set(obj, "Locked");
> > +     }
> > +   else
> > +     {
> > +        elm_tooltip_move_lock_set(obj, EINA_FALSE);
> > +        elm_object_tooltip_text_set(obj, "Free");
> > +     }
> > +}
> > +
> > +static void
> >  _tt_orient_text_replace(void *data       EINA_UNUSED,
> >                          Evas_Object     *obj,
> >                          void *event_info EINA_UNUSED)
> > @@ -489,6 +506,13 @@ test_tooltip(void *data       EINA_UNUSED,
> >     evas_object_show(bt);
> >
> >     bt = elm_button_add(win);
> > +   elm_object_text_set(bt, "Movement Lock Tooltip, click to change");
> > +   elm_object_tooltip_text_set(bt, "Free");
> > +   evas_object_smart_callback_add(bt, "clicked", _tt_move_lock, NULL);
> > +   elm_box_pack_end(bx, bt);
> > +   evas_object_show(bt);
> > +
> > +   bt = elm_button_add(win);
> >     elm_object_text_set(bt, "Orient Tooltip, click to change");
> >     elm_object_tooltip_text_set(bt, "Top Left");
> >     elm_object_tooltip_orient_set(bt, ELM_TOOLTIP_ORIENT_TOP_LEFT);
> > diff --git a/src/lib/elm_tooltip.h b/src/lib/elm_tooltip.h
> > index 21bbfcd..3b1c76a 100644
> > --- a/src/lib/elm_tooltip.h
> > +++ b/src/lib/elm_tooltip.h
> > @@ -33,6 +33,38 @@ typedef enum
> >   } Elm_Tooltip_Orient;
> >
> >  /**
> > + * @def elm_tooltip_move_lock_set
> > + * @since 1.9
> > + *
> > + * @brief Enable/Disable tooltip movement with respect to mouse pointer
> > + *
> > + * @param[in] obj The tooltip's anchor object
> > + * @param[in] lock If EINA_TRUE, tooltip movement with respect to mouse
> > pointer is disabled
> > + *
> > + * This function allows to enable/disable a tooltip to move with
> respect to
> > mouse pointer
> > + *
> > + * @ingroup Tooltips
> > + * @see elm_tooltip_move_lock_get
> > + */
> > +EAPI void elm_tooltip_move_lock_set(Evas_Object *obj, Eina_Bool lock);
> > +
> > +/**
> > + * @def elm_tooltip_move_lock_get
> > + * @since 1.9
> > + *
> > + * @brief Get the lock status of tooltip movement with respect to mouse
> > pointer
> > + *
> > + * @param[in] obj The tooltip's anchor object
> > + * @return The lock status of tooltip movement with respect to mouse
> pointer
> > + *
> > + * This function returns the status of tooltip movement with respect to
> > mouse pointer
> > + *
> > + * @ingroup Tooltips
> > + * @see elm_tooltip_move_lock_set
> > + */
> > +EAPI Eina_Bool elm_tooltip_move_lock_get(const Evas_Object *obj);
> > +
> > +/**
> >   * @def elm_object_tooltip_orient_set
> >   * @since 1.9
> >   *
> > diff --git a/src/lib/els_tooltip.c b/src/lib/els_tooltip.c
> > index 5606123..867ad84 100644
> > --- a/src/lib/els_tooltip.c
> > +++ b/src/lib/els_tooltip.c
> > @@ -58,6 +58,7 @@ struct _Elm_Tooltip
> >       } rel_pos;
> >     Elm_Tooltip_Orient       orient; /** orientation for tooltip */
> >     double                   hide_timeout; /* from theme */
> > +   Eina_Bool                move_lock : 1; /* set/reset tooltip movement
> > with respect to mouse pointer*/ Eina_Bool                visible_lock:1;
> >     Eina_Bool                changed_style:1;
> >     Eina_Bool                free_size : 1;
> > @@ -156,13 +157,15 @@ _elm_tooltip_show(Elm_Tooltip *tt)
> >       (tt->eventarea, EVAS_CALLBACK_MOVE, _elm_tooltip_obj_move_cb, tt);
> >     evas_object_event_callback_add
> >       (tt->eventarea, EVAS_CALLBACK_RESIZE, _elm_tooltip_obj_resize_cb,
> tt);
> > -   //No movement of tooltip upon mouse move if orientation set
> > -   if ((tt->orient <= ELM_TOOLTIP_ORIENT_NONE)  (tt->orient >=
> > ELM_TOOLTIP_ORIENT_LAST))
> > +   if (!tt->move_lock)
> >       {
> > -        evas_object_event_callback_add
> > -        (tt->eventarea, EVAS_CALLBACK_MOUSE_MOVE,
> > (Evas_Object_Event_Cb)_elm_tooltip_obj_mouse_move_cb, tt);
> > +      //No movement of tooltip upon mouse move if orientation set
> > +      if ((tt->orient <= ELM_TOOLTIP_ORIENT_NONE)  (tt->orient >=
> > ELM_TOOLTIP_ORIENT_LAST))
> > +        {
> > +           evas_object_event_callback_add
> > +           (tt->eventarea, EVAS_CALLBACK_MOUSE_MOVE,
> > (Evas_Object_Event_Cb)_elm_tooltip_obj_mouse_move_cb, tt);
> > +        }
> >       }
> > -
> >     tt->changed_style = EINA_TRUE;
> >     _elm_tooltip_reconfigure_job_start(tt);
> >  }
> > @@ -724,6 +727,22 @@ _elm_tooltip_data_clean(Elm_Tooltip *tt)
> >  }
> >
> >  EAPI void
> > +elm_tooltip_move_lock_set(Evas_Object *obj, Eina_Bool lock)
> > +{
> > +   ELM_TOOLTIP_GET_OR_RETURN(tt, obj);
> > +
> > +   tt->move_lock = lock;
> > +}
> > +
> > +EAPI Eina_Bool
> > +elm_tooltip_move_lock_get(const Evas_Object *obj)
> > +{
> > +   ELM_TOOLTIP_GET_OR_RETURN(tt, obj, EINA_FALSE);
> > +
> > +   return tt->move_lock;
> > +}
> > +
> > +EAPI void
> >  elm_object_tooltip_orient_set(Evas_Object *obj, Elm_Tooltip_Orient
> orient)
> >  {
> >     ELM_TOOLTIP_GET_OR_RETURN(tt, obj);
> >
> > --
> >
> >
> >
> >
> ------------------------------------------------------------------------------
> > CenturyLink Cloud: The Leader in Enterprise Cloud Services.
> > Learn Why More Businesses Are Choosing CenturyLink Cloud For
> > Critical Workloads, Development Environments & Everything In Between.
> > Get a Quote or Start a Free Trial Today.
> >
> http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
> > _______________________________________________
> > enlightenment-devel mailing list
> > enlightenment-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
>
> --
> ------------- Codito, ergo sum - "I code, therefore I am" --------------
> The Rasterman (Carsten Haitzler)    ras...@rasterman.com
>
>
>
> ------------------------------------------------------------------------------
> CenturyLink Cloud: The Leader in Enterprise Cloud Services.
> Learn Why More Businesses Are Choosing CenturyLink Cloud For
> Critical Workloads, Development Environments & Everything In Between.
> Get a Quote or Start a Free Trial Today.
>
> http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
> _______________________________________________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to