J'ai donc passé du temps à consulter CocoaDev, à lire la documentation Cocoa sur NSMenuItems et à faire quelques tests dans Interface Builder.
Dans mon application, j'ai un menu d'application ([NSApp mainMenu]) conçu dans Interface Builder. Je vois trois chemins potentiels :
-
Mettre mes répondeurs d'action dans le NSApplicationDelegate. Cela me semble étrange, en partie parce que c'est très loin dans la chaîne alimentaire, et en partie parce que cela semble être un ajout.
-
Créez une ou plusieurs vues secondaires qui écouteraient les divers messages d'action NSMenuItem. Cela semble utile, mais il semble que pour qu'elle soit dans la chaîne de réponse, il faille une certaine magie que je n'ai pas pu comprendre.
-
Créer un NSObject qui écoute le menu spécifique de l'application, le mettre dans le xib et le câbler. Cela me semble être la meilleure solution pour l'instant, car je peux isoler des éléments et ne pas dépendre de la chaîne de réponse pour atteindre un objet spécifique. MAIS je me demande si, lorsque mon application atteindra un niveau de complexité suffisant, cela ne posera pas un problème parce que cela usurpe la chaîne de réponse, qui est là pour une raison qui va peut-être au-delà de la simple facilité d'utilisation.
Désolé pour cette longue question. Y a-t-il une approche privilégiée ? Merci !