@ -14,61 +14,55 @@
|
||||
*/
|
||||
|
||||
#include "ModListView.h"
|
||||
#include <QDrag>
|
||||
#include <QHeaderView>
|
||||
#include <QMouseEvent>
|
||||
#include <QPainter>
|
||||
#include <QDrag>
|
||||
#include <QRect>
|
||||
|
||||
ModListView::ModListView ( QWidget* parent )
|
||||
:QTreeView ( parent )
|
||||
ModListView::ModListView(QWidget* parent) : QTreeView(parent)
|
||||
{
|
||||
setAllColumnsShowFocus ( true );
|
||||
setExpandsOnDoubleClick ( false );
|
||||
setRootIsDecorated ( false );
|
||||
setSortingEnabled ( true );
|
||||
setAlternatingRowColors ( true );
|
||||
setSelectionMode ( QAbstractItemView::ExtendedSelection );
|
||||
setHeaderHidden ( false );
|
||||
setAllColumnsShowFocus(true);
|
||||
setExpandsOnDoubleClick(false);
|
||||
setRootIsDecorated(false);
|
||||
setSortingEnabled(true);
|
||||
setAlternatingRowColors(true);
|
||||
setSelectionMode(QAbstractItemView::ExtendedSelection);
|
||||
setHeaderHidden(false);
|
||||
setSelectionBehavior(QAbstractItemView::SelectRows);
|
||||
setHorizontalScrollBarPolicy ( Qt::ScrollBarAsNeeded );
|
||||
setHorizontalScrollBarPolicy(Qt::ScrollBarAsNeeded);
|
||||
setDropIndicatorShown(true);
|
||||
setDragEnabled(true);
|
||||
setDragDropMode(QAbstractItemView::DropOnly);
|
||||
viewport()->setAcceptDrops(true);
|
||||
}
|
||||
|
||||
void ModListView::setModel ( QAbstractItemModel* model )
|
||||
void ModListView::setModel(QAbstractItemModel* model)
|
||||
{
|
||||
QTreeView::setModel ( model );
|
||||
QTreeView::setModel(model);
|
||||
auto head = header();
|
||||
head->setStretchLastSection(false);
|
||||
// HACK: this is true for the checkbox column of mod lists
|
||||
auto string = model->headerData(0,head->orientation()).toString();
|
||||
if(head->count() < 1)
|
||||
{
|
||||
auto string = model->headerData(0, head->orientation()).toString();
|
||||
if (head->count() < 1) {
|
||||
return;
|
||||
}
|
||||
if(!string.size())
|
||||
{
|
||||
if (!string.size()) {
|
||||
head->setSectionResizeMode(0, QHeaderView::ResizeToContents);
|
||||
head->setSectionResizeMode(1, QHeaderView::Stretch);
|
||||
for(int i = 2; i < head->count(); i++)
|
||||
for (int i = 2; i < head->count(); i++)
|
||||
head->setSectionResizeMode(i, QHeaderView::ResizeToContents);
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
head->setSectionResizeMode(0, QHeaderView::Stretch);
|
||||
for(int i = 1; i < head->count(); i++)
|
||||
for (int i = 1; i < head->count(); i++)
|
||||
head->setSectionResizeMode(i, QHeaderView::ResizeToContents);
|
||||
}
|
||||
}
|
||||
|
||||
void ModListView::setResizeModes(const QList<QHeaderView::ResizeMode> &modes)
|
||||
void ModListView::setResizeModes(const QList<QHeaderView::ResizeMode>& modes)
|
||||
{
|
||||
auto head = header();
|
||||
for(int i = 0; i < modes.count(); i++) {
|
||||
for (int i = 0; i < modes.count(); i++) {
|
||||
head->setSectionResizeMode(i, modes[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user