Re: Confusion with copyWithZone and Archiving

2016-02-29 Thread Graham Cox
> On 1 Mar 2016, at 10:24 AM, Doug Hill wrote: > > Given the amount of private implementation in NSView, my guess is that > copying an NSView yourself without super support would be > difficult/impossible in practice. However, I would be interested in others > with more information to give an

Re: Confusion with copyWithZone and Archiving

2016-02-29 Thread Doug Hill
> On Feb 29, 2016, at 2:37 PM, Graham Cox wrote: > > >> On 1 Mar 2016, at 1:58 AM, Dave wrote: >> >> @interface LTWBaseClass : NSView > > >> Do I need to call the super version of this method too? > > > > In general, yes. But NSView doesn’t conform to NSCopying, so there is no > super

Re: Confusion with copyWithZone and Archiving

2016-02-29 Thread Graham Cox
> On 1 Mar 2016, at 1:58 AM, Dave wrote: > > @interface LTWBaseClass : NSView > Do I need to call the super version of this method too? In general, yes. But NSView doesn’t conform to NSCopying, so there is no super to call. You’ll have to do all of the copying needed to copy the underlyin

Re: Confusion with copyWithZone and Archiving

2016-02-29 Thread Dave
Thanks Doug, I was looking in the wrong place! All the Best Dave ___ 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

Re: Confusion with copyWithZone and Archiving

2016-02-29 Thread Doug Hill
From the NSCopying protocol reference: If a subclass inherits NSCopying from its superclass and declares additional instance variables, the subclass has to override copyWithZone: to properly handle its own instance variables, invoking the superclass’s implementation first. There are many other

Confusion with copyWithZone and Archiving

2016-02-29 Thread Dave
Hi, I have an inheritance chain Classes that are NSCoding and NSCopying compliant like so: @interface LTWBaseClass : NSView @interface LTWSubclassA : LTWBaseClass @interface LTWSubclassB : LTWSubclassA Each of these three classes contain properties that need to be archived and unarchived