Archived
1
Fork 0
This repository has been archived on 2025-04-12. You can view files and clone it, but cannot push or open issues or pull requests.
graphite/editor/include/entityitemmodel.h

32 lines
953 B
C
Raw Normal View History

2024-01-03 16:05:02 -05:00
#pragma once
#include <QAbstractListModel>
#include <entity.hpp>
class EntityItemModel : public QAbstractListModel
{
public:
explicit EntityItemModel(QObject* parent = nullptr);
int rowCount(const QModelIndex& parent) const override;
QModelIndex sibling(int row, int column, const QModelIndex& idx) const override;
QVariant data(const QModelIndex& index, int role) const override;
bool setData(const QModelIndex& index, const QVariant& value, int role) override;
Qt::ItemFlags flags(const QModelIndex& index) const override;
bool insertRows(int row, int count, const QModelIndex& parent = QModelIndex()) override;
bool removeRows(int row, int count, const QModelIndex& parent = QModelIndex()) override;
void SetData(std::vector<Entity*> entities);
std::vector<Entity*> GetData();
QModelIndex CreateIndex(int row);
private:
Q_DISABLE_COPY(EntityItemModel)
std::vector<Entity*> m_entities;
};