Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/PrestametuVoz.activity/config_nuevo.py
diff options
context:
space:
mode:
Diffstat (limited to 'PrestametuVoz.activity/config_nuevo.py')
-rw-r--r--PrestametuVoz.activity/config_nuevo.py180
1 files changed, 180 insertions, 0 deletions
diff --git a/PrestametuVoz.activity/config_nuevo.py b/PrestametuVoz.activity/config_nuevo.py
new file mode 100644
index 0000000..2db7413
--- /dev/null
+++ b/PrestametuVoz.activity/config_nuevo.py
@@ -0,0 +1,180 @@
+#!/usr/bin/python
+# -*- coding: iso-8859-15 -*-
+''' Config de Prestame tu voz '''
+
+#Copyright (C) 2009 Federico Moreira - <federico@piensalibre.info>
+# Alejandro Esperón - <ratman26@gmail.com>
+#Copyright (C) 2010 Plan Ceibal <comunidad@plan.ceibal.edu.uy>
+# Esteban Arias - <earias@plan.ceibal.edu.uy>
+#
+# 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 3 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, see <http://www.gnu.org/licenses/>
+
+
+import gtk
+import os
+
+import settings
+from manejar_datos import cargar_datos, cargar_planillas
+
+
+class VentanaConfig(gtk.Table):
+
+ def __init__(self):
+
+ self.lista_tarjetas = []
+
+ self.pos_actual = 0
+
+ self.posicion = gtk.Label('1/' + str(settings.TABLA_ANCHO * settings.TABLA_ALTO))
+ etiqueta_titulo = gtk.Label('Titulo : ')
+ self.titulo = gtk.Entry(30)
+ self.imagen = gtk.Image()
+ self.boton_imagen = gtk.FileChooserButton('Agregar imagen')
+ etiqueta_sonido = gtk.Label('Sonido : ')
+ self.boton_sonido = gtk.FileChooserButton('Agregar sonido')
+ boton_ingresar = gtk.Button('Ingresar Sig')
+
+ gtk.Table.__init__(self, 5, 1)
+
+ self.attach(self.posicion,0,1,0,1)
+
+ etiqueta_titulo.show()
+ self.titulo.show()
+ self.titulo.set_width_chars(10)
+
+ caja_titulo = gtk.HBox()
+ caja_titulo.pack_start(etiqueta_titulo)
+ caja_titulo.pack_start(self.titulo)
+
+ self.attach(caja_titulo,0,1,1,2)
+ self.imagen.show()
+ self.imagen.set_size_request(500, 500)
+ self.imagen.set_from_file(os.path.join(os.getcwd(),'icons','sin_foto.png'))
+
+ self.boton_imagen.show()
+
+ caja_imagen = gtk.VBox()
+ caja_imagen.pack_start(self.imagen)
+ caja_imagen.pack_start(self.boton_imagen)
+ self.attach(caja_imagen,0,1,2,3)
+
+ etiqueta_sonido.show()
+ self.boton_sonido.show()
+ caja_sonido = gtk.HBox()
+ caja_sonido.pack_start(etiqueta_sonido)
+ caja_sonido.pack_start(self.boton_sonido)
+ self.attach(caja_sonido,0,1,3,4)
+
+ boton_ingresar.show()
+ boton_ingresar.connect("clicked", self.ingresar_siguiente, "siguiente")
+ self.attach(boton_ingresar,0,1,4,5)
+
+ self.cargar_demo()
+
+ def cargar_tarjeta(self,lista_tarjetas):
+ print len(lista_tarjetas)
+ self.lista_tarjetas = lista_tarjetas
+ self.titulo.set_text(self.lista_tarjetas[self.pos_actual].titulo)
+ self.imagen.clear()
+ self.imagen.set_from_file(os.path.join(os.getcwd(), \
+ self.lista_tarjetas[self.pos_actual].imagen))
+ self.actualizar_ventana()
+
+
+ def ingresar_siguiente(self, widget, info):
+ self.pos_actual += 1
+ if self.pos_actual > (len(self.lista_tarjetas) - 1):
+ self.pos_actual = 0
+ self.titulo.set_text(self.lista_tarjetas[self.pos_actual].titulo)
+ self.posicion.set_label(str(self.pos_actual + 1) + '/'+ str(settings.TABLA_ANCHO * settings.TABLA_ALTO))
+ self.actualizar_ventana()
+
+ def actualizar_ventana(self):
+ self.imagen.clear()
+ self.imagen.set_from_file(self.lista_tarjetas[self.pos_actual].imagen)
+ self.boton_imagen.set_filename(self.lista_tarjetas[self.pos_actual].imagen)
+ self.boton_sonido.set_filename(self.lista_tarjetas[self.pos_actual].audio)
+
+ def guardar(self, archivo):
+ ''' Guarda un archivo '''
+ if archivo == '':
+ print "fideo"
+ selector = gtk.FileChooserDialog(title=None,
+ action=gtk.FILE_CHOOSER_ACTION_SAVE,
+ buttons=(gtk.STOCK_CANCEL,
+ gtk.RESPONSE_CANCEL,
+ gtk.STOCK_OPEN,
+ gtk.RESPONSE_OK))
+ selector.set_current_folder(os.getcwd())
+ respuesta = selector.run()
+ if respuesta == gtk.RESPONSE_OK:
+ self.crear_tarjetas(selector.get_filename())
+ selector.destroy()
+ else:
+ self.crear_tarjetas(archivo)
+
+
+ def crear_tarjetas(self, nombre_archivo):
+ ''' Creo las tarjetas '''
+ #guardar_datos(nombre_archivo, self.lista_de_tarjetas)
+ print nombre_archivo
+
+ def abrir(self, widget, info):
+ ''' Permite abrir un archivo '''
+ largo_home = len(os.environ["HOME"]) + 1
+ selector = gtk.FileChooserDialog(title=None,
+ action=gtk.FILE_CHOOSER_ACTION_OPEN,
+ buttons=(gtk.STOCK_CANCEL,
+ gtk.RESPONSE_CANCEL,
+ gtk.STOCK_OPEN,
+ gtk.RESPONSE_OK))
+ selector.set_current_folder(os.getcwd())
+ selector.set_default_response(gtk.RESPONSE_OK)
+ respuesta = selector.run()
+ if respuesta == gtk.RESPONSE_OK:
+ self.datos = cargar_datos(selector.get_filename())
+ self.archivo = selector.get_filename()
+ selector.destroy()
+ self.ventana.cargar_tarjeta(self.datos)
+
+ def guardar(self, widget, info):
+ '''Permite guardar '''
+ self.ventana.guardar(self.archivo)
+
+ def cargar_demo(self):
+ self.lista_tarjetas = cargar_datos('fede2')
+ self.actualizar_ventana()
+
+
+#config = gtk.Window(gtk.WINDOW_TOPLEVEL)
+#config.set_title('Prestame tu voz')
+#ventana = VentanaConfig()
+##control = ControlConfig(ventana)
+#
+#caja_principal = gtk.VBox()
+##caja_principal.pack_start(control)
+#caja_principal.pack_start(ventana)
+#caja_principal.show()
+#
+#config.add(caja_principal)
+#ventana.show_all()
+##control.show_all()
+#
+#config.set_default_size(300,300)
+#config.show()
+#config.connect("delete_event", gtk.main_quit)
+#gtk.main()
+
+
+