Q:

How would you add a Group Feature like iChat's to your Core Data App?

I am Developing A Core Data App, and would like to add a feature like the Groups feature in iChat to my App. The Feature would be displayed in the table with normal table rows and more groups could be created. Other rows of the table could be dragged into the Group and the Group could be collapsed and opened. What code would I need to do this and Is it possible?

A:

Check out NSOutlineView. Basically, what you're going to want is two different Core Data entities: Group and Child. Group would have a to-many relationship, children, to Child objects, and Child would have a to-one relationship, parent, to one Group entity.
That's enough to get the basic model defined. Past that, you need to break your question down more. For example, how do I implement drag & drop using Core Data? That's been answered many times. How do I mix two different entity types in a single outline view? Also answered before. Break the question down into each individual sub-task and look for an answer – I'd bet most of them of them have an answer on Stack Overflow.

