From 18966c828b548533bc61d72fb074b9cdb328d8c6 Mon Sep 17 00:00:00 2001 From: Gustavo Sverzut Barbieri Date: Sun, 7 Sep 2008 01:25:49 +0000 Subject: [PATCH] Add calculate callback to Evas_Smart_Class. Some people is using it for some time now without problems, so I'm adding it to SVN to get some broader use. Remember to recompile ALL libraries that depend on Evas as it will change the EVAS_SMART_CLASS_VERSION and old classes will fail to load. This will also change Edje so it will postpone _edje_recalc() to render time, calculate() callback, however some methods will force early recalculation. SVN revision: 35860 --- src/bin/e_box.c | 1 + src/bin/e_editable.c | 1 + src/bin/e_entry.c | 1 + src/bin/e_flowlayout.c | 1 + src/bin/e_fm.c | 1 + src/bin/e_gadcon.c | 1 + src/bin/e_icon.c | 1 + src/bin/e_ilist.c | 1 + src/bin/e_layout.c | 1 + src/bin/e_livethumb.c | 1 + src/bin/e_pan.c | 1 + src/bin/e_scrollframe.c | 1 + src/bin/e_slidecore.c | 1 + src/bin/e_slider.c | 1 + src/bin/e_slidesel.c | 1 + src/bin/e_spectrum.c | 1 + src/bin/e_table.c | 1 + src/bin/e_tlist.c | 2 +- src/bin/e_widget.c | 1 + 19 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/bin/e_box.c b/src/bin/e_box.c index f610a86b9..401de38f3 100644 --- a/src/bin/e_box.c +++ b/src/bin/e_box.c @@ -652,6 +652,7 @@ _e_box_smart_init(void) _e_box_smart_color_set, _e_box_smart_clip_set, _e_box_smart_clip_unset, + NULL, NULL }; _e_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_editable.c b/src/bin/e_editable.c index fdb39654e..eae56e38f 100644 --- a/src/bin/e_editable.c +++ b/src/bin/e_editable.c @@ -87,6 +87,7 @@ e_editable_add(Evas *evas) _e_editable_color_set, _e_editable_clip_set, _e_editable_clip_unset, + NULL, NULL }; _e_editable_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_entry.c b/src/bin/e_entry.c index 1e9f07291..0ebaca41f 100644 --- a/src/bin/e_entry.c +++ b/src/bin/e_entry.c @@ -99,6 +99,7 @@ e_entry_add(Evas *evas) _e_entry_color_set, _e_entry_clip_set, _e_entry_clip_unset, + NULL, NULL }; _e_entry_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_flowlayout.c b/src/bin/e_flowlayout.c index 8e0bdfdb2..9e85a7a78 100644 --- a/src/bin/e_flowlayout.c +++ b/src/bin/e_flowlayout.c @@ -836,6 +836,7 @@ _e_flowlayout_smart_init(void) _e_flowlayout_smart_color_set, _e_flowlayout_smart_clip_set, _e_flowlayout_smart_clip_unset, + NULL, NULL }; _e_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_fm.c b/src/bin/e_fm.c index 28dcd93cd..f9f158487 100644 --- a/src/bin/e_fm.c +++ b/src/bin/e_fm.c @@ -418,6 +418,7 @@ e_fm2_init(void) _e_fm2_smart_color_set, /* color_set */ _e_fm2_smart_clip_set, /* clip_set */ _e_fm2_smart_clip_unset, /* clip_unset */ + NULL, NULL }; _e_fm2_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_gadcon.c b/src/bin/e_gadcon.c index 733f9ec49..bb5563737 100644 --- a/src/bin/e_gadcon.c +++ b/src/bin/e_gadcon.c @@ -3108,6 +3108,7 @@ _e_gadcon_layout_smart_init(void) _e_gadcon_layout_smart_color_set, _e_gadcon_layout_smart_clip_set, _e_gadcon_layout_smart_clip_unset, + NULL, NULL }; _e_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_icon.c b/src/bin/e_icon.c index 7f2d73cb9..db0593094 100644 --- a/src/bin/e_icon.c +++ b/src/bin/e_icon.c @@ -345,6 +345,7 @@ _e_icon_smart_init(void) _e_icon_smart_color_set, _e_icon_smart_clip_set, _e_icon_smart_clip_unset, + NULL, NULL }; _e_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_ilist.c b/src/bin/e_ilist.c index 8af4eface..0a11f5588 100644 --- a/src/bin/e_ilist.c +++ b/src/bin/e_ilist.c @@ -799,6 +799,7 @@ _e_smart_init(void) _e_smart_color_set, _e_smart_clip_set, _e_smart_clip_unset, + NULL, NULL }; _e_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_layout.c b/src/bin/e_layout.c index e0a60faaa..d1055252d 100644 --- a/src/bin/e_layout.c +++ b/src/bin/e_layout.c @@ -364,6 +364,7 @@ _e_layout_smart_init(void) _e_layout_smart_color_set, _e_layout_smart_clip_set, _e_layout_smart_clip_unset, + NULL, NULL }; _e_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_livethumb.c b/src/bin/e_livethumb.c index 33f1bec1f..d5acd96e1 100644 --- a/src/bin/e_livethumb.c +++ b/src/bin/e_livethumb.c @@ -210,6 +210,7 @@ _e_smart_init(void) _e_smart_color_set, _e_smart_clip_set, _e_smart_clip_unset, + NULL, NULL }; _e_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_pan.c b/src/bin/e_pan.c index 7dd946fbf..4b55c2be4 100644 --- a/src/bin/e_pan.c +++ b/src/bin/e_pan.c @@ -263,6 +263,7 @@ _e_smart_init(void) _e_smart_color_set, _e_smart_clip_set, _e_smart_clip_unset, + NULL, NULL }; _e_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_scrollframe.c b/src/bin/e_scrollframe.c index fa72ea237..1d6df869d 100644 --- a/src/bin/e_scrollframe.c +++ b/src/bin/e_scrollframe.c @@ -1042,6 +1042,7 @@ _e_smart_init(void) _e_smart_color_set, _e_smart_clip_set, _e_smart_clip_unset, + NULL, NULL }; _e_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_slidecore.c b/src/bin/e_slidecore.c index fd57a6de1..5d2ba860d 100644 --- a/src/bin/e_slidecore.c +++ b/src/bin/e_slidecore.c @@ -410,6 +410,7 @@ _e_smart_init(void) _e_smart_color_set, _e_smart_clip_set, _e_smart_clip_unset, + NULL, NULL }; _e_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_slider.c b/src/bin/e_slider.c index a1dd15a5e..2f78898ed 100644 --- a/src/bin/e_slider.c +++ b/src/bin/e_slider.c @@ -542,6 +542,7 @@ _e_smart_init(void) _e_smart_color_set, _e_smart_clip_set, _e_smart_clip_unset, + NULL, NULL }; _e_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_slidesel.c b/src/bin/e_slidesel.c index 8ba7f2399..ee4cf8c74 100644 --- a/src/bin/e_slidesel.c +++ b/src/bin/e_slidesel.c @@ -366,6 +366,7 @@ _e_smart_init(void) _e_smart_color_set, _e_smart_clip_set, _e_smart_clip_unset, + NULL, NULL }; _e_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_spectrum.c b/src/bin/e_spectrum.c index 6c98bc673..4380014b5 100644 --- a/src/bin/e_spectrum.c +++ b/src/bin/e_spectrum.c @@ -167,6 +167,7 @@ _e_spectrum_smart_init(void) _e_spectrum_smart_color_set, _e_spectrum_smart_clip_set, _e_spectrum_smart_clip_unset, + NULL, NULL }; _e_spectrum_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_table.c b/src/bin/e_table.c index 3a7d14c01..28ec82e77 100644 --- a/src/bin/e_table.c +++ b/src/bin/e_table.c @@ -839,6 +839,7 @@ _e_table_smart_init(void) _e_table_smart_color_set, _e_table_smart_clip_set, _e_table_smart_clip_unset, + NULL, NULL }; _e_smart = evas_smart_class_new(&sc); diff --git a/src/bin/e_tlist.c b/src/bin/e_tlist.c index 4d559d293..9a497e502 100644 --- a/src/bin/e_tlist.c +++ b/src/bin/e_tlist.c @@ -537,7 +537,7 @@ _e_smart_init(void) EVAS_SMART_CLASS_VERSION, _e_smart_add, _e_smart_del, _e_smart_move, _e_smart_resize, _e_smart_show, _e_smart_hide, _e_smart_color_set, - _e_smart_clip_set, _e_smart_clip_unset, NULL + _e_smart_clip_set, _e_smart_clip_unset, NULL, NULL }; _e_smart = evas_smart_class_new(&sc); } diff --git a/src/bin/e_widget.c b/src/bin/e_widget.c index d69a3d478..953c01488 100644 --- a/src/bin/e_widget.c +++ b/src/bin/e_widget.c @@ -577,6 +577,7 @@ _e_smart_init(void) _e_smart_color_set, _e_smart_clip_set, _e_smart_clip_unset, + NULL, NULL }; _e_smart = evas_smart_class_new(&sc);