On 5 Apr, 2014, at 1:16 pm, Quincey Morris < email@hidden> wrote: On Apr 4, 2014, at 21:21 , Roland King < email@hidden> wrote: Would be nice to have at least a little bit of customisability in Xcode, perhaps not the full IB plugin again but something.
You’re right, and since IB now has the ability to peer into source code as much as it wants, I guess I could imagine a solution where a user-defined class that implements (say) ‘exposedBindings’ would enable a text field in the IB bindings inspector where a binding name could be explicitly typed, even if the name itself couldn’t be verified at compile time.
OTOH (editorializing), there’s been no technological advancement in bindings since 10.5, and my guess is that they’re an evolutionary dead end, and Apple isn’t going to waste any development resources on enhancements related to them.
Also (editorializing more), bindings are IMO one of a handful of Cocoa technologies/classes that — though useful and even necessary — are so horrible to use (that is, for developers to use) that we’d better off shooting them into the sun and starting over. That list of horrible technologies would also include things like NSController and its offspring, NSCell, NSMatrix, NSCollectionView, NSUndoManager, NSDocument (since about 10.8), NSToolbar, Core Data, and some aspects of KVC/KVO.
Ha ha, that is quite a list. This latest question was the culmination of the flailing you saw me doing over on the cocoa list trying to bind stuff together and musing on the usefulness or otherwise of NSArrayController. Finally reaching, if not nirvana, then at least shangri-la I thought, may as well implement my own bindings in the custom class I ended up with and expose them via IB and .. ah oh dear, not possible. I suspect I'd have spent a lot less time grubbing around in the dirt if I'd just read the NSTableView guide and hooked the whole thing up with KVO in the manner I've been using for iOS for the last umpteen years and can do in my sleep.
You're right, bindings never did make it over to iOS and, since they are not computationally expensive, that probably is quite a good hint that they are a dead end.
|