13#include <QAbstractTableModel>
17#include <QModelIndexList>
19#include <QSortFilterProxyModel>
23#include <qnamespace.h>
24#include <qtmetamacros.h>
45 return QStringList() <<
"application/x-cockatricecardset";
78 [[nodiscard]]
int rowCount(
const QModelIndex &parent = QModelIndex())
const override;
79 [[nodiscard]]
int columnCount(
const QModelIndex &parent = QModelIndex())
const override
84 [[nodiscard]] QVariant
data(
const QModelIndex &index,
int role)
const override;
85 bool setData(
const QModelIndex &index,
const QVariant &value,
int role)
override;
86 [[nodiscard]] QVariant
87 headerData(
int section, Qt::Orientation orientation,
int role = Qt::DisplayRole)
const override;
88 [[nodiscard]] Qt::ItemFlags
flags(
const QModelIndex &index)
const override;
91 [[nodiscard]] QMimeData *
mimeData(
const QModelIndexList &indexes)
const override;
93 dropMimeData(
const QMimeData *
data, Qt::DropAction action,
int row,
int column,
const QModelIndex &parent)
override;
94 [[nodiscard]] QStringList
mimeTypes()
const override;
95 void swapRows(
int oldRow,
int newRow);
99 void sort(
int column, Qt::SortOrder order = Qt::AscendingOrder)
override;
112 [[nodiscard]]
bool lessThan(
const QModelIndex &left,
const QModelIndex &right)
const override;
113 [[nodiscard]]
bool filterAcceptsRow(
int sourceRow,
const QModelIndex &sourceParent)
const override;
114 void fetchMore(
const QModelIndex &index)
override;
Core in-memory container for card and set data.
Definition card_database.h:38
A list-like container for CardSet objects with extended management methods.
Definition card_set_list.h:22
Definition dlg_manage_sets.h:29
void fetchMore(const QModelIndex &index) override
Definition card_sets_model.cpp:305
SetsDisplayModel(QObject *parent=nullptr)
Definition card_sets_model.cpp:299
bool lessThan(const QModelIndex &left, const QModelIndex &right) const override
Definition card_sets_model.cpp:329
bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const override
Definition card_sets_model.cpp:314
QStringList formats() const
Definition card_sets_model.h:43
SetsMimeData(int _oldRow)
Definition card_sets_model.h:36
int oldRow
Definition card_sets_model.h:33
int getOldRow() const
Definition card_sets_model.h:39
void toggleRow(int row, bool enable)
Definition card_sets_model.cpp:171
bool setData(const QModelIndex &index, const QVariant &value, int role) override
Definition card_sets_model.cpp:81
SetsModel(CardDatabase *_db, QObject *parent=nullptr)
Definition card_sets_model.cpp:18
static const int NUM_COLS
Definition card_sets_model.h:55
Qt::DropActions supportedDropActions() const override
Definition card_sets_model.cpp:131
void swapRows(int oldRow, int newRow)
Definition card_sets_model.cpp:214
void save(CardDatabase *db)
Definition card_sets_model.cpp:259
friend class SetsProxyModel
Definition card_sets_model.h:52
int columnCount(const QModelIndex &parent=QModelIndex()) const override
Definition card_sets_model.h:79
SetsColumns
Definition card_sets_model.h:61
@ PriorityCol
Definition card_sets_model.h:69
@ EnabledCol
Definition card_sets_model.h:64
@ SortKeyCol
Definition card_sets_model.h:62
@ LongNameCol
Definition card_sets_model.h:65
@ ReleaseDateCol
Definition card_sets_model.h:68
@ SetTypeCol
Definition card_sets_model.h:67
@ ShortNameCol
Definition card_sets_model.h:66
@ IsKnownCol
Definition card_sets_model.h:63
void restore(CardDatabase *db)
Definition card_sets_model.cpp:277
QSet< CardSetPtr > enabledSets
Definition card_sets_model.h:57
void toggleAll(bool)
Definition card_sets_model.cpp:201
QVariant data(const QModelIndex &index, int role) const override
Definition card_sets_model.cpp:39
QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override
Definition card_sets_model.cpp:90
QMimeData * mimeData(const QModelIndexList &indexes) const override
Definition card_sets_model.cpp:136
bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) override
Definition card_sets_model.cpp:146
CardSetList sets
Definition card_sets_model.h:56
Role
Definition card_sets_model.h:72
@ SortRole
Definition card_sets_model.h:73
Qt::ItemFlags flags(const QModelIndex &index) const override
Definition card_sets_model.cpp:116
int rowCount(const QModelIndex &parent=QModelIndex()) const override
Definition card_sets_model.cpp:30
void sort(int column, Qt::SortOrder order=Qt::AscendingOrder) override
Definition card_sets_model.cpp:234
void restoreOriginalOrder()
Definition card_sets_model.cpp:227
QStringList mimeTypes() const override
Definition card_sets_model.cpp:294