2008-09-15 9 views

Respuesta

11

También puede definir señales dentro de la definición de clase:

class MyGObjectClass(gobject.GObject): 
    __gsignals__ = { 
     "some-signal": (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, (object,)), 
    } 

El contenido de la tupla son los mismos que los tres últimos argumentos a gobject.signal_new.

4

Aquí es cómo:

import gobject 

class MyGObjectClass(gobject.GObject): 
    ... 

gobject.signal_new("signal-name", MyGObjectClass, gobject.SIGNAL_RUN_FIRST, 
    None, (str, int)) 

Cuando el segundo al último argumento es el tipo de retorno y el último argumento es una tupla de tipos de argumentos.

2

Si utiliza el kiwi disponible here sólo se puede hacer:

from kiwi.utils import gsignal 

class MyObject(gobject.GObject): 
    gsignal('signal-name') 
Cuestiones relacionadas