forked from qt-creator/qt-creator
debugger: generally use a QLabel as item delegate in views
Change-Id: I11f75bd620ec11521b902ccc3ab434c24393dcfd Reviewed-by: hjk <qthjk@ovi.com>
This commit is contained in:
@@ -30,11 +30,31 @@
|
|||||||
#include "basetreeview.h"
|
#include "basetreeview.h"
|
||||||
|
|
||||||
#include <QHeaderView>
|
#include <QHeaderView>
|
||||||
|
#include <QItemDelegate>
|
||||||
|
#include <QLabel>
|
||||||
#include <QMenu>
|
#include <QMenu>
|
||||||
#include <QMouseEvent>
|
#include <QMouseEvent>
|
||||||
|
|
||||||
namespace Utils {
|
namespace Utils {
|
||||||
|
|
||||||
|
class BaseTreeViewDelegate : public QItemDelegate
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
BaseTreeViewDelegate() {}
|
||||||
|
|
||||||
|
QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &option,
|
||||||
|
const QModelIndex &index) const
|
||||||
|
{
|
||||||
|
Q_UNUSED(option);
|
||||||
|
QLabel *label = new QLabel(parent);
|
||||||
|
label->setAutoFillBackground(true);
|
||||||
|
label->setTextInteractionFlags(Qt::TextSelectableByMouse
|
||||||
|
| Qt::LinksAccessibleByMouse);
|
||||||
|
label->setText(index.data().toString());
|
||||||
|
return label;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
BaseTreeView::BaseTreeView(QWidget *parent)
|
BaseTreeView::BaseTreeView(QWidget *parent)
|
||||||
: QTreeView(parent)
|
: QTreeView(parent)
|
||||||
{
|
{
|
||||||
@@ -44,7 +64,7 @@ BaseTreeView::BaseTreeView(QWidget *parent)
|
|||||||
setIconSize(QSize(10, 10));
|
setIconSize(QSize(10, 10));
|
||||||
setSelectionMode(QAbstractItemView::ExtendedSelection);
|
setSelectionMode(QAbstractItemView::ExtendedSelection);
|
||||||
setUniformRowHeights(true);
|
setUniformRowHeights(true);
|
||||||
|
setItemDelegate(new BaseTreeViewDelegate);
|
||||||
header()->setDefaultAlignment(Qt::AlignLeft);
|
header()->setDefaultAlignment(Qt::AlignLeft);
|
||||||
header()->setClickable(true);
|
header()->setClickable(true);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user