CD + erzwungene Sortierung

  • CD + erzwungene Sortierung

    Hallo,

    zwei Entitäten:

    Haus und Person. In einem Haus wohnen viele Personen. Jede Person hat ein gewisses Alter. Zusätzlich zwei NSArrayController - einer gefüllt mit allen Häusern und der andere gebunden an die selection des ArrayControllers, der die Häuser enthält - mit dem Path "personen".

    Angenommen ich möchte nun in einem NSTableView alle Personen des aktuell selektierten Hauses dem Alter nach sortiert auflisten. Wie binde ich das am geschicktesten zusammen?

    Die Sortierung soll keinesfalls durch irgendwelche äußeren Einflüsse geändert werden können und beim Hinzukommen neuer Personen immer automatisch aktualisiert werden. Mein Gedanke war:

    Einem Haus eine Methode (set/personenSortDescriptors:(NSArray *)) zu verpassen, die vorgefertigte statische SortDescriptors liefert. Der entsprechende Setter tat nichts - um die Änderug Sortierung zu erzwingen.

    Der Personsarraycontroller hat dann sein contentSet an Häuserarraycontroller.selection.personen und sein sortDescriptors Binding gebunden an Häuserarraycontroller.selection.personenSortDescriptors. Das klappt wunderbar - aber das kann doch nicht der beste Weg zum Ziel sein.

    Tatsache: [einHaus valueForKey:@"personen"] - liefert natürlich immernoch ein NSSet (NSFaultingMutableSet), welches wie von Zauberhand sortiert ist, obwohl ein Set eigentlich keine Sortierung kennt.

    Riecht das nicht irgendwie nach "contentArray"?
    Die Objective-Cloud ist fertig wenn sie fertig ist. Beta heißt Beta.

    Objective-C und Cocoa Band 2: Fortgeschrittene
    Cocoa/Objective-C Seminare von [co coa:ding].