- class QAbstractProxyModel#
The
QAbstractProxyModel
class provides a base class for proxy item models that can do sorting, filtering or other data processing tasks. More…Inherited by:
QTransposeProxyModel
,QSortFilterProxyModel
,QIdentityProxyModel
Synopsis#
Properties#
sourceModelᅟ
- The source model of this proxy model
Methods#
def
__init__()
def
sourceModel()
Virtual methods#
def
mapFromSource()
def
mapToSource()
def
setSourceModel()
Signals#
Note
This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE
Detailed Description#
This class defines the standard interface that proxy models must use to be able to interoperate correctly with other model/view components. It is not supposed to be instantiated directly.
All standard proxy models are derived from the
QAbstractProxyModel
class. If you need to create a new proxy model class, it is usually better to subclass an existing class that provides the closest behavior to the one you want to provide.Proxy models that filter or sort items of data from a source model should be created by using or subclassing
QSortFilterProxyModel
.To subclass
QAbstractProxyModel
, you need to implementmapFromSource()
andmapToSource()
. ThemapSelectionFromSource()
andmapSelectionToSource()
functions only need to be reimplemented if you need a behavior different from the default behavior.Note
If the source model is deleted or no source model is specified, the proxy model operates on a empty placeholder model.
See also
QSortFilterProxyModel
QAbstractItemModel
Model/View Programming
Note
Properties can be used directly when
from __feature__ import true_property
is used or via accessor functions otherwise.- property sourceModelᅟ: QAbstractItemModel#
This property holds the source model of this proxy model..
- Access functions:
Constructs a proxy model with the given
parent
.- createSourceIndex(row, col, internalPtr)#
- Parameters:
row – int
col – int
internalPtr –
void
- Return type:
Equivalent to calling createIndex on the source model.
This method is useful if your proxy model wants to maintain the parent-child relationship of items in the source model. When reimplementing
mapToSource()
, you can call this method to create an index for rowrow
and columncol
of the source model.A typical use would be to save the internal pointer coming from the source model in the proxy index when reimplementing
mapFromSource()
and use the same internal pointer asinternalPtr
to recover the original source index when reimplementingmapToSource()
.- abstract mapFromSource(sourceIndex)#
- Parameters:
sourceIndex –
QModelIndex
- Return type:
Reimplement this function to return the model index in the proxy model that corresponds to the
sourceIndex
from the source model.See also
- mapSelectionFromSource(selection)#
- Parameters:
selection –
QItemSelection
- Return type:
Returns a proxy selection mapped from the specified
sourceSelection
.Reimplement this method to map source selections to proxy selections.
- mapSelectionToSource(selection)#
- Parameters:
selection –
QItemSelection
- Return type:
Returns a source selection mapped from the specified
proxySelection
.Reimplement this method to map proxy selections to source selections.
- abstract mapToSource(proxyIndex)#
- Parameters:
proxyIndex –
QModelIndex
- Return type:
Reimplement this function to return the model index in the source model that corresponds to the
proxyIndex
in the proxy model.See also
- setSourceModel(sourceModel)#
- Parameters:
sourceModel –
QAbstractItemModel
Sets the given
sourceModel
to be processed by the proxy model.Subclasses should call
beginResetModel()
at the beginning of the method, disconnect from the old model, call this method, connect to the new model, and callendResetModel()
.See also
Setter of property
sourceModelᅟ
.- sourceModel()#
- Return type:
Returns the model that contains the data that is available through the proxy model.
See also
Getter of property
sourceModelᅟ
.- sourceModelChanged()#
Notification signal of property
sourceModelᅟ
.