Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAna Belén Trinidad Candia <belentwi@localhost.localdomain>2013-01-25 19:13:44 (GMT)
committer Ana Belén Trinidad Candia <belentwi@localhost.localdomain>2013-01-25 19:13:44 (GMT)
commit6fc4da37d973031122278d5481fe7d632eed1c5a (patch)
tree21ba17d141839923abd27e7295affa8bf736b5f2
parent40ecfa06197a539ddc0086bb1a4430e6b424cd20 (diff)
parent5d4cc12f1ae017ef5cebaa668a1d5ca36f64dad0 (diff)
Merge
-rw-r--r--activity.py64
-rw-r--r--activity.py~186
-rw-r--r--config.ini6
-rw-r--r--config.ini~9
4 files changed, 73 insertions, 192 deletions
diff --git a/activity.py b/activity.py
index 16e7b46..7e15a1a 100644
--- a/activity.py
+++ b/activity.py
@@ -26,6 +26,8 @@ from sugar.activity.widgets import ActivityToolbox
from sugar.activity.widgets import TitleEntry
from sugar.activity.widgets import StopButton
from sugar.activity.widgets import ShareButton
+from ConfigParser import SafeConfigParser
+from subprocess import Popen
class AudioPatternActivity(activity.Activity):
@@ -69,6 +71,7 @@ class AudioPatternActivity(activity.Activity):
jugarButton = gtk.Button()
principalVbox.pack_start(cabeceraHbox, fill=False)
jugarButton.set_label('JUGAR')
+ jugarButton.connect('focus-in-event', self.__say_text)
cabeceraHbox.pack_start(jugarButton, fill=False)
jugarButton.set_size_request(150, 50)
@@ -83,11 +86,17 @@ class AudioPatternActivity(activity.Activity):
cancelarButton = gtk.Button()
cancelarButton.set_label('CANCELAR')
+ cancelarButton.connect('focus-in-event', self.__say_text)
cabeceraHbox.pack_start(cancelarButton, fill=False)
cancelarButton.connect('clicked', self.__button_clicked_cb, 'CANCELAR')
cuerpoHbox = gtk.HBox(False, 20)
cancelarButton.set_size_request(150, 50)
+ self.connect('key-press-event', self.__on_key_press_event)
+
+ parser = SafeConfigParser()
+ parser.read('config.ini')
+
seleccionadosTable = gtk.Table(4, 1, True)
seleccionadoUnoButton = gtk.Button()
@@ -99,6 +108,10 @@ class AudioPatternActivity(activity.Activity):
seleccionadosTable.set_size_request(200, 400)
#resultadoButton = gtk.Button()
+ seleccionadoUnoButton.connect('focus-in-event', self.__say_text)
+ seleccionadoDosButton.connect('focus-in-event', self.__say_text)
+ seleccionadoTresButton.connect('focus-in-event', self.__say_text)
+
opcionesTable = gtk.Table(3,3, True)
opcionUno = gtk.Button()
@@ -110,7 +123,36 @@ class AudioPatternActivity(activity.Activity):
opcionSiete = gtk.Button()
opcionOcho = gtk.Button()
opcionNueve = gtk.Button()
-
+
+ opcionUno.connect('focus-in-event', self.__say_text)
+ opcionDos.connect('focus-in-event', self.__say_text)
+ opcionTres.connect('focus-in-event', self.__say_text)
+ opcionCuatro.connect('focus-in-event', self.__say_text)
+ opcionCinco.connect('focus-in-event', self.__say_text)
+ opcionSeis.connect('focus-in-event', self.__say_text)
+ opcionSiete.connect('focus-in-event', self.__say_text)
+ opcionOcho.connect('focus-in-event', self.__say_text)
+ opcionNueve.connect('focus-in-event', self.__say_text)
+
+ uno = parser.get('cantidad', 'tres') + ' ' + parser.get('elemento', 'leones') + ' de ' + parser.get('material', 'metal')
+ opcionUno.set_label(uno)
+ dos = parser.get('cantidad', 'cuatro') + ' ' + parser.get('elemento', 'jirafas') + ' de ' + parser.get('material', 'madera')
+ opcionDos.set_label(dos)
+ tres = parser.get('cantidad', 'cinco') + ' ' + parser.get('elemento', 'monos') + ' de ' + parser.get('material', 'vidrio')
+ opcionTres.set_label(tres)
+ cuatro = parser.get('cantidad', 'cuatro') + ' ' + parser.get('elemento', 'leones') + ' de ' + parser.get('material', 'madera')
+ opcionCuatro.set_label(cuatro)
+ cinco = parser.get('cantidad', 'cinco') + ' ' + parser.get('elemento', 'jirafas') + ' de ' + parser.get('material', 'metal')
+ opcionCinco.set_label(cinco)
+ seis = parser.get('cantidad', 'tres') + ' ' + parser.get('elemento', 'monos') + ' de ' + parser.get('material', 'vidrio')
+ opcionSeis.set_label(seis)
+ siete = parser.get('cantidad', 'tres') + ' ' + parser.get('elemento', 'leones') + ' de ' + parser.get('material', 'madera')
+ opcionSiete.set_label(siete)
+ ocho = parser.get('cantidad', 'cuatro') + ' ' + parser.get('elemento', 'monos') + ' de ' + parser.get('material', 'metal')
+ opcionOcho.set_label(ocho)
+ nueve = parser.get('cantidad', 'cinco') + ' ' + parser.get('elemento', 'leones') + ' de ' + parser.get('material', 'vidrio')
+ opcionNueve.set_label(nueve)
+
self.set_canvas(principalVbox)
@@ -178,9 +220,19 @@ class AudioPatternActivity(activity.Activity):
def __on_key_press_event(self, widget, event):
keyname = gtk.gdk.keyval_name(event.keyval)
- print "Key %s (%d) was pressed" % (keyname, event.keyval)
- if keyname == 'space':
- print "Dentro del IF"
- widget_focus = widget.get_focus
- #print widget_focus.get_tab_label
+ #print "Key %s (%d) was pressed" % (keyname, event.keyval)
+ # if keyname == 'Left' or keyname == 'Right' or keyname == 'Up' or keyname == 'Down':
+ # widget_focus = widget.get_focus()
+ # logging.debug(widget_focus.get_label())
+
+ def __on_enter_event(self, widget, event):
+ widget_focus = widget.get_focus()
+ logging.debug(widget_focus.get_label())
+ def __say_text(self, widget, event):
+ label = widget.get_label()
+ logging.debug(label)
+ self.say(label)
+
+ def say(self, text):
+ Popen(['espeak', '-v', 'es', text])
diff --git a/activity.py~ b/activity.py~
deleted file mode 100644
index fac5a73..0000000
--- a/activity.py~
+++ /dev/null
@@ -1,186 +0,0 @@
-# Copyright 2013 Ma. Beatriz Vierci, Ana Belen Trinidad Candia
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-import gtk
-import logging
-
-from gettext import gettext as _
-
-from sugar.activity import activity
-from sugar.graphics.toolbarbox import ToolbarBox
-from sugar.activity.widgets import ActivityButton
-from sugar.activity.widgets import ActivityToolbox
-from sugar.activity.widgets import TitleEntry
-from sugar.activity.widgets import StopButton
-from sugar.activity.widgets import ShareButton
-
-class AudioPatternActivity(activity.Activity):
-
- def __init__(self, handle):
- activity.Activity.__init__(self, handle)
-
- # we do not have collaboration features
- # make the share option insensitive
- self.max_participants = 1
-
- # toolbar with the new toolbar redesign
- toolbar_box = ToolbarBox()
-
- activity_button = ActivityButton(self)
- toolbar_box.toolbar.insert(activity_button, 0)
- activity_button.show()
-
- title_entry = TitleEntry(self)
- toolbar_box.toolbar.insert(title_entry, -1)
- title_entry.show()
-
- share_button = ShareButton(self)
- toolbar_box.toolbar.insert(share_button, -1)
- share_button.show()
-
- separator = gtk.SeparatorToolItem()
- separator.props.draw = False
- separator.set_expand(True)
- toolbar_box.toolbar.insert(separator, -1)
- separator.show()
-
- stop_button = StopButton(self)
- toolbar_box.toolbar.insert(stop_button, -1)
- stop_button.show()
-
- self.set_toolbar_box(toolbar_box)
- toolbar_box.show()
-
- principalVbox = gtk.VBox(False, 50)
- cabeceraHbox = gtk.HBox()
- jugarButton = gtk.Button()
- principalVbox.pack_start(cabeceraHbox, fill=False)
- jugarButton.set_label('JUGAR')
- cabeceraHbox.pack_start(jugarButton, fill=False)
- jugarButton.set_size_request(150, 50)
-
- #jugarButton.connect('clicked', self.__button_clicked_cb, 'CLICKED')
- #jugarButton.connect('enter', self.__button_clicked_cb, 'ENTER')
- #jugarButton.connect('activate', self.__button_clicked_cb, 'ACTIVATE')
- #jugarButton.connect('leave', self.__button_clicked_cb, 'LEAVE')
- #jugarButton.connect('pressed', self.__button_clicked_cb, 'PRESSED')
- #jugarButton.connect('released', self.__button_clicked_cb, 'RELEASED')
- #jugarButton.connect('BUTTON_PRESS', self.__button_clicked_cb, 'BUTTON_PRESS')
- #key_press_event
-
- cancelarButton = gtk.Button()
- cancelarButton.set_label('CANCELAR')
- cabeceraHbox.pack_start(cancelarButton, fill=False)
- cancelarButton.connect('clicked', self.__button_clicked_cb, 'CANCELAR')
- cuerpoHbox = gtk.HBox(False, 20)
- cancelarButton.set_size_request(150, 50)
-
- seleccionadosTable = gtk.Table(4, 1, True)
-
- seleccionadoUnoButton = gtk.Button()
- #seleccionadosTable.pack_start(seleccionadoUnoButton, fill=False)
-
-
- seleccionadoDosButton = gtk.Button()
- seleccionadoTresButton = gtk.Button()
- seleccionadosTable.set_size_request(200, 400)
- #resultadoButton = gtk.Button()
-
- opcionesTable = gtk.Table(3,3, True)
- opcionUno = gtk.Button()
-
- opcionDos = gtk.Button()
- opcionTres = gtk.Button()
- opcionCuatro = gtk.Button()
- opcionCinco = gtk.Button()
- opcionSeis = gtk.Button()
- opcionSiete = gtk.Button()
- opcionOcho = gtk.Button()
- opcionNueve = gtk.Button()
-
- self.set_canvas(principalVbox)
-
-
- cabeceraHbox.add(jugarButton)
- cabeceraHbox.add(cancelarButton)
-
-
- principalVbox.add(cabeceraHbox)
- principalVbox.add(cuerpoHbox)
-
- cuerpoHbox.add(seleccionadosTable)
- cuerpoHbox.add(opcionesTable)
-
- seleccionadosTable.attach(seleccionadoUnoButton, 0, 1, 0, 1, 10, 20, 10, 5)
- seleccionadoUnoButton.set_size_request(180, 80)
-
- seleccionadosTable.attach(seleccionadoDosButton, 0, 1, 1, 2, 10, 30, 10, 5)
- seleccionadoDosButton.set_size_request(180, 80)
-
- seleccionadosTable.attach(seleccionadoTresButton, 0, 1, 2, 3, 10, 20, 10, 5)
- seleccionadoTresButton.set_size_request(180, 80)
- #seleccionadosTable.attach(selecionadoUnoButton, 0, 1
-
- seleccionadosTable.set_row_spacings(10)
- seleccionadosTable.set_col_spacings(10)
-
- opcionesTable.attach( opcionUno, 0, 1, 0, 1, 10, 10)
- opcionUno.set_size_request(180, 80)
-
- opcionesTable.attach( opcionDos, 1, 2, 0, 1, 10, 10)
- opcionDos.set_size_request(180, 80)
-
- opcionesTable.attach( opcionTres, 2, 3, 0, 1, 10, 10)
- opcionTres.set_size_request(180, 80)
-
- opcionesTable.attach( opcionCuatro, 0, 1, 1, 2, 10, 10)
- opcionCuatro.set_size_request(180, 80)
-
- opcionesTable.attach( opcionCinco, 1, 2, 1, 2, 10, 10)
- opcionCinco.set_size_request(180, 80)
-
- opcionesTable.attach( opcionSeis, 2, 3, 1, 2, 10, 10)
- opcionSeis.set_size_request(180, 80)
-
- opcionesTable.attach( opcionSiete, 0, 1, 2, 3, 10, 10)
- opcionSiete.set_size_request(180, 80)
-
- opcionesTable.attach( opcionOcho, 1, 2, 2, 3, 10, 10)
- opcionOcho.set_size_request(180, 80)
-
- opcionesTable.attach( opcionNueve, 2, 3, 2, 3, 10, 10)
- opcionNueve.set_size_request(180, 80)
-
- opcionesTable.set_row_spacings(50)
- opcionesTable.set_col_spacings(10)
-
- principalVbox.show_all()
- #window.show_all()
-
- #def destroy(self, window, data=None):
- #gtk.main_quit()
-
- def __button_clicked_cb(self, window, data=None):
- print(data)
-
- def __on_key_press_event(self, widget, event):
- keyname = gtk.gdk.keyval_name(event.keyval)
- print "Key %s (%d) was pressed" % (keyname, event.keyval)
- if keyname == 'space':
- print "Dentro del IF"
- widget_focus = widget.get_focus
- #print widget_focus.get_tab_label
-
diff --git a/config.ini b/config.ini
index 820e711..8792440 100644
--- a/config.ini
+++ b/config.ini
@@ -1,9 +1,15 @@
[elemento]
leones = leones
+jirafas = jirafas
+monos = monos
[cantidad]
tres = 3
+cuatro = 4
+cinco = 5
[material]
metal = metal
+madera = madera
+vidrio = vidrio
diff --git a/config.ini~ b/config.ini~
new file mode 100644
index 0000000..820e711
--- /dev/null
+++ b/config.ini~
@@ -0,0 +1,9 @@
+[elemento]
+leones = leones
+
+[cantidad]
+tres = 3
+
+[material]
+metal = metal
+