when going back to categories list, scroll to the category we were just in
get rid of some warnings SVN revision: 30269
This commit is contained in:
parent
a7bbf46762
commit
aa355036c4
|
@ -1,3 +1,6 @@
|
||||||
|
/*
|
||||||
|
* vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
|
||||||
|
*/
|
||||||
#include "e.h"
|
#include "e.h"
|
||||||
|
|
||||||
#define SMART_NAME "e_ilist"
|
#define SMART_NAME "e_ilist"
|
||||||
|
@ -403,6 +406,23 @@ e_ilist_nth_is_header(Evas_Object *obj, int n)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EAPI void
|
||||||
|
e_ilist_nth_geometry_get(Evas_Object *obj, int n, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h)
|
||||||
|
{
|
||||||
|
E_Ilist_Item *si;
|
||||||
|
int error;
|
||||||
|
|
||||||
|
API_ENTRY return;
|
||||||
|
if (!sd->items) return;
|
||||||
|
|
||||||
|
si = evas_list_nth(sd->items, n);
|
||||||
|
if (!si) return;
|
||||||
|
|
||||||
|
evas_object_geometry_get(si->o_base, x, y, w, h);
|
||||||
|
*x -= sd->x;
|
||||||
|
*y -= sd->y;
|
||||||
|
}
|
||||||
|
|
||||||
EAPI void
|
EAPI void
|
||||||
e_ilist_icon_size_set(Evas_Object *obj, Evas_Coord w, Evas_Coord h)
|
e_ilist_icon_size_set(Evas_Object *obj, Evas_Coord w, Evas_Coord h)
|
||||||
{
|
{
|
||||||
|
|
|
@ -44,6 +44,7 @@ EAPI void e_ilist_nth_label_set (Evas_Object *obj, int n, const
|
||||||
EAPI Evas_Object *e_ilist_nth_icon_get (Evas_Object *obj, int n);
|
EAPI Evas_Object *e_ilist_nth_icon_get (Evas_Object *obj, int n);
|
||||||
EAPI void e_ilist_nth_icon_set (Evas_Object *obj, int n, Evas_Object *icon);
|
EAPI void e_ilist_nth_icon_set (Evas_Object *obj, int n, Evas_Object *icon);
|
||||||
EAPI int e_ilist_nth_is_header (Evas_Object *obj, int n);
|
EAPI int e_ilist_nth_is_header (Evas_Object *obj, int n);
|
||||||
|
EAPI void e_ilist_nth_geometry_get (Evas_Object *obj, int n, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h);
|
||||||
EAPI void e_ilist_icon_size_set (Evas_Object *obj, Evas_Coord w, Evas_Coord h);
|
EAPI void e_ilist_icon_size_set (Evas_Object *obj, Evas_Coord w, Evas_Coord h);
|
||||||
EAPI Evas_List *e_ilist_items_get (Evas_Object *obj);
|
EAPI Evas_List *e_ilist_items_get (Evas_Object *obj);
|
||||||
EAPI void e_ilist_multi_select (Evas_Object *obj, int n);
|
EAPI void e_ilist_multi_select (Evas_Object *obj, int n);
|
||||||
|
|
|
@ -44,6 +44,7 @@ struct _E_Config_Dialog_Data
|
||||||
Evas_Object *o_add, *o_del, *o_categories;
|
Evas_Object *o_add, *o_del, *o_categories;
|
||||||
Ecore_List *apps;
|
Ecore_List *apps;
|
||||||
const char *category;
|
const char *category;
|
||||||
|
int category_n;
|
||||||
|
|
||||||
char *fav, *app;
|
char *fav, *app;
|
||||||
};
|
};
|
||||||
|
@ -491,6 +492,7 @@ _category_cb_selected(void *data)
|
||||||
|
|
||||||
cfdata = data;
|
cfdata = data;
|
||||||
|
|
||||||
|
cfdata->category_n = e_widget_ilist_selected_get(cfdata->o_apps);
|
||||||
if (cfdata->category) ecore_string_release(cfdata->category);
|
if (cfdata->category) ecore_string_release(cfdata->category);
|
||||||
cfdata->category = ecore_string_instance(cfdata->app);
|
cfdata->category = ecore_string_instance(cfdata->app);
|
||||||
_fill_apps(cfdata);
|
_fill_apps(cfdata);
|
||||||
|
@ -525,6 +527,8 @@ _cb_categories(void *data, void *data2)
|
||||||
if (cfdata->category) ecore_string_release(cfdata->category);
|
if (cfdata->category) ecore_string_release(cfdata->category);
|
||||||
cfdata->category = NULL;
|
cfdata->category = NULL;
|
||||||
_fill_categories(cfdata);
|
_fill_categories(cfdata);
|
||||||
|
e_widget_ilist_nth_show(cfdata->o_apps, cfdata->category_n, 1);
|
||||||
|
cfdata->category_n = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
|
@ -16,7 +16,7 @@ static void _e_wid_disable_hook(Evas_Object *obj);
|
||||||
|
|
||||||
/* externally accessible functions */
|
/* externally accessible functions */
|
||||||
EAPI Evas_Object *
|
EAPI Evas_Object *
|
||||||
e_widget_framelist_add(Evas *evas, char *label, int horiz)
|
e_widget_framelist_add(Evas *evas, const char *label, int horiz)
|
||||||
{
|
{
|
||||||
Evas_Object *obj, *o;
|
Evas_Object *obj, *o;
|
||||||
E_Widget_Data *wd;
|
E_Widget_Data *wd;
|
||||||
|
@ -88,7 +88,7 @@ e_widget_framelist_content_align_set(Evas_Object *obj, double halign, double val
|
||||||
}
|
}
|
||||||
|
|
||||||
EAPI void
|
EAPI void
|
||||||
e_widget_framelist_label_set(Evas_Object *obj, char *label)
|
e_widget_framelist_label_set(Evas_Object *obj, const char *label)
|
||||||
{
|
{
|
||||||
E_Widget_Data *wd;
|
E_Widget_Data *wd;
|
||||||
|
|
||||||
|
|
|
@ -6,10 +6,10 @@
|
||||||
#ifndef E_WIDGET_FRAMELIST_H
|
#ifndef E_WIDGET_FRAMELIST_H
|
||||||
#define E_WIDGET_FRAMELIST_H
|
#define E_WIDGET_FRAMELIST_H
|
||||||
|
|
||||||
EAPI Evas_Object *e_widget_framelist_add(Evas *evas, char *label, int horiz);
|
EAPI Evas_Object *e_widget_framelist_add(Evas *evas, const char *label, int horiz);
|
||||||
EAPI void e_widget_framelist_object_append(Evas_Object *obj, Evas_Object *sobj);
|
EAPI void e_widget_framelist_object_append(Evas_Object *obj, Evas_Object *sobj);
|
||||||
EAPI void e_widget_framelist_content_align_set(Evas_Object *obj, double halign, double valign);
|
EAPI void e_widget_framelist_content_align_set(Evas_Object *obj, double halign, double valign);
|
||||||
EAPI void e_widget_framelist_label_set(Evas_Object *obj, char *label);
|
EAPI void e_widget_framelist_label_set(Evas_Object *obj, const char *label);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -242,6 +242,26 @@ e_widget_ilist_nth_data_get(Evas_Object *obj, int n)
|
||||||
return wcb->data;
|
return wcb->data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Show the nth element of an ilist
|
||||||
|
* @param obj the ilist
|
||||||
|
* @param n the number of the element to show
|
||||||
|
* @param top if true, place this item at the top, otherwise scroll just
|
||||||
|
* enough to show the element (from the current position).
|
||||||
|
*/
|
||||||
|
EAPI void
|
||||||
|
e_widget_ilist_nth_show(Evas_Object *obj, int n, int top)
|
||||||
|
{
|
||||||
|
E_Widget_Data *wd;
|
||||||
|
Evas_Coord x, y, w, h;
|
||||||
|
wd = e_widget_data_get(obj);
|
||||||
|
e_ilist_nth_geometry_get(wd->o_ilist, n, &x, &y, &w, &h);
|
||||||
|
if (top)
|
||||||
|
e_scrollframe_child_pos_set(wd->o_scrollframe, x, y);
|
||||||
|
else
|
||||||
|
e_scrollframe_child_region_show(wd->o_scrollframe, x, y, w, h);
|
||||||
|
}
|
||||||
|
|
||||||
EAPI void
|
EAPI void
|
||||||
e_widget_ilist_selected_set(Evas_Object *obj, int n)
|
e_widget_ilist_selected_set(Evas_Object *obj, int n)
|
||||||
{
|
{
|
||||||
|
|
|
@ -22,6 +22,7 @@ EAPI const char *e_widget_ilist_nth_label_get(Evas_Object *obj, int n);
|
||||||
EAPI void e_widget_ilist_nth_icon_set(Evas_Object *obj, int n, Evas_Object *icon);
|
EAPI void e_widget_ilist_nth_icon_set(Evas_Object *obj, int n, Evas_Object *icon);
|
||||||
EAPI Evas_Object *e_widget_ilist_nth_icon_get(Evas_Object *obj, int n);
|
EAPI Evas_Object *e_widget_ilist_nth_icon_get(Evas_Object *obj, int n);
|
||||||
EAPI void *e_widget_ilist_nth_data_get(Evas_Object *obj, int n);
|
EAPI void *e_widget_ilist_nth_data_get(Evas_Object *obj, int n);
|
||||||
|
EAPI void e_widget_ilist_nth_show(Evas_Object *obj, int n, int top);
|
||||||
EAPI void e_widget_ilist_selected_set(Evas_Object *obj, int n);
|
EAPI void e_widget_ilist_selected_set(Evas_Object *obj, int n);
|
||||||
EAPI int e_widget_ilist_selected_get(Evas_Object *obj);
|
EAPI int e_widget_ilist_selected_get(Evas_Object *obj);
|
||||||
EAPI const char *e_widget_ilist_selected_label_get(Evas_Object *obj);
|
EAPI const char *e_widget_ilist_selected_label_get(Evas_Object *obj);
|
||||||
|
|
Loading…
Reference in New Issue