• 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: NSTableView text color question
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: NSTableView text color question


  • Subject: Re: NSTableView text color question
  • From: Mike Brinkman <email@hidden>
  • Date: Wed, 01 Oct 2003 08:18:03 -0400

I tried removing the for loop, and it still doesn't work. Somehow, I need to
be able to tell the table view "if field x in row y is less than z, then
make the text red."

Does anybody here know how to do this? I was reading through the archives,
and somebody said they had an example, but I went to their .mac link and it
was gone. Could somebody PLEASE either provide a link to a sample that does
this, or simply tell me the exact 2 or 3 lines of code that I need to make
this work?

I'm begging, this is driving me NUTS!


On 9/29/03 9:47 PM, "Laurent Daudelin" <email@hidden> wrote:

> Hmmm, IIRC, the 'tableView:willDisplayCell:forTableColumn:row:' method will
> be called repeatedly for each row. So, you don't need to loop through your
> array, just use the row index to get the To Do that will be displayed and
> set the text color appropriately.
>
> -Laurent.
>
> on 29/09/03 20:58, Mike Brinkman at email@hidden wrote:
>
>> I have a "To Do" application that I'm writing for the sake of learning. It's
>> nothing special, except that it allows me to challenge myself a little and
>> go beyond what I've read in the books I have.
>>
>> The To Do app has a to-do item and a due date. This info is entered into a
>> form, and then is displayed in a table with two rows called "toDoItem" and
>> "dueDate". The table can be sorted by clicking in the header of each column.
>>
>> I would like the table to display the text of a to-do item & due date in red
>> text. I looked through the archives and was directed to the following site:
>>
>> http://www.cocoadev.com/index.pl?AlternatingRowColors
>>
>> This went a long way to answering my question. Now I've got this code, which
>> will change the color of ALL rows, not just the rows which are close to due.
>>
>>
>> - (void)tableView: (NSTableView *)aTableView willDisplayCell: (id)aCell
>> forTableColumn: (NSTableColumn *)aTableColumn row: (int)aRowIndex
>> {
>> int i, days;
>>
>> for (i = 0; i < [toDo count]; i++) // toDo is an NSMutableArray of
>> // to-do items
>> {
>> NSCalendarDate *today = [NSCalendarDate calendarDate];
>> NSCalendarDate *myDate = [NSCalendarDate
>> dateWithNaturalLanguageString:
>> [dueDateField stringValue]];
>>
>> [myDate years:NULL months:NULL days:&days hours:NULL
>> minutes:NULL seconds:NULL sinceDate:today];
>>
>> if (days < 7)
>> {
>> [aCell setTextColor:[NSColor redColor]];
>> }
>> else
>> {
>> [aCell setTextColor:[NSColor blackColor]];
>> }
>> }
>> }
>>
>> Obviously that's not what I want. I can't quite figure out how to limit the
>> color change to only the appropriate row. I know aRowIndex has something to
>> do with it, but I'm really having a mental block. Any suggestions would be
>> greatly appreciated.
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.

  • Follow-Ups:
    • Re: NSTableView text color question
      • From: mmalcolm crawford <email@hidden>
    • Re: NSTableView text color question
      • From: Andreas Mayer <email@hidden>
    • Re: NSTableView text color question
      • From: Laurent Daudelin <email@hidden>
  • Prev by Date: NSAppleScript speed and the Finder
  • Next by Date: labelling some NSString objects, without making a new class?
  • Previous by thread: NSAppleScript speed and the Finder
  • Next by thread: Re: NSTableView text color question
  • Index(es):
    • Date
    • Thread