• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Challenge 18 in Hillegass Book
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Challenge 18 in Hillegass Book


  • Subject: Re: Challenge 18 in Hillegass Book
  • From: "James G." <email@hidden>
  • Date: Mon, 11 Aug 2008 11:37:54 -0700


On Aug 10, 2008, at 10:03 AM, Kyle Sluder wrote:

On Sat, Aug 9, 2008 at 8:54 PM, James Gorham <email@hidden> wrote:
I think that's where I'm unclear. Making the Document class aware of the
view is easy enough with an IBOutlet. But how to properly make the view
aware of the document I'm unsure of.

You're missing the point. You don't connect your NSDocument (model) to your views, you have a controller in between. This controller is responsible for noticing/being notified when the document changes so it can update the view, and it is also responsible for noticing/being notified when the view changes so it can update the document.

Understood. For such an example, it seemed like creating a dedicated controller was a bit overkill, while not adhering strictly to MVC.


I ended up making the custom view an outlet in the document, and setting a pointer to the document as an ivar in the view. During redraw, the view requests the list of objects from the NSDocument. When new objects are added, the view messages the document to add them to the collection.

It looks like the line of code from Dave Carrigan could have solved it pretty easily as well, without requiring the NSDocument ivar.

id doc = [[[self window] windowController] document]

So yes, the document does end up acting as both the controller and model, but it works well enough for this simple application.


Thanks to all for their input, it was helpful in both achieving the solution and increasing my understanding.

-James

_______________________________________________

Cocoa-dev mailing list (email@hidden)

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:
This email sent to email@hidden


References: 
 >Challenge 18 in Hillegass Book (From: "James G." <email@hidden>)
 >Re: Challenge 18 in Hillegass Book (From: Graham Cox <email@hidden>)
 >Re: Challenge 18 in Hillegass Book (From: James Gorham <email@hidden>)
 >Re: Challenge 18 in Hillegass Book (From: "Kyle Sluder" <email@hidden>)

  • Prev by Date: Re: NSConditionLock vs MPQueue
  • Next by Date: Use of AppKit in command-line app on headless node
  • Previous by thread: Re: Challenge 18 in Hillegass Book
  • Next by thread: Re: Challenge 18 in Hillegass Book
  • Index(es):
    • Date
    • Thread