Simple way: have 3 IBOutlets, one for each tableView. In the datasource methods, just do a little bit of pointer comparison to figure out which tableview it is. The tableview requesting information is passed along as the first parameter, so you can easily do something like:

if (aTableView == myFirstTableView) {

} else if (aTableView == mySecondTableView) {

}
//etc

HTH,

Dave

On Apr 25, 2009, at 10:47 AM, David Scheidt wrote:

I've got a sub-class of NSTableView. I have windows that have more than one instance of this TableView in them, which need to behave slightly differently, based on which one they are. (There are three different classes of data that they'll display, and the designer wants the background alternating color to be different based on what they're displaying.) Everything is instantiated from IB. Is there some way to figure out from the class itself which of the table views in the NIB it is? Two approaches occured to me; I'm not keen on either. First is to make N subclasses, each of the particular type. That would work, but seems ugly and a pain to maintain. Second is to check the delegate of the tableview, and based on what class it is, do the right thing. That seems slightly weird and wrong. Is there another way? Alternatively, am I going about this the wrong way from the start?
_______________________________________________

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to