Hello, I'm writing a roster window for our point-of-sale app. I have some methods (on Employee) for binding to a view-based TableView (which looks a bit like a week planner), a set of methods for each day of the week. So far I have only implemented and debugged the Monday ones:
- (Shift *) mondayShift {return [self shiftForDayOfWeek: [[self class] mondayName]];} - (void) setMondayShift: (Shift *) value_ {[self willChangeValueForKey: @"shift" withWeekdayPrefix: [[self class] mondayName]]; [self didChangeValueForKey: @"shift" withWeekdayPrefix: [[self class] mondayName]];} // KVO hack - (NSInteger) mondayStartHourValue {return [self.mondayShift.startHour integerValue];} - (void) setMondayStartHourValue: (NSUInteger) value_ {[self setShiftValue: value_ forKey: @"startHour" forWeekday: [[self class] mondayName]];} - (NSInteger) mondayStartMinuteValue {return [self.mondayShift.startMinute integerValue];} - (void) setMondayStartMinuteValue: (NSUInteger) value_ {[self setShiftValue: value_ forKey: @"startMinute" forWeekday: [[self class] mondayName]];} - (NSInteger) mondayEndHourValue {return [self.mondayShift.endHour integerValue];} - (void) setMondayEndHourValue: (NSUInteger) value_ {[self setShiftValue: value_ forKey: @"endHour" forWeekday: [[self class] mondayName]];} - (NSInteger) mondayEndMinuteValue {return [self.mondayShift.endMinute integerValue];} - (void) setMondayEndMinuteValue: (NSUInteger) value_ {[self setShiftValue: value_ forKey: @"endMinute" forWeekday: [[self class] mondayName]];} - (NSInteger) mondayBreakDurationValue {return [self.mondayShift.breakDuration integerValue];} - (void) setMondayBreakDurationValue: (NSUInteger) value_ {[self setShiftValue: value_ forKey: @"breakDuration" forWeekday: [[self class] mondayName]];} - (Shift *) createMondayShift {return [self createShiftForDayOfWeekNamed: [[self class] mondayName]];} - (void) clearMondayShift {[self clearShiftForWeekdayNamed: [[self class] mondayName]];} They look prettier in Xcode - one liners. For ease of maintenance, I would like to generate these methods dynamically, like Core Data does for its default accessors -- one set of them for each day of the week. But neither the mighty Google nor Apple's Runtime doc tells me how to do that. I was only able to learn how to "attach" an existing method to a class, not how to create methods fully programmatically - "out of thin air". I also am not able to see how to do it with macros. Maybe I'll need some kind of third party tool - or roll my own "templating" system, like, say, mogenerator. Thanks for any tips. And for those so inclined, feel free to tell me what a crappy idea the whole thing is, in general. Cheers, Steve _______________________________________________ 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: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com