EHM DAL 0.2.3
Data abstraction layer for Eastside Hockey Manager
|
The AbstractTableItem class represents a row in a Table with an id field. More...
#include <abstract_table_item.h>
Public Member Functions | |
AbstractTableItem () | |
Default constructor. | |
virtual | ~AbstractTableItem () |
Default destructor. | |
virtual void | addChildItem (std::shared_ptr< AbstractTableItem > item, const ehm_dal::tables::TableIndex child_table) |
Adds the child item item from the child_table to the present tree table. This represents a tree relationship between the child 'item' from the child table and the present table. | |
virtual QVariant | childData (const QModelIndex &index, qint32 role, ehm_dal::column_data::ColumnData *column_data, const ehm_dal::tables::TableIndex child_table) const |
Returns child data stored under the given role for the selected index . | |
virtual qint32 | childItemId (const ehm_dal::tables::TableIndex child_table) const |
Returns the item id number for the child data under the related child_table . | |
virtual qint32 | childRowCount (const ehm_dal::tables::TableIndex child_table) const |
Returns the number of related child items in respect of child_table . | |
virtual 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) |
Sets the role data for the child item at index to value . | |
virtual bool | read (QDataStream &in, ehm_dal::database::DatabaseVersion &version) |
Reads a table row from the QDataStream . | |
virtual bool | write (QDataStream &out, ehm_dal::database::DatabaseVersion &version) |
Writes a table row to the QDataStream . | |
qint32 | id () const |
Returns the row id. The first row of a table is 0, the second row is 1, etc. | |
QVariant | id (const qint32 role) |
Returns the row id in a manner compatible with QAbstractTableModel item roles. This is generally unecessary and qint32 AbstractTableItem::id() should be used where possible. | |
virtual QString | text () const =0 |
Returns the row's display text. This provides a convenient way to obtain a simple description of the row. | |
Q_DECL_DEPRECATED QString | displayText () const |
virtual qint32 | uid () const |
Returns the row's unique database id. Not all tables use a uid. | |
QVariant | data (const qint32 column, qint32 role, ehm_dal::column_data::ColumnData *column_data) const |
Returns the row's data stored under the given role for the column. | |
virtual QVariant | data (const QModelIndex &index, qint32 role, ehm_dal::column_data::ColumnData *column_data) const |
Returns the row's data stored under the given role for the column referred to by the index . | |
virtual QString | identifier () const |
Returns the item's text identifier for matching against. | |
virtual QStringList | identifierList () const |
Returns a list of all of the item's identifiers for matching against. This includes the main identifier() string as well as any alternatives. | |
virtual bool | init ()=0 |
Initialises the table item members. This only needs to be called once per item. | |
bool | alloc (const qint32 new_id) |
Initialises the table item and allocates and item id to new_id and a uid (if applicable) and then calls init() . This should be called whenever adding a new item to a table. This should not be called during file i/o. | |
virtual qint32 | parentItemId () const |
Returns the item id of the items parent item. Applies to tree structures only. | |
bool | setData (const qint32 column, const QVariant &value, qint32 role, std::vector< qint32 > &modified_columns, ehm_dal::column_data::ColumnData *column_data) |
Sets the role data for the item at column to value . | |
virtual bool | setData (const QModelIndex &index, const QVariant &value, qint32 role, std::vector< qint32 > &modified_columns, ehm_dal::column_data::ColumnData *column_data) |
Sets the role data for the item at index to value . | |
virtual void | fixErrors () |
Fixes any known errors with the item. E.g. errors introduced with a prior version of EHM DAL or the Editor. | |
Protected Member Functions | |
virtual bool | deletable () const |
template<IntegralNumber T> | |
QVariant | fromHexVector (const std::vector< T > &raw_data, const qint32 role) const |
QVariant | fromValue (const QVariant &value, const qint32 role) const |
Returns a value as a QVariant if the role is Qt::DisplayRole or Qt::EditRole . A blank QVariant is returned if another role is selected. | |
Protected Attributes | |
qint32 | id_ |
Friends | |
QDataStream & | operator>> (QDataStream &in, AbstractTableItem &data) |
QDataStream & | operator<< (QDataStream &out, const AbstractTableItem &data) |
The AbstractTableItem class represents a row in a Table with an id field.
|
virtual |
Adds the child item item
from the child_table
to the present tree table. This represents a tree relationship between the child 'item' from the child table
and the present table.
item | child item to be added |
child_table | source table |
Reimplemented in ehm_dal::schema::Club, ehm_dal::schema::ClubCompetition, ehm_dal::schema::Staff, and ehm_dal::schema::StaffAward.
bool ehm_dal::schema::AbstractTableItem::alloc | ( | const qint32 | new_id | ) |
Initialises the table item and allocates and item id to new_id
and a uid (if applicable) and then calls init()
. This should be called whenever adding a new item to a table. This should not be called during file i/o.
new_id | Id number to be allocated to the item |
true
if members were initialised or false
if nothing requires initialising.
|
virtual |
Returns child data stored under the given role
for the selected index
.
index | of the child item |
role | item data role. Qt::DisplayRole and Qt::EditRole are the most frequently used |
column_data | relating to the child schema |
child_table | containing the child data |
QVariant
containing a copy of the data. Reimplemented in ehm_dal::schema::Club, ehm_dal::schema::ClubCompetition, ehm_dal::schema::Staff, and ehm_dal::schema::StaffAward.
|
virtual |
Returns the item id number for the child data under the related child_table
.
child_table |
Reimplemented in ehm_dal::schema::Staff.
|
virtual |
Returns the number of related child items in respect of child_table
.
child_table |
Reimplemented in ehm_dal::schema::Club, ehm_dal::schema::ClubCompetition, ehm_dal::schema::Staff, and ehm_dal::schema::StaffAward.
QVariant ehm_dal::schema::AbstractTableItem::data | ( | const qint32 | column, |
qint32 | role, | ||
ehm_dal::column_data::ColumnData * | column_data | ||
) | const |
Returns the row's data stored under the given role
for the column.
column | the selected column |
role | item data role. Qt::DisplayRole and Qt::EditRole are the most frequently used |
QVariant
containing a copy of the data
|
virtual |
Returns the row's data stored under the given role
for the column referred to by the index
.
index | Index of the selected column. The index's row is disregarded |
role | item data role. Qt::DisplayRole and Qt::EditRole are the most frequently used |
QVariant
containing a copy of the data. Reimplemented in ehm_dal::schema::ClubRecords.
|
inlinevirtual |
Fixes any known errors with the item. E.g. errors introduced with a prior version of EHM DAL or the Editor.
Reimplemented in ehm_dal::schema::Club.
|
protected |
Returns a value
as a QVariant
if the role
is Qt::DisplayRole
or Qt::EditRole
. A blank QVariant
is returned if another role
is selected.
value | Value to be returned |
role | Data role |
QVariant
|
inline |
Returns the row id. The first row of a table is 0, the second row is 1, etc.
QVariant ehm_dal::schema::AbstractTableItem::id | ( | const qint32 | role | ) |
Returns the row id in a manner compatible with QAbstractTableModel item roles. This is generally unecessary and qint32 AbstractTableItem::id()
should be used where possible.
role | Item data role. |
QVariant
containing a copy of the data.
|
virtual |
Returns a list of all of the item's identifiers for matching against. This includes the main identifier()
string as well as any alternatives.
Reimplemented in ehm_dal::schema::ClubCompetition.
|
inlinepure virtual |
Initialises the table item members. This only needs to be called once per item.
true
if members were initialised or false
if nothing requires initialising. Implemented in ehm_dal::schema::Affiliation, ehm_dal::schema::Arena, ehm_dal::schema::City, ehm_dal::schema::Club, ehm_dal::schema::ClubHistory, ehm_dal::schema::ClubRecords, ehm_dal::schema::RetiredNumber, ehm_dal::schema::ClubCompetition, ehm_dal::schema::ClubCompetitionHistory, ehm_dal::schema::Colour, ehm_dal::schema::Continent, ehm_dal::schema::Currency, ehm_dal::schema::DatabaseHeader, ehm_dal::schema::Draft, ehm_dal::schema::GameBasicData, ehm_dal::schema::Injury, ehm_dal::schema::Name, ehm_dal::schema::Nation, ehm_dal::schema::Person, ehm_dal::schema::DraftHistory, ehm_dal::schema::NonPlayerData, ehm_dal::schema::PlayerData, ehm_dal::schema::PlayerInfo, ehm_dal::schema::PlayerRights, ehm_dal::schema::StaffHistory, ehm_dal::schema::StaffInfo, ehm_dal::schema::StaffPreferences, ehm_dal::schema::StaffAward, ehm_dal::schema::StaffAwardHistory, ehm_dal::schema::StageName, and ehm_dal::schema::State.
|
virtual |
Returns the item id of the items parent item. Applies to tree structures only.
Reimplemented in ehm_dal::schema::ClubHistory, ehm_dal::schema::ClubRecords, ehm_dal::schema::RetiredNumber, ehm_dal::schema::ClubCompetitionHistory, ehm_dal::schema::DraftHistory, ehm_dal::schema::PlayerInfo, ehm_dal::schema::PlayerRights, ehm_dal::schema::StaffHistory, ehm_dal::schema::StaffInfo, and ehm_dal::schema::StaffAwardHistory.
|
virtual |
Reads a table row from the QDataStream
.
in | QDataStream to be parsed |
version | EHM database version |
Reimplemented in ehm_dal::schema::Affiliation, ehm_dal::schema::Arena, ehm_dal::schema::City, ehm_dal::schema::Club, ehm_dal::schema::ClubHistory, ehm_dal::schema::ClubRecords, ehm_dal::schema::RetiredNumber, ehm_dal::schema::ClubCompetition, ehm_dal::schema::ClubCompetitionHistory, ehm_dal::schema::Colour, ehm_dal::schema::Continent, ehm_dal::schema::Currency, ehm_dal::schema::DatabaseHeader, ehm_dal::schema::Draft, ehm_dal::schema::GameBasicData, ehm_dal::schema::Injury, ehm_dal::schema::Name, ehm_dal::schema::Nation, ehm_dal::schema::Official, ehm_dal::schema::Staff, ehm_dal::schema::DraftHistory, ehm_dal::schema::NonPlayerData, ehm_dal::schema::PlayerData, ehm_dal::schema::PlayerInfo, ehm_dal::schema::PlayerRights, ehm_dal::schema::StaffHistory, ehm_dal::schema::StaffInfo, ehm_dal::schema::StaffPreferences, ehm_dal::schema::StaffAward, ehm_dal::schema::StaffAwardHistory, ehm_dal::schema::StageName, and ehm_dal::schema::State.
|
virtual |
Sets the role
data for the child item at index
to value
.
index | the selected index |
value | value to apply to the item |
role | item data role; typically Qt::EditRole |
modified_columns | container for storing column ids of any additional columns updated |
column_data | relating to the column |
child_table | the child's table |
Reimplemented in ehm_dal::schema::Club, ehm_dal::schema::ClubCompetition, ehm_dal::schema::Staff, and ehm_dal::schema::StaffAward.
bool ehm_dal::schema::AbstractTableItem::setData | ( | const qint32 | column, |
const QVariant & | value, | ||
qint32 | role, | ||
std::vector< qint32 > & | modified_columns, | ||
ehm_dal::column_data::ColumnData * | column_data | ||
) |
Sets the role
data for the item at column
to value
.
column | the selected column |
value | value to apply to the item |
role | item data role; typically Qt::EditRole |
modified_columns | container for storing column ids of any additional columns updated |
column_data | relating to the column |
|
virtual |
Sets the role
data for the item at index
to value
.
index | the selected index |
value | value to apply to the item |
role | item data role; typically Qt::EditRole |
modified_columns | container for storing column ids of any additional columns updated |
column_data | relating to the column |
Reimplemented in ehm_dal::schema::ClubRecords.
|
pure virtual |
Returns the row's display text. This provides a convenient way to obtain a simple description of the row.
Implemented in ehm_dal::schema::Affiliation, ehm_dal::schema::Arena, ehm_dal::schema::City, ehm_dal::schema::Club, ehm_dal::schema::ClubHistory, ehm_dal::schema::ClubRecords, ehm_dal::schema::RetiredNumber, ehm_dal::schema::ClubCompetition, ehm_dal::schema::ClubCompetitionHistory, ehm_dal::schema::Colour, ehm_dal::schema::Continent, ehm_dal::schema::Currency, ehm_dal::schema::DatabaseHeader, ehm_dal::schema::Draft, ehm_dal::schema::GameBasicData, ehm_dal::schema::Injury, ehm_dal::schema::Name, ehm_dal::schema::Nation, ehm_dal::schema::Person, ehm_dal::schema::DraftHistory, ehm_dal::schema::NonPlayerData, ehm_dal::schema::PlayerData, ehm_dal::schema::PlayerInfo, ehm_dal::schema::PlayerRights, ehm_dal::schema::StaffHistory, ehm_dal::schema::StaffInfo, ehm_dal::schema::StaffPreferences, ehm_dal::schema::StaffAward, ehm_dal::schema::StaffAwardHistory, ehm_dal::schema::StageName, and ehm_dal::schema::State.
|
virtual |
Returns the row's unique database id. Not all tables use a uid.
Reimplemented in ehm_dal::schema::AbstractUidTableItem.
|
virtual |
Writes a table row to the QDataStream
.
out | QDataStream to be output to |
version | EHM database version |
Reimplemented in ehm_dal::schema::Affiliation, ehm_dal::schema::Arena, ehm_dal::schema::City, ehm_dal::schema::Club, ehm_dal::schema::ClubHistory, ehm_dal::schema::ClubRecords, ehm_dal::schema::RetiredNumber, ehm_dal::schema::ClubCompetition, ehm_dal::schema::ClubCompetitionHistory, ehm_dal::schema::Colour, ehm_dal::schema::Continent, ehm_dal::schema::Currency, ehm_dal::schema::DatabaseHeader, ehm_dal::schema::Draft, ehm_dal::schema::GameBasicData, ehm_dal::schema::Injury, ehm_dal::schema::Name, ehm_dal::schema::Nation, ehm_dal::schema::Official, ehm_dal::schema::Staff, ehm_dal::schema::DraftHistory, ehm_dal::schema::NonPlayerData, ehm_dal::schema::PlayerData, ehm_dal::schema::PlayerInfo, ehm_dal::schema::PlayerRights, ehm_dal::schema::StaffHistory, ehm_dal::schema::StaffInfo, ehm_dal::schema::StaffPreferences, ehm_dal::schema::StaffAward, ehm_dal::schema::StaffAwardHistory, ehm_dal::schema::StageName, and ehm_dal::schema::State.