Re: Xcode3.2-IB: No outlet/action section in inspector panel (identity)
Re: Xcode3.2-IB: No outlet/action section in inspector panel (identity)
- Subject: Re: Xcode3.2-IB: No outlet/action section in inspector panel (identity)
- From: Andy Lee <email@hidden>
- Date: Wed, 23 Sep 2009 13:36:41 -0400
On Sep 23, 2009, at 12:04 PM, Kevin Cathey wrote:
wonder why the outlet/action UI was moved there but not the section
for adding/removing key paths, which is still in the inspector.
This is all the more confusing because you *can* add outlets to
First Responder in the Identity inspector.
The actions and outlets were moved to the Library for the following
reason: actions and outlets live on classes, not instances of
classes. The Classes tab represents all of the classes you can use
in your Interface Builder document, these come from your Xcode
project, from frameworks you've linked against, from manually added
headers, from plugins, and from the document itself (by setting the
custom class on an object, setting the type of an outlet/action, or
using the new Subclass menu item in the Classes tab). With this
universal list of classes, it makes sense to edit the class itself.
The User Defined Runtime Attributes (a dictionary of key/value pairs
that get passed to setValue:forKey: at runtime)
Ah, thanks. I just realized I posted without knowing what that
section was for. I always thought it was a way of declaring
properties or some such and ignored it.
On a related note, I just searched for "User Defined Runtime
Attributes" in Xcode, with the Xcode 3.2 Developer Tools Library
docset selected, and did not find an explanation for this, at least
not in an obvious place. A Google search for ["User Defined Runtime
Attributes" site:developer.apple.com] has zero results. I'm sure it's
explained somewhere, but in general, any distinctive phrase used to
label part of the UI should be trivial to find either in Xcode or with
Google. I just filed rdar://7247101 to this effect.
--Andy
live in the Identity inspector because these runtime attributes
exist per instance, not per class. The Identity inspector in 3.2
truly reflects editing an instance of a class only. Unlike actions/
outlets, if I set the runtime attributes for an instance of Foo,
then switch to inspecting another instance of Foo, those attributes
will not be there. On the other hand, with actions/outlets, if I add
an outlet or action to an instance of Foo, then it adds those
outlets/action to all the instances of Foo.
Now First Responder is an interesting item. First Responder is
itself not a class, so it does not make sense to put it in the
Classes tab. In Cocoa, First Responder really acts like an instance.
The actions for First Responder are attributes for it, and that is
why they live in the Attributes inspector for First Responder.
I hope that clears some of that up…
Kevin
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden