genlist theme issue - fixed.

SVN revision: 39174
This commit is contained in:
Carsten Haitzler 2009-02-24 11:58:52 +00:00
parent 7e31e6d212
commit 03f44c4768
2 changed files with 150 additions and 6 deletions

View File

@ -7388,6 +7388,8 @@ collections {
description { state: "default" 0.0;
fixed: 1 0;
align: 1.0 0.5;
aspect: 1.0 1.0;
aspect_preference: VERTICAL;
rel1 {
relative: 1.0 0.0;
offset: -5 4;

View File

@ -2338,7 +2338,7 @@ Evas_Object *gl2_icon_get(const void *data, Evas_Object *obj, const char *part)
else if ((tit->mode & 0x3) == 2)
snprintf(buf, sizeof(buf), "%s/images/panel_01.jpg", PACKAGE_DATA_DIR);
else if ((tit->mode & 0x3) == 3)
snprintf(buf, sizeof(buf), "%s/images/plant_01.jpg", PACKAGE_DATA_DIR);
snprintf(buf, sizeof(buf), "%s/images/rock_01.jpg", PACKAGE_DATA_DIR);
elm_icon_file_set(ic, buf, NULL);
}
else if (!strcmp(part, "elm.swallow.end"))
@ -2379,8 +2379,8 @@ my_bt_31(void *data, Evas_Object *obj, void *event_info)
static Testitem tit[3];
int i;
win = elm_win_add(NULL, "genlist-2", ELM_WIN_BASIC);
elm_win_title_set(win, "Genlist 2");
win = elm_win_add(NULL, "genlist-3", ELM_WIN_BASIC);
elm_win_title_set(win, "Genlist 3");
elm_win_autodel_set(win, 1);
bg = elm_bg_add(win);
@ -2457,8 +2457,149 @@ my_bt_31(void *data, Evas_Object *obj, void *event_info)
evas_object_show(win);
}
static Elm_Genlist_Item_Class itc3;
char *gl3_label_get(const void *data, Evas_Object *obj, const char *part)
{
Testitem *tit = data;
char buf[256];
snprintf(buf, sizeof(buf), "Item mode %i", tit->mode);
return strdup(buf);
}
Evas_Object *gl3_icon_get(const void *data, Evas_Object *obj, const char *part)
{
Testitem *tit = data;
char buf[PATH_MAX];
if (!strcmp(part, "elm.swallow.icon"))
{
Evas_Object *bx = elm_box_add(obj);
Evas_Object *ic;
elm_box_horizontal_set(bx, 1);
ic = elm_icon_add(obj);
// if ((tit->mode & 0x3) == 0)
snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
// else if ((tit->mode & 0x3) == 1)
// snprintf(buf, sizeof(buf), "%s/images/logo.png", PACKAGE_DATA_DIR);
// else if ((tit->mode & 0x3) == 2)
// snprintf(buf, sizeof(buf), "%s/images/panel_01.jpg", PACKAGE_DATA_DIR);
// else if ((tit->mode & 0x3) == 3)
// snprintf(buf, sizeof(buf), "%s/images/rock_01.jpg", PACKAGE_DATA_DIR);
elm_icon_file_set(ic, buf, NULL);
elm_icon_scale_set(ic, 0, 0);
evas_object_show(ic);
elm_box_pack_end(bx, ic);
ic = elm_icon_add(obj);
elm_icon_file_set(ic, buf, NULL);
elm_icon_scale_set(ic, 0, 0);
evas_object_show(ic);
elm_box_pack_end(bx, ic);
evas_object_show(bx);
return bx;
}
else if (!strcmp(part, "elm.swallow.end"))
{
Evas_Object *ck;
ck = elm_check_add(obj);
evas_object_show(ck);
return ck;
}
return NULL;
}
Evas_Bool gl3_state_get(const void *data, Evas_Object *obj, const char *part)
{
return 0;
}
void gl3_del(const void *data, Evas_Object *obj)
{
}
static void
my_bt_32(void *data, Evas_Object *obj, void *event_info)
{
Evas_Object *win, *bg, *gl, *bx, *bx2, *bt;
static Testitem tit[3];
int i;
win = elm_win_add(NULL, "genlist-4", ELM_WIN_BASIC);
elm_win_title_set(win, "Genlist 4");
elm_win_autodel_set(win, 1);
bg = elm_bg_add(win);
elm_win_resize_object_add(win, bg);
evas_object_size_hint_weight_set(bg, 1.0, 1.0);
evas_object_show(bg);
bx = elm_box_add(win);
evas_object_size_hint_weight_set(bx, 1.0, 1.0);
elm_win_resize_object_add(win, bx);
evas_object_show(bx);
gl = elm_genlist_add(win);
evas_object_size_hint_align_set(gl, -1.0, -1.0);
evas_object_size_hint_weight_set(gl, 1.0, 1.0);
evas_object_show(gl);
itc3.item_style = "default";
itc3.func.label_get = gl3_label_get;
itc3.func.icon_get = gl3_icon_get;
itc3.func.state_get = gl3_state_get;
itc3.func.del = gl3_del;
tit[0].mode = 0;
tit[0].item = elm_genlist_item_append(gl, &itc3,
&(tit[0])/* item data */, NULL/* parent */, ELM_GENLIST_ITEM_NONE, gl_sel/* func */,
NULL/* func data */);
tit[1].mode = 1;
tit[1].item = elm_genlist_item_append(gl, &itc3,
&(tit[1])/* item data */, NULL/* parent */, ELM_GENLIST_ITEM_NONE, gl_sel/* func */,
NULL/* func data */);
tit[2].mode = 2;
tit[2].item = elm_genlist_item_append(gl, &itc3,
&(tit[2])/* item data */, NULL/* parent */, ELM_GENLIST_ITEM_NONE, gl_sel/* func */,
NULL/* func data */);
elm_box_pack_end(bx, gl);
evas_object_show(bx2);
bx2 = elm_box_add(win);
elm_box_horizontal_set(bx2, 1);
elm_box_homogenous_set(bx2, 1);
evas_object_size_hint_weight_set(bx2, 1.0, 0.0);
evas_object_size_hint_align_set(bx2, -1.0, -1.0);
bt = elm_button_add(win);
elm_button_label_set(bt, "[1]");
evas_object_smart_callback_add(bt, "clicked", my_gl_update, &(tit[0]));
evas_object_size_hint_align_set(bt, -1.0, -1.0);
evas_object_size_hint_weight_set(bt, 1.0, 0.0);
elm_box_pack_end(bx2, bt);
evas_object_show(bt);
bt = elm_button_add(win);
elm_button_label_set(bt, "[2]");
evas_object_smart_callback_add(bt, "clicked", my_gl_update, &(tit[1]));
evas_object_size_hint_align_set(bt, -1.0, -1.0);
evas_object_size_hint_weight_set(bt, 1.0, 0.0);
elm_box_pack_end(bx2, bt);
evas_object_show(bt);
bt = elm_button_add(win);
elm_button_label_set(bt, "[3]");
evas_object_smart_callback_add(bt, "clicked", my_gl_update, &(tit[2]));
evas_object_size_hint_align_set(bt, -1.0, -1.0);
evas_object_size_hint_weight_set(bt, 1.0, 0.0);
elm_box_pack_end(bx2, bt);
evas_object_show(bt);
elm_box_pack_end(bx, bx2);
evas_object_show(bx2);
evas_object_resize(win, 320, 320);
evas_object_show(win);
}
static void
my_bt_33(void *data, Evas_Object *obj, void *event_info)
{
Evas_Object *win, *bg, *bx, *ic, *ck;
char buf[PATH_MAX];
@ -2521,7 +2662,7 @@ my_bt_32(void *data, Evas_Object *obj, void *event_info)
}
static void
my_bt_33(void *data, Evas_Object *obj, void *event_info)
my_bt_34(void *data, Evas_Object *obj, void *event_info)
{
Evas_Object *win, *bg, *bx, *ic, *rd, *rdg;
char buf[PATH_MAX];
@ -2698,8 +2839,9 @@ my_win_main(void)
elm_list_item_append(li, "Genlist", NULL, NULL, my_bt_29, NULL);
elm_list_item_append(li, "Genlist 2", NULL, NULL, my_bt_30, NULL);
elm_list_item_append(li, "Genlist 3", NULL, NULL, my_bt_31, NULL);
elm_list_item_append(li, "Checks", NULL, NULL, my_bt_32, NULL);
elm_list_item_append(li, "Radios", NULL, NULL, my_bt_33, NULL);
elm_list_item_append(li, "Genlist 4", NULL, NULL, my_bt_32, NULL);
elm_list_item_append(li, "Checks", NULL, NULL, my_bt_33, NULL);
elm_list_item_append(li, "Radios", NULL, NULL, my_bt_34, NULL);
elm_list_go(li);