A table model representing a te::da::DataSet. More...
#include <DataSetTableModel.h>
Public Member Functions | |
| DataSetTableModel (QObject *parent=0) | |
| Constructor. More... | |
| void | discardEditions () |
| Discard editions. More... | |
| std::unique_ptr< te::da::DataSet > | getEditions (const te::da::DataSetType *type, std::vector< std::set< int > > &ps) |
| Returns a memory dataset to be saved. More... | |
| te::da::ObjectIdSet * | getObjectIdSet (const int &initRow, const int &finalRow) |
| Returns the ObjectIdSet begining with row initRow and ending in finalRow. More... | |
| Promoter * | getPromoter () |
| Returns the pointer to the promoter being used. More... | |
| bool | hasEditions () const |
| Returns true if there are unsaved editions. More... | |
| void | promote (const te::da::ObjectIdSet *oids) |
| Promotes the rows identified by oids. More... | |
| void | setDataSet (te::da::DataSet *dset, const bool &clearEditor=true) |
| Updates the data being used. More... | |
| void | setEditable (const bool &editable) |
| Sets if the model is editable or not. More... | |
| void | setEnabled (const bool &enabled) |
| Enable or disable the dataset presentation. More... | |
| void | setPkeysColumns (const std::vector< size_t > &pkeys) |
| Sets the columns used as pkeys, for presentation purposes. More... | |
| void | showOIdsVisible (const bool &visible) |
| Shows an icon for indentify the columns that are used for identify objects. More... | |
| virtual | ~DataSetTableModel () |
| Virtual destructor. More... | |
QAbstractTableModel re-implementation methods. | |
Re-implementation of QAbstractTableModel methods. | |
| int | rowCount (const QModelIndex &parent) const |
| int | columnCount (const QModelIndex &parent) const |
| QVariant | data (const QModelIndex &index, int role) const |
| QVariant | headerData (int section, Qt::Orientation orientation, int role) const |
| Qt::ItemFlags | flags (const QModelIndex &index) const |
| bool | setData (const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) |
| bool | insertColumns (int column, int count, const QModelIndex &parent=QModelIndex()) |
| bool | removeColumns (int column, int count, const QModelIndex &parent=QModelIndex()) |
Protected Attributes | |
| int | m_currentRow |
| An internal row pointer. More... | |
| te::da::DataSet * | m_dataset |
| The dataset being used. More... | |
| std::unique_ptr< Editor > | m_editor |
| Pointer to editor. More... | |
| bool | m_enabled |
| Enabling flag. More... | |
| bool | m_isEditable |
| Flag that indicates if the model is editable. More... | |
| bool | m_OIdsVisible |
| Oids icon visibility. More... | |
| std::vector< size_t > | m_pkeysColumns |
| Primary key columns. More... | |
| Promoter * | m_promoter |
| Promoter to be used. More... | |
| int | m_rowCount |
| Number of rows. More... | |
A table model representing a te::da::DataSet.
Definition at line 68 of file DataSetTableModel.h.
| te::qt::widgets::DataSetTableModel::DataSetTableModel | ( | QObject * | parent = 0 | ) |
Constructor.
Definition at line 273 of file DataSetTableModel.cpp.
References m_editor, and m_promoter.
|
virtual |
Virtual destructor.
Definition at line 285 of file DataSetTableModel.cpp.
References m_dataset, and m_promoter.
| int te::qt::widgets::DataSetTableModel::columnCount | ( | const QModelIndex & | parent | ) | const |
Definition at line 403 of file DataSetTableModel.cpp.
References te::da::DataSet::getNumProperties(), and m_dataset.
| QVariant te::qt::widgets::DataSetTableModel::data | ( | const QModelIndex & | index, |
| int | role | ||
| ) | const |
Definition at line 408 of file DataSetTableModel.cpp.
References te::da::DataSet::getAsString(), te::qt::widgets::Promoter::getLogicalRow(), te::da::DataSet::getPropertyDataType(), te::da::DataSet::getString(), te::da::DataSet::isNull(), m_currentRow, m_dataset, m_editor, m_promoter, te::da::DataSet::move(), and te::dt::STRING_TYPE.
Referenced by setData().
| void te::qt::widgets::DataSetTableModel::discardEditions | ( | ) |
| Qt::ItemFlags te::qt::widgets::DataSetTableModel::flags | ( | const QModelIndex & | index | ) | const |
Definition at line 515 of file DataSetTableModel.cpp.
References IsPkey(), m_isEditable, and m_pkeysColumns.
| std::unique_ptr< te::da::DataSet > te::qt::widgets::DataSetTableModel::getEditions | ( | const te::da::DataSetType * | type, |
| std::vector< std::set< int > > & | ps | ||
| ) |
Returns a memory dataset to be saved.
| type | DataSetType to construct memory dataset. | |
| [out] | ps | Positions of the columns edited for each row. |
Definition at line 376 of file DataSetTableModel.cpp.
References DataSet(), m_dataset, and m_editor.
Referenced by te::qt::widgets::DataSetTableView::saveEditions().
| te::da::ObjectIdSet * te::qt::widgets::DataSetTableModel::getObjectIdSet | ( | const int & | initRow, |
| const int & | finalRow | ||
| ) |
Returns the ObjectIdSet begining with row initRow and ending in finalRow.
| initRow | Initial row. |
| endRow | Final row. |
Definition at line 334 of file DataSetTableModel.cpp.
References te::da::ObjectIdSet::add(), te::da::ObjectIdSet::addProperty(), te::da::GenerateOID(), te::qt::widgets::Promoter::getLogicalRow(), te::da::DataSet::getPropertyDataType(), te::da::DataSet::getPropertyName(), te::da::ObjectIdSet::getPropertyNames(), m_dataset, m_pkeysColumns, m_promoter, te::da::DataSet::move(), and te::da::ObjectIdSet::setExpressionByInClause().
Referenced by te::qt::widgets::DataSetTableView::highlightRow(), and te::qt::widgets::DataSetTableView::highlightRows().
| te::qt::widgets::Promoter * te::qt::widgets::DataSetTableModel::getPromoter | ( | ) |
Returns the pointer to the promoter being used.
Definition at line 324 of file DataSetTableModel.cpp.
References m_promoter.
Referenced by te::qt::widgets::DataSetTableView::DataSetTableView(), te::qt::widgets::DataSetTableView::highlightOIds(), te::qt::widgets::DataSetTableView::highlightRow(), te::qt::widgets::DataSetTableView::highlightRows(), te::qt::widgets::DataSetTableView::setAutoScrollEnabled(), te::qt::widgets::DataSetTableView::setPromotionEnabled(), and te::qt::widgets::DataSetTableView::sortByColumns().
| bool te::qt::widgets::DataSetTableModel::hasEditions | ( | ) | const |
Returns true if there are unsaved editions.
Definition at line 388 of file DataSetTableModel.cpp.
References m_editor.
Referenced by te::qt::widgets::DataSetTableView::hasEditions(), and te::qt::widgets::DataSetTableView::~DataSetTableView().
| QVariant te::qt::widgets::DataSetTableModel::headerData | ( | int | section, |
| Qt::Orientation | orientation, | ||
| int | role | ||
| ) | const |
Definition at line 473 of file DataSetTableModel.cpp.
References ColumnType(), te::da::DataSet::getPropertyDataType(), te::da::DataSet::getPropertyName(), IsPkey(), m_dataset, m_OIdsVisible, and m_pkeysColumns.
| bool te::qt::widgets::DataSetTableModel::insertColumns | ( | int | column, |
| int | count, | ||
| const QModelIndex & | parent = QModelIndex() |
||
| ) |
Definition at line 587 of file DataSetTableModel.cpp.
Referenced by te::qt::widgets::DataSetTableView::addColumn().
| void te::qt::widgets::DataSetTableModel::promote | ( | const te::da::ObjectIdSet * | oids | ) |
Promotes the rows identified by oids.
oids The identifiers of the rows to be promoted.
Definition at line 315 of file DataSetTableModel.cpp.
References m_promoter, and te::qt::widgets::Promoter::promote().
Referenced by te::qt::widgets::DataSetTableView::promote().
| bool te::qt::widgets::DataSetTableModel::removeColumns | ( | int | column, |
| int | count, | ||
| const QModelIndex & | parent = QModelIndex() |
||
| ) |
Definition at line 596 of file DataSetTableModel.cpp.
References m_editor.
Referenced by te::qt::widgets::DataSetTableView::removeColumn().
| int te::qt::widgets::DataSetTableModel::rowCount | ( | const QModelIndex & | parent | ) | const |
Definition at line 398 of file DataSetTableModel.cpp.
References m_rowCount.
| bool te::qt::widgets::DataSetTableModel::setData | ( | const QModelIndex & | index, |
| const QVariant & | value, | ||
| int | role = Qt::EditRole |
||
| ) |
Definition at line 530 of file DataSetTableModel.cpp.
References data(), te::dt::DOUBLE_TYPE, te::dt::FLOAT_TYPE, te::qt::widgets::Promoter::getLogicalRow(), te::da::DataSet::getPropertyDataType(), te::dt::INT16_TYPE, te::dt::INT32_TYPE, te::dt::INT64_TYPE, m_dataset, m_editor, m_promoter, te::dt::NUMERIC_TYPE, te::dt::UINT16_TYPE, te::dt::UINT32_TYPE, te::dt::UINT64_TYPE, and te::common::Exception::what().
| void te::qt::widgets::DataSetTableModel::setDataSet | ( | te::da::DataSet * | dset, |
| const bool & | clearEditor = true |
||
| ) |
Updates the data being used.
| dset | The new data set to be used. |
| clearEditor | True for reset editions, false to maintain it. |
Definition at line 291 of file DataSetTableModel.cpp.
References m_dataset, m_editor, m_enabled, m_rowCount, te::da::DataSet::moveFirst(), and te::da::DataSet::size().
Referenced by te::qt::widgets::QueryDataSourceDialog::onApplyPushButtonClicked(), te::qt::widgets::QueryDataSourceDialog::onClearPushButtonClicked(), te::qt::widgets::QueryDataSourceDialog::onExecutePushButtonClicked(), and te::qt::widgets::DataSetTableView::setDataSet().
| void te::qt::widgets::DataSetTableModel::setEditable | ( | const bool & | editable | ) |
Sets if the model is editable or not.
| editable | True if the model is editable, false otherwise. |
Definition at line 371 of file DataSetTableModel.cpp.
References m_isEditable.
Referenced by te::qt::widgets::DataSetTableView::setLayer().
| void te::qt::widgets::DataSetTableModel::setEnabled | ( | const bool & | enabled | ) |
Enable or disable the dataset presentation.
| enabled | True for show dataSet on table, false to hide it. |
Definition at line 360 of file DataSetTableModel.cpp.
References m_dataset, m_enabled, m_rowCount, and te::da::DataSet::size().
Referenced by te::qt::widgets::DataSetTableView::promote().
| void te::qt::widgets::DataSetTableModel::setPkeysColumns | ( | const std::vector< size_t > & | pkeys | ) |
Sets the columns used as pkeys, for presentation purposes.
| pkeys | Positions of the columns that form the primary key. |
Definition at line 310 of file DataSetTableModel.cpp.
References m_pkeysColumns.
Referenced by te::qt::widgets::DataSetTableView::setLayerSchema().
| void te::qt::widgets::DataSetTableModel::showOIdsVisible | ( | const bool & | visible | ) |
Shows an icon for indentify the columns that are used for identify objects.
Definition at line 329 of file DataSetTableModel.cpp.
References m_OIdsVisible.
Referenced by te::qt::widgets::DataSetTableView::setOIdsColumnsVisible().
|
mutableprotected |
|
protected |
The dataset being used.
Definition at line 197 of file DataSetTableModel.h.
Referenced by columnCount(), data(), getEditions(), getObjectIdSet(), headerData(), setData(), setDataSet(), setEnabled(), and ~DataSetTableModel().
|
protected |
Pointer to editor.
Definition at line 213 of file DataSetTableModel.h.
Referenced by data(), DataSetTableModel(), discardEditions(), getEditions(), hasEditions(), removeColumns(), setData(), and setDataSet().
|
protected |
Enabling flag.
Definition at line 207 of file DataSetTableModel.h.
Referenced by setDataSet(), and setEnabled().
|
protected |
Flag that indicates if the model is editable.
Definition at line 211 of file DataSetTableModel.h.
Referenced by flags(), and setEditable().
|
protected |
Oids icon visibility.
Definition at line 205 of file DataSetTableModel.h.
Referenced by headerData(), and showOIdsVisible().
|
protected |
Primary key columns.
Definition at line 201 of file DataSetTableModel.h.
Referenced by flags(), getObjectIdSet(), headerData(), and setPkeysColumns().
|
protected |
Promoter to be used.
Definition at line 203 of file DataSetTableModel.h.
Referenced by data(), DataSetTableModel(), getObjectIdSet(), getPromoter(), promote(), setData(), and ~DataSetTableModel().
|
protected |
Number of rows.
Definition at line 209 of file DataSetTableModel.h.
Referenced by rowCount(), setDataSet(), and setEnabled().