I’ve done Challenge 2, and everything is working fine (i.e. numberOfRowsInTableView:, tableView:objectValueForTableColumn:row: and – tableView:setObjectValue:forTableColumn:row: are getting called). Except for the sorting part.
I tried to implement sorting by providing an implementation for tableView:sortDescriptorsDidChange:, as explained in the “For the More Curious” section, but apparently this method is never getting called in my application (verified by putting a breakpoint in it). How is this possible? What am I doing wrong?
By the way: The challenge made us implement the RaiseMan application without using bindings, which rely on KVC. But the search mechanism that employs tableView:sortDescriptorsDidChange: also relies on KVC (though not on bindings). The documentation says this method was added with 10.3. Did bindings exist before 10.3? Did bindings already exist in OpenStep? How was sorting NSTableViews accomplished before 10.3 / in OpenStep?