Уже мозги все сломал как правильно задать гуглю вопрос. Подскажите следующее:
Создал объект QTreeView (тоже и с QTableView) подключил к нему model (QStandardItemModel)
Подкючаю делегаты с QLineEdit и QComboBox в качестве редакторов. 
Все ок все работает. Осталось дело за наведением красоты.
Активная строка/ячейка в QTreeView/QTableView выделяется стандартно неким образом зависящем от ОС. Обобщено говоя эта некая градиентная заливка. Но вот ячейки у которых назначены делеаты (но еще не активированы кликом) залиты сплошным цветом. Получается не красиво - вся строка одним образом, а ячейки с делегатами другим. Эта ситуация и в Windows7 и в KDE4.
Делегаты прикручиваю следующим образом:
tree->setItemDelegateForColumn(3,delegate);
Класс делегата реализован так:
#ifndef VCOMBOBOXDELEGATE_H
#define VCOMBOBOXDELEGATE_H
#include <QItemDelegate>
class VComboBoxDelegate : public QItemDelegate
{
private:
	QSize editorSize;
public:
	VComboBoxDelegate(QObject *parent,QStringList iList = QStringList());
	QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &option,const QModelIndex &index) const;
	void setEditorData(QWidget *editor, const QModelIndex &index) const;
	void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const;
	void updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex & index ) const;
	QSize sizeHint ( const QStyleOptionViewItem & option, const QModelIndex & index ) const;
	QStringList list;
};
#endif // VCOMBOBOXDELEGATE_H
#include "vcomboboxdelegate.h"
#include <QComboBox>
#include <QEvent>
VComboBoxDelegate::VComboBoxDelegate(QObject *parent,QStringList iList)
	:QItemDelegate(parent)
{
	// Object for calculate of editor size for some GUI themes
	QComboBox *editor = new QComboBox(static_cast<QWidget*>(parent));
	editor->setFrame(false);
	editor->adjustSize();
	editorSize = QSize(100,editor->height()*0.9);
	delete editor;
	this->list=iList;
}
QWidget *VComboBoxDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem &/*option*/, const QModelIndex &/*index*/) const
{
	QComboBox *editor = new QComboBox(parent);
	editor->addItems(this->list);
	return editor;
}
void VComboBoxDelegate::setEditorData(QWidget *editor, const QModelIndex &index) const
{
	QString value = index.model()->data(index, Qt::EditRole).toString();
	QComboBox *comboBox = static_cast<QComboBox*>(editor);
	comboBox->setCurrentIndex(comboBox->findData(value,Qt::EditRole,Qt::MatchExactly));
}
void VComboBoxDelegate::setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const
{
	QComboBox *comboBox = static_cast<QComboBox*>(editor);
	model->setData(index, comboBox->currentText(), Qt::EditRole);
}
void VComboBoxDelegate::updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex &/*index*/) const
{
	editor->setGeometry(option.rect);
}
QSize VComboBoxDelegate::sizeHint ( const QStyleOptionViewItem &/*option*/, const QModelIndex &/*index*/) const
{
	return editorSize;
}