QGIS API Documentation
2.12.0-Lyon
|
A model backed by a QgsVectorLayerCache which is able to provide feature/attribute information to a QAbstractItemView. More...
#include <qgsattributetablemodel.h>
Public Types | |
enum | Role { SortRole = Qt::UserRole + 1, FeatureIdRole = Qt::UserRole + 2, FieldIndexRole = Qt::UserRole + 3 } |
Public Slots | |
void | fieldConditionalStyleChanged (const QString &fieldName) |
Handles updating the model when the conditional style for a field changes. More... | |
virtual void | loadLayer () |
Loads the layer into the model Preferably to be called, before using this model as source for any other proxy model. More... | |
Signals | |
void | finished () |
void | modelChanged () |
Model has been changed. More... | |
void | progress (int i, bool &cancel) |
Public Member Functions | |
QgsAttributeTableModel (QgsVectorLayerCache *layerCache, QObject *parent=0) | |
Constructor. More... | |
int | columnCount (const QModelIndex &parent=QModelIndex()) const override |
Returns the number of columns. More... | |
virtual QVariant | data (const QModelIndex &index, int role) const override |
Returns data on the given index. More... | |
const QgsAttributeEditorContext & | editorContext () const |
Returns the context in which this table is shown. More... | |
void | executeAction (int action, const QModelIndex &idx) const |
Execute an action. More... | |
void | executeMapLayerAction (QgsMapLayerAction *action, const QModelIndex &idx) const |
Execute a QgsMapLayerAction. More... | |
QgsFeature | feature (const QModelIndex &idx) const |
Return the feature attributes at given model index. More... | |
int | fieldCol (int idx) const |
get column from field index More... | |
int | fieldIdx (int col) const |
get field index from column More... | |
Qt::ItemFlags | flags (const QModelIndex &index) const override |
Returns item flags for the index. More... | |
QVariant | headerData (int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override |
Returns header data. More... | |
QModelIndex | idToIndex (QgsFeatureId id) const |
QModelIndexList | idToIndexList (QgsFeatureId id) const |
int | idToRow (QgsFeatureId id) const |
Maps feature id to table row. More... | |
QgsVectorLayer * | layer () const |
Returns the layer this model uses as backend. More... | |
QgsVectorLayerCache * | layerCache () const |
Returns the layer cache this model uses as backend. More... | |
void | prefetchColumnData (int column) |
Caches the entire data for one column. More... | |
void | reload (const QModelIndex &index1, const QModelIndex &index2) |
Reloads the model data between indices. More... | |
bool | removeRows (int row, int count, const QModelIndex &parent=QModelIndex()) override |
Remove rows. More... | |
const QgsFeatureRequest & | request () const |
Get the the feature request. More... | |
void | resetModel () |
Resets the model. More... | |
virtual int | rowCount (const QModelIndex &parent=QModelIndex()) const override |
Returns the number of rows. More... | |
QgsFeatureId | rowToId (int row) const |
Maps row to feature id. More... | |
virtual bool | setData (const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) override |
Updates data on given index. More... | |
void | setEditorContext (const QgsAttributeEditorContext &context) |
Sets the context in which this table is shown. More... | |
void | setRequest (const QgsFeatureRequest &request) |
Set a request that will be used to fill this attribute table model. More... | |
void | swapRows (QgsFeatureId a, QgsFeatureId b) |
Swaps two rows. More... | |
Public Member Functions inherited from QAbstractTableModel | |
QAbstractTableModel (QObject *parent) | |
~QAbstractTableModel () | |
virtual bool | dropMimeData (const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) |
virtual QModelIndex | index (int row, int column, const QModelIndex &parent) const |
Public Member Functions inherited from QAbstractItemModel | |
QAbstractItemModel (QObject *parent) | |
virtual | ~QAbstractItemModel () |
virtual QModelIndex | buddy (const QModelIndex &index) const |
virtual bool | canFetchMore (const QModelIndex &parent) const |
virtual int | columnCount (const QModelIndex &parent) const =0 |
void | columnsAboutToBeInserted (const QModelIndex &parent, int start, int end) |
void | columnsAboutToBeMoved (const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationColumn) |
void | columnsAboutToBeRemoved (const QModelIndex &parent, int start, int end) |
void | columnsInserted (const QModelIndex &parent, int start, int end) |
void | columnsMoved (const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationColumn) |
void | columnsRemoved (const QModelIndex &parent, int start, int end) |
virtual QVariant | data (const QModelIndex &index, int role) const =0 |
void | dataChanged (const QModelIndex &topLeft, const QModelIndex &bottomRight) |
virtual void | fetchMore (const QModelIndex &parent) |
virtual bool | hasChildren (const QModelIndex &parent) const |
bool | hasIndex (int row, int column, const QModelIndex &parent) const |
void | headerDataChanged (Qt::Orientation orientation, int first, int last) |
virtual QModelIndex | index (int row, int column, const QModelIndex &parent) const =0 |
bool | insertColumn (int column, const QModelIndex &parent) |
virtual bool | insertColumns (int column, int count, const QModelIndex &parent) |
bool | insertRow (int row, const QModelIndex &parent) |
virtual bool | insertRows (int row, int count, const QModelIndex &parent) |
virtual QMap< int, QVariant > | itemData (const QModelIndex &index) const |
void | layoutAboutToBeChanged () |
void | layoutChanged () |
virtual QModelIndexList | match (const QModelIndex &start, int role, const QVariant &value, int hits, QFlags< Qt::MatchFlag > flags) const |
virtual QMimeData * | mimeData (const QModelIndexList &indexes) const |
virtual QStringList | mimeTypes () const |
void | modelAboutToBeReset () |
void | modelReset () |
virtual QModelIndex | parent (const QModelIndex &index) const =0 |
bool | removeColumn (int column, const QModelIndex &parent) |
virtual bool | removeColumns (int column, int count, const QModelIndex &parent) |
bool | removeRow (int row, const QModelIndex &parent) |
virtual void | revert () |
const QHash< int, QByteArray > & | roleNames () const |
virtual int | rowCount (const QModelIndex &parent) const =0 |
void | rowsAboutToBeInserted (const QModelIndex &parent, int start, int end) |
void | rowsAboutToBeMoved (const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationRow) |
void | rowsAboutToBeRemoved (const QModelIndex &parent, int start, int end) |
void | rowsInserted (const QModelIndex &parent, int start, int end) |
void | rowsMoved (const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationRow) |
void | rowsRemoved (const QModelIndex &parent, int start, int end) |
virtual bool | setHeaderData (int section, Qt::Orientation orientation, const QVariant &value, int role) |
virtual bool | setItemData (const QModelIndex &index, const QMap< int, QVariant > &roles) |
void | setSupportedDragActions (QFlags< Qt::DropAction > actions) |
QModelIndex | sibling (int row, int column, const QModelIndex &index) const |
virtual void | sort (int column, Qt::SortOrder order) |
virtual QSize | span (const QModelIndex &index) const |
virtual bool | submit () |
Qt::DropActions | supportedDragActions () const |
virtual Qt::DropActions | supportedDropActions () const |
Public Member Functions inherited from QObject | |
QObject (QObject *parent) | |
QObject (QObject *parent, const char *name) | |
virtual | ~QObject () |
bool | blockSignals (bool block) |
QObject * | child (const char *objName, const char *inheritsClass, bool recursiveSearch) const |
const QObjectList & | children () const |
const char * | className () const |
bool | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const |
void | deleteLater () |
void | destroyed (QObject *obj) |
bool | disconnect (const QObject *receiver, const char *method) |
bool | disconnect (const char *signal, const QObject *receiver, const char *method) |
void | dumpObjectInfo () |
void | dumpObjectTree () |
QList< QByteArray > | dynamicPropertyNames () const |
virtual bool | event (QEvent *e) |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
T | findChild (const QString &name) const |
QList< T > | findChildren (const QRegExp ®Exp) const |
QList< T > | findChildren (const QString &name) const |
bool | inherits (const char *className) const |
void | insertChild (QObject *object) |
void | installEventFilter (QObject *filterObj) |
bool | isA (const char *className) const |
bool | isWidgetType () const |
void | killTimer (int id) |
virtual const QMetaObject * | metaObject () const |
void | moveToThread (QThread *targetThread) |
const char * | name () const |
const char * | name (const char *defaultName) const |
QString | objectName () const |
QObject * | parent () const |
QVariant | property (const char *name) const |
void | removeChild (QObject *object) |
void | removeEventFilter (QObject *obj) |
void | setName (const char *name) |
void | setObjectName (const QString &name) |
void | setParent (QObject *parent) |
bool | setProperty (const char *name, const QVariant &value) |
bool | signalsBlocked () const |
int | startTimer (int interval) |
QThread * | thread () const |
Protected Slots | |
virtual void | attributeValueChanged (QgsFeatureId fid, int idx, const QVariant &value) |
Launched when attribute value has been changed. More... | |
virtual void | featureAdded (QgsFeatureId fid) |
Launched when a feature has been added. More... | |
virtual void | featuresDeleted (const QgsFeatureIds &fids) |
Launched when eatures have been deleted. More... | |
virtual void | layerDeleted () |
Launched when layer has been deleted. More... | |
Protected Member Functions | |
virtual void | loadAttributes () |
Gets mFieldCount, mAttributes and mValueMaps. More... | |
Protected Member Functions inherited from QAbstractItemModel | |
void | beginInsertColumns (const QModelIndex &parent, int first, int last) |
void | beginInsertRows (const QModelIndex &parent, int first, int last) |
bool | beginMoveColumns (const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationChild) |
bool | beginMoveRows (const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationChild) |
void | beginRemoveColumns (const QModelIndex &parent, int first, int last) |
void | beginRemoveRows (const QModelIndex &parent, int first, int last) |
void | beginResetModel () |
void | changePersistentIndex (const QModelIndex &from, const QModelIndex &to) |
void | changePersistentIndexList (const QModelIndexList &from, const QModelIndexList &to) |
QModelIndex | createIndex (int row, int column, void *ptr) const |
QModelIndex | createIndex (int row, int column, int id) const |
QModelIndex | createIndex (int row, int column, quint32 id) const |
void | endInsertColumns () |
void | endInsertRows () |
void | endMoveColumns () |
void | endMoveRows () |
void | endRemoveColumns () |
void | endRemoveRows () |
void | endResetModel () |
QModelIndexList | persistentIndexList () const |
void | reset () |
void | resetInternalData () |
void | setRoleNames (const QHash< int, QByteArray > &roleNames) |
Protected Member Functions inherited from QObject | |
bool | checkConnectArgs (const char *signal, const QObject *object, const char *method) |
virtual void | childEvent (QChildEvent *event) |
virtual void | connectNotify (const char *signal) |
virtual void | customEvent (QEvent *event) |
virtual void | disconnectNotify (const char *signal) |
int | receivers (const char *signal) const |
QObject * | sender () const |
int | senderSignalIndex () const |
virtual void | timerEvent (QTimerEvent *event) |
Protected Attributes | |
QgsAttributeList | mAttributes |
QVector< QVariant > | mAttributeWidgetCaches |
QgsExpressionContext | mExpressionContext |
QgsFeature | mFeat |
int | mFieldCount |
QHash< QgsFeatureId, int > | mIdRowMap |
QgsVectorLayerCache * | mLayerCache |
QHash< int, QgsFeatureId > | mRowIdMap |
QHash< int, QList< QgsConditionalStyle > > | mRowStylesMap |
QVector< QgsEditorWidgetConfig > | mWidgetConfigs |
QVector< QgsEditorWidgetFactory * > | mWidgetFactories |
Additional Inherited Members | |
Static Public Member Functions inherited from QObject | |
bool | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type) |
bool | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type) |
bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method) |
bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
QString | tr (const char *sourceText, const char *disambiguation, int n) |
QString | trUtf8 (const char *sourceText, const char *disambiguation, int n) |
Static Protected Member Functions inherited from QObject | |
QByteArray | normalizeSignalSlot (const char *signalSlot) |
Properties inherited from QObject | |
objectName | |
A model backed by a QgsVectorLayerCache which is able to provide feature/attribute information to a QAbstractItemView.
Is able to generate editor widgets for its QModelIndexes as well. Is mostly referred to as "master model" within this doc and the source.
Definition at line 47 of file qgsattributetablemodel.h.
Enumerator | |
---|---|
SortRole | |
FeatureIdRole | |
FieldIndexRole |
Definition at line 52 of file qgsattributetablemodel.h.
QgsAttributeTableModel::QgsAttributeTableModel | ( | QgsVectorLayerCache * | layerCache, |
QObject * | parent = 0 |
||
) |
Constructor.
layerCache | A layer cache to use as backend |
parent | The parent QObject (owner) |
Definition at line 38 of file qgsattributetablemodel.cpp.
|
protectedvirtualslot |
Launched when attribute value has been changed.
fid | feature id |
idx | attribute index |
value | new value |
Definition at line 247 of file qgsattributetablemodel.cpp.
|
override |
Returns the number of columns.
parent | parent index |
Definition at line 492 of file qgsattributetablemodel.cpp.
|
overridevirtual |
Returns data on the given index.
index | model index |
role | data role |
Definition at line 530 of file qgsattributetablemodel.cpp.
|
inline |
Returns the context in which this table is shown.
Will be forwarded to any editor widget created when editing data on this model.
Definition at line 223 of file qgsattributetablemodel.h.
void QgsAttributeTableModel::executeAction | ( | int | action, |
const QModelIndex & | idx | ||
) | const |
Execute an action.
Definition at line 699 of file qgsattributetablemodel.cpp.
void QgsAttributeTableModel::executeMapLayerAction | ( | QgsMapLayerAction * | action, |
const QModelIndex & | idx | ||
) | const |
Execute a QgsMapLayerAction.
Definition at line 705 of file qgsattributetablemodel.cpp.
QgsFeature QgsAttributeTableModel::feature | ( | const QModelIndex & | idx | ) | const |
Return the feature attributes at given model index.
Definition at line 711 of file qgsattributetablemodel.cpp.
|
protectedvirtualslot |
Launched when a feature has been added.
fid | feature id |
Definition at line 188 of file qgsattributetablemodel.cpp.
|
protectedvirtualslot |
Launched when eatures have been deleted.
fids | feature ids |
Definition at line 83 of file qgsattributetablemodel.cpp.
int QgsAttributeTableModel::fieldCol | ( | int | idx | ) | const |
get column from field index
Definition at line 481 of file qgsattributetablemodel.cpp.
|
slot |
Handles updating the model when the conditional style for a field changes.
fieldName | name of field whose conditional style has changed |
Definition at line 392 of file qgsattributetablemodel.cpp.
int QgsAttributeTableModel::fieldIdx | ( | int | col | ) | const |
get field index from column
Definition at line 476 of file qgsattributetablemodel.cpp.
|
signal |
|
overridevirtual |
Returns item flags for the index.
index | model index |
Reimplemented from QAbstractItemModel.
Definition at line 673 of file qgsattributetablemodel.cpp.
|
overridevirtual |
Returns header data.
section | required section |
orientation | horizontal or vertical orientation |
role | data role |
Reimplemented from QAbstractItemModel.
Definition at line 498 of file qgsattributetablemodel.cpp.
QModelIndex QgsAttributeTableModel::idToIndex | ( | QgsFeatureId | id | ) | const |
Definition at line 444 of file qgsattributetablemodel.cpp.
QModelIndexList QgsAttributeTableModel::idToIndexList | ( | QgsFeatureId | id | ) | const |
Definition at line 449 of file qgsattributetablemodel.cpp.
int QgsAttributeTableModel::idToRow | ( | QgsFeatureId | id | ) | const |
Maps feature id to table row.
id | feature id |
Definition at line 433 of file qgsattributetablemodel.cpp.
|
inline |
Returns the layer this model uses as backend.
Retrieved from the layer cache.
Definition at line 163 of file qgsattributetablemodel.h.
|
inline |
Returns the layer cache this model uses as backend.
Definition at line 168 of file qgsattributetablemodel.h.
|
protectedvirtualslot |
Launched when layer has been deleted.
Definition at line 235 of file qgsattributetablemodel.cpp.
|
protectedvirtual |
Gets mFieldCount, mAttributes and mValueMaps.
Definition at line 289 of file qgsattributetablemodel.cpp.
|
virtualslot |
Loads the layer into the model Preferably to be called, before using this model as source for any other proxy model.
Definition at line 343 of file qgsattributetablemodel.cpp.
|
signal |
Model has been changed.
void QgsAttributeTableModel::prefetchColumnData | ( | int | column | ) |
Caches the entire data for one column.
This should be called prior to sorting, so the data does not have to be fetched for every single comparison. Specify -1 as column to invalidate the cache
column | The column index of the field to catch |
Definition at line 724 of file qgsattributetablemodel.cpp.
|
signal |
void QgsAttributeTableModel::reload | ( | const QModelIndex & | index1, |
const QModelIndex & | index2 | ||
) |
Reloads the model data between indices.
index1 | start index |
index2 | end index |
Definition at line 692 of file qgsattributetablemodel.cpp.
|
overridevirtual |
Remove rows.
Reimplemented from QAbstractItemModel.
Definition at line 139 of file qgsattributetablemodel.cpp.
const QgsFeatureRequest & QgsAttributeTableModel::request | ( | ) | const |
Get the the feature request.
Definition at line 761 of file qgsattributetablemodel.cpp.
|
inline |
|
overridevirtual |
Returns the number of rows.
parent | parent index |
Definition at line 486 of file qgsattributetablemodel.cpp.
QgsFeatureId QgsAttributeTableModel::rowToId | ( | int | row | ) | const |
Maps row to feature id.
row | row number |
Definition at line 464 of file qgsattributetablemodel.cpp.
|
overridevirtual |
Updates data on given index.
index | model index |
value | new data value |
role | data role |
Reimplemented from QAbstractItemModel.
Definition at line 636 of file qgsattributetablemodel.cpp.
|
inline |
Sets the context in which this table is shown.
Will be forwarded to any editor widget created when editing data on this model.
context | The context |
Definition at line 215 of file qgsattributetablemodel.h.
void QgsAttributeTableModel::setRequest | ( | const QgsFeatureRequest & | request | ) |
Set a request that will be used to fill this attribute table model.
In contrast to a filter, the request will constrain the data shown without the possibility to dynamically adjust it.
request | The request to use to fill this table model. |
Definition at line 754 of file qgsattributetablemodel.cpp.
void QgsAttributeTableModel::swapRows | ( | QgsFeatureId | a, |
QgsFeatureId | b | ||
) |
Swaps two rows.
a | first row |
b | second row |
Definition at line 410 of file qgsattributetablemodel.cpp.
|
protected |
Definition at line 296 of file qgsattributetablemodel.h.
Definition at line 298 of file qgsattributetablemodel.h.
|
mutableprotected |
Definition at line 305 of file qgsattributetablemodel.h.
|
mutableprotected |
Definition at line 294 of file qgsattributetablemodel.h.
|
protected |
Definition at line 292 of file qgsattributetablemodel.h.
|
protected |
Definition at line 301 of file qgsattributetablemodel.h.
|
protected |
Definition at line 291 of file qgsattributetablemodel.h.
|
protected |
Definition at line 302 of file qgsattributetablemodel.h.
|
mutableprotected |
Definition at line 303 of file qgsattributetablemodel.h.
|
protected |
Definition at line 299 of file qgsattributetablemodel.h.
|
protected |
Definition at line 297 of file qgsattributetablemodel.h.