Files
prodejna/core/itablemodel.cpp
T

49 lines
960 B
C++
Raw Normal View History

2016-01-17 21:09:28 +01:00
#include "itablemodel.h"
ITableModel::ITableModel(QObject *parent)
:QAbstractTableModel(parent)
{
m_checkboxSelect = false;
}
bool ITableModel::checkboxSelect() const
{
return m_checkboxSelect;
}
2016-01-17 21:09:28 +01:00
void ITableModel::setCheckboxSelect(bool checkboxSelect)
{
m_checkboxSelect = checkboxSelect;
2016-01-17 21:09:28 +01:00
}
void ITableModel::filter(const QString &filter)
{
handleFilter(filter);
}
void ITableModel::restore()
{
handleRestore();
}
2016-05-03 20:55:07 +02:00
Qt::ItemFlags ITableModel::flags(const QModelIndex &index) const
{
if (index.column() == 0 && m_checkboxSelect)
{
return Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled;
}
2016-05-03 20:55:07 +02:00
if (m_editableCols.contains(index.column()))
{
return Qt::ItemIsSelectable | Qt::ItemIsEditable | Qt::ItemIsEnabled;
}
return QAbstractTableModel::flags(index) | Qt::ItemIsDragEnabled;
2016-05-03 20:55:07 +02:00
}
void ITableModel::setEditableCols(const QList<int> cols)
{
m_editableCols = cols;
}