Re: delegate of an NWindowController's window
Re: delegate of an NWindowController's window
- Subject: Re: delegate of an NWindowController's window
- From: Ken Thomases <email@hidden>
- Date: Thu, 29 Sep 2011 18:00:01 -0500
On Sep 29, 2011, at 5:38 PM, Jamie Pinkham wrote:
> On Sep 29, 2011, at 6:22 PM, Koen van der Drift <email@hidden> wrote:
>
>> I'm trying to get the delegate of a window that is controlled by a custom NSWindowController as follows:
>>
>> NSWindow *win = [self window];
>> id <MyControllerDelegate> del = [win delegate];
>>
>> But get the following warning:
>>
>> warning: Semantic Issue: Initializing 'id<MyControllerDelegate>' with an expression of incompatible type 'id<NSWindowDelegate>'
>>
>> What am I doing wrong?
>
> The NSWindow delegate's type is id<NSWindowDelegate> not id <MyControllerDelegate>. This is the compiler telling you the types don't match.
In particular, "id <whatever>" is an id (a pointer to an object of indeterminate type) which is known to conform to a _protocol_ called "whatever".
I think you have confused NSWindowDelegate for some arbitrary placeholder, perhaps for a class name.
If your delegate class is call MyControllerDelegate, then you want:
MyControllerDelegate* del = [win delegate];
And the definition of MyControllerDelegate should have declared its conformance to the NSWindowDelegate protocol.
Regards,
Ken
_______________________________________________
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