Beispiel #1
0
EAPI void
e_layout_pack(Evas_Object *obj, Evas_Object *child)
{
   E_Smart_Data *sd;
   E_Layout_Item *li;
   
   sd = evas_object_smart_data_get(obj);
   _e_layout_smart_adopt(sd, child);
   sd->items = eina_list_append(sd->items, child);
   li = evas_object_data_get(child, "e_layout_data");
   _e_layout_smart_move_resize_item(li);
}
Beispiel #2
0
EAPI void
e_layout_child_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
{
   E_Layout_Item *li;
   
   li = evas_object_data_get(obj, "e_layout_data");
   if (!li) return;
   if ((li->x == x) && (li->y == y)) return;
   li->x = x;
   li->y = y;
   _e_layout_smart_move_resize_item(li);
}
Beispiel #3
0
EAPI void
e_layout_child_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h)
{
   E_Layout_Item *li;
   
   li = evas_object_data_get(obj, "e_layout_data");
   if (!li) return;
   if (w < 0) w = 0;
   if (h < 0) h = 0;
   if ((li->w == w) && (li->h == h)) return;
   li->w = w;
   li->h = h;
   _e_layout_smart_move_resize_item(li);
}
Beispiel #4
0
static void
_e_layout_smart_reconfigure(E_Smart_Data *sd)
{
   Evas_Coord x, y, w, h;
   Eina_List *l;

   if (!sd->changed) return;
   
   x = sd->x;
   y = sd->y;
   w = sd->w;
   h = sd->h;

   for (l = sd->items; l; l = l->next)
     {
	E_Layout_Item *li;
	Evas_Object *obj;
	
	obj = l->data;
	li = evas_object_data_get(obj, "e_layout_data");
	_e_layout_smart_move_resize_item(li);
     }
   sd->changed = 0;
}