[gcompris] explore activities are now svg based.
- From: Bruno Coudoin <bcoudoin src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gcompris] explore activities are now svg based.
- Date: Wed, 26 Dec 2012 02:07:59 +0000 (UTC)
commit 3806a82a48e03131ad7615e30623ae10d04d46f0
Author: Bruno Coudoin <bruno coudoin free fr>
Date: Wed Dec 26 02:56:29 2012 +0100
explore activities are now svg based.
For each activity, a single svg image contains the different
items to display with svg ids. The file content.desktop.in now
specify the svg ids. It makes it much easier to create this kind
of activities because you can work the position og items directly
from within inkscape.
I use an improved world map taken from wikipedia and colored by myself.
src/explore-activity/explore.py | 179 +-
src/explore-activity/resources/explore/Makefile.am | 3 +-
src/explore-activity/resources/explore/world.png | Bin 0 -> 128225 bytes
.../resources/explore_farm_animals/Makefile.am | 3 +-
.../explore_farm_animals/content.desktop.in | 33 +-
.../explore_farm_animals/farm-animals.svg | 7156 --------------------
.../explore_farm_animals/farm-animals.svgz | Bin 0 -> 73405 bytes
.../resources/explore_farm_animals/questionpic.png | Bin 4078 -> 0 bytes
.../resources/explore_world_animals/Makefile.am | 4 +-
.../explore_world_animals/content.desktop.in | 21 +-
.../resources/explore_world_animals/content.svgz | Bin 0 -> 1110 bytes
.../resources/explore_world_animals/world.jpg | Bin 39144 -> 0 bytes
.../resources/explore_world_music/Makefile.am | 5 +-
.../explore_world_music/content.desktop.in | 34 +-
.../resources/explore_world_music/content.svgz | Bin 0 -> 8115 bytes
.../resources/explore_world_music/suitcase.svg | 2369 -------
.../resources/explore_world_music/worldmap.jpg | Bin 11250 -> 0 bytes
17 files changed, 88 insertions(+), 9719 deletions(-)
---
diff --git a/src/explore-activity/explore.py b/src/explore-activity/explore.py
index 1ea7d40..7afd6b4 100644
--- a/src/explore-activity/explore.py
+++ b/src/explore-activity/explore.py
@@ -38,11 +38,6 @@ from gcompris import gcompris_gettext as _
from random import randint
import random
-# -----------------------------------------------------------------------------
-# set to True if you'd like to record selected locations to make a new activity
-# BEWARE: setting this to true will delete all your previous records!
-RECORD_LOCATIONS = False
-# -----------------------------------------------------------------------------
TEXT_BG_COLOR = 0xCCCCCC99L
class Gcompris_explore:
@@ -123,47 +118,45 @@ dialogue to\nenable the sound."), None)
if hasattr(self, 'SoundMatchingGameText'):
self.gcomprisBoard.maxlevel = 3
- self.map = goocanvas.Image(
+ self.svghandle = gcompris.utils.load_svg(self.activityDataFilePath + self.background)
+ goocanvas.Svg(
parent = self.rootitem,
- x = self.backgroundx,
- y = self.backgroundy,
- pixbuf = gcompris.utils.load_pixmap(self.activityDataFilePath + self.background)
+ svg_handle = self.svghandle,
+ svg_id = self.backSvgId,
+ pointer_events = goocanvas.EVENTS_NONE
)
- if RECORD_LOCATIONS:
- self.recordLocationsForDeveloper()
- else:
-
- self.drawLocations()
- if level == 1:
- self.writeText(self.generalText)
- else:
- # prepare game for play
- self.progressBar = ProgressBar( self.rootitem,
- 200, 480, 400, 25,
- len(self.data.sections()) - 1 )
-
- if level == 2 and self.gcomprisBoard.maxlevel == 3:
-
- self.remainingItems = self.allSoundClips[:]
- self.writeText(self.SoundMatchingGameText)
- # PLAY BUTTON
- self.playButton = goocanvas.Image(
- parent=self.rootitem,
- pixbuf=gcompris.utils.load_pixmap('explore/playbutton.png'),
- x=65,
- y=110,
- )
- self.playButton.connect("button_press_event", self.playCurrentMusicSelection)
- self.writeText(_('Click to play sound'), 100, 70)
- gcompris.utils.item_focus_init(self.playButton, None)
- self.playRandom()
- elif level == 3 or level == 2:
+ self.drawLocations()
- self.remainingItems = self.allTextPrompts[:]
- self.writeText(self.TextMatchingGameText)
- self.playRandom()
+ if level == 1:
+ self.writeText(self.generalText)
+ else:
+ # prepare game for play
+ self.progressBar = ProgressBar( self.rootitem,
+ 200, 480, 400, 25,
+ len(self.data.sections()) - 1 )
+
+ if level == 2 and self.gcomprisBoard.maxlevel == 3:
+
+ self.remainingItems = self.allSoundClips[:]
+ self.writeText(self.SoundMatchingGameText)
+ # PLAY BUTTON
+ self.playButton = goocanvas.Image(
+ parent=self.rootitem,
+ pixbuf=gcompris.utils.load_pixmap('explore/playbutton.png'),
+ x=65,
+ y=110,
+ )
+ self.playButton.connect("button_press_event", self.playCurrentMusicSelection)
+ self.writeText(_('Click to play sound'), 100, 70)
+ gcompris.utils.item_focus_init(self.playButton, None)
+ self.playRandom()
+ elif level == 3 or level == 2:
+
+ self.remainingItems = self.allTextPrompts[:]
+ self.writeText(self.TextMatchingGameText)
+ self.playRandom()
def next_level(self):
if self.gcomprisBoard.level == self.gcomprisBoard.maxlevel:
@@ -221,14 +214,12 @@ dialogue to\nenable the sound."), None)
for section in self.sectionNames:
-
- pixmap = gcompris.utils.load_pixmap(self.locationPic)
- item = goocanvas.Image(
+ item = goocanvas.Svg(
parent = self.rootitem,
- x = int(self.data.get(section, 'x')) - pixmap.get_width() / 2.0,
- y = int(self.data.get(section, 'y')) - pixmap.get_height() / 2.0,
- pixbuf = pixmap
+ svg_handle = self.svghandle,
+ svg_id = self.data.get(section, 'svgId'),
)
+
gcompris.utils.item_focus_init(item, None)
item.set_data('sectionNum', section)
item.set_data('seen', False)
@@ -256,13 +247,20 @@ dialogue to\nenable the sound."), None)
method called when student clicks on one of the ellipses.
method loads the location page, including the text, picture, music, and question.
'''
- target.props.pixbuf = gcompris.utils.load_pixmap('explore/star.png')
+ bounds = target.get_bounds()
seen = target.get_data('seen')
if not seen:
target.set_data('seen', True)
self.locationSeen += 1
+ pixmap = gcompris.utils.load_pixmap('explore/star.png')
+ goocanvas.Image(parent = self.rootitem,
+ x = bounds.x1 + \
+ (bounds.x2 - bounds.x1) / 2.0 - \
+ pixmap.get_width() / 2.0,
+ y = bounds.y2 - pixmap.get_height() / 2.0,
+ pixbuf = pixmap
+ )
- gcompris.utils.item_focus_init(target, None)
self.rootitem.props.visibility = goocanvas.ITEM_INVISIBLE
if hasattr(self, 'location_rootitem'):
@@ -312,7 +310,7 @@ dialogue to\nenable the sound."), None)
parent=self.location_rootitem,
x=120,
y=190,
- width=150,
+ width=180,
text=_(text),
fill_color="black",
anchor=gtk.ANCHOR_CENTER,
@@ -400,58 +398,6 @@ dialogue to\nenable the sound."), None)
# FYI: at first I didn't see any need to make a class to handle the data, but in
# retrospect having a data object would have been much cleaner.
- def recordLocationsForDeveloper(self):
- '''
- prepare to record the locations by connecting the entire
- background image with the record_location method
- '''
- for section in self.data.sections():
- if section != 'common':
- self.data.remove_section(section)
-
- self.map.connect("button_press_event", self.record_location)
- gcompris.utils.item_focus_init(self.map, None)
-
- def record_location(self, widget=None, target=None, event=None):
- '''
- method generates output to content.desktop.in according to the specified format.
- Method called if RECORD_LOCATIONS = True and developer clicks map. Merhod
- record the location of the click, and writes a template of the section
- to content.desktop.in to be filled in later by the developer.
- '''
- self.numLocations += 1
- self.data.add_section(str(self.numLocations))
- x = event.x
- y = event.y
- self.data.set(str(self.numLocations), 'x', int(x))
- self.data.set(str(self.numLocations), 'y', int(y))
- self.data.set(str(self.numLocations), '_title', 'Location Title Here')
- self.data.set(str(self.numLocations), '_text', 'location text here')
- self.data.set(str(self.numLocations), 'image', 'image filepath here, located in resources/name_of_activity/')
- self.data.set(str(self.numLocations), 'music', 'music file name here')
- self.data.set(str(self.numLocations), '_shortPrompt', 'enter text for child to match to the location')
-
- # draw small elipse on screen to show developer where they clicked
- goocanvas.Ellipse(parent=self.rootitem,
- center_x=x,
- center_y=y,
- radius_x=5,
- radius_y=5,
- fill_color='white',
- stroke_color='white',
- line_width=1.0)
-
- # write a small number ontop of the ellipse so developer can record
- # which numbers (sections) correspond to which locations
- goocanvas.Text(
- parent=self.rootitem,
- x=x,
- y=y,
- text=str(self.numLocations),
- anchor=gtk.ANCHOR_CENTER,
- alignment=pango.ALIGN_CENTER,
- )
-
def read_data(self):
'''
method to read in the data from content.desktop.in. Saves this data as
@@ -489,10 +435,10 @@ dialogue to\nenable the sound."), None)
except: self.credits = ''
try: self.background = self.data.get('common', 'background')
except: errors.append("Missing 'background' key")
+ try: self.backSvgId = self.data.get('common', 'backSvgId')
+ except: errors.append("Missing 'background' key")
try: self.author = self.data.get('common', 'author')
except: self.author = ''
- try: self.locationPic = self.activityDataFilePath + self.data.get('common', 'locationpic')
- except: errors.append("Missing 'locationpic' key")
# FIXME Should remove the space in the data file instead
try: self.generalText = _(" " + self.data.get('common', '_GeneralText'))
except: errors.append("Missing '_GeneralText' key")
@@ -502,10 +448,6 @@ dialogue to\nenable the sound."), None)
# FIXME Should remove the space in the data file instead
try: self.TextMatchingGameText = _(" " + self.data.get('common', '_TextMatchingGameText'))
except:pass
- try: self.backgroundx = int(self.data.get('common', 'backgroundx'))
- except: errors.append("Missing 'backgroundx' key")
- try: self.backgroundy = int(self.data.get('common', 'backgroundy'))
- except: errors.append("Missing 'backgroundy' key")
try: self.textBoxX = int(self.data.get('common', 'textBoxX'))
except:pass
try: self.textBoxY = int(self.data.get('common', 'textBoxY'))
@@ -524,27 +466,6 @@ dialogue to\nenable the sound."), None)
gcompris.utils.dialog( "\n".join(errors), None)
def end(self):
- '''
- write locations and common template to content.desktop.in
- '''
- if RECORD_LOCATIONS:
- try: self.data.set('common', 'credits', 'enter a list of credits and links to resources you used here')
- except: pass
- try: self.data.set('common', 'locationpic', 'enter the filename of the picture you would like to use to identify items to click on your background image')
- except: pass
- try: self.data.set('common', 'generalText', 'enter the text to appear on your image for textMatchingGame')
- except: pass
- try: self.data.set('common', 'SoundMatchingGameText', 'enter the text to appear on your image for SoundMatchingGame')
- except: pass
- try: self.data.set('common', 'TextMatchingGameText', 'enter the text to appear on your image for TextMatchingGame')
- except: pass
- try: self.data.set('common', 'textBoxX', 'enter the x location for the text box to appear in the text matching game')
- except: pass
- try: self.data.set('common', 'textBoxY', 'enter the x location for the text box to appear in the text matching game')
- except: pass
- with open(gcompris.DATA_DIR + '/' + self.gcomprisBoard.name + '/content.desktop.in', 'wb') as configfile:
- self.data.write(configfile)
-
# silence any currently playing music
gcompris.sound.play_ogg('boards/sounds/silence1s.ogg')
self.rootitem.remove()
diff --git a/src/explore-activity/resources/explore/Makefile.am b/src/explore-activity/resources/explore/Makefile.am
index bda4741..563b796 100644
--- a/src/explore-activity/resources/explore/Makefile.am
+++ b/src/explore-activity/resources/explore/Makefile.am
@@ -3,6 +3,7 @@ img_DATA = \
border.png \
playbutton.png \
ribbon.png \
- star.png
+ star.png \
+ world.png
EXTRA_DIST = $(img_DATA)
diff --git a/src/explore-activity/resources/explore/world.png b/src/explore-activity/resources/explore/world.png
new file mode 100644
index 0000000..c87cc33
Binary files /dev/null and b/src/explore-activity/resources/explore/world.png differ
diff --git a/src/explore_farm_animals-activity/resources/explore_farm_animals/Makefile.am b/src/explore_farm_animals-activity/resources/explore_farm_animals/Makefile.am
index 05906f7..7c8740e 100644
--- a/src/explore_farm_animals-activity/resources/explore_farm_animals/Makefile.am
+++ b/src/explore_farm_animals-activity/resources/explore_farm_animals/Makefile.am
@@ -11,14 +11,13 @@ img_DATA = \
dog.ogg \
duck.jpg \
duck.ogg \
- farm-animals.svg \
+ farm-animals.svgz \
horse.jpg \
horse.ogg \
owl.jpg \
owl.ogg \
pig.jpg \
pig.ogg \
- questionpic.png \
rooster.jpg \
rooster.ogg
diff --git a/src/explore_farm_animals-activity/resources/explore_farm_animals/content.desktop.in b/src/explore_farm_animals-activity/resources/explore_farm_animals/content.desktop.in
index 47fcf33..7672039 100644
--- a/src/explore_farm_animals-activity/resources/explore_farm_animals/content.desktop.in
+++ b/src/explore_farm_animals-activity/resources/explore_farm_animals/content.desktop.in
@@ -1,10 +1,8 @@
# Created by Beth Hadley
[common]
-background = farm-animals.svg
-backgroundx = 0
-backgroundy = 0
+background = farm-animals.svgz
+backSvgId = #BACKGROUND
credits = Public domain animal sounds: http://www.animal-sounds.org/index.html, Public domain animal pictures: http://commons.wikimedia.org/wiki/Main_Page, The farm is built on OpenClipart content by Bruno.
-locationpic = questionpic.png
_generalText = Click on the questions to explore each farm animal.
_SoundMatchingGameText = Click on the farm animal that makes the sound you hear.
_TextMatchingGameText = Click the animal that matches the description.
@@ -12,82 +10,73 @@ textBoxX = 200
textBoxY = 150
[1]
-x = 514
-y = 152
_title = Horse
_text = The horse goes "neigh! neigh!". Horses usually sleep standing up.
image = horse.jpg
music = horse.ogg
_shortPrompt = You can ride on the back of this animal!
+svgId = #HORSE
[2]
-x = 279
-y = 460
_title = Chickens
_text = The chicken goes "cluck, cackle, cluck". Chickens have over 200 different noises they can use to communicate.
image = chicken.jpg
music =chickens.ogg
_shortPrompt = This animal lays eggs.
+svgId = #CHICKEN
[3]
-x = 565
-y = 360
_title = Cows
_text = The cow goes "moo. moo.". Cows are herbivorous mammals. They graze all day in the meadow.
image = cow.jpg
music = cow.ogg
_shortPrompt = You can drink the milk this animal produces.
+svgId = #COW
[4]
-x = 366
-y = 200
_title = Cat
_text = The cat goes "meow, meow". Cats usually hate water because their fur doesn't stay warm when it is wet.
image = cat.jpg
music = cat.ogg
_shortPrompt = This pet likes chasing mice.
+svgId = #CAT
[5]
-x = 645
-y = 450
_title = Pigs
_text = The pig goes "oink, oink". Pigs are the 4th most intelligent animal.
image = pig.jpg
music = pig.ogg
_shortPrompt = This animal likes to lay in the mud.
+svgId = #PIG
[6]
-x = 185
-y = 450
_title = White Duck
_text = The duck goes "quack, quack". Ducks have special features like webbed feet and produce an oil to make their feathers "waterproof".
image = duck.jpg
music = duck.ogg
_shortPrompt = This animal has webbed feet so it can swim in the water.
+svgId = #DUCK
[7]
-x = 630
-y = 106
_title = Owl
_text = The owl goes "hoo. hoo." The owl has excellent vision and hearing at night.
image = owl.jpg
music = owl.ogg
_shortPrompt = This animal likes to come out at night.
+svgId = #OWL
[9]
-x = 210
-y = 300
_title = Dogs
_text = The dog goes "bark! bark!". Dogs are great human companions and usually enjoy love and attention.
image = dog.jpg
music = dog.ogg
_shortPrompt = This animal's ancestors were wolves.
+svgId = #DOG
[10]
-x = 565
-y = 450
_title = Rooster
_text = The rooster goes "coc-a-doodle-doo!". Roosters have been on farms for about 5,000 years. Every morning it wakes the farm up with its noises.
image = rooster.jpg
music = rooster.ogg
_shortPrompt = This animal wakes the farm up in the morning.
+svgId = #ROOSTER
diff --git a/src/explore_farm_animals-activity/resources/explore_farm_animals/farm-animals.svgz b/src/explore_farm_animals-activity/resources/explore_farm_animals/farm-animals.svgz
new file mode 100644
index 0000000..27b4c52
Binary files /dev/null and b/src/explore_farm_animals-activity/resources/explore_farm_animals/farm-animals.svgz differ
diff --git a/src/explore_world_animals-activity/resources/explore_world_animals/Makefile.am b/src/explore_world_animals-activity/resources/explore_world_animals/Makefile.am
index b229492..359e5ec 100644
--- a/src/explore_world_animals-activity/resources/explore_world_animals/Makefile.am
+++ b/src/explore_world_animals-activity/resources/explore_world_animals/Makefile.am
@@ -2,13 +2,13 @@ imgdir = $(pkgdatadir)/@PACKAGE_DATA_DIR@/explore_world_animals
img_DATA = \
bison.jpg \
content.desktop.in \
+ content.svgz \
giraffe.jpg \
hedgy.jpg \
jaggy.jpg \
Makefile.am \
narwhal.jpg \
- tux.png \
- world.jpg
+ tux.png
EXTRA_DIST = $(img_DATA)
diff --git a/src/explore_world_animals-activity/resources/explore_world_animals/content.desktop.in b/src/explore_world_animals-activity/resources/explore_world_animals/content.desktop.in
index 2a9a394..49210b5 100644
--- a/src/explore_world_animals-activity/resources/explore_world_animals/content.desktop.in
+++ b/src/explore_world_animals-activity/resources/explore_world_animals/content.desktop.in
@@ -1,52 +1,45 @@
# Created by Christina Hadley (with help from Beth Hadley)
[common]
-background = world.jpg
-backgroundx = 10
-backgroundy = 10
+background = content.svgz
+backSvgId = #BACKGROUND
credits = http://commons.wikimedia.org
-locationpic = tux.png
_generalText = Explore exotic animals from around the world.
_TextMatchingGameText = Click on location where the given animal lives.
textBoxX =105
textBoxY = 150
[1]
-x = 263
-y = 221
_title = Jaguars in South America
_text = Jaguars are named after the Native American word meaning 'he who kills with one leap'
because they like to climb trees to attack their prey.
image = jaggy.jpg
+svgId = #JAGGY
_shortPrompt = Jaguar
[2]
-x = 428
-y = 90
_title = Hedgehogs in Europe
_text = Hedgehogs eat small animals, like frogs and insects, so many people keep them as useful pets. When in danger, they will curl up into a ball and stick up their coat of sharp spines.
image = hedgy.jpg
+svgId = #HEDGY
_shortPrompt = Hedgehog
[3]
-x = 443
-y = 193
_title = Giraffes in Africa
_text = The giraffe lives in Africa and is the tallest mammal in the world. Just their legs, which are usually 1.8 meters long, are taller than most humans!
image = giraffe.jpg
+svgId = #GIRAFFE
_shortPrompt = Giraffe
[4]
-x = 180
-y = 127
_title = Bison in America
_text = Bison live on the plains of North America and were hunted by the Native Americans for food.
image = bison.jpg
+svgId = #BISON
_shortPrompt = Bison
[5]
-x = 385
-y = 39
_title = Narwhals in the Arctic
_text = Narwhals are whales that live in the Arctic Ocean and have long tusks. These tusks remind many people of the mythical unicorn's horn.
image = narwhal.jpg
+svgId = #NARWHAL
_shortPrompt = Narwhal
diff --git a/src/explore_world_animals-activity/resources/explore_world_animals/content.svgz b/src/explore_world_animals-activity/resources/explore_world_animals/content.svgz
new file mode 100644
index 0000000..fb4fa70
Binary files /dev/null and b/src/explore_world_animals-activity/resources/explore_world_animals/content.svgz differ
diff --git a/src/explore_world_music-activity/resources/explore_world_music/Makefile.am b/src/explore_world_music-activity/resources/explore_world_music/Makefile.am
index e255d41..e35bdad 100644
--- a/src/explore_world_music-activity/resources/explore_world_music/Makefile.am
+++ b/src/explore_world_music-activity/resources/explore_world_music/Makefile.am
@@ -8,6 +8,7 @@ img_DATA = \
australia.ogg \
beethoven.ogg \
content.desktop.in \
+ content.svgz \
dancingWorld.png \
ireland.jpg \
ireland.ogg \
@@ -19,8 +20,6 @@ img_DATA = \
mexico.ogg \
middleeast.jpg \
middleeast.ogg \
- orchestra.jpg \
- suitcase.svg \
- worldmap.jpg
+ orchestra.jpg
EXTRA_DIST = $(img_DATA)
diff --git a/src/explore_world_music-activity/resources/explore_world_music/content.desktop.in b/src/explore_world_music-activity/resources/explore_world_music/content.desktop.in
index c024016..0c7ee10 100644
--- a/src/explore_world_music-activity/resources/explore_world_music/content.desktop.in
+++ b/src/explore_world_music-activity/resources/explore_world_music/content.desktop.in
@@ -1,61 +1,53 @@
# Created by Beth Hadley
[common]
-background = worldmap.jpg
-backgroundx = 10
-backgroundy = 10
+background = content.svgz
+backSvgId = #BACKGROUND
credits = http://commons.wikimedia.org/wiki, http://archive.org
-locationpic = suitcase.svg
_generalText = Explore world music! Click on the suitcases.
_SoundMatchingGameText = Click on the location that matches the music you hear.
_TextMatchingGameText = Click on the location that matches the text.
-textBoxX = 300
-textBoxY = 350
+textBoxX = 400
+textBoxY = 370
[1]
-x = 678
-y = 260
_title = Australia
_text = Aboriginals were the first people to live in Australia. They sing and play instruments, like the didgeridoo. It is made from a log and can be up to five meters long!
image = australia.jpg
music = australia.ogg
_shortPrompt = Where is the didgeridoo played?
-
+svgId = #AUSTRALIA
[2]
-x = 449
-y = 200
_title = Africa
_text = Music is a part of everyday life in Africa. African music features a great variety of drums, and they believe it is a sacred and magical instrument.
image = africa.jpg
music = africa.ogg
_shortPrompt = Where is the drum considered a magical instrument?
+svgId = #AFRICA
[3]
-x = 500
-y = 134
_title = Middle East
_text = Music is a very important part of middle eastern culture. Specific songs are played to call worshipers to prayer. The lute is an instrument invented thousands of years ago and still in use today.
image= middleeast.jpg
music= middleeast.ogg
_shortPrompt = Where is music used to call people to prayer?
+svgId = #MIDDLE_EAST
[4]
-x = 691
-y = 133
_title = Japan
_text = Taiko drumming comes from Japan. This type of drumming was originally used to scare enemies in battle. It is very loud, and performances are very exciting with crowds cheering and performers yelling!
image = japan.jpg
music = japan.ogg
_shortPrompt = Where do performers yelp as they play the drums?
+svgId = #JAPAN
[5]
-x = 382
-y = 90
_title = Scotland and Ireland
_text = Folk music of this region is called celtic music, often incorporates a narrative poem or story. Typical instruments include bagpipes, fiddles, flutes, harps, and accordions.
_shortPrompt = Bagpipers, who often wear kilts, are from this location.
image = ireland.jpg
music = ireland.ogg
+svgId = #IRELAND
[6]
x=421
@@ -65,25 +57,24 @@ _text = Italy is famous for its Opera. Opera is a musical theater where actors t
_shortPrompt = This country is known for its opera music.
image = italy.jpg
music = italy.ogg
+svgId = #ITALY
[7]
-x = 425
-y = 90
_title = European Classical Music
_text = Europe is the home of classical music. Famous composers like Bach, Beethoven, and Mozart forever changed music history.
_shortPrompt = Bach, Beethoven, and Mozart composed music in this location.
image = orchestra.jpg
music = beethoven.ogg
+svgId = #ORCHESTRA
[8]
-x = 185
-y = 170
_title = Mexico
_text = Mariachi is a famous type of Mexican music. It features guitars, trumpets, and violins. These bands play for many occasions, including weddings and parties.
_question = At parties, people often dance to the Mariachi music. A Famous dance is:
_shortPrompt = Where is Mariachi music from?
music = mexico.ogg
image = mexico.jpg
+svgId = #MEXICO
[9]
x=184
@@ -94,3 +85,4 @@ _question = The 'king' of rock n' roll is
_shortPrompt = The 'king' of rock n' roll, Elvis Presley, made his music famous in this country.
music = america.ogg
image = america.jpg
+svgId = #USA
diff --git a/src/explore_world_music-activity/resources/explore_world_music/content.svgz b/src/explore_world_music-activity/resources/explore_world_music/content.svgz
new file mode 100644
index 0000000..3c2cc11
Binary files /dev/null and b/src/explore_world_music-activity/resources/explore_world_music/content.svgz differ
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]