Enlightenment CVS committal Author : devilhorns Project : e_modules Module : rain
Dir : e_modules/rain Modified Files: e_mod_main.h e_mod_main.c e_mod_config.h e_mod_config.c Log Message: Code Cleanups =================================================================== RCS file: /cvsroot/enlightenment/e_modules/rain/e_mod_main.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- e_mod_main.h 12 Dec 2005 20:38:47 -0000 1.2 +++ e_mod_main.h 12 Dec 2005 21:06:24 -0000 1.3 @@ -1,5 +1,5 @@ #ifndef E_MOD_MAIN_H -#define E_MOD_MAIN_H +# define E_MOD_MAIN_H typedef struct _Config Config; typedef struct _Rain Rain; @@ -15,7 +15,7 @@ struct _Rain { E_Module *module; - E_Container *con; + Evas_List *cons; Evas *canvas; Ecore_Animator *animator; Evas_List *clouds; =================================================================== RCS file: /cvsroot/enlightenment/e_modules/rain/e_mod_main.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- e_mod_main.c 12 Dec 2005 20:38:47 -0000 1.2 +++ e_mod_main.c 12 Dec 2005 21:06:24 -0000 1.3 @@ -21,7 +21,7 @@ E_Module_Api e_modapi = { E_MODULE_API_VERSION, - "Rain" + "Rain" }; void *e_modapi_init(E_Module *m) @@ -115,7 +115,7 @@ E_Container *con; con = l2->data; - rain->con = con; + rain->cons = evas_list_append(rain->cons, con); rain->canvas = con->bg_evas; } } @@ -161,6 +161,14 @@ { free(rain->conf); E_CONFIG_DD_FREE(rain->conf_edd); + while (rain->cons) + { + E_Container *con; + + con = rain->cons->data; + rain->cons = evas_list_remove_list(rain->cons, rain->cons); + } + _rain_clouds_free(rain); _rain_drops_free(rain); if (rain->animator) @@ -201,7 +209,7 @@ o = evas_object_image_add(rain->canvas); evas_object_image_file_set(o, PACKAGE_DATA_DIR "/cloud.png", ""); evas_object_image_size_get(o, &tw, &th); - + for (i = 0; i < rain->conf->cloud_count; i++) { Evas_Coord tx, ty; @@ -251,10 +259,10 @@ evas_object_resize(o, tw, th); evas_object_image_alpha_set(o, 1); evas_object_image_fill_set(o, 0, 0, tw, th); - + tx = random() % (ww - tw); ty = random() % (hh - th); - + evas_object_move(o, tx, ty); evas_object_pass_events_set(o, 1); evas_object_show(o); @@ -273,7 +281,7 @@ break; } rain->drops = evas_list_append(rain->drops, drop); - } + } } static int _rain_cb_animator(void *data) @@ -304,18 +312,20 @@ static void _rain_menu_cb_configure(void *data, E_Menu *m, E_Menu_Item *mi) { - Rain *r; + Rain *r; + E_Container *con; r = (Rain *)data; if (!r) return; - e_int_config_rain(r->con, r); + con = e_container_current_get(e_manager_current_get()); + e_int_config_rain(con, r); } void _rain_cb_config_updated(void *data) { - Rain *r; - - r = (Rain *)data; - if (!r) return; + Rain *r; + + r = (Rain *)data; + if (!r) return; _rain_canvas_reset(r); } =================================================================== RCS file: /cvsroot/enlightenment/e_modules/rain/e_mod_config.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- e_mod_config.h 12 Dec 2005 20:38:47 -0000 1.1 +++ e_mod_config.h 12 Dec 2005 21:06:24 -0000 1.2 @@ -1,8 +1,8 @@ #ifdef E_TYPEDEFS #else -#ifndef E_MOD_CONFIG_H -#define E_MOD_CONFIG_H -#include "e_mod_main.h" +# ifndef E_MOD_CONFIG_H +# define E_MOD_CONFIG_H +# include "e_mod_main.h" EAPI void e_int_config_rain(E_Container *con, Rain *r); -#endif +# endif #endif =================================================================== RCS file: /cvsroot/enlightenment/e_modules/rain/e_mod_config.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- e_mod_config.c 12 Dec 2005 20:38:47 -0000 1.1 +++ e_mod_config.c 12 Dec 2005 21:06:24 -0000 1.2 @@ -9,14 +9,14 @@ #define DENSITY_DRIZZLE 1 #define DENSITY_DOWNPOUR 2 -struct _cfdata -{ +struct _cfdata +{ /* Basic */ int show_clouds; int density; }; -struct _Cfg_File_Data +struct _Cfg_File_Data { E_Config_Dialog *cfd; char *file; @@ -32,12 +32,11 @@ Rain *rn = NULL; void -e_int_config_rain(E_Container *con, Rain *r) + e_int_config_rain(E_Container *con, Rain *r) { E_Config_Dialog *cfd; E_Config_Dialog_View v; - - printf("Creating Rain\n"); + rn = r; v.create_cfdata = _create_data; v.free_cfdata = _free_data; @@ -49,13 +48,11 @@ cfd = e_config_dialog_new(con, _("Rain Module"), NULL, 0, &v, r); } -static void -_fill_data(CFData *cfdata) +static void + _fill_data(CFData *cfdata) { - printf("Creating Clouds\n"); cfdata->show_clouds = rn->conf->show_clouds; - printf("Creating Density\n"); - switch (rn->conf->cloud_count) + switch (rn->conf->cloud_count) { case 5: cfdata->density = DENSITY_SPRINKLE; @@ -69,38 +66,37 @@ default: break; } - printf("Done Fill\n"); } static void -*_create_data(E_Config_Dialog *cfd) + *_create_data(E_Config_Dialog *cfd) { CFData *cfdata; - + cfdata = E_NEW(CFData, 1); _fill_data(cfdata); return cfdata; } static void -_free_data(E_Config_Dialog *cfd, CFData *cfdata) + _free_data(E_Config_Dialog *cfd, CFData *cfdata) { free(cfdata); } static Evas_Object -*_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, CFData *cfdata) + *_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, CFData *cfdata) { Evas_Object *o, *of, *ob; E_Radio_Group *rg; - + o = e_widget_list_add(evas, 0, 0); - + of = e_widget_framelist_add(evas, _("General Settings"), 0); ob = e_widget_check_add(evas, _("Show Clouds"), &(cfdata->show_clouds)); e_widget_framelist_object_append(of, ob); e_widget_list_object_append(o, of, 1, 1, 0.5); - + of = e_widget_framelist_add(evas, _("Density"), 0); rg = e_widget_radio_group_new(&(cfdata->density)); ob = e_widget_radio_add(evas, _("Sprinkle"), DENSITY_SPRINKLE, rg); @@ -110,15 +106,15 @@ ob = e_widget_radio_add(evas, _("Downpour"), DENSITY_DOWNPOUR, rg); e_widget_framelist_object_append(of, ob); e_widget_list_object_append(o, of, 1, 1, 0.5); - + return o; } static int -_basic_apply_data(E_Config_Dialog *cfd, CFData *cfdata) + _basic_apply_data(E_Config_Dialog *cfd, CFData *cfdata) { e_border_button_bindings_ungrab_all(); - switch (cfdata->density) + switch (cfdata->density) { case 0: rn->conf->cloud_count = 5; @@ -130,16 +126,16 @@ break; case 2: rn->conf->cloud_count = 20; - rn->conf->drop_count = 150; + rn->conf->drop_count = 150; break; default: break; } rn->conf->show_clouds = cfdata->show_clouds; - + e_config_save_queue(); e_border_button_bindings_grab_all(); - + _rain_cb_config_updated(rn); return 1; } ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs