Partage de Entity ArrayController entre plusieurs vues.

Paisible.frPaisible.fr Membre
01:39 modifié dans API AppKit #1
Bonjour,

Je bute actuellement sur le problème CoreData suivant exposè ci-dessous.

Mon application en développement est une application à  la "iTunes" basée sur coreData
J'ai à  gauche une vue source (une liste de disque) et une vue contenue à  droite. (le détail du disque : durée, photo, etc...)

Le projet est organisé de la sorte :
- 1 mainMenu.xib
- 1 mainWindow.xib
- 1 sourceView.xib
- 1 contentview.xib

Chaque File's owner pointe sur une classe controller adaptée.
Pour la sourceView, j'ai dans le xib un ArrayControllor de type "entity". J'ai fait binder cet array controller sur une NSTableView pour m'afficher le nom du disque. Cela fonctionne parfaitement
Pour le content view, j'ai placé un ObjectController de type "entity" avec des bindings vers des NSTextFields.

Ce qui me pose problème c'est d'arriver à  faire en sorte que que le ObjectController contienne le NSManagedObject issue de la selection de l'arrayController de la sourceView.

Je sent bien qu'il va certainement falloir passer par une variable "globale" dans le windowController (ou mieux dans le AppController/AppDelegate) du style : currentSelectedDisque.

Je me doute que les observer pourrait avoir un rôle à  jouer dans ce processus, mais malgré ma lecture de la documentation d'Apple, le Hillegass, le "core data" de Pragmatic ainsi que les articles sur le web, je n'arrive pas à  croncretiser la chose.

Auriez-vous des pistes ou des suggestions à  me faire pour résoudre le problème ?

Réponses

  • Paisible.frPaisible.fr Membre
    01:39 modifié #3
    dans 1247407001:

    Ah merci, je l'avais pas vu celui-ci !

    J'espère que cette lecture me permettra de trouver la solution ou du moins d'avoir d'autres pistes d'investigations.
  • Paisible.frPaisible.fr Membre
    01:39 modifié #4
    J'ai beau regarder mais je ne vois vraiment pas d'informations susceptibles de résoudre ma problèmatique.

    Ceci, je passe peut-être à  coté de la solution sans la voir.

    Actuellement j'ai deux xib avec chacun le même ArrayController réglé sur la même entity, mais impossible de faire en sorte que les deux soit sur la même "selection"... Chaque arrayController semble fonctionner sans lien, pourtant ils utilisent le même ManagedObjectContext.
  • Paisible.frPaisible.fr Membre
    01:39 modifié #5
    Après une bonne nuit de sommeil ça va mieux : mon code fonctionnait depuis le début.  :crackboom:-

    En fait tout ce qu'il me manque c'est simplement de conserver quelque part la sélection effectué dans une view pour la "transmettre" à  une autre.

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