On Sep 7, 2014, at 9:24 AM, dangerwillrobinsondan...@gmail.com wrote:
> 
> Hi all
> 
> I just spent a bit of time poking around the responder chain and nil targeted 
> actions. 
> I built a view controller and a view hierarchy with controls that should be 
> configurable. 
> When instantiating the view controller the interface allows configuring the 
> action SEL of the controls. Reuse is the goal of course. 
> I know 10.10 changes things greatly for view controllers. But on 10.9 that's 
> not there. 
> 
> Anyway, I need to insert the view controller into the responder chain between 
> its top level view and that view's superview. 
> That wasn't too bad. Implement the missing reference to the vc in a view 
> subclass and give the vc a callback when the view is in place. 
> 
> But what I found while tinkering is that for non-document based apps from a 
> vanilla project template there was no next responder for the window or the 
> NSApplication instance. 
> I had a method in the app delegate that I was trying to reach via nil 
> targeted action. It couldn't get there. 
> So I set the window nextResponder to the app and the app to the app delegate. 
> I also made the app delegate an NSResponder subclass. 
> 
> It feels like overkill. 
> Am I missing something simple?

IIRC, the window is not supposed to have a nextResponder. Conceptually, the 
next responder of a window is its delegate, and the next responder of an 
application is *its* delegate, but there is no requirement that these objects 
are instances of subclasses of NSResponder. Therefore the responder chain 
mechanism manually jumps from the window to its delegate, then to the 
application, and finally to the app’s delegate. (It also inserts window 
controllers as well as the shared NSDocumentController instance if one has been 
created.)

If the message never reached your app delegate, I suspect you failed to patch 
the view controller’s nextResponder in correctly.

--Kyle Sluder
_______________________________________________

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:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to