From bdb2c25d5a8c7cd900adfd78d70fa0cdd3d79162 Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Tue, 1 Nov 2005 02:41:58 +0000 Subject: [PATCH] if module doesnt init - give up. SVN revision: 18181 --- src/bin/e_module.c | 24 ++++++++++------- src/bin/e_test.c | 66 +++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 79 insertions(+), 11 deletions(-) diff --git a/src/bin/e_module.c b/src/bin/e_module.c index fb46e8319..f872b970f 100644 --- a/src/bin/e_module.c +++ b/src/bin/e_module.c @@ -245,20 +245,24 @@ e_module_enable(E_Module *m) E_OBJECT_TYPE_CHECK_RETURN(m, E_MODULE_TYPE, 0); if ((m->enabled) || (m->error)) return 0; m->data = m->func.init(m); - if (m->data) m->enabled = 1; - for (l = e_config->modules; l; l = l->next) + if (m->data) { - E_Config_Module *em; - - em = l->data; - if (!strcmp(em->name, m->name)) + m->enabled = 1; + for (l = e_config->modules; l; l = l->next) { - em->enabled = 1; - e_config_save_queue(); - break; + E_Config_Module *em; + + em = l->data; + if (!strcmp(em->name, m->name)) + { + em->enabled = 1; + e_config_save_queue(); + break; + } } + return 1; } - return 1; + return 0; } int diff --git a/src/bin/e_test.c b/src/bin/e_test.c index ac7a74cd8..ced3e27a3 100644 --- a/src/bin/e_test.c +++ b/src/bin/e_test.c @@ -327,7 +327,7 @@ _e_test_internal(E_Container *con) e_dialog_title_set(dia, "A Test Dialog"); o = e_icon_add(dia->win->evas); - e_icon_file_set(o, "/home/raster/t.png"); +// e_icon_file_set(o, "/home/raster/t.png"); evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN, _e_test_click, NULL); evas_object_resize(o, 1024, 768); evas_object_focus_set(o, 1); @@ -352,6 +352,70 @@ _e_test_internal(E_Container *con) evas_object_focus_set(o, 1); } +#elif 0 +static E_Dialog * +_e_test_dia(E_Container *con) +{ + E_Dialog *dia; + Evas_Object *o, *o2, *o3; + + dia = e_dialog_new(con); + e_dialog_title_set(dia, "A Test Dialog"); + + o = e_icon_add(dia->win->evas); +// e_icon_file_set(o, "/home/raster/t.png"); + evas_object_resize(o, 1024, 768); + evas_object_focus_set(o, 1); + evas_object_show(o); + + o2 = e_scrollframe_add(dia->win->evas); +// e_scrollframe_custom_theme_set(o2, "base/theme/widgets", "widgets/scrollframe"); + evas_object_resize(o2, 200, 300); + evas_object_show(o2); +#if 0 + o3 = e_pan_add(dia->win->evas); + e_pan_child_set(o3, o); + e_scrollframe_extern_pan_set(o2, o3, e_pan_set, e_pan_get, e_pan_max_get, e_pan_child_size_get); +#else + e_scrollframe_child_set(o2, o); +#endif + + e_dialog_content_set(dia, o2, 500, 300); + e_dialog_button_add(dia, "OK", NULL, NULL, NULL); + e_win_centered_set(dia->win, 1); + e_dialog_show(dia); + + evas_object_focus_set(o, 1); + return dia; +} + +static E_Container *tcon = NULL; + +static int +_e_test_timer(void *data) +{ + E_Dialog *dia; + + if (data == NULL) + { + dia = _e_test_dia(tcon); + ecore_timer_add(0.5, _e_test_timer, dia); + } + else + { + dia = data; + e_object_del(E_OBJECT(dia)); + ecore_timer_add(0.5, _e_test_timer, NULL); + } + return 0; +} + +static void +_e_test_internal(E_Container *con) +{ + tcon = con; + _e_test_timer(NULL); +} #else static void _e_test_internal(E_Container *con)