[gcompris] lang activity: properly display all the lessons except chapters.



commit 6c05042f631a2adb7442c4ad460312241e19e1c4
Author: Bruno Coudoin <bruno coudoin free fr>
Date:   Sat Nov 5 18:40:30 2011 +0100

    lang activity: properly display all the lessons except chapters.

 src/lang-activity/lang.py                    |  104 +++-
 src/lang-activity/lang.xml.in                |    2 +-
 src/lang-activity/langLib.py                 |   19 +-
 src/lang-activity/resources/lang/lang.xml.in |  916 +++++++++++++++++++++++++-
 4 files changed, 997 insertions(+), 44 deletions(-)
---
diff --git a/src/lang-activity/lang.py b/src/lang-activity/lang.py
index 587886a..f9df7ed 100644
--- a/src/lang-activity/lang.py
+++ b/src/lang-activity/lang.py
@@ -27,10 +27,45 @@ import pango
 from gcompris import gcompris_gettext as _
 from langLib import *
 
+class MissingImage:
+  """This is used to display a missing image"""
+
+  def __init__(self, rootitem, langActivity):
+    self.missingroot = goocanvas.Group( parent = rootitem )
+    width = 280
+    height = 240
+    item = goocanvas.Rect( parent = self.missingroot,
+                           x = gcompris.BOARD_WIDTH  / 2 - width / 2,
+                           y = gcompris.BOARD_HEIGHT / 2 - height / 2,
+                           width = width,
+                           height = height,
+                           radius_x = 5,
+                           radius_y = 5,
+                           stroke_color_rgba = 0x666666FFL,
+                           fill_color_rgba = 0x33333366L,
+                           line_width = 2.0 )
+    item.connect("button_press_event", langActivity.next_event, None)
+    self.missingtext = goocanvas.Text(
+      parent = self.missingroot,
+      x = gcompris.BOARD_WIDTH / 2,
+      y = gcompris.BOARD_HEIGHT / 2,
+      fill_color = "black",
+      font = gcompris.skin.get_font("gcompris/subtitle"),
+      text = _("Missing Image"),
+      anchor = gtk.ANCHOR_CENTER,
+      alignment = pango.ALIGN_CENTER
+      )
+
+  def hide(self):
+    self.missingroot.props.visibility = goocanvas.ITEM_INVISIBLE
+
+  def show(self, triplet):
+    self.missingroot.props.visibility = goocanvas.ITEM_VISIBLE
+
+
 class Gcompris_lang:
   """Empty gcompris python class"""
 
-
   def __init__(self, gcomprisBoard):
     print "lang init"
 
@@ -57,13 +92,19 @@ class Gcompris_lang:
     self.rootitem = goocanvas.Group(parent =
                                     self.gcomprisBoard.canvas.get_root_item())
 
-    langLib = LangLib(gcompris.DATA_DIR + "/lang/lang.xml")
-    langLib.dump()
-    self.chapters = langLib.getChapters()
+    self.langLib = LangLib(gcompris.DATA_DIR + "/lang/lang.xml.in")
+    self.chapters = self.langLib.getChapters()
+    # FIXME Do not manage Chapter yet
     self.currentChapterId = 0
-    self.currentLessonId = 0
-    self.currentTripletId = 0
-    self.currentLesson = langLib.getLesson(self.currentChapterId, self.currentLessonId)
+
+    # Manage levels (a level is a lesson in the lang model)
+    self.gcomprisBoard.level = 1
+    self.gcomprisBoard.maxlevel = \
+        len ( self.chapters.getChapters()[self.currentChapterId].getLessons() )
+    gcompris.bar_set_level(self.gcomprisBoard)
+
+    self.currentLesson = self.langLib.getLesson(self.currentChapterId,
+                                                self.gcomprisBoard.level - 1)
     self.displayLesson( self.currentLesson )
 
   def end(self):
@@ -95,7 +136,12 @@ class Gcompris_lang:
 
 
   def set_level(self, level):
-    print("lang set level. %i" % level)
+    self.gcomprisBoard.level = level;
+    self.gcomprisBoard.sublevel = 1;
+    gcompris.bar_set_level(self.gcomprisBoard)
+    self.currentLesson = self.langLib.getLesson(self.currentChapterId,
+                                                self.gcomprisBoard.level - 1)
+    self.displayLesson( self.currentLesson )
 
 # -------
 
@@ -105,6 +151,12 @@ class Gcompris_lang:
 
   def displayLesson(self, lesson):
 
+    try:
+      self.lessonroot.remove()
+    except:
+      pass
+
+    self.currentTripletId = 0
     self.lessonroot = goocanvas.Group( parent = self.rootitem )
 
     goocanvas.Rect(
@@ -163,7 +215,18 @@ class Gcompris_lang:
     item.connect("button_press_event", self.next_event, None)
     gcompris.utils.item_focus_init(item, None)
 
+    self.counteritem = goocanvas.Text(
+      parent = self.lessonroot,
+      x = gcompris.BOARD_WIDTH - 40,
+      y = gcompris.BOARD_HEIGHT - 40,
+      fill_color = "black",
+      font = gcompris.skin.get_font("gcompris/board/tiny"),
+      anchor = gtk.ANCHOR_CENTER,
+      alignment = pango.ALIGN_CENTER
+      )
+
     # The triplet area
+    self.missingImage = MissingImage(self.lessonroot, self)
     self.imageitem = goocanvas.Image( parent = self.lessonroot )
     self.imageitem.connect("button_press_event", self.next_event, None)
     self.descriptionitem = goocanvas.Text(
@@ -178,16 +241,24 @@ class Gcompris_lang:
     self.displayImage( lesson.getTriplets()[self.currentTripletId] )
 
   def displayImage(self, triplet):
-    pixbuf = gcompris.utils.load_pixmap(gcompris.DATA_DIR + "/lang/" +
-                                        triplet.image)
-    center_x =  pixbuf.get_width()/2
-    center_y =  pixbuf.get_height()/2
-    self.imageitem.set_properties(pixbuf = pixbuf,
-                                  x = gcompris.BOARD_WIDTH  / 2 - center_x,
-                                  y = gcompris.BOARD_HEIGHT / 2 - center_y )
     self.descriptionitem.set_properties (
       text = triplet.description,
       )
+    self.counteritem.set_properties (
+      text = str(self.currentTripletId + 1) + "/" \
+        + str( len( self.currentLesson.getTriplets() ) ),
+      )
+    if triplet.image:
+      self.missingImage.hide()
+      pixbuf = gcompris.utils.load_pixmap(gcompris.DATA_DIR + "/lang/" +
+                                          triplet.image)
+      center_x =  pixbuf.get_width()/2
+      center_y =  pixbuf.get_height()/2
+      self.imageitem.set_properties(pixbuf = pixbuf,
+                                    x = gcompris.BOARD_WIDTH  / 2 - center_x,
+                                    y = gcompris.BOARD_HEIGHT / 2 - center_y )
+    else:
+      self.missingImage.show(triplet)
 
   def previous_event(self, event, target,item, dummy):
     self.currentTripletId -= 1
@@ -200,3 +271,6 @@ class Gcompris_lang:
     if self.currentTripletId >= len( self.currentLesson.getTriplets() ):
       self.currentTripletId = 0
     self.displayImage( self.currentLesson.getTriplets()[self.currentTripletId] )
+
+
+
diff --git a/src/lang-activity/lang.xml.in b/src/lang-activity/lang.xml.in
index 815e99c..20082d7 100644
--- a/src/lang-activity/lang.xml.in
+++ b/src/lang-activity/lang.xml.in
@@ -10,7 +10,7 @@
         boarddir=""
         >
         <_title>Practice a foreign language</_title>
-        <_description></_description>
+        <_description>Practice a foreign language</_description>
         <_prerequisite></_prerequisite>
         <_goal></_goal>
         <_manual></_manual>
diff --git a/src/lang-activity/langLib.py b/src/lang-activity/langLib.py
index 7fc84c4..3cf09bf 100755
--- a/src/lang-activity/langLib.py
+++ b/src/lang-activity/langLib.py
@@ -34,17 +34,18 @@ class Triplet:
     def parse(self, elem):
         for e in elem.childNodes:
             if isNode(e, "image"):
-                self.image = e.firstChild.nodeValue
+                self.image = e.firstChild.nodeValue if e.firstChild else None
             elif isNode(e, "description"):
-                self.description = e.firstChild.nodeValue
+                self.description = e.firstChild.nodeValue if e.firstChild else None
             elif isNode(e, "voice"):
-                self.voice = e.firstChild.nodeValue
+                self.voice = e.firstChild.nodeValue if e.firstChild else None
             elif isNode(e, "type"):
-                self.type = e.firstChild.nodeValue
+                self.type = e.firstChild.nodeValue if e.firstChild else None
 
     def dump(self):
         print "    Triplet "+ self.description + " / " \
-            + self.image + " / " + self.voice + " / " + self.type
+            + str(self.image) + " / " + str(self.voice) \
+            + " / " + str(self.type)
 
 class Lesson:
     def __init__(self, elem):
@@ -58,7 +59,7 @@ class Lesson:
             if isNode(e, "name"):
                 self.name = e.firstChild.nodeValue
             elif isNode(e, "description"):
-                self.description = e.firstChild.nodeValue
+                self.description = e.firstChild.nodeValue if e.firstChild else None
             elif isNode(e, "Triplet"):
                 self.triplets.append( Triplet(e) )
 
@@ -66,7 +67,7 @@ class Lesson:
         return self.triplets
 
     def dump(self):
-        print "  Lesson "+ self.name + " / " + self.description
+        print "  Lesson "+ self.name + " / " + str(self.description)
         for triplet in self.triplets:
             triplet.dump()
 
@@ -83,7 +84,7 @@ class Chapter:
             if isNode(e, "name"):
                 self.name = e.firstChild.nodeValue
             elif isNode(e, "description"):
-                self.description = e.firstChild.nodeValue
+                self.description = e.firstChild.nodeValue if e.firstChild else None
             elif isNode(e, "Lesson"):
                 self.lessons.append( Lesson(e) )
 
@@ -91,7 +92,7 @@ class Chapter:
         return self.lessons
 
     def dump(self):
-        print "Chapter "+ self.name + " / " + self.description
+        print "Chapter "+ self.name + " / " + str(self.description)
         for lesson in self.lessons:
             lesson.dump()
 
diff --git a/src/lang-activity/resources/lang/lang.xml.in b/src/lang-activity/resources/lang/lang.xml.in
index 37dd1e1..5272622 100644
--- a/src/lang-activity/resources/lang/lang.xml.in
+++ b/src/lang-activity/resources/lang/lang.xml.in
@@ -1,34 +1,912 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <c:Root xmlns:c="http://gcompris.net/Lang"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xsi:schemaLocation="http://gcompris.net/Lang Lang.xsd ">
   <Chapter>
-    <name>chapter 1</name>
-    <description>Blah Blah</description>
+    <name>Chapter 1</name>
+    <description></description>
     <Lesson>
       <name>Welcome</name>
-      <description>description level 1.1</description>
+      <description></description>
       <Triplet>
-        <description>Welcome</description>
-        <image></image>
-        <voice></voice>
-        <c:type></c:type>
+	<description>Welcome</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
       </Triplet>
       <Triplet>
-        <description>Hello</description>
-        <image></image>
-        <voice></voice>
-        <c:type></c:type>
+	<description>Hello</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
       </Triplet>
       <Triplet>
-        <description>Good morning</description>
-        <image></image>
-        <voice></voice>
-        <c:type></c:type>
+	<description>Good morning</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
       </Triplet>
       <Triplet>
-        <description>Good afternoon</description>
-        <image></image>
-        <voice></voice>
-        <c:type></c:type>
+	<description>Good afternoon</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Good evening</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Good night</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>My name is Tux</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>What's your name ?</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Who are you ?</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I am a boy</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I am a girl</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Tux is a boy</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Lux is a girl</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Tux and Fux are boys</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Lux and Mary are girls</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>How do you do</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>How are you ?</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Fine !</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>How is Tux ?</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Tux is fine !</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+    </Lesson>
+    <Lesson>
+      <name>Nice to meet you</name>
+      <description></description>
+      <Triplet>
+	<description>How old are you ?</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I am 6 years old</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>This is my friend Fux</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Fux is 7 years old</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I live in Tuxland</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Fux lives near the sea</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Franck lives in Paris</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Where do you live ?</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+    </Lesson>
+    <Lesson>
+      <name>Days and Seasons</name>
+      <description></description>
+      <Triplet>
+	<description>On Monday, I go to school.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>On Tuesday, I study History.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>On Wednesday, I play football.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>On Thursday, I read and write.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>On Friday, I learn Sciences.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>On Saturday, I go swimming.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>On Sunday, I relax !</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In Summer it is hot</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In Autumn it rains</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In Winter it snows</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I like flowers in Spring</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>On Monday I go to school</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>On Wednesday Fux plays tennis</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>On Saturday Lux goes shopping</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>On Sunday Tux, Fux and Lux play</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>What's the day today ?</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+    </Lesson>
+    <Lesson>
+      <name>In the classroom</name>
+      <description></description>
+      <Triplet>
+	<description>a school bag</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>a pencilcase</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>a pen</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>a pencil</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>a rubber</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>a ruler</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>scissors</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>a stick of glue</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>the blackboard</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>a book</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>a copy book</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>the playground</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>the teacher</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>the pupils</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Sit down</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Stand up</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Be quiet</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Come here</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Don't run</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Repeat</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Shut the door</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Open the window</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Open your eyes</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Take a red pencil</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Let's play a game</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Sing a song</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Come on, join in</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Time to go</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Slowly please</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+    </Lesson>
+    <Lesson>
+      <name>Months of the year</name>
+      <description></description>
+      <Triplet>
+	<description>In January, I go skiing.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In February, I eat pancakes.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In March, it rains a lot !</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In April, it's Spring !</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In May, it is sunny !</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In June, I am happy !</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In July, I go to the beach.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In August, I am on holidays !</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In September, I go back to school.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In October, It is Autumn.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In November, it is my birthday !</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In December, Merry Christmas !!</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>When is your birthday ?</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>My birthday is in December.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>When were you born ?</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I was born in December.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>When was Tux born ?</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Tux was born on November 1st.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Happy birthday !</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+    </Lesson>
+    <Lesson>
+      <name>Numbers and fruit</name>
+      <description></description>
+      <Triplet>
+	<description>one apple</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>two oranges</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>three strawberries</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>four lemons</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>five pears</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>six bananas</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>seven raspberries</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>eight pineapples</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>nine mangos</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>ten apricots</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+    </Lesson>
+    <Lesson>
+      <name>Hobbies</name>
+      <description></description>
+      <Triplet>
+	<description>I like dancing.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Tux loves skiing.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Fux prefers swimming.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Lux enjoys drawing.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Tux, Fux and Lux like playing.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I play the piano.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Tux plays the guitar.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Fux and lux don't play the guitar.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Lux plays the violin.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Tux and Fux play basketball.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I like reading</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I don't like cooking.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+    </Lesson>
+    <Lesson>
+      <name>My family</name>
+      <description></description>
+      <Triplet>
+	<description>My father likes fishing.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Dad</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Daddy</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>My mother likes cooking.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Mum</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Mummy</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>My brother plays the guitar.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>My sister likes dancing.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>How many brothers and sisters have you got ?</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I have got one brother and two sisters.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>My grandmother likes knitting.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Grandma</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Granny</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>My grandfather likes reading the newspaper.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>Grandpa</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>My uncle likes rugby.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>My aunt likes gardening.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>My cousins like playing the videogames with me !</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+    </Lesson>
+    <Lesson>
+      <name>My daily routine</name>
+      <description></description>
+      <Triplet>
+	<description>I wake up at seven o'clock.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I wash my face.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I get dressed.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I have breakfast at half past seven.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I wash my teeth.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In the morning, I go to school.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I have lunch at school.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In the afternoon, I draw and paint.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>At five o'clock, I come back home.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I do my homework at six o'clock.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In the evening, I have dinner.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>I wash my face</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
+      </Triplet>
+      <Triplet>
+	<description>In the evening, I sleep in my bed.</description>
+	<image></image>
+	<voice></voice>
+	<c:type></c:type>
       </Triplet>
     </Lesson>
   </Chapter>



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]