По идее должно сработать:
void Delegate::paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
{
//проверяем index
QPallete customPallete;
//... выставляем что надо
option.pallete=customPallete;
QItemDelegate::paint(painter, option, index);
}
А вообще можно в методе data возвращать нужный цвет по Qt::ForegroundRole или Qt::TextColorRole, скорее всего в виде
qVariantFromValue(QColor(Qt::Green))