Binding Bizarre

petitjeanpetitjean Membre
05:32 modifié dans API AppKit #1
Bonjour
Nouveau venu sur la liste et débutant en Cocoa, je voudrais vous soumettre une bizarrerie à  laquelle je me suis heurté et que je voudrais bien que l'on m'explique.
Comme pas mal d'entre vous j'ai essayé de reproduire les applications détaillées dans "Liaisons Cocoa" et plus précisément le projet  "Combatants"
Je suis moi aussi tombé, comme je l'ai lu sur une précédente enfilade "Binding on the fly", sur le problème du pop menu. Dès que l'on tentait de binder le NSControllerArray de Weapon on obtient un Sigtrap.
Je précise que j'étais moi aussi reparti d'un projet vierge en "francisant" le nom des méthodes, mais en prenant comme modèle le projet "Combatants" que l'on trouve sur CocoaDev.
Après pas mal de tatonnements je me suis aperçu que le nom de deux procédures du fichier combattant.m était déterminant ?
Il s'agit des procédures  - (unsigned int)countOfWeapons et - (id)objectInWeaponsAtIndex:(unsigned int)index
Comme ce sont des procédures déclarées dans le fichier combattant.h, je pensais qu'il s'agissait de procédures crées par le développeur et que leur nom n'avait pas d'importance. Je les avais donc changées en - (unsigned int)nombredArmes et objetDansArmesIndex:(unsigned int)index.
Sigtrap à  répétition  !
Jusqu'a ce que j'essaye :  -(unsigned int)countOfArmes et (id)objectInArmesAtIndex:(unsigned int)index, avec bien sûr "Armes" pour modelKeyPath du NSArrayController. Et là , tout marche, le mélange Franco-anglais ne provoque pas d'erreur ?
Quelqu'un peut il m'expliquer pourquoi je peux mélanger dans le même nom de méthode une partie de syntaxe non modifiable et une partie de syntaxe libre.
Merci .

Réponses

Connectez-vous ou Inscrivez-vous pour répondre.