Hi guys,

I did a quick test with gengrid, where i would like to have only one
object shown at a time. The example program is attached and is really
simple.
I just create a gengrid, add it in the window and set the item size to
be the same than the window size. I thought that only one object would
be display, but as you can see nothing is displayed. After that if you
resize the window you can see the grid appear.
I guess there is a problem here ?

regards,
Nico

-- 
Nicolas Aguirre
Mail: [email protected]
Web: http://www.digital-corner.org
/* gcc -o gengrid gengrid.c `pkg-config elementary --libs --cflags` */


#include <Elementary.h>

static Elm_Gengrid_Item_Class gic;

char *
grid_label_get(void *data, Evas_Object *obj, const char *part)
{

   return strdup(data);
}

Evas_Object *
grid_icon_get(void *data, Evas_Object *obj, const char *part)
{

   if (!strcmp(part, "elm.swallow.icon"))
     {

	Evas_Object *btn = elm_button_add(obj);
	elm_button_label_set(btn, data);
	evas_object_show(btn);
	return btn;
     }
   
   return NULL;
}

Eina_Bool
grid_state_get(void *data, Evas_Object *obj, const char *part)
{
   return EINA_FALSE;
}

void
grid_del(void *data, Evas_Object *obj)
{
}

static void
grid_sel(void *data, Evas_Object *obj, void *event_info)
{
}


int main(int argc, char **argv)
{
   Evas_Object *win, *bg, *grid;
   int i = 0;
   const char *labels[] = {
     "btn1",
     "btn2",
     "btn3",
     "btn4",
     NULL
   };

   elm_init(argc, argv);

   win = elm_win_add(NULL, "grid_test", ELM_WIN_BASIC);
   elm_win_title_set(win, "Grid");

   bg = elm_bg_add(win);
   evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
   elm_win_resize_object_add(win, bg);
   evas_object_show(bg);

   grid = elm_gengrid_add(win);
   elm_gengrid_horizontal_set(grid, EINA_TRUE);
   elm_gengrid_item_size_set(grid, 800, 480);

   gic.item_style = "default";
   gic.func.label_get = grid_label_get;
   gic.func.icon_get = grid_icon_get;
   gic.func.state_get = grid_state_get;
   gic.func.del = grid_del;

   while(labels[i])
     {
	elm_gengrid_item_append(grid, &gic, labels[i], NULL, NULL);
	i++;
     }
   
   elm_win_resize_object_add(win, grid);
   evas_object_show(grid);
   evas_object_show(bg);

   evas_object_resize(win, 800, 480);

   evas_object_show(win);
   elm_run();
   elm_shutdown();

   return 1;
}
------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to