EHM DAL 0.2.3
Data abstraction layer for Eastside Hockey Manager
Loading...
Searching...
No Matches
ehm_dal::tables::GameTable< T_AbstractTableItem, T_ColumnData > Class Template Reference
Inheritance diagram for ehm_dal::tables::GameTable< T_AbstractTableItem, T_ColumnData >:

Public Member Functions

 GameTable (const QString &table_name, const ehm_dal::tables::TableIndex table_id, const TableType table_type)
 
bool readStream (QDataStream &in) override
 Reads the table data from a QDataStream.
 
bool insertRows (qint32 row, qint32 count, const QModelIndex &parent=QModelIndex()) override
 
QString modelName () const override
 
constexpr AbstractBaseModel::AbstractTableModelType modelType () const override
 
virtual qsizetype junkDataPrefixSize () const
 
- Public Member Functions inherited from ehm_dal::tables::AbstractTable
 AbstractTable (const QString &table_name, const ehm_dal::tables::TableIndex table_id, const ehm_dal::tables::TableType table_type, ehm_dal::column_data::ColumnData *column_data=new ehm_dal::column_data::ColumnData())
 Constructs a new database table.
 
void addChildItem (const qint32 parent_row_id, std::shared_ptr< ehm_dal::schema::AbstractTableItem > item, const ehm_dal::tables::TableIndex child_table)
 
QVariant childData (const QModelIndex &index, qint32 role, ehm_dal::column_data::ColumnData *column_data, const ehm_dal::tables::TableIndex child_table)
 
qint32 childItemId (const qint32 parent_row_id, const ehm_dal::tables::TableIndex child_table) const
 
virtual qint32 childRowCount (const qint32 parent_row_id, const ehm_dal::tables::TableIndex child_table) const
 
bool setChildData (const QModelIndex &index, const QVariant &value, const qint32 role, std::vector< qint32 > &modified_columns, ehm_dal::column_data::ColumnData *column_data, const ehm_dal::tables::TableIndex child_table)
 
bool read (QDataStream &in)
 Reads the table data from a QDataStream (wrapper for AbstractTable::readStream).
 
bool readData (QByteArray *data)
 Reads the table data from a QByteArray.
 
ehm_dal::data_types::Pointer find (const qint32 value, const quint16 column)
 Finds the first row which has a value in the chosen column matching value.
 
ehm_dal::data_types::Pointer find (const QString &text, const quint16 column, const Qt::CaseSensitivity cs=Qt::CaseInsensitive)
 Finds the first row which has text in the chosen column exactly matching text. The entirety of the string much match the text to constitute a match.
 
ehm_dal::data_types::Pointer findContains (const QString &text, const quint16 column, const Qt::CaseSensitivity cs=Qt::CaseInsensitive)
 Finds the first row which has text in the chosen column containing text. This function performs a sub-string search.
 
std::vector< ehm_dal::data_types::PointerfindAll (const qint32 value, const quint16 column)
 Finds all rows which have a value in the chosen column matching value.
 
std::vector< ehm_dal::data_types::PointerfindAll (const QString &text, const quint16 column, const Qt::CaseSensitivity cs=Qt::CaseInsensitive)
 Finds all rows which have text in the chosen column exactly matching text. The entirety of the string much match the text to constitute a match.
 
std::vector< ehm_dal::data_types::PointerfindAllContains (const QString &text, const quint16 column, const Qt::CaseSensitivity cs=Qt::CaseInsensitive)
 Finds all rows which have text in the chosen column containing text. This function performs a sub-string search.
 
QVariant data (const QModelIndex &index, qint32 role=Qt::DisplayRole) const override
 Returns the data stored under the given role for the item referred to by the index.
 
bool isValidRow (const qint32 row_id) const
 
QString text (const qint32 row) const
 
qint32 rowCount (const QModelIndex &parent=QModelIndex()) const override
 Returns the number of rows in the table.
 
std::shared_ptr< ehm_dal::schema::AbstractTableItempointer (const qint32 row)
 Returns a shared pointer to the selected row of the table.
 
const TableAttributesattributes () const
 
bool init ()
 Initialises the table.
 
bool moveRows (const QModelIndex &source_parent, qint32 source_row, qint32 count, const QModelIndex &destination_parent, qint32 destination_child) override
 
qint32 parentRowId (const QModelIndex &index) const
 
virtual std::shared_ptr< ehm_dal::tables::AbstractTableparentTable () const
 
virtual ParentTableRelationshipType parentTableRelationship () const
 
virtual void setParentTable (const std::shared_ptr< ehm_dal::tables::AbstractTable > parent_table, const ParentTableRelationshipType relationship)
 
bool removeRows (qint32 row, qint32 count, const QModelIndex &parent=QModelIndex()) override
 
bool setData (const QModelIndex &index, const QVariant &value, qint32 role=Qt::EditRole) override
 
- Public Member Functions inherited from ehm_dal::tables::AbstractBaseModel
 AbstractBaseModel (ehm_dal::column_data::ColumnData *column_data=new ehm_dal::column_data::ColumnData(), QObject *parent=nullptr)
 
ehm_dal::column_data::ColumnDatacolumnData ()
 Returns the ehm_dal::column_data::ColumnData.
 
ehm_dal::column_data::ColumnDataconstColumnData () const
 
qint32 columnCount (const QModelIndex &parent=QModelIndex()) const override
 Returns the number of columns in the table.
 
qint32 size () const
 
Qt::ItemFlags flags (const QModelIndex &index) const override
 Returns the item flags for the given index.
 
QVariant headerData (qint32 section, Qt::Orientation orientation, qint32 role=Qt::DisplayRole) const override
 Returns the data for the given role and section in the header with the specified orientation. For horizontal headers, the section number corresponds to the column number. Similarly, for vertical headers, the section number corresponds to the row number.
 
std::unique_ptr< QSortFilterProxyModel > proxy ()
 
virtual QString modelName () const
 
virtual constexpr AbstractTableModelType modelType () const
 

Additional Inherited Members

- Public Types inherited from ehm_dal::tables::AbstractTable
enum class  ParentTableRelationshipType : qint8 { TableDoesNotHaveAnyParent , ParentTableHasChildIdField , ChildTableHasParentIdField }
 
- Public Types inherited from ehm_dal::tables::AbstractBaseModel
enum class  AbstractTableModelType : quint8 { AbstractClass , GameTable , GameChildTable , GameChildTreeTable }
 
- Protected Member Functions inherited from ehm_dal::tables::AbstractBaseModel
bool emitModifiedColumns (const qint32 row, const std::vector< qint32 > &modified_columns, const QList< qint32 > &modified_roles=QList< qint32 >())
 
- Protected Attributes inherited from ehm_dal::tables::AbstractTable
TableAttributes table_attributes_
 
std::vector< std::shared_ptr< ehm_dal::schema::AbstractTableItem > > data_
 

Member Function Documentation

◆ modelName()

template<class T_AbstractTableItem , ColumnData T_ColumnData = ehm_dal::column_data::ColumnData>
QString ehm_dal::tables::GameTable< T_AbstractTableItem, T_ColumnData >::modelName ( ) const
inlineoverridevirtual

◆ modelType()

template<class T_AbstractTableItem , ColumnData T_ColumnData = ehm_dal::column_data::ColumnData>
constexpr AbstractBaseModel::AbstractTableModelType ehm_dal::tables::GameTable< T_AbstractTableItem, T_ColumnData >::modelType ( ) const
inlineconstexproverridevirtual

◆ readStream()

template<class T_AbstractTableItem , ColumnData T_ColumnData>
bool ehm_dal::tables::GameTable< T_AbstractTableItem, T_ColumnData >::readStream ( QDataStream &  in)
overridevirtual

Reads the table data from a QDataStream.

Parameters
in
Returns
whether parsing was successful.

Implements ehm_dal::tables::AbstractTable.

Reimplemented in ehm_dal::tables::GameChildTable< T_ChildAbstractTableItem, T_ParentAbstractTableItem, ehm_dal::column_data::ColumnData >.