Hey Alex -

If your controller is the File's Owner, and in your NIB there is a connection connecting the the File's Owner's 'myButton' outlet to a button, then when you load the nib, the controller's myButton instance variable will be connected to the button in the nib. So far, everything I've described is normal.

Now, if you just load a second NIB file with NSNib using your controller as the File's Owner, and this second NIB has a different connection connecting the the File's Owner's 'myButton' outlet to a button, then when you load this second nib, your controller's myButton outlet will be updated to point to the my button in the second nib.

If you wanted to switch back to the first layout, you could just load the original NIB again.

If your controller is an NSWindowController or an NSViewController, you probably want to be working with two secondary NIB's since the window or view controller will be expecting the NIB they load to setup their top level window or view. In each of your secondary nibs, you could load a whole UI wrapped in a view that you place into your NSWindowController or NSViewController managed window/view.

Good Luck -
Jon Hess


On Sep 16, 2008, at 3:33 PM, Alex Kac wrote:

I have two views that are different layouts of the same UI loaded by a NSViewController. Now lets say that I have an IBOutlet to an NSButton* button1 that is present in both views. I want to swap one view out for the other and when I do so have the IBOutlet for button1 swap to the button1 defined in the second view in another NIB.

So for example, the viewcontroller inits with View A. button1 is assigned to the NSButton in View A. I then swap that view to View B which also have a button1. View B is in a different NIB. So I want button1 to now point to View B. Is this something that can be done automatically?

One way I was thinking of doing this was as follows:

IBOutlet NSButton* button1_viewA;
IBOutlet NSButton* button1_viewB;
IBOutlet NSButton* button1;

and then point button1 to whatever is the currently displayed view. That's fine and doable, but before I do that I wanted to know if there was a better way, a more manageable way.

Thanks!

Alex Kac - President and Founder
Web Information Solutions, Inc.

"If at first you don't succeed, skydiving is not for you."
-- Francis Roberts





_______________________________________________

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

This email sent to [EMAIL PROTECTED]

_______________________________________________

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

This email sent to [EMAIL PROTECTED]

Reply via email to