Carnet d'adresses mais en mieux. Ca existe ? ca devrait...

BornToBeCocoaBornToBeCocoa Membre
12:41 modifié dans API AppKit #1
Hello,

Je cherche un tutorial pour réaliser quelquechose qui me semble très simple mais impossible d'en trouver un. J'ai balayé quasiment tout sourceforge.net et http://osx.hyperjeff.net où d'habitude je trouve des exemples de ce que je veux faire mais là , rien ! nada ! zero !

Aussi je vous appelle à  l'aide. Ce que je veux faire ?
Je suppose que vous connaissez tous le tutoriel du carnet d'adresse de Project Omega : http://www.projectomega.org/article.php?lg=fr&php=oreilly_cocoa10&p=1

Je voudrais faire à  peu près la même chose. Seulement je voudrais que la saisie du nom, prenom... se fasse dans une autre fenêtre.

Ce qui m'intéresse ce ne sont pas les bindings mais l'affichage d'une seconde fenêtre pour créer un objet et renvoyer l'objet résultat dans la liste de la première fenêtre.

J'ai vu l'exemple SimpleMultiWindow, mais cela ne marche pas dans mon cas car il faudrait que ma classe principale soit delegate de l'application. Pas possible car si elle est delegate de l'application, je ne peux plus utiliser la structure NSDocument pour sauvegarder ou charger la classe principale.

Any idea boys ?

Réponses

  • mpergandmpergand Membre
    octobre 2004 modifié #2
    Lorsque l'on veut faire communiquer deux objets qui n'ont pas de liens entre-eux, généralement on utilise les notifications.
    Je crois comprendre que c'est le cas que tu décris. Tu pourras placer l'objet résultat dans le dico userInfo.

    Regarde les tutos sur project Omega

    [edit]

    Attention, puisque tu es en mode document, tout les document ouverts seront notifiés en même temps, à  toi de le gérer en ignorant cette notif si le document n'est pas actif (1er plan). Il doit être possible d'envoyer la notification au firstResponder ( doc actif ) mais je n'ai jamais essayé.

    Quelqu'un a une meilleure idée ?  ;)
  • 12:41 modifié #3
    Base toi sur un autre tuto de projectomega, qui refait le programme de carnet d'adresse, mais en utilisant le carnet "officiel" de OS X. Ensuite, quand tu crées un nouveau contact, tu l'ajoutes à  la base "officielle". Bon, il sera aussi rajouté dans Address Book, Mail,... mais bon, c'est quand même mieux d'avoir une base centralisée ;)

    Après, quand tu auras bien compris le principe, tu pourras faire ton propre "serveur".
  • TiffTiff Membre
    12:41 modifié #4
    dans 1096739338:

    je ne peux plus utiliser la structure NSDocument pour sauvegarder ou charger la classe principale.

    Dans le tuto de ProjectOmega, l'appli n'est pas une NSDocument-based.
Connectez-vous ou Inscrivez-vous pour répondre.