2013-08-18 19:52:17 +01:00
|
|
|
#include "ModListView.h"
|
|
|
|
#include <QHeaderView>
|
|
|
|
#include <QMouseEvent>
|
2013-08-20 01:29:36 +01:00
|
|
|
#include <QPainter>
|
|
|
|
#include <QDrag>
|
|
|
|
#include <QRect>
|
2013-08-18 19:52:17 +01:00
|
|
|
|
|
|
|
ModListView::ModListView ( QWidget* parent )
|
|
|
|
:QTreeView ( parent )
|
|
|
|
{
|
|
|
|
setAllColumnsShowFocus ( true );
|
|
|
|
setExpandsOnDoubleClick ( false );
|
|
|
|
setRootIsDecorated ( false );
|
|
|
|
setSortingEnabled ( false );
|
|
|
|
setAlternatingRowColors ( true );
|
2013-08-21 00:07:54 +01:00
|
|
|
setSelectionMode ( QAbstractItemView::ContiguousSelection );
|
2013-08-18 19:52:17 +01:00
|
|
|
setHeaderHidden ( false );
|
|
|
|
setSelectionBehavior(QAbstractItemView::SelectRows);
|
|
|
|
setVerticalScrollBarPolicy ( Qt::ScrollBarAlwaysOn );
|
|
|
|
setHorizontalScrollBarPolicy ( Qt::ScrollBarAsNeeded );
|
|
|
|
setDropIndicatorShown(true);
|
|
|
|
setDragEnabled(true);
|
2013-08-20 19:56:21 +01:00
|
|
|
setDragDropMode(QAbstractItemView::DropOnly);
|
2013-08-18 19:52:17 +01:00
|
|
|
viewport()->setAcceptDrops(true);
|
|
|
|
}
|
|
|
|
|
|
|
|
void ModListView::setModel ( QAbstractItemModel* model )
|
|
|
|
{
|
|
|
|
QTreeView::setModel ( model );
|
|
|
|
auto head = header();
|
|
|
|
head->setStretchLastSection(false);
|
|
|
|
head->setSectionResizeMode(0, QHeaderView::Stretch);
|
|
|
|
head->setSectionResizeMode(1, QHeaderView::ResizeToContents);
|
|
|
|
dropIndicatorPosition();
|
|
|
|
}
|