What exactly does NSController do?
What exactly does NSController do?
- Subject: What exactly does NSController do?
- From: Chase Meadors <email@hidden>
- Date: Wed, 18 Nov 2009 19:11:18 -0600
Maybe I'm missing some things here, but hey; that's what I come to the
list for.
I'm not fully understanding the need for NSController's and/or what
they do.
Say I have an NSObject subclass:
---- (.h)
@interface TestObject : NSObject {
BOOL boolProp;
}
@property BOOL boolProp;
---- (.m)
@synthesize boolProp;
----
If I have an arbitrary checkbox, which I bind to MyObject.boolProp,
the connection works. I observe the property changing if the checkbox
is changed, and if, within code, I call self.boolProp = YES, the check
box changes.
However, once in a while, I'll have random problems that are fixed
with the addition of a mediating NSObjectController. For example, I
have a class WindowTwoController, which declares property IBOutlet id
graphView, which has the property BOOL isActive. I have a checkbox in
the window for one of these controllers bound to
myWindowTwoController.graphView.isActive
If, in the code for WindowTwoController, I call
self.graphView.isActive = NO, the checkbox does not change.
However, if I add an NSObjectController with content set to
myWindowTwoController, and bind the checkbox through that with the
selection key, then in my code for WindowTwoController:
[[self myObjectController] setValue:[NSNumber numberWithBool:NO]
forKeyPath:@"selection.graphView.isActive"];
then the check box is responsive.
What exactly is the magic that NSController performs? How come simple
bindings work without it?
Thanks for any replies!
_______________________________________________
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