Enlightenment CVS committal Author : devilhorns Project : e_modules Module : slideshow
Dir : e_modules/slideshow Modified Files: e_mod_main.h e_mod_main.c e_mod_config.c Log Message: Allow user to specify which directory is used to get edj files from when cycling. =================================================================== RCS file: /cvs/e/e_modules/slideshow/e_mod_main.h,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- e_mod_main.h 1 Feb 2006 14:21:40 -0000 1.11 +++ e_mod_main.h 13 May 2006 09:02:41 -0000 1.12 @@ -12,9 +12,7 @@ { int disable_timer; double cycle_time; -#ifdef WANT_OSIRIS - char *theme; -#endif + char *dir; }; struct _Config_Face =================================================================== RCS file: /cvs/e/e_modules/slideshow/e_mod_main.c,v retrieving revision 1.18 retrieving revision 1.19 diff -u -3 -r1.18 -r1.19 --- e_mod_main.c 5 Apr 2006 17:48:49 -0000 1.18 +++ e_mod_main.c 13 May 2006 09:02:41 -0000 1.19 @@ -1,9 +1,7 @@ #include <e.h> #include <E_Lib.h> #include <Ecore.h> -#ifdef WANT_OSIRIS # include <Ecore_File.h> -#endif #include "e_mod_main.h" #include "e_mod_config.h" #include "config.h" @@ -173,7 +171,8 @@ Slide *e; E_Menu_Item *mi; Evas_List *managers, *l, *l2; - + char buf[1024]; + e = E_NEW(Slide, 1); if (!e) @@ -184,9 +183,7 @@ #undef D #define T Config #define D e->conf_edd -#ifdef WANT_OSIRIS - E_CONFIG_VAL(D, T, theme, STR); -#endif + E_CONFIG_VAL(D, T, dir, STR); E_CONFIG_VAL(D, T, disable_timer, INT); E_CONFIG_VAL(D, T, cycle_time, DOUBLE); @@ -195,9 +192,8 @@ { e->conf = E_NEW(Config, 1); -#ifdef WANT_OSIRIS - e->conf->theme = (char *)evas_stringshare_add(""); -#endif + snprintf(buf, sizeof(buf), "%s/.e/e/backgrounds", e_user_homedir_get()); + e->conf->dir = (char *)evas_stringshare_add(buf); e->conf->disable_timer = 0; e->conf->cycle_time = 600; } @@ -224,7 +220,6 @@ if (ef) { ef->conf_face_edd = E_CONFIG_DD_NEW("Slide_Config_Face", Config_Face); - #undef T #undef D #define T Config_Face @@ -258,13 +253,9 @@ /* Setup */ if (!ef->conf->enabled) - { - _slide_face_disable(ef); - } + _slide_face_disable(ef); else - { - _slide_face_enable(ef); - } + _slide_face_enable(ef); } } } @@ -274,8 +265,7 @@ static void _slide_shutdown(Slide *e) { - if (list) - ecore_list_destroy(list); + if (list) ecore_list_destroy(list); _slide_face_free(e->face); @@ -284,8 +274,8 @@ e->cycle_timer = ecore_timer_del(e->cycle_timer); e->cycle_timer = NULL; } - if (e->display) - free(e->display); + + if (e->display) free(e->display); free(e->conf); E_CONFIG_DD_FREE(e->conf_edd); @@ -500,23 +490,17 @@ _slide_cb_check(void *data) { char *bg; - Slide_Face *ef = data; - -#ifdef WANT_OSIRIS + Slide_Face *ef; Slide *e; + ef = data; + if (!ef) return 0; + if (!ef->conf) return 0; + if (!ef->con) return 0; + if (ef->conf->enabled == 0) return 0; + e = ef->slide; - get_bg_count(e->conf->theme); -#else - get_bg_count(NULL); -#endif - - if (!ef) - return 0; - if (!ef->conf) - return 0; - if (!ef->con) - return 0; + get_bg_count(e->conf->dir); if (idx > bg_count) idx = 0; @@ -534,8 +518,6 @@ idx++; } } - if (ef->conf->enabled == 0) - return 0; return 1; } @@ -552,55 +534,23 @@ get_bg_count(char *name) { char *list_item; - char *home; - char buffer[PATH_MAX]; - home = e_user_homedir_get(); -#ifdef WANT_OSIRIS - if (name == NULL) - { - snprintf(buffer, sizeof(buffer), "%s/.e/e/backgrounds", home); - } - else - { - snprintf(buffer, sizeof(buffer), "%s/.e/e/backgrounds/%s", home, name); - } -#else - snprintf(buffer, sizeof(buffer), "%s/.e/e/backgrounds", home); -#endif bg_count = 0; - list = ecore_file_ls(buffer); + list = ecore_file_ls(name); ecore_list_goto_first(list); while ((list_item = (char *)ecore_list_next(list)) != NULL) - bg_count++; + bg_count++; } static void _set_bg(char *bg, Slide_Face *sf) { char buffer[4096]; - char *home; - - home = e_user_homedir_get(); - -#ifdef WANT_OSIRIS Slide *e; e = sf->slide; - if (e->conf->theme == NULL) - { - snprintf(buffer, sizeof(buffer), "%s/.e/e/backgrounds/%s", home, bg); - } - else - { - snprintf(buffer, sizeof(buffer), "%s/.e/e/backgrounds/%s/%s", home, e->conf->theme, bg); - } -#else - snprintf(buffer, sizeof(buffer), "%s/.e/e/backgrounds/%s", home, bg); -#endif - - if (buffer) - e_lib_background_set(buffer); + snprintf(buffer, sizeof(buffer), "%s/%s", e->conf->dir, bg); + e_lib_background_set(buffer); } static void @@ -610,7 +560,7 @@ sf = data; if (!sf) - return; + return; _config_slideshow_module(sf->con, sf->slide); } =================================================================== RCS file: /cvs/e/e_modules/slideshow/e_mod_config.c,v retrieving revision 1.21 retrieving revision 1.22 diff -u -3 -r1.21 -r1.22 --- e_mod_config.c 5 Apr 2006 17:48:49 -0000 1.21 +++ e_mod_config.c 13 May 2006 09:02:41 -0000 1.22 @@ -7,9 +7,7 @@ { int disable_timer; double cycle_time; -#ifdef WANT_OSIRIS - char *theme; -#endif + char *dir; }; /* Protos */ @@ -41,11 +39,17 @@ static void _fill_data(Slide *s, E_Config_Dialog_Data *cfdata) { + char buf[PATH_MAX]; + cfdata->cycle_time = s->conf->cycle_time; cfdata->disable_timer = s->conf->disable_timer; -#ifdef WANT_OSIRIS - cfdata->theme = s->conf->theme; -#endif + if (s->conf->dir) + cfdata->dir = s->conf->dir; + else + { + snprintf(buf, sizeof(buf), "%s/.e/e/backgrounds", e_user_homedir_get()); + cfdata->dir = (char *)evas_stringshare_add(buf); + } } static void * @@ -56,7 +60,6 @@ s = cfd->data; cfdata = E_NEW(E_Config_Dialog_Data, 1); - _fill_data(s, cfdata); return cfdata; } @@ -68,14 +71,13 @@ s = cfd->data; s->config_dialog = NULL; - /* Free the cfdata */ free(cfdata); } static Evas_Object * _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) { - Evas_Object *o, *ob, *of; + Evas_Object *o, *ob, *of, *ot; o = e_widget_list_add(evas, 0, 0); of = e_widget_framelist_add(evas, D_("Cycle Time"), 0); @@ -85,18 +87,15 @@ e_widget_framelist_object_append(of, ob); e_widget_list_object_append(o, of, 1, 1, 0.5); -#ifdef WANT_OSIRIS - of = e_widget_framelist_add(evas, D_("Theme"), 0); + of = e_widget_framelist_add(evas, D_("Directory"), 0); ot = e_widget_table_add(evas, 1); ob = e_widget_label_add(evas, D_("Sub-directory to use for backgrounds")); e_widget_table_object_append(ot, ob, 0, 0, 1, 1, 0, 0, 1, 0); - ob = e_widget_label_add(evas, D_("Leave blank for none")); - e_widget_table_object_append(ot, ob, 0, 1, 1, 1, 0, 0, 1, 0); - ob = e_widget_entry_add(evas, &cfdata->theme); - e_widget_table_object_append(ot, ob, 0, 2, 1, 1, 1, 0, 1, 0); + ob = e_widget_entry_add(evas, &cfdata->dir); + e_widget_table_object_append(ot, ob, 0, 1, 1, 1, 1, 0, 1, 0); e_widget_framelist_object_append(of, ot); e_widget_list_object_append(o, of, 1, 1, 0.5); -#endif + return o; } @@ -104,21 +103,23 @@ _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) { Slide *s; + char buf[PATH_MAX]; s = cfd->data; - /* Actually take our cfdata settings and apply them in real life */ e_border_button_bindings_ungrab_all(); s->conf->cycle_time = cfdata->cycle_time; s->conf->disable_timer = cfdata->disable_timer; -#ifdef WANT_OSIRIS - if (cfdata->theme != NULL) - s->conf->theme = (char *)evas_stringshare_add(cfdata->theme); - else - s->conf->theme = (char *)evas_stringshare_add(""); -#endif + if (cfdata->dir != NULL) + s->conf->dir = (char *)evas_stringshare_add(cfdata->dir); + else + { + snprintf(buf, sizeof(buf), "%s/.e/e/backgrounds", e_user_homedir_get()); + s->conf->dir = (char *)evas_stringshare_add(buf); + } + e_config_save_queue(); e_border_button_bindings_grab_all(); _slide_cb_config_updated(s); - return 1; /* Apply was OK */ + return 1; } ------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs