|
From: <cap...@us...> - 2009-01-26 23:08:02
|
Revision: 530
http://enna.svn.sourceforge.net/enna/?rev=530&view=rev
Author: captainigloo
Date: 2009-01-26 22:11:13 +0000 (Mon, 26 Jan 2009)
Log Message:
-----------
Add preload Callback
Modified Paths:
--------------
trunk/wall-e/src/bin/wall.c
Modified: trunk/wall-e/src/bin/wall.c
===================================================================
--- trunk/wall-e/src/bin/wall.c 2008-12-31 15:43:02 UTC (rev 529)
+++ trunk/wall-e/src/bin/wall.c 2009-01-26 22:11:13 UTC (rev 530)
@@ -202,7 +202,7 @@
}
-static Walle_Picture_Item *_wall_selected_item_get( Walle_Wall_Data *priv, int *row,
+static Walle_Picture_Item *_wall_selected_item_get( Walle_Wall_Data *priv, int *row,
int *col)
{
Eina_List *l, *l2;
@@ -237,7 +237,7 @@
if (!pi || !priv)
return;
pi->selected = 0;
- edje_object_signal_emit(pi->o_edje, "unselect", "enna");
+ edje_object_signal_emit(pi->o_edje, "unselect", "walle");
}
@@ -250,7 +250,7 @@
evas_object_raise(pi->o_edje);
evas_object_raise(eina_list_nth(pi->priv->o_boxes, pi->row));
- edje_object_signal_emit(pi->o_edje, "select", "enna");
+ edje_object_signal_emit(pi->o_edje, "select", "walle");
priv->row_sel = pi->row;
}
@@ -283,8 +283,18 @@
_wall_item_select(pi->priv, pi);
}
+static void
+_walle_event_image_preload_cb(void *data, Evas *evas, Evas_Object *obj, void *event_info)
+{
+ Walle_Picture_Item *pi = data;
+ if (!pi) return;
+ printf("Preload Cb\n");
+ edje_object_part_swallow(pi->o_edje, "walle.swallow.content", pi->o_pict);
+ evas_object_show(pi->o_pict);
+}
+
static void
_wall_smart_resize(Evas_Object *o, Evas_Coord w, Evas_Coord h)
{
@@ -297,7 +307,6 @@
{
evas_object_resize(o_box, w, h/priv->nb_lines);
}
-
evas_object_resize(priv->o_box, w, h);
evas_object_size_hint_min_get(priv->o_box, &w, &h);
evas_object_size_hint_min_set(o, w, h);
@@ -363,14 +372,14 @@
evas_object_show(pi->o_edje);
pi->o_pict = child;
-
+ //evas_object_hide(child);
evas_object_geometry_get(child, NULL, NULL, &ow, &oh);
edje_extern_object_min_size_set(pi->o_edje, ow, oh);
evas_object_size_hint_min_set(child, 0, 0);
- edje_object_part_swallow(pi->o_edje, "walle.swallow.content", child);
+
n = priv->nb_items % priv->nb_lines;
pi->row = n;
o_box = eina_list_nth(priv->o_boxes, n);
@@ -392,8 +401,10 @@
priv->nb_items ++;
+
evas_object_event_callback_add(pi->o_edje, EVAS_CALLBACK_MOUSE_DOWN,
_wall_event_mouse_down_cb, pi);
-
+ evas_object_event_callback_add(pi->o_pict, EVAS_CALLBACK_IMAGE_PRELOADED,
+ _walle_event_image_preload_cb, pi);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|