Qt: Use QStyledItemDelegate instead of QItemDelegate

This commit is contained in:
Megamouse 2018-06-26 16:00:09 +02:00 committed by Ivan
parent 19514128e3
commit 01dc09c436
1 changed files with 8 additions and 4 deletions

View File

@ -1,11 +1,15 @@
#pragma once
#include <QItemDelegate>
#include <QStyledItemDelegate>
/** This class is used to get rid of somewhat ugly item focus rectangles. You could change the rectangle instead of omiting it if you wanted */
class table_item_delegate : public QItemDelegate
class table_item_delegate : public QStyledItemDelegate
{
public:
explicit table_item_delegate(QObject *parent = 0) : QItemDelegate(parent) {}
virtual void drawFocus(QPainter * /*painter*/, const QStyleOptionViewItem & /*option*/, const QRect & /*rect*/) const override {}
explicit table_item_delegate(QObject *parent = 0) : QStyledItemDelegate(parent) {}
virtual void initStyleOption(QStyleOptionViewItem *option, const QModelIndex &index) const override
{
option->state &= ~QStyle::State_HasFocus;
QStyledItemDelegate::initStyleOption(option, index);
}
};