diff options
author | Bruno Coudoin <bcoudoin@src.gnome.org> | 2006-02-07 23:03:23 (GMT) |
---|---|---|
committer | Bruno Coudoin <bcoudoin@src.gnome.org> | 2006-02-07 23:03:23 (GMT) |
commit | 7d28d89c5d640cce0f81029513419f783021a1d8 (patch) | |
tree | 2ba991f6d5ce2f51e68ab28c699219fba2aba11b | |
parent | 535135eca8c8dd4395b17a8df219ed515be97bc3 (diff) |
fixed to check properly for long locale (e.g. pt_BR) - added a dialog if
* src/boards/advanced_colors.c: (add_xml_data): fixed to check properly for long locale (e.g. pt_BR)
* src/boards/read_colors.c: (add_xml_data), (parse_doc): -
* src/boards/python/melody.py: added a dialog if run without sound fx activated
changed to use the reload icon instead of mouth sign for the repeat.
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | src/boards/advanced_colors.c | 9 | ||||
-rw-r--r-- | src/boards/python/melody.py | 26 | ||||
-rw-r--r-- | src/boards/read_colors.c | 14 |
4 files changed, 41 insertions, 15 deletions
@@ -1,3 +1,10 @@ +2006-02-07 Bruno coudoin <bruno.coudoin@free.fr> + + * src/boards/advanced_colors.c: (add_xml_data): fixed to check properly for long locale (e.g. pt_BR) + * src/boards/read_colors.c: (add_xml_data), (parse_doc): - + * src/boards/python/melody.py: added a dialog if run without sound fx activated + changed to use the reload icon instead of mouth sign for the repeat. + 2006-02-05 Bruno coudoin <bruno.coudoin@free.fr> Changed background entry color to white. The blue background color diff --git a/src/boards/advanced_colors.c b/src/boards/advanced_colors.c index e918020..ab3164b 100644 --- a/src/boards/advanced_colors.c +++ b/src/boards/advanced_colors.c @@ -481,13 +481,14 @@ static void add_xml_data(xmlDocPtr doc, xmlNodePtr xmlnode, GNode * child) if (lang == NULL) { // get default value text = xmlNodeListGetString(doc, xmlnode->xmlChildrenNode, 1); colors[i] = text; - } else // get correct language - if ( !strcmp(lang, gcompris_get_locale()) || !strncmp(lang, gcompris_get_locale(), 2) ) { + } else { // get correct language + if ( !strncmp(lang, gcompris_get_locale(), strlen(lang)) ) { text = xmlNodeListGetString(doc, xmlnode->xmlChildrenNode, 1); g_warning("color prop::lang=%s locale=%s text=%s\n", lang, gcompris_get_locale(), text); colors[i] = text; - color++; } + } + g_free(sColor); break; } g_free(sColor); @@ -495,7 +496,7 @@ static void add_xml_data(xmlDocPtr doc, xmlNodePtr xmlnode, GNode * child) xmlnode = xmlnode->next; } - g_warning("colors found in XML = %d\n", color); + g_warning("colors found in XML:\n"); for (color=0; color<8; color++) g_warning("%d %s\n", color, colors[color]); diff --git a/src/boards/python/melody.py b/src/boards/python/melody.py index 18466cd..a887be1 100644 --- a/src/boards/python/melody.py +++ b/src/boards/python/melody.py @@ -29,6 +29,8 @@ import gtk import gtk.gdk import random +from gcompris import gcompris_gettext as _ + class Gcompris_melody: """The melody activity""" @@ -93,14 +95,25 @@ class Gcompris_melody: self.maxtheme = len(self.melodylist)-1 self.gcomprisBoard.maxlevel = 9 + # + pixmap = gcompris.utils.load_pixmap(gcompris.skin.image_to_skin("button_reload.png")) + if(pixmap): + gcompris.bar_set_repeat_icon(pixmap) + gcompris.bar_set(gcompris.BAR_LEVEL|gcompris.BAR_REPEAT_ICON) + else: + gcompris.bar_set(gcompris.BAR_LEVEL|gcompris.BAR_REPEAT) + + + self.pause(1); + self.display_current_level() + # Play an intro sound gcompris.sound.play_ogg_cb("melody/" + self.melodylist[self.theme][0]['theme'] + "/melody", self.intro_cb) - gcompris.bar_set(gcompris.BAR_REPEAT|gcompris.BAR_LEVEL) + Prop = gcompris.get_properties() - self.display_current_level() - self.pause(1); - print("Gcompris_melody start.") + if(not Prop.fx): + gcompris.utils.dialog(_("Error: this activity cannot be played with the\nsound effects disabled.\nGo to the configuration dialogue to\nenable the sound"), stop_board) def end(self): self.cleanup() @@ -370,4 +383,7 @@ class Gcompris_melody: print "intro passed. go play" self.pause(0) self.populate(self.sound_list) -
\ No newline at end of file + +def stop_board(): + gcompris.bonus.board_finished(gcompris.bonus.FINISHED_RANDOM) + diff --git a/src/boards/read_colors.c b/src/boards/read_colors.c index b5dc016..d4ce7c1 100644 --- a/src/boards/read_colors.c +++ b/src/boards/read_colors.c @@ -19,6 +19,7 @@ #include <ctype.h> #include <assert.h> +#include <string.h> /* libxml includes */ #include <libxml/tree.h> @@ -439,21 +440,22 @@ static void add_xml_data(xmlDocPtr doc, xmlNodePtr xmlnode, GNode * child) if (lang == NULL) { // get default value text = xmlNodeListGetString(doc, xmlnode->xmlChildrenNode, 1); colors[i] = text; - } else // get correct language - if ( !strcmp(lang, gcompris_get_locale()) || !strncmp(lang, gcompris_get_locale(), 2) ) { + } else { // get correct language + if ( !strncmp(lang, gcompris_get_locale(), strlen(lang)) ) { text = xmlNodeListGetString(doc, xmlnode->xmlChildrenNode, 1); g_warning("color prop::lang=%s locale=%s text=%s\n", lang, gcompris_get_locale(), text); colors[i] = text; - color++; } - break; + g_free(sColor); + break; + } } g_free(sColor); } // end for xmlnode = xmlnode->next; } - g_warning("colors found in XML = %d\n", color); + g_warning("colors found in XML:\n"); for (color=0; color<LAST_COLOR; color++) g_warning("%d %s\n", color, colors[color]); @@ -470,7 +472,7 @@ static void parse_doc(xmlDocPtr doc) xmlNodePtr node; for(node = doc->children->children; node != NULL; node = node->next) { - if ( g_strcasecmp(node->name, "Board") == 0 ) + if ( g_strcasecmp((gchar *)node->name, "Board") == 0 ) add_xml_data(doc, node,NULL); } |