Subject: [E-devel] [PATCH] elm_slider patch for disable state
elm_slider does not support disable state, so I make this patch.
Please review it and upload in svn if it is ok.
(nb - also fixed vertical slider sizing in defaul theme and changed
jihoons changes to slider test to make the vertical sliders in a
horizontal box so they dont get silly long windows)
SVN revision: 55340
As we talked last week, I made a version of adding external image in
elm_entry. It seeks a local file if prefix is 'file://' then it loads image and adds it. If image file can't be loaded, adding
wft emoticon.
patch in with minor fix for path and an added actual test case in elm
entry test.
SVN revision: 55134
Edje caching primitives exposed in Elm, too, now, and stored at
config. Also, there's now a poller running for all Elm apps doing
cache flushing. All these things have configurable values, of course.
Testing config version bumping too, it should work.
SVN revision: 54851
Now working on exposing edje caching too, and having a cache dumping
poller. Patch also replaces some focus_overalay object functions,
too.
SVN revision: 54770
add.del items will try and stick to viewing an acnhor item. it also
handles wrapping text properly now if style has such a thing - a test
style with that is there too (message style) for now - found isasue in
edje with textblock styles - doesnt change on state change. but anyway
- re-wrapping text works.. and it progressively processes the genlist
blocks to re-calc sizes etc. etc. so you dont block and so-on. i5ts
not too shabby. as for that - store has a generic struct type reader
now and is being tested... and get rid of unused var.
SVN revision: 54738
I'm now populating the default theme with text classes, just commit
with one for now. There can be tweakings at Elm config app's UI fonts
page, I know, but that will come later (editable preview field, font
hinting/fallback, blablabla).
WARNING: for users testing elm config, an old "rm -rf
~/.elementary/config" might be needed here, after this commit.
SVN revision: 54681
1. elm_genlist_item_item_class_update() API
It is required to change an item's item class on run-time.
Applications want to change a certain item's style and callbacks
dynamically.
This looks ok because changing one item's style does not affect performance,
And this API uses elm_genlist_item_update internally.
API name follows elementary naming conventions.
I've also added test code to elementary_test, Genlist 7.
2. constant to macro.
I replaced 2 constants for max_item_per_block and longpress_timeout to
macros.
This could be used in other places of the code.
3. duplicated assignment.
In elm_genlist_item_append, it->before = 0 is written in if and else.
I put this statement out of if().
4. fix doxygen typo
I fixed elm_genlist_compress_mode_set doxygen.
By: Daniel Juyung Seo <juyung.seo@samsung.com>
SVN revision: 54639
Compiling this code with CFLAGS="-ffunction-sections -fdata-sections"
and LDFLAGS="-Wl,--as-needed -Wl,--gc-sections -Wl,--print-gc-sections"
was giving me the following messages:
/usr/bin/ld: Removing unused section '.text._on_key_down' in file 'elementary_testql-test_focus.o'
/usr/bin/ld: Removing unused section '.text.my_show' in file 'elementary_testql-test_focus.o'
/usr/bin/ld: Removing unused section '.rodata' in file 'elementary_testql-test_focus.o'
/usr/bin/ld: Removing unused section '.text.test_focus' in file 'elementary_testql-test_focus.o'
The issue was the missing guards.
SVN revision: 54600
Avoid the mess of table pack / unpack and back / front flip sets
Pager is an widget much more appropriated for our needs.
And we will have the exactly same look when pager flip style is
fixed.
SVN revision: 54519
they CAN be focused :) see conform 2 test. focuse the entry in the
pager then dlete the pager page (pop). before focus vanished. now it
goes back to the top entry as you'd expect.
SVN revision: 54486
This effects must do the evas_object_{show, hide} at the end of the
effect
Author: Helen Fornazier <helen.fornazier@profusion.mobi>
SVN revision: 54431
ELM_FX is now ELM_TRANSIT_EFFECT
Curve style like in edje
Changing names:
CURVE_IN -> TWEEN_DECELERATE
CURVE_OUT -> TWEEN_ACCELERATE
CURVE_IN_OUT -> TWEEN_SINUSOIDAL
Curve_Style -> Tween_Mode
Now, the calculation is done like in edje.
Changing function of type function() to function(void)
Elm_Transit: Changing calloc(1, to ELM_NEW
Author: Helen Fornazier <helen.fornazier@profusion.mobi>
SVN revision: 54417
Now, if you set a negative number to repeat, it will repeat infinite
times.
Author: Helen Fornazier <helen.fornazier@profusion.mobi>
SVN revision: 54416
"Do you come from the land down under?
Where women glow and men plunder?
Can't you hear, can't you hear the thunder?
You better run, you better take cover."
- Men at Work
commit msg suggested by glima =D
%hua
SVN revision: 54407
Suggested by k-s as part of our
"Beautiful, Consistent ELM API" effort.
colorpicker, diskpicker and flippicker should follow
fileselector name.
SVN revision: 54405
elm_list or in an elm_genlist fire the edge,{top,bottom,left,right}
signals, backporting them to the list object.
The new smart callbacks called are:
· "scroll,edge,top" - the list is scrolled until the top edge
· "scroll,edge,bottom" - the list is scrolled until the bottom edge
· "scroll,edge,left" - the list is scrolled until the left edge
· "scroll,edge,right" - the list is scrolled until the right edge
SVN revision: 3
SVN revision: 54393
We return a pointer to an internal cache, so no need to do strdup. I we
implement a cache, the pointer will be a return from a mmap'ed file, so
no need to do strdup.
A bit late to do an API break, but must be done.
SVN revision: 54372
processing of a genlist queue of 20,000 items). added genlist item
cache to do this. yay!. also wil improve runtime scrolling -
realiz/unrealize will be also equivalently faster, so less add/del
overhead for the edje objects in gnelist itself. the icons that apps
swallow in still get deleted and created. this is another matter for
anothr day. ant be solved inside of genlist itself. probably need an
unrealize callback per item and a way to steal your icons back from
the item.
SVN revision: 54214
NB: there is no sane way of restraining the min/max size of an elm
widget right now. This is why the scrolled entry is now (hopefully
not for toooo long) with half the size of a box, not 60px in height
anymore.
SVN revision: 54151
Notepad had a big issue: users couldn't access the entry, so notepad
was something near to an useless widget.
We needed to choose between wrap all entry functions or add these file
save / load and autosave features to entries.
As discussed on the emails list, we decided to go with the second
option, so we won't have an extra widget with lots of wrap functions.
Notepad was internally just an elm_entry with a scroll, so using
a scrolled entry with a file set will do the job.
I've added a test called Entry Notepad that looks like the removed
Notepad test. But we will see the improvements - you can clear the entry
or whatever you want, because the entry is the object you are creating.
If you were using elm_notepad before, just s/notepad/scrolled_entry
and almost everything should work fine. Another change was the function
file_save(obj, file, format), is now just file_save(obj), and the
file and format used are defined by file_set().
At last, some getters were added.
SVN revision: 54145
Changes in Elementary Config application's UI now *persist*.
Not doing right now, but should be simple:
- profile deletion
- profile addition
SVN revision: 53977
This comes from a contributed widget from Samsung that was basically reproducing the code of elm_layout, so instead it was turned into a simple pre-made layout (could get more love, but once again I'm no artist).
In order to make its use simpler, previous commits introduced the signal hooks for elm_layout, text_set and some macros to make it easier to set icon/end and text for layouts like this one.
Also uglified a bit the test for Layout in order to show it working, but I intend to get it fixed again soon. Unless discomfitor wants to practice his Edje skills with it... just saying.
SVN revision: 53971
Author: Helen Fornazier <helen.fornazier@profusion.mobi>
Transit is designed to set the various effects for the Evas_Object
such like translation, rotation, etc. For using Effects, Create
transit and insert effects which are interesting.
Once effects are inserted into transit, transit will manage those
effects (ex: deleting).
SVN revision: 53927
Setters can't receive const pointers.
All setter need corresponding getter.
In this patch, i adjust getter in: Bg, Box, Icon, Image, Win and Main.
SVN revision: 53917
And fix the docs related to shrink mode:
SHRINK_HIDE -> hide excess items
SHRINK_NONE -> set toolbar minimun size to fit all the items
SVN revision: 53895
BIG FAT WARNING: lots of changes on toolbar API
Trying to get a lib with easy to use API, I'm changing toolbar API
to be consistent with genlist / gengrid widgets and to be more concise.
Functions select_next, select_first, select_last, unselect, unselect_all
get all are gone.
You can do this calling a combination of the others functions.
This commit changes toolbar to use inlist, and previous items can be
get.
So now we have:
Elm_Toolbar_Item *elm_toolbar_first_item_get(const Evas_Object *obj)
Elm_Toolbar_Item *elm_toolbar_last_item_get(const Evas_Object *obj)
Elm_Toolbar_Item *elm_toolbar_item_next_get(const Elm_Toolbar_Item *it)
Elm_Toolbar_Item *elm_toolbar_item_prev_get(const Elm_Toolbar_Item *it)
Eina_Bool elm_toolbar_item_selected_get(const Elm_Toolbar_Item)
void elm_toolbar_item_selected_set(Elm_Toolbar_Item *item, Eina_Bool selected)
Elm_Toolbar_Item *elm_toolbar_selected_item_get(const Evas_Object *obj)
With these functions you can iterate over the items list getting /
selecting the item you need.
Another big change is that elm_toolbar_item_add is gone. Now you can
insert items in the position you want, with the functions append,
prepend, insert after, insert before (a relative item).
If you don't like any changes or have a case of use for something
that should be different, please ping me.
At last, includes ELM_TOOLBAR_ITEM_CHECK_OR_RETURN on EAPI that
receives items.
SVN revision: 53894
The profile now defines the default value for expand and inwin modes. The
fileselectors tests were changed to reflect that.
Note that the default for desktops is expand mode enabled and inwin disabled
and for mobiles is the opposite.
SVN revision: 53728
Now that toolbar has 3 shrink modes I've added one test for each one. The first
one shows the menu mode which is responsible for adding a More button when the
toolbar size is not large enough to hold all items. The second one is scroll
mode in which the items can be scrolled when the length is not enough. The last
one, none mode, does nothing.
SVN revision: 53718
This breaks the API *and* the ABI, but this should be consistent with
Elm_Toolbar. We'll probably need a tweak here and there, but I really
think Elm_Menu should be rewritten.
SVN revision: 53694
This is one more widget whose idea came from Samsung Electronics. Its
first name was "context popup". There was no common agreement on a
name for it, so... Trator mode, for now (using hoversel as a pattern).
If you have a better name suggestion for it, just change it -- but
soon, due to releasing plans (in a mailbox near in a jiffy).
While for hoversels you populate slots with thingies to later choose
one of them, which will hover up for you, with hoverlists you get a
single hovering list. It will smartly place this -- unique -- list
onto a fitting place inside its parent widget view. Just call
evas_object_show() on it, anytime you want (like for notifies).
SVN revision: 53644
Now one can set lists to dispose its items horizontally, too.
elm_list_horizontal_mode_set(), whose name was bogus and would
conflict with the new methods, got renamed to elm_mode_set(), along
with the getters.
This is coming along to help a widget using lists which has a
horizontal mode. The default theme for horizontal items is kinda ugly
for default lists, but one can always improve it :) (in a hurry
now).
Also, I'm introducing a new mode for Elementary lists: expand.
SVN revision: 53640
With these changes, Elm_Icon will also look up icons from the chosen
Freedesktop (fd.o) icon theme. Since this might incur in some performance
penalties if you're sure only theme icons will be used, icon lookup order
may be specified with the elm_icon_order_lookup_set() function call; using
the lookup parameter as follows:
- ELM_ICON_ORDER_FDO_THEME (default) will look up first fd.o, then the theme;
- ELM_ICON_ORDER_THEME_FDO will look up first the theme, then fd.o;
- ELM_ICON_ORDER_FDO will look up only fd.o; and
- ELM_ICON_ORDER_THEME (old behaviour) will lookup only from the theme.
Elm_Icon will also try to use a different resolution image if the widget is
resized and the image source is fd.o.
fd.o support requires Efreet, but it should work nicely (falling back to the
old behaviour) if it isn't available.
SVN revision: 53433
This allows having themeable icons for toolbar items -- inclusing lower
resolution ones for the More menu button. Changes to Elm_Menu_Item in the
same spirit will follow.
SVN revision: 53407
Toolbars can now be scrollable, non-scrollable, or hide icons selectively
according to a priority. This changed the API slightly, thus
elm_toolbar_scrollable_set(obj, 1)
Should be
elm_toolbar_mode_expand_set(obj, ELM_TOOLBAR_EXPAND_SCROLL)
Values for non-scrollable and scrollable remain the same, so if constants
aren't being used, just the function name should be changed.
The new mode, ELM_TOOLBAR_EXPAND_MENU, will create a menu of items when the
space isn't large enough to hold all the items. Which items will be kept on
the toolbar or which items will be added to the menu is controlled by the
priority of each item: higher ones will be kept if possible, lower ones will
be tratored on the first opportunity.
SVN revision: 53406
Add a new Test for BG Options.
Add a new 'bg_overlay' in objects/test.edc for testing bg overlay stuff.
NB: There is an issue here that I cannot seem to get straight (perhaps
pebkac, not sure)...but basically it seems that showing/hiding the
overlay causes the other swallows of the edc to get recalc'd and makes
the 'image' not work well w/ Center.
SVN revision: 53307
Now alignment works no matter whether the item is smaller than the grid or not.
Also added a spinner to Gengrid 2 test so we can see the alignment in action
for different item sizes.
SVN revision: 53252
Before changing gengrid internal to use inlist, passing a NULL item to
insert_before and insert_after functions would make them behave as prepend and
append respectively but now one would just get a SEGV. So test for a selected
item before doing anything ;)
SVN revision: 53251
Gengrid now has modes append, prepend, insert_before and insert_after. To see
them working check the Gengrid 2 test on elementary_test.
SVN revision: 53242
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
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
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
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
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
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
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
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
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