From 9892926bdfd3f8f08abd9b88745004cc36672557 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20Briano?= Date: Tue, 24 Nov 2009 17:55:11 +0000 Subject: [PATCH] Autoload modules for external widgets Patch by Fabiano Fidencio SVN revision: 43951 --- legacy/edje/src/bin/edje_cc_handlers.c | 2 ++ legacy/edje/src/lib/edje_load.c | 13 ++++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/legacy/edje/src/bin/edje_cc_handlers.c b/legacy/edje/src/bin/edje_cc_handlers.c index a604efaf8d..ca1cb4506e 100644 --- a/legacy/edje/src/bin/edje_cc_handlers.c +++ b/legacy/edje/src/bin/edje_cc_handlers.c @@ -517,6 +517,7 @@ New_Object_Handler object_handlers[] = {"spectra", NULL}, {"spectra.spectrum", ob_spectrum}, {"collections", ob_collections}, + {"collections.externals", NULL}, /* dup */ {"collections.images", NULL}, /* dup */ {"collections.fonts", NULL}, /* dup */ {"collections.styles", NULL}, /* dup */ @@ -527,6 +528,7 @@ New_Object_Handler object_handlers[] = {"collections.group.data", NULL}, {"collections.group.script", ob_collections_group_script}, {"collections.group.lua_script", ob_collections_group_lua_script}, + {"collections.group.externals", NULL}, /* dup */ {"collections.group.images", NULL}, /* dup */ {"collections.group.fonts", NULL}, /* dup */ {"collections.group.styles", NULL}, /* dup */ diff --git a/legacy/edje/src/lib/edje_load.c b/legacy/edje/src/lib/edje_load.c index 365a24155a..2d7b28e738 100644 --- a/legacy/edje/src/lib/edje_load.c +++ b/legacy/edje/src/lib/edje_load.c @@ -305,7 +305,18 @@ _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *g ed->group = eina_stringshare_add(group); ed->load_error = EDJE_LOAD_ERROR_NONE; - _edje_file_add(ed); + _edje_file_add(ed); + + if (ed->file->external_dir) + { + const Edje_External_Directory_Entry *ext; + const Eina_List *n; + + EINA_LIST_FOREACH(ed->file->external_dir->entries, n, ext) + { + edje_module_load(ext->entry); + } + } _edje_textblock_styles_add(ed); _edje_textblock_style_all_update(ed);