Commit Graph

383 Commits

Author SHA1 Message Date
Bruno Dilly eeeb5214a1 Add yet another kind of list widget to elm - diskpicker
This is one more widget whose idea come from Samsung set of
contributions to Elementary.



SVN revision: 53150
2010-10-07 18:44:43 +00:00
Iván Briano 4c8980e47e Filter input text in entries.
Users can set filters of their own (text only, no format now) or use the
predefined ones.


SVN revision: 53141
2010-10-07 12:50:00 +00:00
Carsten Haitzler 5dcabea22e other part of genlist tree expand depth patch. test code.
SVN revision: 53136
2010-10-07 07:30:44 +00:00
Gustavo Sverzut Barbieri c577aef267 example with button that propagates event to the list item.
SVN revision: 53122
2010-10-06 22:47:12 +00:00
Gustavo Sverzut Barbieri 4091d2cbd3 event catcher should be the lowest object!
this damn bitch made me waste hours hunting a supposedly bug in Evas
event dispatch system just to realize the bug was in the theme... and
list in the LIST + COMPRESSED! :-( Everything else was correct.

The idea of "end" is that we may want to have some action item as
well, such as a button (see modification in test_list.c). In this case
we want the button to receive the event before the list item (or even
block the event going to the list item). Use case: add a "delete"
button to the item, click delete and you want to avoid it being
selected (think of a bookmark where you want to delete a folder, but
select the item would enter that folder that you want to delete).




SVN revision: 53121
2010-10-06 22:45:46 +00:00
Tiago Rezende Campos Falcao d959e612eb Adding custom chain to focus.
Added set, get, unset, prepend and append (relative or not).

Set - overwrite the custom chain
Unset - Delete the custom chain
Get- Return the custom chain
Append - append after the relative object or in the end
Prepend - prepend before the relative object or in the start

SVN revision: 53115
2010-10-06 20:24:22 +00:00
Tiago Rezende Campos Falcao c3e3585e83 Optimized Linear Focus Chain
Before, the focus_cycle try pass the focus to next, and try again if
need loop the objects. Now, the focus cycle return possible next
object and if is necessary loop or not to focus this returned object.

SVN revision: 53111
2010-10-06 20:24:09 +00:00
Gustavo Lima Chaves a3ba92f0dc Elementary Flippicker, a fresh new widget.
This is one more widget whose idea come from Samsung set of
contributions to Elementary.

There is a known bug involving embryo + string functions, which will,
if in "stress", appear at the labels of the widget. Not time to attack
it right now, though.



SVN revision: 53109
2010-10-06 18:40:04 +00:00
Tiago Rezende Campos Falcao 891a40d7dc Adding focus cycle hook to Panes
SVN revision: 53034
2010-10-04 18:37:45 +00:00
Tiago Rezende Campos Falcao 6882817852 Adding focus cycle hook to pager, bubble and flip.
SVN revision: 52961
2010-10-01 19:03:02 +00:00
Tiago Rezende Campos Falcao e29b0b64b4 Adding focus cycle hook to Inwin and Frame.
SVN revision: 52960
2010-10-01 19:02:58 +00:00
Tiago Rezende Campos Falcao 6fd3d0b565 Better management to focus cycle.
Now Widgets can control between children interation or receive focus
itself. And focus_cycle has now one default code.

And don't pass focus to disabled widgets

SVN revision: 52959
2010-10-01 19:02:55 +00:00
Tiago Rezende Campos Falcao 697a5ad65e Rename Buttons Labels in test_focus
SVN revision: 52958
2010-10-01 19:02:51 +00:00
Tiago Rezende Campos Falcao 1e34b70f66 Fix cast between int and void* in x86_64.
This need conversion to long, as intermediate.

SVN revision: 52886
2010-09-29 12:22:22 +00:00
Gustavo Lima Chaves eb19982d50 Elm notify: better docs and fitting new API.
SVN revision: 52854
2010-09-28 16:56:34 +00:00
Gustavo Lima Chaves e930af1ad9 New API functions for elm slider.
EAPI void elm_slider_end_set(Evas_Object *obj, Evas_Object *end);

will set a *right* aligned sub-object relative to the slider.

EAPI const Evas_Object *elm_slider_end_get(const Evas_Object *obj);

Getter for that object.

EAPI Evas_Object *elm_slider_end_unset(Evas_Object *obj);

Unparent a previously set end object.

EAPI Evas_Object *elm_slider_icon_unset(Evas_Object *obj);

The same for the icon sub-object.

EAPI void elm_slider_indicator_show_set(Evas_Object *obj, Eina_Bool show);
EAPI Eina_Bool elm_slider_indicator_show_get(const Evas_Object *obj);

Set/get whether the slider should display the augmented knob (indicator) at
mouse drag at all.



SVN revision: 52852
2010-09-28 15:09:19 +00:00
Bruno Dilly 0bae5b3b96 Looks for parent cursors when mouse out a subobj
It will set the parent cursor if it should be visible.



SVN revision: 52848
2010-09-28 12:44:08 +00:00
Tiago Rezende Campos Falcao d5b17baf0f Elm Notify timeout are double.
And only start timer when visible.
The previous code don't start the timer if timer was changed from
disabled to one valid value.

SVN revision: 52817
2010-09-27 21:13:45 +00:00
Tiago Rezende Campos Falcao 42b6280dc1 Focus Cycle Chain to Table
SVN revision: 52815
2010-09-27 21:13:36 +00:00
Tiago Rezende Campos Falcao 3660486ed2 Panel fixed and is now focusable.
The old theme start show animation on obj show, if you want
disabled by default it doesn't work well. I changed the theme
default to be visible, don't need animation on "show".

And hidden_set was with inverted logic.

The focus highlight is in theme. And the widget react to
Return/Space.

SVN revision: 52814
2010-09-27 21:13:32 +00:00
Gustavo Lima Chaves 836b0ea1c0 Elm notify's new signal: "timeout".
Also changing elm_notify_timeout_set()'s behavior: it won't init the
timer itself, unless there was a previous one running.



SVN revision: 52810
2010-09-27 19:52:56 +00:00
Bruno Dilly 1014a0c5dc Tooltip / Mouse Cursor support for elm_genlist / elm_gengrid items
This patch add tooltip and mouse cursor support for items of genlist
and gengrid and extends the elementary tests for tooltips and
cursor

By: Thiago Ribeiro Masaki <masaki@profusion.mobi>



SVN revision: 52805
2010-09-27 18:18:37 +00:00
Gustavo Sverzut Barbieri 0f90c50f47 allow cursors on edje parts.
yeah, i should do the tooltips one as well, but it's boring so I'll
leave the implementation as the exercise for someone else :-)

and yeah, we should have that inside edje, like a nice description {
cursor: "xterm"; }, but that's not going to happen in Edje 1.0.



SVN revision: 52793
2010-09-27 00:51:16 +00:00
Bruno Dilly 333e06b357 Clean up some dead code on elementary
SVN revision: 52764
2010-09-25 22:08:56 +00:00
Bruno Dilly 89f23acadc Remove some dead assignments from elementary
SVN revision: 52763
2010-09-25 22:07:55 +00:00
Bruno Dilly b7ae7c772a Add cursor engine only usage to elm config
Only use engine cursors by default



SVN revision: 52762
2010-09-25 22:04:51 +00:00
Bruno Dilly 3dd29a961c Implements a way to select if we should use ecore_evas for cursor or only engine
With this commit is now possible to not use theme's cursor (default behevior)
that could be overriding cursors defined by the engine.



SVN revision: 52761
2010-09-25 22:03:37 +00:00
Bruno Dilly 816c77b3fa Add cursor support on Elm using ecore_evas
Basically, get the group from widget theme, using the string passed to
elm_object_cursor_set, get hot spots x and y from the theme (keeps the object
and these two integers on cursor struct).
Cursor is set with ecore_evas_object_cursor_set()

Some functions to change style were added to the api.



SVN revision: 52760
2010-09-25 22:01:19 +00:00
Gustavo Sverzut Barbieri 09a19aaa68 test focus brokenness.
Raster, if possible give it a try as it seems that most of the focus
steal and clear is your code and maybe you have a clue of what is
happening. For instance I have no clue why that global focus_order
counter that always grows.

This test is now exposing various problems, some of them is what bug
us in Editje, some is what eve's url bar, etc:

  - press "Give focus to scrolled entry", then press it again. See
    that the scrolled entry looses its focus, although we're giving it
    focus? This is related to the object loosing focus but not
    detecting it, thus the next elm_widget_focus_steal() will just
    ignore it and say "you already have focus, do nothing!"

  - start pressing "TAB", after a full iteration, the next iteration
    just goes up to the last item. If you keep doing that, at some
    point the TAB will just not work anymore.  If you change PARENT
    from "bx" to "win", then it does not happen. But adding to "bx"
    would be the correct thing to do (more logical structure)




SVN revision: 52709
2010-09-25 00:06:32 +00:00
Tiago Rezende Campos Falcao 42fab88a0e Focus test win is now resizeable
SVN revision: 52693
2010-09-24 16:46:59 +00:00
Tiago Rezende Campos Falcao 9d310ab6d2 Removing warnings in elm_tests.
Most of the errors referred to the cast from int to void* in x86_64.
This need conversion to long, as intermediate.

Some calls to elm_widget not exposed API were changed to their similar
at elm_object API.

Elm_Photo never call "drop" smart callback, but i leave the callback
in tests.

And others API methods are included in Elementary.h

Now elementary build with -Wall -Werror in x86_64.

SVN revision: 52691
2010-09-24 14:48:15 +00:00
Tiago Rezende Campos Falcao 8730c19ec2 Removing warning in elm_config.
Added one hack to dont warning about unused _status_config.
Elm_config isn't done and we may want to use this code.

SVN revision: 52690
2010-09-24 14:48:12 +00:00
Tiago Rezende Campos Falcao 113ad55d2e Focus Linear Chain for some Widgets
Containers implemented (and with test):
* Win
* Box
* Scroller
* Layout
* Panel

SVN revision: 52686
2010-09-24 14:47:59 +00:00
Carsten Haitzler d81485068a make theme browser in elm config util actually work. add api's needed.
it's simple. only allows 1 level of theme. would need an advanced
dialog to allow:

theme1:theme2:theme3:theme4... etc.

also no browsing for themes - just whats instaleld n system and user
dirs atm.



SVN revision: 52667
2010-09-24 05:11:33 +00:00
Leandro Pereira 8c4df25efe [Elementary] For icon/end elements, use swallow parts in the scroller theme instead of an Elm_Box.
This defines a new theme group for elm_scrolled_entry:
"elm/scroller/entry/$THEME".  Themes that wants to support the icon/end
feature in scrolled entry should implement parts "elm.swallow.icon" and
"elm.swallow.end".  Black&White theme has been changed, Effeniht changes
to come on a later commit.



SVN revision: 52657
2010-09-23 22:30:47 +00:00
Leandro Pereira 8c7e3016e1 [Elementary] Add icon/end objects to the scrolled entry.
SVN revision: 52602
2010-09-22 18:25:35 +00:00
Bruno Dilly 41ed17c0de Create some tests for elm cursor
Covering widgets and widget's items


SVN revision: 52383
2010-09-17 18:26:04 +00:00
Gustavo Sverzut Barbieri 902819723b Fix tests to use the void *data instead of const...
SVN revision: 52374
2010-09-17 16:34:59 +00:00
Cedric BAIL 51196bbc21 * elementary: make it possible to disable some binary.
SVN revision: 52365
2010-09-17 13:18:13 +00:00
Gustavo Sverzut Barbieri 0a034e8fe5 elm_smart_scroller now propagates the events, fixes tooltips in scrolled stuff.
The els_scroller.c:_smart_add() as disabling event propagation on
itself, that way an owner object (ie: elm_scroller,
elm_scrolled_entry, elm_list, ...) was not getting the mouse events it
gets, thus any evas_object_event_callback_add(..., EVAS_CALLBACK_MOUSE_*...)
were not working (effectively breaking tooltips).

Seems that the reason to do so was double-event reporting. It could
happen as the elm_smart_scroller has an event_obj that repeats event,
thus the object behind it, the edje_object, could get and possibly
repeat them as well.

As we are sure event_obj always get the events, but not sure of the
edje, as it depend on user contents, the logic is now changed to stop
propagation of the edje instead (it still processes the events! just
not propagates to elm_smart_scroller).

I hope this patch does not break anything, but please check your software!



SVN revision: 52350
2010-09-16 21:33:10 +00:00
Carsten Haitzler 22776449b9 printf--
SVN revision: 52337
2010-09-16 06:55:22 +00:00
Carsten Haitzler 73d8529ad6 fix anchorblock test.
SVN revision: 52336
2010-09-16 06:53:42 +00:00
Brett Nash e8346ef866 elm_thumb: Can now be dragged too.
SVN revision: 52285
2010-09-15 05:42:19 +00:00
Bruno Dilly c7986de741 Add tests for elm clock using time different from the system
SVN revision: 52269
2010-09-14 21:40:08 +00:00
Bruno Dilly 0c0749bdde Fix elm calendar test 2 windows title
SVN revision: 52266
2010-09-14 21:36:56 +00:00
Carsten Haitzler 75e72a16b0 as brett said - kill test_drag.c
SVN revision: 52179
2010-09-13 07:58:03 +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 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
Brett Nash af8097a963 Elm photo stops scrolling events when dragging now.
SVN revision: 52129
2010-09-10 08:24:29 +00:00