Buenas, estuve leyendo algunos manuales sobre Python y GTK, y tengo algunas dudas:
El ejemplo en cuestion es sacar una ventana con un boton y que al hacer click al boton salga un mensaje por el terminal
El ejemplo en si lo entiendo, lo que pasa es que quiero utilizar el Patron Comando
El codigo sin patrones es masomenos asi
fichero: hola.py
Código:
import ...
...
class HolaMundo:
...
def hola (self, widget, data=None):
print "Hola mundo"
....
def __init__ (self):
# crear ventana
# crear boton
self.boton.connect ("clicked", self.hola, None) # conectando evento clicked al boton
...
...
Bien, como os dije ese ejemplo funciona y lo entiendo.
Como seria usando el patron Comando ?
Implemente una clase comando.py para simular esto pero no se si esta bien (aunque funciona):
fichero comando.py
Código:
class ComandoClick:
def __call__ (self, *args):
print "Hola Mundo"
y luego
fichero: hola.py
Código:
import ...
from comando import ComandoClick # Importamos la clase (es esto la relacion cliente ??)
class HolaMundo:
...
....
def __init__ (self):
# crear ventana
# crear boton
self.click = ComandoClick()
self.boton.connect ("clicked", self.click) # conectando evento clicked al boton
...
...
Esa solucion funciona, pero tengo unas dudad:
1. lo de "from comando import ComandoClick" es una forma de usar la relacion cliente ?
2. No entiendo bien lo de "def __call__ (self, *args)"
3. Estoy usando el patron Comando el la solucion que he dado ?
Gracias