Commit Graph

13 Commits

Author SHA1 Message Date
Mike Blumenkrantz 54f1e32c17 THE MOST ANTICIPATED COMMIT OF 2011: HUGENORMOUS TOOLTIPS!!!!!!
these bad boys are so big and pixelthirsty they can't be constrained by a regular canvas or window, they use OVERRIDE REDIRECT WINDOWS. not only that, they totally exceed the boundaries of what a reasonable function name length could be. 50 character function name limit? puh-leeze. these guys don't care what side of the screen they're even on so long as they get to wade into the thick of the action and block out each and every crappy non-efl application behind them. and that's when they're in good moods. you don't even want to know what happens when you piss these guys off.


SVN revision: 61735
2011-07-26 09:38:23 +00:00
Mike Blumenkrantz 061f507101 explicitly hide tooltip content before deleting in case object is not able to be deleted (prevents giant tooltip image from getting stuck on canvas)
SVN revision: 61661
2011-07-24 22:05:02 +00:00
Mike McCormack 0295f4d56e elementary: elm_label_label_ -> elm_object_text
Clear deprecated warnings.

Signed-off-by: Mike McCormack <mj.mccormack@samsung.com>

SVN revision: 60798
2011-06-29 06:41:31 +00:00
Michael BOUCHAUD 35c22c2d63 elementary: fix tooltip segfaults with gengrid (cedric thanks)
SVN revision: 60347
2011-06-15 14:07:28 +00:00
Tiago Rezende Campos Falcao 1a93e760bd Coccinelle
SVN revision: 53786
2010-10-22 21:41:22 +00:00
Bruno Dilly 333e06b357 Clean up some dead code on elementary
SVN revision: 52764
2010-09-25 22:08:56 +00:00
Gustavo Sverzut Barbieri 5662d99b44 fix warnings with elm_object_tooltip_unset().
don't connect twice to the same object (happened whenever not using
sub-items), then the callback was being called twice.

also set the dead object pointer to NULL, so we avoid operating on it
any further.




SVN revision: 52354
2010-09-16 23:44:02 +00:00
Carsten Haitzler 68f5b4119b oooh big cleanup. internal elm widget api cleaned up a bit.
SVN revision: 52178
2010-09-13 07:56:23 +00:00
Gustavo Sverzut Barbieri 494c1a6dca Tooltips: split owner/eventarea, allow subitems to have indepentent tooltips.
Now owner widget (elm_widget) is just used to listen for theme changes
and create/destroy the tooltip data. The actual mouse events operates
on all Evas_Object and is the one where tooltip data is actually
stored.

The public API is basically the same, just the event_info is now NULL
to avoid confusion.

The internal API introduces elm_object_sub_tooltip_content_cb_set()
and as the first parameter the eventarea. While this may be confusing,
as the second parameter is the actual elementary object, it is the one
that all other calls receive, like elm_object_tooltip_hide() or
elm_object_tooltip_unset(), thus it does make sense to have such order.

Also internal API, elm_widget_item_tooltip_* functions were
added. They are a variation of the widget API to handle its items, as
such the func() gets one more parameter: item, and the del_cb() gets
the item as event_info (that's why the public widget version got
event_info always NULL, to not confuse with this one!)

Widgets with items that makes sense to have tooltips got extra API:
  * toolbar
  * list
  * gengrid
  * genlist




SVN revision: 52173
2010-09-12 21:05:13 +00:00
Gustavo Sverzut Barbieri 448f5eee60 Fix tooltip visibility lock.
Whenever object starts hiding Elementary sends "elm,action,hide", so
when it aborts such action it must always emit "elm,action,show" and
the best place to do this is at _elm_tooltip_hide_anim_stop().

Note: _elm_tooltip_hide() calls _elm_tooltip_hide_anim_stop() and thus
would show the object, but this is void as right after that the
tooltip object is deleted and thus the signal is never processed and
as we don't go back to main loop, nothing changes on screen.



SVN revision: 52167
2010-09-12 17:46:44 +00:00
Gustavo Sverzut Barbieri 191ccae951 Tooltips are now uber cool!
I always wished tooltips would be less boring, and so we have them all
fancy and nice :-)

 * tooltip theme can request a timeout before hiding. This means we
   can fade out the tooltips nicely.

 * tooltip theme get enough information to track its origin. The
   current theme will show a small tip where it was created, and
   dynamically follows it. The graphics kinda suck, but I tried to
   achieve a cartoon-like buble using Inkscape.

 * label style is set to "tooltip". I'm providing a default with
   dark-gray text and 8 as size.



SVN revision: 52166
2010-09-12 17:24:45 +00:00
Gustavo Sverzut Barbieri a60be2543b Provide some known Evas_Object layers and set tooltip's to its designed value.
The Elm_Object_Layer is a convenience enumeration to help standardize
values so we don't ride into problems in future.

Tooltip has now its own layer, so set it there and avoid newly created
objects being created on top of them (usually they show on top of
everything as they are the last created, thus the topmost on the
default layer)



SVN revision: 52158
2010-09-11 17:01:40 +00:00
Gustavo Sverzut Barbieri 5c61931bd1 Welcome Tooltips.
Tooltips are set using elm_object_tooltip_content_cb_set(), that
returns the desired Evas_Object to use as contents, or using the
helper function elm_object_tooltip_text_set() that uses that
underneath.

The behavior is controlled part on elm_config, theme and user
application. In elm_config one defines the tooltip timeout. The theme
defines the padding around cursor x/y and window border x/y, as well
as the look and feel. Last but not least, the user application may
want to change the tooltip style with elm_object_tooltip_style_set().

Have fun!

This code was initially written by Tiago Falcao and Fabiano Fidencio,
I did some API review and changed some bits.

TODO: elm widget item support, like with toolbar items.




SVN revision: 52150
2010-09-11 00:52:33 +00:00