NSDocument et ResponderChain
colas_
Membre
Bonjour !
Mon but est de changer le label d'un bouton quand j'appuie sur "alt".
Pour cela, il faut que j'intercepte -flagsChanged dans la chaà®ne des responders.
Je souhaiterais l'intercepter dans la classe qui hérite de NSDocument.
Comme le dit la doc (fig.1.10), NSDocument doit être dans la ResponderChain.
Or, quand je checke la responderChain à l'aide de cette méthode (et ce dans une toy-app minimale)
- (IBAction)logResponderChain:(id)sender
{
NSResponder *responder = self.view;
while ((responder = [responder nextResponder])) {
NSLog(@%@", responder);
}
}
J'obtiens uniquement:
2014-04-16 13:04:16.228 MyApp[5430:303] < NSWindow: 0x6080001e3200>
2014-04-16 13:04:16.228 MyApp[5430:303] < NSWindowController: 0x608000085dc0>
Avez-vous une idée de ce qui bloque ?
Ma méthode `-logResponderChain:` ?
Ou bien ai-je mal compris quelque chose? En effet, NSDocument n'hérite pas de NSResponder.
Merci !
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Salut,
Il faut donc un controleur qui hérite de NSResponder.
http://forum.cocoacafe.fr/topic/2547-recuperer-un-event/#entry25350
Merci de ta réponse !
Mais que penser alors de ce schéma made in Apple? Je me demande si le titre n'est pas important ("action messages")
Il s'agit de deux choses différentes.
NSResponder -> event responder chain
Les actions messages sont générés par sendAction de NSApplication.