Re: IBOutlet to different classes, conditional build
Re: IBOutlet to different classes, conditional build
- Subject: Re: IBOutlet to different classes, conditional build
- From: Trygve Inda <email@hidden>
- Date: Thu, 24 Feb 2011 23:26:34 +0000
- Thread-topic: IBOutlet to different classes, conditional build
>
> On 25/02/2011, at 7:16 AM, Trygve Inda wrote:
>
>> I am guessing IB is reading the MyClass.m which has both .h files imported
>> with #ifdef
>
>
> I don't think this is true - I have sometimes defined the header for a class
> and then set up the interface in IB using that header before I've even written
> a line in the .m file. IB seems quite happy, though at that point XCode
> wouldn't be if I tried to compile.
>
> I'm not sure why you're even doing this. Just keep the two .m files totally
> separate, reading their own header file as is the usual case. If there's code
> common to both that you are uncomfortable duplicating, move it into a common
> helper class used by both.
>
> --Graham
>
>
>
It seems to be pretty random when using two header files, but a common
implementation. There should be a way to drag a header to IB and have it
reinterpret the class, but it just complains that the superclass is wrong.
I guess the issue here is that if I make them separate classes, then the
common classes can only link to them by id and not by a real type.
@interface MyRetailClass : NSPreferencePane
@interface MyAppStoreClass : NSObject
Then in my common classes:
ClassA
ClassB
ClassC
I have to do
IBOutlet id mainClass;
Instead of
IBOutlet MyRetailClass* mainClass;
Or
IBOutlet MyAppStoreClass* mainClass;
So when ClassA does [mainClass someArray] as an accessor, I don't get the
same compiler checking I would have with explicit classes. But with explicit
classes, I can't properly connect the objects in IB in both versions.
_______________________________________________
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