Redirigir salida estandar a un buffer de texto gtk

Daniel Garcia Jones danielgj en wanadoo.es
Vie Mayo 21 13:07:42 CEST 2004


Hola!

Estoy intentando redirigir la salida estandar a un buffer de texto gtk.
He visto un hilo de discusion en la lista al respecto de redirigir a
fichero, pero esto es un poco distinto y no me va.

En la documentacion de Python dice que 'sys.stdout = objeto' redirige la
salida a objeto, sea del tipo que sea siempre y cuando tenga un metodo
llamado write().

Siguiendo esto he definido una clase escritor con un metodo write de la
siguiente forma:

class escritorBuffer:

    def __init__(self,buffer):
        self.buffer = buffer

    def write(arg):
        gtk.TextBuffer.insert_interactive_at_cursor(self.buffer,arg)

Luego en el programa principal creo una nueva clase escritorBuffer con
el buffer en el que quiero escribir pero no funciona... el codigo es:

...
escritor = escritorBuffer(self.bufferConsola)
sys.stdout = escritor
... aqui el codigo que escribe en salida estandar
sys.stdout = sys.__stdout__

El caso es que no va, sigue sacandolo por pantalla y no en el buffer.
Alguien puede echarme una mano, que no lo veo...

Gracias!


-- 
------------------------------------------------
              Daniel García Jones               

    danielgj en wanadoo.es | dgarcia en it.uc3m.es
       http://montoya.aig.uc3m.es/~jones
------------------------------------------------


------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es


Más información sobre la lista de distribución Python-es