• 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: - outlineView:willDisplayCell:forTableColumn:item: and selected item
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: - outlineView:willDisplayCell:forTableColumn:item: and selected item


  • Subject: Re: - outlineView:willDisplayCell:forTableColumn:item: and selected item
  • From: "Ken Ferry" <email@hidden>
  • Date: Mon, 25 Feb 2008 18:35:20 -0800

Also, I'd be pretty surprised if this actually showed up in perf
profiling. Do you mean 'heavyweight', or annoying? :-)

>  >  but it seems a lot more heavyweight. You have to do:
>  >
>  >     [[outlineView selectedRowIndexes] containsIndex:[outlineView rowForItem:item]]

-Ken

On Mon, Feb 25, 2008 at 6:26 PM, Ken Ferry <email@hidden> wrote:
> The pre-leopard code isn't pretty.  The AppKit relnotes give the old
>  path while motivating the backgroundStyle API.  I'm not sure if this
>  is 100% complete..
>
>  > Prior to Leopard, you may have noticed that text turns white in selected table view rows. The
>  > mechanism that controlled this behavior, unfortunately, was arcane. The table would set the
>  > highlight color of the cell to the alternateSelectedControlColor and set the cell to be highlighted.
>  > The cell would then introspect its highlight color, and use white text if the color was the
>  > alternateSelectedControlColor.
>
>  You probably have a constrained case, so it may suffice to check
>  -isHighlighted.
>
>  It'd be nice if you could use the Leopard API on Leopard or later, as
>  we might try to be a little bit more clever about when the text
>  actually turns white.  Ideally the text wouldn't turn white if the
>  user's chosen selection color was sufficiently light.  There's scope
>  for making that work in the backgroundStyle API.
>
>  -Ken
>
>
>
>
>  On Mon, Feb 25, 2008 at 5:12 PM, John Stiles <email@hidden> wrote:
>  > In my outline view, I'm using an NSTextFieldCell and setting the item's
>  >  color via setTextColor:.
>  >
>  >  This works fine, but for some colors, it's almost impossible to see when
>  >  the item is selected. I'd like to always make the text white if the item
>  >  is selected.
>  >
>  >  In Leopard, I know I can use [cell backgroundStyle] ==
>  >  NSBackgroundStyleDark to check this, but I was wondering if there is any
>  >  easy check for Tiger and below. I can actually go through the
>  >  machinations of asking the outline view if the item is selected, but it
>  >  seems a lot more heavyweight. You have to do:
>  >
>  >     [[outlineView selectedRowIndexes] containsIndex:[outlineView
>  >  rowForItem:item]]
>  >
>  >  And I'm not sure just how fast that is, but it can't be as fast as just
>  >  asking the cell "are you selected" :)
>  >
>  >  _______________________________________________
>  >
>  >  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
>  >
>
_______________________________________________

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: - outlineView:willDisplayCell:forTableColumn:item: and selected item
      • From: John Stiles <email@hidden>
References: 
 >- outlineView:willDisplayCell:forTableColumn:item: and selected item (From: John Stiles <email@hidden>)
 >Re: - outlineView:willDisplayCell:forTableColumn:item: and selected item (From: "Ken Ferry" <email@hidden>)

  • Prev by Date: Re: - outlineView:willDisplayCell:forTableColumn:item: and selected item
  • Next by Date: which choice to implement iterations on separate threads
  • Previous by thread: Re: - outlineView:willDisplayCell:forTableColumn:item: and selected item
  • Next by thread: Re: - outlineView:willDisplayCell:forTableColumn:item: and selected item
  • Index(es):
    • Date
    • Thread