sneedmc/gui/ModListView.cpp

37 lines
1.1 KiB
C++
Raw Normal View History

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