XCODE INTEGRATION
Interface Builder knows about the following items in the Xcode project your document is part of:
(1) All of the Objective-C, Ruby, Python, and AppleScript classes.
(2) The outlets (IBOutlet) and actions (IBAction) each class defines.
- Outlets can either be on instance variables or properties
- Actions for Mac OS X must have the :(id)sender argument, this is not required for iPhone OS
Interface Builder also adds the public classes, actions, and outlets for each of the frameworks your project links against.
Whenever you make any changes to source files in your Xcode project (e.g. adding outlets/actions), these changes will automatically appear in Interface Builder. If you do not see classes, actions, or outlets you expect to see, you can use the Classes Tab of the Library. Find the class you want information on in the list (or search for it), and then choose the Definitions tab in the bottom area of the window. This will show you every thing that helps define the class (project headers, headers you've manually imported, document-only changes, headers from frameworks, etc).
Is IB editing of class definitions back in the main stream?
Because of the integration with Xcode, we recommend that you edit your classes in Xcode, and let those changes come seamlessly over to Interface Builder.
====================================
RENAMING CLASSES AND THE CLASS COMBO-BOX
If I have a controller with name: "MyClassA" how do I tell IB that that class name changed to "MyClassB" ?
To change the name of a class, you must do it from Xcode. If you use the Refactor tool in Xcode to rename a class, then Xcode will automatically rename instances of that class that appear on objects in your NIB files.
The Class combo-box in the Identity Inspector for an object is simply a statement to Interface Builder of what that class will be at runtime. As you work with the class in Interface Builder, we will show the actions/outlets associated with that class. But changing the value of that combo-box will not change any source code.
IB parsing of .h files is still broke and doesn't have the features I want. Xcode synching seems good in theory, but the synch is not powerful enough.
Outside of what I've mentioned above, what are you looking for? Please file bug reports if you feel there are areas where we could do better.
However, in the previous IB it seemed to rename the class itself and that did not make sense.
This was not the case in any version of Interface Builder. I agree that if it was, it would certainly not make sense.
You should read the Interface Builder 3.2 release notes to see what else you can do with the classes tab when it comes to working with your Xcode projects, classes, etc:
Kevin