2016-01-17 21:09:28 +01:00
|
|
|
#include "itablemodel.h"
|
|
|
|
|
|
|
|
|
|
ITableModel::ITableModel(QObject *parent)
|
|
|
|
|
:QAbstractTableModel(parent)
|
|
|
|
|
{
|
2016-07-22 13:18:31 +02:00
|
|
|
m_checkboxSelect = false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool ITableModel::checkboxSelect() const
|
|
|
|
|
{
|
|
|
|
|
return m_checkboxSelect;
|
|
|
|
|
}
|
2016-01-17 21:09:28 +01:00
|
|
|
|
2016-07-22 13:18:31 +02: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
|
|
|
|
|
{
|
2016-07-22 13:18:31 +02:00
|
|
|
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);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void ITableModel::setEditableCols(const QList<int> cols)
|
|
|
|
|
{
|
|
|
|
|
m_editableCols = cols;
|
|
|
|
|
}
|
|
|
|
|
|