Table des matières
Les méthodes des signaux sont des méthodes de
gobject.GObject
qui sont héritées par le
gtk.Object
inclus dans tous les widgets GTK+.
id_gestionnaire = objet.connect(nom
,rappel
,args_rappel
) id_gestionnaire = objet.connect_after(nom
,rappel
,args_rappel
) id_gestionnaire = objet.connect_object(nom
,rappel
,slot_object
,args_rappel
) id_gestionnaire = objet.connect_object_after(nom
,rappel
,connecteur_objet
,args_rappel
) objet.disconnect(id_gestionnaire
)
Les quatre premières méthodes connectent un gestionnaire de signal
(rappel
) à un gtk.Object
(objet
) pour le signal spécifié par
nom
et retournent une valeur id_gestionnaire
qui identifie la connexion. Le paramètre args_rappel
consiste en
zéro ou plusieurs arguments qui sont transmis dans l'ordre à
rappel
. Les méthodes connect_after
()
et connect_object_after
() voient leurs gestionnaires de signal
appelés après les autres gestionnaires (y compris les gestionnaires implicites)
connectés au même objet et même signal. Chaque gestionnaire de signal d'objet
possède son propre ensemble d'arguments auquel il s'attend. Il faut se référer à la
documentation GTK+ pour trouver quels arguments sont nécessaires pour un gestionnaire
de signal, bien que l'information pour les widgets courants soit disponible
dans l'Annexe A, Les signaux GTK. Le gestionnaire de signal classique
ressemble à :
def gest_signal(objet
, ....,args_rappel
):
Les gestionnaires de signaux qui appartiennent à une classe Python
(indiqués dans les méthodes connect
() comme
self.rappel
) possèdent un argument supplémentaire
en première position - l'instance d'objet self
:
gest_signal(self,objet
, ....,args_rappel
)
Les méthodes connect_object
() et
connect_object_after
() appellent le gestionnaire
de signal avec, en premier argument, le paramètre connecteur_objet
au lieu de objet
:
def gest_signal(connecteur_objet
, ....,args_fonc
): def gest_signal(self,connecteur_objet
, ....,args_fonc
):
La méthode disconnect
() supprime la
connexion entre un gestionnaire de signal et un signal d'objet. Le
paramètre id_gestionnaire
indique quelle connexion
supprimer.
Les méthodes suivantes :
objet.handler_block(id_gestionnaire
) objet.handler_unblock(id_gestionnaire
)
... bloquent et débloquent le gestionnaire de signal indiqué par
id_gestionnaire
. Lorsqu'un gestionnaire de signal est
bloqué, il ne peut être appelé lorsque le signal se produit.
Les méthodes suivantes :
objet.emit(nom
, ...) objet.emit_stop_by_name(nom
)
... émettent et stoppent le signal nom
.
Émettre le signal provoque l'exécution du gestionnaire implicite et
des gestionnaires définis par l'utilisateur. La méthode
emit_stop_by_name
() avorte l'émission actuelle
du signal de ce nom.