Enlightenment CVS committal Author : sebastid Project : e17 Module : apps/e_modules
Dir : e17/apps/e_modules/src/modules/weather Modified Files: e_mod_main.c e_mod_main.h Log Message: Use unicode in printf if supported. Show the same display type, wether error or not. =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e_modules/src/modules/weather/e_mod_main.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- e_mod_main.c 14 Aug 2005 21:37:17 -0000 1.12 +++ e_mod_main.c 14 Aug 2005 21:53:57 -0000 1.13 @@ -40,7 +40,7 @@ static int _weather_parse(Weather_Face *face); static void _weather_convert_degrees(Weather_Face *face, int degrees); -static void _weather_display_set(Weather_Face *face, int display); +static void _weather_display_set(Weather_Face *face, int display, int ok); static void _weather_menu_add_face(void *data, E_Menu *m, E_Menu_Item *mi); static void _weather_menu_remove_face(void *data, E_Menu *m, E_Menu_Item *mi); @@ -801,6 +801,7 @@ Weather_Face *face; Ecore_Con_Event_Server_Del *e; Evas_List *l; + int ok; weather = data; e = event; @@ -816,15 +817,9 @@ ecore_con_server_del(face->server); face->server = NULL; - if (_weather_parse(face)) - { - _weather_convert_degrees(face, weather->conf->degrees); - _weather_display_set(face, weather->conf->display); - } - else - { - _weather_display_set(face, ERROR_DISPLAY); - } + ok = _weather_parse(face); + _weather_convert_degrees(face, weather->conf->degrees); + _weather_display_set(face, weather->conf->display, ok); face->bufsize = 0; face->cursize = 0; @@ -893,15 +888,17 @@ } static void -_weather_display_set(Weather_Face *face, int display) +_weather_display_set(Weather_Face *face, int display, int ok) { char buf[PATH_MAX]; +#ifndef __STDC_ISO_10646__ char *utf8; +#endif if (!face) return; /* If _get_weather fails, blank out text and set icon to unknown */ - if (display == ERROR_DISPLAY) + if (!ok) { e_icon_file_set(face->icon_object, PACKAGE_LIB_DIR"/e_modules/weather/images/na.png"); edje_object_part_swallow(face->weather_object, "icon", face->icon_object); @@ -909,7 +906,10 @@ edje_object_part_text_set(face->weather_object, "location", face->conf->location); edje_object_part_text_set(face->weather_object, "temp", ""); edje_object_part_text_set(face->weather_object, "conditions", ""); - edje_object_signal_emit(face->weather_object, "set_style", "simple"); + if (display == DETAILED_DISPLAY) + edje_object_signal_emit(face->weather_object, "set_style", "detailed"); + else + edje_object_signal_emit(face->weather_object, "set_style", "simple"); } else if (display == DETAILED_DISPLAY) { @@ -920,10 +920,15 @@ edje_object_part_swallow(face->weather_object, "icon", face->icon_object); edje_object_part_text_set(face->weather_object, "location", face->conf->location); +#ifdef __STDC_ISO_10646__ + snprintf(buf, sizeof(buf), "%d\u00b0%c", face->temp, face->degrees); + edje_object_part_text_set(face->weather_object, "temp", buf); +#else snprintf(buf, sizeof(buf), "%d°%c", face->temp, face->degrees); utf8 = ecore_txt_convert("iso-8859-1", "utf-8", buf); edje_object_part_text_set(face->weather_object, "temp", utf8); free(utf8); +#endif edje_object_part_text_set(face->weather_object, "conditions", face->conditions); } else @@ -935,10 +940,15 @@ edje_object_part_swallow(face->weather_object, "icon", face->icon_object); edje_object_part_text_set(face->weather_object, "location", face->conf->location); +#ifdef __STDC_ISO_10646__ + snprintf(buf, sizeof(buf), "%d\u00b0%c", face->temp, face->degrees); + edje_object_part_text_set(face->weather_object, "temp", buf); +#else snprintf(buf, sizeof(buf), "%d°%c", face->temp, face->degrees); utf8 = ecore_txt_convert("iso-8859-1", "utf-8", buf); edje_object_part_text_set(face->weather_object, "temp", utf8); free(utf8); +#endif edje_object_part_text_set(face->weather_object, "conditions", face->conditions); } } @@ -1077,7 +1087,7 @@ face = l->data; _weather_convert_degrees(face, weather->conf->degrees); - _weather_display_set(face, weather->conf->display); + _weather_display_set(face, weather->conf->display, 1); } e_config_save_queue(); } @@ -1096,7 +1106,7 @@ face = l->data; _weather_convert_degrees(face, weather->conf->degrees); - _weather_display_set(face, weather->conf->display); + _weather_display_set(face, weather->conf->display, 1); } e_config_save_queue(); } =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e_modules/src/modules/weather/e_mod_main.h,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- e_mod_main.h 14 Aug 2005 21:26:55 -0000 1.4 +++ e_mod_main.h 14 Aug 2005 21:53:57 -0000 1.5 @@ -6,7 +6,6 @@ #define SIMPLE_DISPLAY 0 #define DETAILED_DISPLAY 1 -#define ERROR_DISPLAY 2 #define DEGREES_F 0 #define DEGREES_C 1 ------------------------------------------------------- SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs