Re: NSTableColumn 'enabled' binding not in 10.3? Any others?
Re: NSTableColumn 'enabled' binding not in 10.3? Any others?
- Subject: Re: NSTableColumn 'enabled' binding not in 10.3? Any others?
- From: Jerry Krinock <email@hidden>
- Date: Tue, 29 May 2007 19:34:48 -0700
To eliminate the possibility of some very stupid project
configuration error on my part, I tried the same thing using one of
mmalc's examples, and found the same problem. Certainly this cannot
be possible. Please someone look at my reproducible steps below and
tell me what I'm doing wrong.
1. Download the latest "Bookmarks" example project:
http://homepage.mac.com/mmalc/CocoaExamples/Bookmarks.zip
2. Unzip and open project in Xcode (I'm using Xcode 2.3)
3. In Target, change:
Mac OS X Deployment Target to "Mac OS X 10.3"
Architectures to "ppc i386"
4. Set Active Build Configuration to Deployment.
5. Build.
6. Log in from my old Powerbook G4 running Panther 10.3.9.
7. Launch the built application from Powerbook and verify that it
runs OK. Quit.
8. Open the MyDocument.m nib file.
9. In the DNDController > attributes, add another key 'enabler'.
(The idea here is that we are going to 'enable' the 'url' table
column using this new attribute, 'enabler'.)
10. In the MyTableView, add another column. Set the column heading
to "Enabler".
11. Bind the new column's 'value' binding to DNDArrayController >
arrangedObjects.enabler.
12. Bind the old "URL" column's 'enabled' binding DNDArrayController
> arrangedObjects.enabler also.
13. Build the project.
14. Run the project in Tiger (I have an Intel Mac Mini). Verify
that the document window loads upon launch and that it works as
expected. Actually, it works BETTER than expected... If I type the
string '0' in the "Enabler" column, editing of the "URL" column is
disabled. If I type the string '1' in the "Enabler" column, editing
of the "URL" column is enabled. Damn, those objects are smart!
(Probably thanks to -[NSString intValue]).
15. But not so smart in Panther, because now, when I doubleclick the
built application in Panther, I get the same error as when I run my
project, and the window does not even load...
[<NSTableColumn 0xXXXXXXXX> valueForUndefinedKey:]: this class is not
key value coding compliant for the key enabled.
I also went into my project, eliminated all the tables and all the
columns except one. I found that if I un-check the "Bind" checkbox
in the 'enabled' binding, it runs OK in both Panther and Tiger. But
then if I re-activate that binding, although it still runs fine in
Tiger, it raises that same exception in Panther.
I tried un-checking the "Raises for not applicable keys" switch, but
that does not help.
It's as though the 'enabled' binding is not available in Panther,
although according to the documentation mmalc pointed me to
yesterday, it *is* available.
http://sheepsystems.com/engineering/BindingNSTableColumn.png
Jerry Krinock
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden