4#include "include/spreadsheet/spreadsheet.h"
5#include "include/tools/schedule_generator/schedule_template_generator/schedule_club.h"
8#include <QAbstractTableModel>
11namespace ehm_dal::tools::schedule_template_generator {
19 ScheduleMatrix(
const std::vector<std::shared_ptr<ScheduleClub>> &sorted_clubs_list);
22 qint32 cellCount(
const QModelIndex &parent = QModelIndex())
const;
23 inline qint32 columnCount(
const QModelIndex &parent = QModelIndex())
const override
25 return cellCount(parent);
27 inline qint32 rowCount(
const QModelIndex &parent = QModelIndex())
const override
29 return cellCount(parent);
37 QVariant data(
const QModelIndex &index, qint32 role = Qt::DisplayRole)
const override;
38 Qt::ItemFlags flags(
const QModelIndex &index)
const override;
39 QVariant headerData(qint32 section,
40 Qt::Orientation orientation,
41 qint32 role = Qt::DisplayRole)
const override;
42 bool isDataCell(
const qint32 cell_position)
const;
43 bool isDataCell(
const QModelIndex &index)
const;
44 inline bool isTotalCell(
const qint32 cell_position)
const {
return !isDataCell(cell_position); }
45 bool isTotalCell(
const QModelIndex &index)
const {
return !isDataCell(index); }
48 bool setData(
const QModelIndex &index,
49 const QVariant &value,
50 qint32 role = Qt::EditRole)
override;
53 qint32 columnTotal(
const qint32 column)
const;
54 qint32 rowTotal(
const qint32 row)
const;
55 qint32 totalCellPosition()
const;
58 std::vector<std::shared_ptr<ehm_dal::tools::schedule_template_generator::ScheduleClub>> clubs_;
Definition: spreadsheet.h:30