dotherside/lib/include/DOtherSide/DosIQAbstractListModelImpl.h
2016-04-10 14:40:01 +02:00

64 lines
2.1 KiB
C++

#pragma once
// Qt
#include <QtCore/QModelIndex>
#include <QtCore/QVariant>
#include <QtCore/QHash>
#include <QtCore/QByteArray>
#include <QtCore/QVector>
// DOtherSide
#include "DOtherSide/DosIQObjectImpl.h"
namespace DOS {
class DosIQAbstractListModelImpl : public DosIQObjectImpl
{
public:
/// Destructor
virtual ~DosIQAbstractListModelImpl() = default;
/// @see QAbstractListModel::rowCount
virtual int rowCount(const QModelIndex &parent = QModelIndex()) const = 0;
/// @see QAbstractListModel::columnCount
virtual int columnCount(const QModelIndex &parent = QModelIndex()) const = 0;
/// @see QAbstractListModel::data
virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const = 0;
/// @see QAbstractListModel::setData
virtual bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) = 0;
/// @see QAbstractListModel::flags
virtual Qt::ItemFlags flags(const QModelIndex &index) const = 0;
/// @see QAbstractListModel::headerData
virtual QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const = 0;
/// @see QAbstractListModel::roleNames
virtual QHash<int, QByteArray> roleNames() const = 0;
/// @see QAbstractListModel::beginInsertRows
virtual void publicBeginInsertRows(const QModelIndex &index, int first, int last) = 0;
/// @see QAbstractListModel::endInsertRows
virtual void publicEndInsertRows() = 0;
/// @see QAbstractListModel::beginRemoveRows
virtual void publicBeginRemoveRows(const QModelIndex &index, int first, int last) = 0;
/// @see QAbstractListModel::endRemoveRows
virtual void publicEndRemoveRows() = 0;
/// @see QAbstractListModel::beginResetModel
virtual void publicBeginResetModel() = 0;
/// @see QAbstractListModel::endResetModel
virtual void publicEndResetModel() = 0;
/// @see QAbstractListModel::dataChanged
virtual void publicDataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &roles = QVector<int>()) = 0;
};
} // namespace dos