• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: table bindings, value transformer per row?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: table bindings, value transformer per row?


  • Subject: Re: table bindings, value transformer per row?
  • From: Ron Lue-Sang <email@hidden>
  • Date: Fri, 17 Oct 2008 18:26:25 -0700

Nope. No way to swap out the valuetransformer of the binding per row.

You can use part of Keary's suggestion tho. Don't set a valuetransformer at all in the binding for the column. Use the willDisplayCell: delegate method to take the value out of the cell, apply your own value transformations based on the row or whatever, and then set the new value on the cell.

Unfortunately, this setup will defeat the sorting behaviour Cocoa Bindings gives you for free. Our automatic support for sorting, for this column, will be wrong. I'd only suggest doing this for a column that's not sortable/filterable. Otherwise, you should really just add accessors to your model objects if you can (or create wrappers for them if you have to) that give you the transformed properties.


-------------------------- RONZILLA



On Oct 16, 2008, at 4:59 PM, email@hidden wrote:

i was asking about the "value transformer" that is specified for the binding. i am aware that it is quite easy to change formatters.

thanx anyway,
ken


At 5:49 PM -0600 10/16/08, Keary Suska wrote:
On Oct 15, 2008, at 7:35 PM, email@hidden wrote:

i've got a bound table view. is it possible to use a different value transformer based on which row of the table is being displayed/edited? and if so, how?


Yes, you can. The formatter is a property of the cell, and not the column, per se. You need an object that is the tableview's delegate, then implement - tableView:willDisplayCell:forTableColumn:row:. NSCell has a - setFormatter: method for your convenience. I have used this successfully without error, but I haven't performance tested it. I don't suspect that it is much slower.

HTH,

Keary Suska
Esoteritech, Inc.
"Demystifying technology for your home or business"



_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please 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


  • Follow-Ups:
    • Re: table bindings, value transformer per row?
      • From: "email@hidden" <email@hidden>
References: 
 >table bindings, value transformer per row? (From: "email@hidden" <email@hidden>)
 >Re: table bindings, value transformer per row? (From: Keary Suska <email@hidden>)
 >Re: table bindings, value transformer per row? (From: "email@hidden" <email@hidden>)

  • Prev by Date: Re: Delete myDriver.kext files from normal user.
  • Next by Date: Re: Delete myDriver.kext files from normal user.
  • Previous by thread: Re: table bindings, value transformer per row?
  • Next by thread: Re: table bindings, value transformer per row?
  • Index(es):
    • Date
    • Thread