You do not need to create separate helpers for all participants, you can just create wrappers for types that you like, for example:
@interface SizeWrapper : NSObject { CGFloat width, height; } @property (readwrite) CGFloat width, height; - (id)initWithSize:(NSSize)sz; - (NSSize)sizeValue; @end @implementation SizeWrapper @synthesize width, height; - (id)initWithSize:(NSSize)sz { if (self = [super init]) { width = sz.width; height = sz.height; } return self; } - (NSSize)sizeValue { return NSMakeSize(width, height); } @end
source share