December 9th, 2008


Programmer bitch fest

So here's the deal -- I have learned enough about XCode, Objective-C, and Cocoa to make a form for radiologists to evaluate brain scans.

Now, we're going to try and re-use this tool for a variety of image evaluation projects. So the way I built it the first time -- build a class with a bunch of Core Foundation objects, one for each evaluation item, build a form in Interface Builder, connect my class with the form, write a couple of callbacks -- isn't going to cut it.

What I want to be able to do is to read in a simple XML file that describes all the evaluation items, and programmatically build up the form.

The problem with this? Cocoa/XCode development of user interfaces is ENTIRELY structured around using Interface Builder to define your user interface. This is fine so long as your interface is STATIC -- i.e. you design it once and you're done. But if you want to do it dynamically, there is CLOSE TO ZERO documentation, or 3rd party tutorials on how to do so.

What's especially annoying about this -- beyond the fact that there's so little help available -- is that the ARROGANT CUNTS who answer in forums every time someone asks how to do this say "WHY DON'T YOU JUST USE INTERFACE BUILDER?" Well, precisely because YOU WANT TO DO IT AT RUNTIME FOR PERFECTLY VALID REASONS YOU FUCKWADS.

So in order to do something that is relatively straightforward in every other UI toolkit I've used -- make a window, add widgets to it for user interaction, and display it -- either you use a static window laid out in Interface builder, or you are stuck figuring it out from hints and asides in unrelated documents.