with the 102 million buttons i have in the scroller right now... when
you scroll along, but... i'll work at it to make it work better.
SVN revision: 62130
This widget is for application's view manager such as elm_pager
But has optional functions more for users convenience.
Not completed yet for decorations. but basic frame is completed.
Need to have a review.
SVN revision: 61313
This is a nice workaround if you want to use the shot module to take
pictures of the various tests, since the shot module doesn't behave nicely
with multiple windows atm.
SVN revision: 61246
made originally so I've made some changes/ updates to elm_glview
1.) GL Resource Deletion in ELM_GLView
In order to delete GL resources, the current approach simply registered a
delete callback to the GLView object and handled resource deletion there.
Unfortunately, using the delete callback did not guarantee the glview context to be
current. In order to guarantee that the current context was the glview context,
the make_current call needs to be called explicitly. Since we were hiding all the
make current details in elm_glview, i've decided to add an API that registers a
delete callback function. I know that this may seem redundant since there is already
a delete callback that you can register with glview objects. Unfortunately, this is the
only option that we have apart from exposing make_current, which is something that
went again what we are trying to do with elm_glview.
Since adding delete callback alone seemed a little out of place, i've taken the liberty
to add other callback functions to make it seem consistent.
void elm_glview_init_func_set(Evas_Object *obj, Elm_GLView_Func func);
void elm_glview_del_func_set(Evas_Object *obj, Elm_GLView_Func func);
void elm_glview_resize_func_set(Evas_Object *obj, Elm_GLView_Func func);
resize callback can be controversial as well but I want to argue that adding this callback
makes the render function a lot cleaner. To handle resize differently, the user in
render function needs to manually compare and see if the size has changed, and
then handle the cases. Doing all of this internally once makes the developers life
a lot easier in my opinion.
these callback functions do make the render function a lot cleaner. You can check
out the updated test_glview.c or newly added test_glview_simple.
2.) Minor bug fixes/changes
elm_glview_scale_policy_set() was supposed to be elm_glview_resize_policy_set()
but it somehow evaded our reviews. That has been fixed.
Also, in _glview_resize, after updating the surface, it was explicitly calling the
render function. It is actually unnecessary here and calling it here will cause
problems if resize gets called before everything else is setup properly. So that has
been commented out.
3.) test_glview & test_glview_simple
elementary_test case for glview has been updated to reflect the api changes.
when you run the elmentary_test, you need to make sure that you set
ELM_ENGINE=gl as glview currently only runs on gl backend.
test_glview runs the gears example. For testing purposes I've included a simple
glview test case that renders a triangle and changing background color.
SVN revision: 60517
can be scrollable or not. scrolled entry now just calls entry calls
and is marked as dperecated to be killed off in the future so no need
to document it etc. edje external also goes.
SVN revision: 60438
Subject: Re: [E-devel] [RFC] ELM GLView
Elementary GLview wiedget giving simplified access to do opengl
drawing in a widget in elm so you pretty much do no work to set it up
and just provide a render function to draw the contents when it needs
drawing. Thanks to Sungwoo Park and Samsung
SVN revision: 59909
Subject: [E-devel] [Patch] elm_genlist - added new feature : genlist
reorder mode
I introduce a new feature "reorder mode" of genlist.
Using this feature, user can reoder genlist items dynamically.
[API]
==================================================================
- EAPI Eina_Bool elm_genlist_item_rename_mode_get(Elm_Genlist_Item *it)
Get the rename mode state of an item. This gets the rename mode state
of an item
- EAPI void elm_genlist_reorder_mode_set(Evas_Object *obj, Eina_Bool reorder_mode)
Set genlist reorder mode. This enables the item is moved to another
item.
==================================================================
After set this reorder api, if user press an item (long press), the item can
be moved another position.
Then if the user releases the item, the item will be reodered in genlist.
When the user releases the holding item, Elm_Genlist_Item_Class.func.moved
callback is also called.
If needed, the application can add some logic in that callback function.
SVN revision: 59883
I introduce a new concept to genlist.
I named it "genlist mode" after I discussed it with raster.
Using this feature, one can activate/deactivate any mode(effect) to an item.
The mode is defined in genlist item edc.
You can watch a sample video on youtube.
http://www.youtube.com/watch?v=ZPbwpzwwiS8
I created two sample mode: Slide and Rotate.
[Feature Description]
- One can activate a specific mode to an item.
- One item is activated at one time while others are deactivated.
- Genlist handles deactivating other items when one item is activated.
- There are two different view: before activated, after activated.
- Genlist creates the second view when the first view is activated. Usually the first view is animated.
- Genlist destroys the second view when the item finishes deactivating.
- Creating/Destroying the second view on the fly gives performance enhancement because there is no reason to hold all objects in two views all the time.
- Mode is defined in genlist edc so one can easily add it more.
- Mode edc style is separated from normal genlist styles. One can combine any genlist style with mode edc style.
[API]
- EAPI void elm_genlist_item_mode_set(Elm_Genlist_Item *it, const char *mode_type, Eina_Bool mode_set) EINA_ARG_NONNULL(1, 2);
Activate/Deactivate a mode to an item.
- EAPI const char *elm_genlist_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
Get activated mode name.
- EAPI const Elm_Genlist_Item *elm_genlist_mode_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
Get activated item.
[Structure]
- Elm_Genlist_Item
Added const char *mode_item_style;
[Usage]
- Set mode style name to genlist item class.
itc.mode_item_style = "mode";
- Activated mode to an item whenever you want.
elm_genlist_item_mode_set(it, "slide", EINA_TRUE);
SVN revision: 58791
Segment Control Widget is a horizontal control made of multiple segment items
together, each segment item is set to equal size, functioning similar to
discrete two state button. Only one segment item can be at selected state.
SVN revision: 58461
Subject: [E-devel] [Patch] Group index support
I added group index feature.
This feature support to show item indicates group index.
I attached capture images showing group index.
As you can see attached png images, Group index item includes same group
items.
The group index is shown until every items that have same group index
are scrolled. so group index realize/unrealize is not excuteded in
_item_block_position function.
instead of the function, group index is controlled in _pan_calculate
function.
"Genlist Group" and "Genlist Group Tree" menu is added in
elementary_test. you can test group index operations in elementary_test.
This patch is not support elm_genlist_item_insert_before/after
operation of group index. We are now considering the operations in group index.,
This patch assumes that the previous 2 patches are already applied to upstream.
'[E-devel] [Patch] Tree support for elm_genlist_item_prepend() API.'
'[E-devel] [Patch] Tree support for
elm_genlist_item_insert_before/after() APIs',
So this patch does not include the changes of the previous patch.
I separated this patch.
- 004.elm_genlist.c.patch.txt
Patch for src/lib/elm_genlist.c
- 005.test_genlist.c.patch.txt
Patch for src/bin/test_genlist.c
- 006.genlist.patch.txt
Patch for data/theme/default.edc
And you have to add attached group_index.png file into 'data/themes'
'group_index.png' file is group index background image.
Daniel Juyung Seo help make test code and refactoring group index code.
SVN revision: 55925
"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
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
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
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