Is what you are describing similar to the "To Dos" example at:

http://homepage.mac.com/mmalc/CocoaExamples/controllers.html


Adam



On Thu, Mar 27, 2008 at 5:33 AM, Ian Jackson <[EMAIL PROTECTED]> wrote:
> If I may be so bold, I'd like to jump in on this question. I have a
>  similar situation, but I want to have a table representing a to-many
>  relationship for entity1, which the user can populate by choosing any
>  number of entries from a entity2.
>
>  e.g. entity2 has 50 entries.
>
>         entity1 1st entry refers to entries 1, 4, and 9 of entity 2.
>         entity1 2nd entry refers to entries 4, 8 and 26 of entity 2.
>
>  So I envisage that the table in entity1 should have add and remove
>  buttons. When you click add, a new row is added to the table. The
>  first column in the table is a NSCombobox, which can be used to select
>  from the entries in entity 2.
>
>  The employee/department tutorial seems to come close to doing this,
>  but as seems to be more the norm, it assumes that all entries in the
>  relationship are wanted, which is not the case here.
>
>  So, I set up the interface as above (table with NSCombobox, and +/-
>  buttons). I created a special array controller just for this to-many
>  relationship, and bound its contentset to the relevant relationship in
>  entity1.
>  The first column in the table is bound to the specially created array
>  controller, arrangedObjects, but this is a dead end. I can't see how
>  to make the combobox choose the entry. The combo box doesn't have the
>  same binding options as a popup menu.
>
>  Any advice as to how to approach this would be great.
>
>  Ian.
>
>
>
>
>  On 27/03/2008, at 7:34 PM, Adam Gerson wrote:
>
>  > I think that internally when you create a to-many core-data
>  > relationship the group of objects is stored as an NSSet as opposed to
>  > an array.
>  >
>  >
>  > 
> http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSSet_Class/Reference/Reference.html
>  >
>  > 
> http://developer.apple.com/documentation/Cocoa/Conceptual/CocoaBindings/Concepts/CntrlContent.html#/
>  > /apple_ref/doc/uid/TP40002147-181724
>  >
>  > 
> http://developer.apple.com/documentation/Cocoa/Conceptual/KeyValueCoding/Concepts/AccessorConventions.html#/
>  > /apple_ref/doc/uid/20002174-178830-BAJEDEFB
>  >
>  >
>  > On Thu, Mar 27, 2008 at 2:10 AM, Rick Mann <[EMAIL PROTECTED]>
>  > wrote:
>  >>
>  >> On Mar 26, 2008, at 11:06 PM, Adam Gerson wrote:
>  >>> Each table should have its own ArrayController if the two tables
>  >>> represent the data from two different entities. Since you entities
>  >>> are
>  >>> related I am assuming one entity has a property that is a to-many
>  >>> relationship to the other entity. Set the ContentSet bindings for
>  >>> ArrayController2 to be the selection of ArrayController1.
>  >>>
>  >>> ArrayController2 ContentSet
>  >>> Bind to = ArrayController1
>  >>> Controller Key = selection
>  >>> Model Key Path = (the name of the relationship that represents
>  >>> entity2
>  >>> in entity1)
>  >>>
>  >>> This will cause ArrayController2 to always populate the TableView
>  >>> with
>  >>> the objects selected by ArrayController1
>  >>>
>  >>> Let me know if that needs to be more clear.
>  >>
>  >>
>  >> Excellent! That was exactly what was missing. Thank you.
>  >>
>  >> Why ContentSet, and not ContentArray or one of the other ContentXXX
>  >> things?
>  >>
>  >> --
>  >> Rick
>  >>
>  >>
>
> > _______________________________________________
>  >
>  > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
>  >
>  > Please do not post admin requests or moderator comments to the list.
>  > Contact the moderators at cocoa-dev-admins(at)lists.apple.com
>  >
>  > Help/Unsubscribe/Update your Subscription:
>  > http://lists.apple.com/mailman/options/cocoa-dev/bianface%40gmail.com
>  >
>  > This email sent to [EMAIL PROTECTED]
>
>
>
>  _______________________________________________
>
>  Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
>
>  Please do not post admin requests or moderator comments to the list.
>  Contact the moderators at cocoa-dev-admins(at)lists.apple.com
>
>  Help/Unsubscribe/Update your Subscription:
>  http://lists.apple.com/mailman/options/cocoa-dev/agersonl%40gmail.com
>
>  This email sent to [EMAIL PROTECTED]
>
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to