Re: Cocoa Bindings and popups
Re: Cocoa Bindings and popups
- Subject: Re: Cocoa Bindings and popups
- From: Chuck Musser <email@hidden>
- Date: Mon, 19 Jul 2004 21:47:36 -0700
A couple people suggested this capitalization and I did try it. No luck.
I had intentionally left it uncapitalized, thinking that I needed to
preserve the capitalization of my instance variable, which is
"rideDescriptionList".
Chuck
Kevin Callahan wrote:
On Jul 18, 2004, at 10:23 PM, Chuck Musser wrote:
I implemented these six methods, to no avail:
- (NSMutableArray *)rideDescriptionList;
- (void)setrideDescriptionList:(NSMutableArray *)newList;
- (unsigned)countOfrideDescriptionList;
- (id)objectInrideDescriptionListAtIndex:(unsigned)index;
- (void)insertObject:(id)theObject
inrideDescriptionListAtIndex:(unsigned)index;
- (void)removeObjectFromrideDescriptionListAtIndex:(unsigned)index;
what happens if you make sure the "r" in "ride" in your methods is
*capitalized* ..
as in:
-(void)setRideDescriptionList:
-(unsigned)countOfRideDescriptionList:
etc etc
???
Kevin
Before I implemented them, adding an item to the array never
printed any messages out on the console when I debugged it. You'd
think that it would get a "no selector found" or something when I
added new items to my array. Now that the methods *are*
implemented, the application still behaves the same way. The only
thing I can conclude is that I didn't affect the area that's
broken. It's like the all the connections aren't in place, so
these methods aren't even being invoked.
I am a hazy on several things:
1.) The values to fill in the Bindings area. In the RideList
object (this is the NSArrayController), the contentArray binding
looks like this
Bind to: PostAlias (this is the NSObjectController)
Controller Key: selection (what does this mean?! I don't
understand the meaning of "selection" in this context.)
Model Key Path: rideDescriptionList (this is the instance variable
in my main controller object PostController), which is the "real"
controller object that the PostAlias "content" outlet points to.
Does this look right?
2.) In the Attributes inspector for my NSArrayController, there
are two keys: label and rideDescriptionList. What are these keys?
I don't remember putting them in this list directly.
3.) In the Attributes inspector for my NSObjectController, the
Object Class Name is NSMutableArray; in my NSArrayController, it's
RideDescription. Given that my list is an NSMutableArray of
RideDescription objects, are these settings appropriate.
4.) I copied the ArrayController --> PostAlias --> PostController
arrangement from an example program because it was convenient AND
because I couldn't bind the array controller directly to the
PostController (it didn't show up in the Bind To: list, probably
because PostController isn't an NSObjectController or a subclass
thereof). I did try to subclass NSObjectController and use that
subclass as my main controller object, but Interface Builder
didn't let me instantiate it! The "Instantiate" menu item was
grayed out.
I guess my point is that my architecture might just be wrong. Have
I structured this the right way or do I need to architect this a
different way?
Thanks,
Chuck
It could be that you need to make your accessor methods for
rideDescriptionList Key-Value Coding compliant.
http://developer.apple.com/documentation/Cocoa/Conceptual/
KeyValueCoding/Concepts/Compliant.html
This would mean that in your content objects for PostAlias you
have methods like this:
- (unsigned)countOfRideDescriptionList
{
return [rideDescriptionList count];
}
- (id)objectInRideDescriptionListAtIndex:(unsigned)index
{
return [rideDescriptionList objectAtIndex:index];
}
and likewise - (void)insertObject:(id)theObject
inRideDescriptionListAtIndex:(unsigned)index and
(void)removeObjectFromRideDescriptionListAtIndex:(unsigned)index
Although it says you can just return a mutable array, I've
found if you have other controllers observing the array they
work by observing these methods.
Hope that helps,
Steve
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.