1#ifndef LIBS_GUI_ABSTRACTSHEETMODEL_HPP_
2#define LIBS_GUI_ABSTRACTSHEETMODEL_HPP_
6#include <bits/stdint-uintn.h>
10#include <unordered_map>
32 [[nodiscard]]
virtual std::string
cellText(uint32_t
rowPosition, uint32_t colPosition)
const;
49 bool isIncluded =
false);
Definition AbstractComponentGUI.hpp:30
Definition AbstractSheetModel.hpp:17
size_t numberOfRows() const
Definition AbstractSheetModel.cpp:209
bool getRowsHaveCSS() const
Definition AbstractSheetModel.cpp:414
void removeRowDefinition(const iv::gui::sheets::RowId &rowId)
Definition AbstractSheetModel.cpp:272
bool addRowCells(const iv::gui::sheets::RowId &rowId, const iv::gui::sheets::RowCells &rowCells)
Definition AbstractSheetModel.cpp:316
AbstractComponentGUI * rowTitleComponent(uint32_t rowPosition)
Definition AbstractSheetModel.cpp:249
iv::gui::sheets::RowCells * getRowCellsPointer(const iv::gui::sheets::RowId &rowId)
Definition AbstractSheetModel.cpp:405
iv::gui::sheets::RowsCells m_rowsCells
Definition AbstractSheetModel.hpp:83
virtual std::string cellText(uint32_t rowPosition, uint32_t colPosition) const
Definition AbstractSheetModel.cpp:90
virtual void updateCellComponent(uint32_t rowPosition, uint32_t columnPosition)
Update the cell component in the sheet.
Definition AbstractSheetModel.cpp:101
const iv::gui::sheets::RowsDefinitions & getRowDefinitions() const
Definition AbstractSheetModel.cpp:395
virtual ~AbstractSheetModel()
Definition AbstractSheetModel.cpp:15
AbstractSheetModel & operator=(const AbstractSheetModel &other)=delete
iv::gui::sheets::CellDefinition * cellDefinitionPointer(uint32_t rowPosition, uint32_t columnPosition)
Definition AbstractSheetModel.cpp:54
void removeRow(const iv::gui::sheets::RowId &rowId)
Definition AbstractSheetModel.cpp:335
uint32_t columnPosition(const iv::gui::sheets::ColumnId &columnId)
Definition AbstractSheetModel.cpp:117
AbstractSheetModel(const AbstractSheetModel &other)=delete
uint32_t rowPosition(const iv::gui::sheets::RowId &rowId)
Definition AbstractSheetModel.cpp:226
void updateRowIdsByOrder()
Definition AbstractSheetModel.cpp:461
iv::gui::sheets::ColumnDefinition getColumnDefinitionByTitle(const std::string &columnTitle)
Definition AbstractSheetModel.cpp:424
size_t numberOfColumns() const
Definition AbstractSheetModel.cpp:122
iv::gui::sheets::ColumnsDefinitions m_columnDefinitions
Definition AbstractSheetModel.hpp:81
iv::gui::sheets::RowId rowId(uint32_t rowPosition) const
Definition AbstractSheetModel.cpp:214
void setRowDefinitions(const iv::gui::sheets::RowsDefinitions &rowDefinitions)
Definition AbstractSheetModel.cpp:378
AbstractSheetModel()
Definition AbstractSheetModel.cpp:10
void addColumnDefinition(const iv::gui::sheets::ColumnId &columnId, const iv::gui::sheets::ColumnDefinition &columnDefinition)
Definition AbstractSheetModel.cpp:127
std::string getColumnTitleByPosition(const uint32_t &position)
Definition AbstractSheetModel.cpp:444
void removeColumn(const iv::gui::sheets::ColumnId &columnId)
Definition AbstractSheetModel.cpp:186
iv::gui::sheets::ColumnId columnId(uint32_t colPosition) const
Definition AbstractSheetModel.cpp:105
bool isRowVisible(const iv::gui::sheets::RowId &rowId)
Definition AbstractSheetModel.cpp:419
void clear()
Definition AbstractSheetModel.cpp:20
virtual std::string rowTitle(uint32_t rowPosition) const
Definition AbstractSheetModel.cpp:96
void addRowDefinition(const iv::gui::sheets::RowId &rowId, const iv::gui::sheets::RowDefinition &rowDefinition)
Definition AbstractSheetModel.cpp:264
AbstractSheetModel & operator=(AbstractSheetModel &&other)=delete
void setRowsHaveCSS(bool rowsHaveCSS)
Definition AbstractSheetModel.cpp:385
iv::gui::sheets::RowsDefinitions m_rowDefinitions
Definition AbstractSheetModel.hpp:82
const iv::gui::sheets::ColumnsDefinitions & getColumnDefinitions() const
Definition AbstractSheetModel.cpp:390
void updateColumnIdsByOrder()
Definition AbstractSheetModel.cpp:478
bool m_rowsHaveCSS
Definition AbstractSheetModel.hpp:88
void removeColumnDefinition(const iv::gui::sheets::ColumnId &columnId)
Definition AbstractSheetModel.cpp:135
AbstractSheetModel(AbstractSheetModel &&other)=delete
void shiftRowPositionsIncluded(const iv::gui::sheets::RowId &rowIdReference, int32_t shiftPositions)
Definition AbstractSheetModel.cpp:292
std::unordered_map< iv::types::order, iv::gui::sheets::RowId > m_rowIdsByOrder
Definition AbstractSheetModel.hpp:85
iv::gui::sheets::RowsCells & getRowsCells()
Definition AbstractSheetModel.cpp:400
std::unordered_map< iv::types::order, iv::gui::sheets::ColumnId > m_columnsIdsByOrder
Definition AbstractSheetModel.hpp:86
AbstractComponentGUI * cellComponent(uint32_t rowPosition, uint32_t columnPosition)
Definition AbstractSheetModel.cpp:75
void shiftColumnPositionsExcluded(const iv::gui::sheets::ColumnId &columnIdReference, int32_t shiftPositions, bool isIncluded=false)
Definition AbstractSheetModel.cpp:155
void setColumnDefinitions(const iv::gui::sheets::ColumnsDefinitions &columnDefinitions)
Definition AbstractSheetModel.cpp:371
iv::gui::sheets::RowTitleCellDefinition * rowTitleCellDefinitionPointer(uint32_t rowPosition)
Definition AbstractSheetModel.cpp:231
std::map< ColumnId, ColumnDefinition > ColumnsDefinitions
Definition structs.hpp:84
std::map< RowId, RowDefinition > RowsDefinitions
Definition structs.hpp:85
std::map< RowId, RowCells > RowsCells
Definition structs.hpp:86
Definition structs.hpp:18
Definition structs.hpp:36
Definition structs.hpp:24
Definition structs.hpp:79
Definition structs.hpp:63
Definition structs.hpp:50
Definition structs.hpp:70