From: Cornelius J. <cj...@vi...> - 2005-06-17 10:36:12
|
hi also if you use bindings updating your array directly won't notify kvo. you have to use the proper cover methods required. if you have am images array you should implement the following and update your array using these, sorry, not translated to ruby - (unsigned int)countOfImages { return [images count]; } - (id)objectInImagesAtIndex:(unsigned int)index { return [images objectAtIndex:index]; } - (void)insertObject:(id)anObject inImagesAtIndex:(unsigned int)index { [images insertObject:anObject atIndex:index]; } - (void)removeObjectFromImagesAtIndex:(unsigned int)index { [images removeObjectAtIndex:index]; } - (void)replaceObjectInImagesAtIndex:(unsigned int)index withObject: (id)anObject { [images replaceObjectAtIndex:index withObject:anObject]; } - (NSMutableArray *) images { return images; } - (void) setImages: (NSArray *)newImages { if (images != newImages) { [images autorelease]; images = [[NSMutableArray alloc] initWithArray: newImages]; } } I imagine the cover methods are necessary to avoid having older code exhibiting strange side effects (ie sending notifications around it didn't used to send) and to abstract (read differentiate) the bindings layer hth cornelius On Jun 17, 2005, at 10:49 AM, Jonathan Paisley wrote: > The current release of RubyCocoa (0.4.1) doesn't support bindings > 'out of the box'. There's some extra code you need to get it to > work. This has since been integrated into CVS, so the next release > will have it. You can see what's required by looking at the FAQ: > http://rubycocoa.sourceforge.net/w.en/FAQ.html "I'm trying to use > Cocoa Bindings but all I get is an error message saying that my > class is not key value coding-compliant (kvc)". There's a DMG of a > sample project linked at the end of the FAQ entry. Cornelius Jaeger, Member of Visual FOOD GmbH - Software and Multimedia Solutions http://www.screenfood.ch http://www.visualfood.ch Moosstrasse 7 CH-6003 Lucerne SWITZERLAND Fon: +41 (0)41 21 0 21 41 Fax: +41 (0)41 21 0 21 43 iChat or AIM ne...@ma... |