Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QGenericTableItemModelImpl< Range > Class Template Reference

#include <qrangemodel_impl.h>

Inheritance diagram for QGenericTableItemModelImpl< Range >:
Collaboration diagram for QGenericTableItemModelImpl< Range >:

Public Types

using range_type = typename Base::range_type
using range_features = typename Base::range_features
using row_type = typename Base::row_type
using row_ptr = typename Base::row_ptr
using const_row_ptr = typename Base::const_row_ptr
using row_traits = typename Base::row_traits
using row_features = typename Base::row_features
Public Types inherited from QRangeModelImpl< QGenericTableItemModelImpl< Range >, Range >
using range_type
using range_features
using row_reference
using row_type
using wrapped_row_type
using row_features
using row_traits
using protocol_type
using protocol_traits
using ModelData
using ProtocolStorage
using const_row_reference
using Override
using Destroy
using Index
using Parent
using Sibling
using RowCount
using ColumnCount
using Flags
using HeaderData
using Data
using ItemData
using RoleNames
using InvalidateCaches
using SetHeaderData
using SetData
using SetItemData
using ClearItemData
using InsertColumns
using RemoveColumns
using MoveColumns
using InsertRows
using RemoveRows
using MoveRows
using MultiData
using SetAutoConnectPolicy
using InterfaceVersion
using Sort
using Match
using AdjustSupportedDragActions
using AdjustSupportedDropActions
using MimeTypes
using CanDropMimeData
using DropMimeData
using MimeData
Public Types inherited from Interface
using Container = QVarLengthArray<Interface, 1>

Public Member Functions

 QGenericTableItemModelImpl (Range &&model, QRangeModel *itemModel)
Public Member Functions inherited from QRangeModelImpl< QGenericTableItemModelImpl< Range >, Range >
 QRangeModelImpl (Range &&model, QRangeModelDetails::table_protocol_t< Range > &&protocol, QRangeModel *itemModel)
void interfaceVersion (int &versionNumber) const
void invalidateCaches ()
bool setHeaderData (int, Qt::Orientation, const QVariant &, int)
QModelIndex index (int rowrow, int columncolumn, const QModelIndex &parent) const
QModelIndex sibling (int rowrow, int columncolumn, const QModelIndex &indexindex) const
Qt::ItemFlags flags (const QModelIndex &indexindex) const
QVariant headerData (int section, Qt::Orientation orientation, int role) const
QVariant data (const QModelIndex &indexindex, int role) const
QMap< int, QVariant > itemData (const QModelIndex &indexindex) const
void multiData (const QModelIndex &indexindex, QModelRoleDataSpan roleDataSpan) const
bool setData (const QModelIndex &indexindex, const QVariant &datadata, int role)
void updateTarget (LHS &org, RHS &&copy) noexcept
void updateTarget (LHS *org, RHS &&copy) noexcept
bool setItemData (const QModelIndex &indexindex, const QMap< int, QVariant > &datadata)
bool clearItemData (const QModelIndex &indexindex)
QHash< int, QByteArray > roleNames () const
bool autoConnectPropertiesInRow (const row_type &rowrow, int rowIndex, const QModelIndex &parent) const
void clearConnectionInRow (const row_type &rowrow, int rowIndex, const QModelIndex &parent) const
void setAutoConnectPolicy ()
void sort (int columncolumn, Qt::SortOrder orderorder)
void sortSubRange (range_type &rangerange, row_ptr expectedParent, const LessThan &lessThan)
QModelIndexList match (const QModelIndex &startstart, int role, const QVariant &valuevalue, int hits, Qt::MatchFlags flagsflags) const
bool matchRow (const_row_reference rowrow, const QModelIndex &indexindex, int role, const QVariant &valuevalue, Qt::MatchFlags flagsflags, const QCollator &collator) const
bool doInsertColumns (int columncolumn, int countcount, const QModelIndex &parent, InsertFn insertFn)
bool insertColumns (int columncolumn, int countcount, const QModelIndex &parent)
bool removeColumns (int columncolumn, int countcount, const QModelIndex &parent)
bool moveColumns (const QModelIndex &sourceParent, int sourceColumn, int countcount, const QModelIndex &destParent, int destColumn)
bool doInsertRows (int rowrow, int countcount, const QModelIndex &parent, InsertFn &&insertFn)
bool insertRows (int rowrow, int countcount, const QModelIndex &parent)
bool removeRows (int rowrow, int countcount, const QModelIndex &parent={})
bool moveRows (const QModelIndex &sourceParent, int sourceRow, int countcount, const QModelIndex &destParent, int destRow)
const protocol_type & protocol () const
protocol_type & protocol ()
QModelIndex parent (const QModelIndex &child) const
int rowCount (const QModelIndex &parent) const
int columnCount (const QModelIndex &parent) const
void destroy ()
Qt::DropActions adjustSupportedDragActions (Qt::DropActions dragActions)
Qt::DropActions adjustSupportedDropActions (Qt::DropActions dropActions)
QStringList mimeTypes () const
bool canDropMimeData (const QMimeData *datadata, Qt::DropAction action, int rowrow, int columncolumn, const QModelIndex &targettarget) const
bool doDropMimeData (std::vector< QRangeModelDetails::DroppedEntry< Entry > > &droppedEntries, DropOperation dropOperation, int rowrow, int columncolumn, const QModelIndex &targettarget)
bool dropMimeData (const QMimeData *datadata, Qt::DropAction action, int rowrow, int columncolumn, const QModelIndex &targettarget)
QMimeData * mimeData (const QModelIndexList &indexes) const
Public Member Functions inherited from Interface
 Interface ()=default
 Interface (const QCborValue &cbor)

Protected Member Functions

QModelIndex indexImpl (int rowrow, int columncolumn, const QModelIndex &) const
QModelIndex parentImpl (const QModelIndex &) const
int rowCountImpl (const QModelIndex &parent) const
int columnCountImpl (const QModelIndex &parent) const
constexpr bool moveRowsAcross (const QModelIndex &, int, int, const QModelIndex &, int) noexcept
auto makeEmptyRow (typename Base::row_ptr)
template<typename It, typename Sentinel>
void deleteRemovedRows (It &&begin, Sentinel &&endend)
decltype(auto) rowDataImpl (const QModelIndex &indexindex) const
decltype(auto) rowDataImpl (const QModelIndex &indexindex)
const range_type * childRangeImpl (const QModelIndex &) const
range_type * childRangeImpl (const QModelIndex &)
const range_type & childrenOf (const_row_ptr rowrow) const
range_type & childrenOf (row_ptr rowrow)
void resetParentInChildren (range_type *)
bool autoConnectPropertiesImpl () const
template<typename LessThan>
void sortImpl (const LessThan &lessThan)
void prunePersistentIndexList (QModelIndexList &, typename Base::row_ptr)
QModelIndexList matchImpl (const QModelIndex &startstart, int role, const QVariant &valuevalue, int hits, Qt::MatchFlags flagsflags, const QCollator &collator) const
bool dropOnItem (const QMimeData *datadata, const QModelIndex &indexindex)
Protected Member Functions inherited from QRangeModelImpl< QGenericTableItemModelImpl< Range >, Range >
QGenericTableItemModelImpl< Range > & that ()
const QGenericTableItemModelImpl< Range > & that () const
auto maybeBlockDataChangedDispatch ()
 ~QRangeModelImpl ()
void deleteOwnedRows ()
bool writeAt (const QModelIndex &indexindex, F &&writer)
bool readAt (const QModelIndex &indexindex, F &&reader) const
QMetaProperty roleProperty (int role) const
void connectPropertyOnRead (const QModelIndex &indexindex, int role, const QObject *gadget, const QMetaProperty &prop) const
QVariant readRole (const QModelIndex &indexindex, int role, ItemType *gadget) const
QVariant readRole (const QModelIndex &indexindex, int role, const ItemType &gadget) const
QVariant readProperty (const QModelIndex &indexindex, ItemType *gadget) const
QVariant readProperty (const QModelIndex &indexindex, const ItemType &gadget) const
bool writeRole (int role, ItemType *gadget, const QVariant &datadata)
bool writeRole (int role, ItemType &&gadget, const QVariant &datadata)
const_row_reference rowData (const QModelIndex &indexindex) const
row_reference rowData (const QModelIndex &indexindex)
const range_type * childRange (const QModelIndex &indexindex) const
range_type * childRange (const QModelIndex &indexindex)
Protected Member Functions inherited from QtPrivate::QQuasiVirtualSubclass< Subclass, Interface >
template<typename... Args>
 QQuasiVirtualSubclass (Args &&... args)

Static Protected Member Functions

static constexpr Qt::ItemFlags defaultFlags ()
static constexpr bool canInsertRowsImpl ()
static constexpr bool canRemoveRowsImpl ()
static constexpr bool canMoveColumns (const QModelIndex &sourcesource, const QModelIndex &destination)
static constexpr bool canMoveRows (const QModelIndex &sourcesource, const QModelIndex &destination)
Static Protected Member Functions inherited from QRangeModelImpl< QGenericTableItemModelImpl< Range >, Range >
static constexpr int size (const C &cc)
static constexpr bool canInsertRows ()
static constexpr bool canRemoveRows ()
static QVariant read (const Value &valuevalue)
static QVariant read (Value *valuevalue)
static bool write (Target &targettarget, const QVariant &valuevalue)
static bool write (Target *targettarget, const QVariant &valuevalue)
static QVariant readProperty (const QMetaProperty &prop, ItemType *gadget)
static bool writeProperty (const QMetaProperty &prop, ItemType *gadget, const QVariant &datadata)
static bool writeProperty (int property, ItemType *gadget, const QVariant &datadata)
static bool writeProperty (int property, ItemType &&gadget, const QVariant &datadata)
static bool resetProperty (int property, ItemType *objectobject)
static bool resetProperty (int property, ItemType &&objectobject)

Friends

class QRangeModelImpl< QGenericTableItemModelImpl< Range >, Range >

Additional Inherited Members

Static Public Member Functions inherited from QRangeModelImpl< QGenericTableItemModelImpl< Range >, Range >
static constexpr bool isMutable ()
static constexpr bool dynamicRows ()
static constexpr bool dynamicColumns ()
static constexpr bool isRangeModelRole (int role)
static constexpr bool isPrimaryRole (int role)
static constexpr int fixedColumnCount ()
Public Attributes inherited from Interface
QAnyStringView className
Static Public Attributes inherited from QRangeModelImpl< QGenericTableItemModelImpl< Range >, Range >
static constexpr bool itemsAreQObjects
static constexpr bool rowsAreQObjects
Protected Types inherited from QRangeModelImpl< QGenericTableItemModelImpl< Range >, Range >
using Self
using Ancestor
using row_ptr
using const_row_ptr
using AutoConnectPolicy
using DropOperation
Protected Attributes inherited from QRangeModelImpl< QGenericTableItemModelImpl< Range >, Range >
ModelData m_data
Static Protected Attributes inherited from QRangeModelImpl< QGenericTableItemModelImpl< Range >, Range >
static constexpr int static_row_count
static constexpr bool rows_are_raw_pointers
static constexpr bool rows_are_owning_or_raw_pointers
static constexpr int static_column_count
static constexpr bool one_dimensional_range
static constexpr bool has_metaobject

Detailed Description

template<typename Range>
class QGenericTableItemModelImpl< Range >

Definition at line 4096 of file qrangemodel_impl.h.

Member Typedef Documentation

◆ const_row_ptr

template<typename Range>
using QGenericTableItemModelImpl< Range >::const_row_ptr = typename Base::const_row_ptr

Definition at line 4109 of file qrangemodel_impl.h.

◆ range_features

template<typename Range>
using QGenericTableItemModelImpl< Range >::range_features = typename Base::range_features

Definition at line 4106 of file qrangemodel_impl.h.

◆ range_type

template<typename Range>
using QGenericTableItemModelImpl< Range >::range_type = typename Base::range_type

Definition at line 4105 of file qrangemodel_impl.h.

◆ row_features

template<typename Range>
using QGenericTableItemModelImpl< Range >::row_features = typename Base::row_features

Definition at line 4111 of file qrangemodel_impl.h.

◆ row_ptr

template<typename Range>
using QGenericTableItemModelImpl< Range >::row_ptr = typename Base::row_ptr

Definition at line 4108 of file qrangemodel_impl.h.

◆ row_traits

template<typename Range>
using QGenericTableItemModelImpl< Range >::row_traits = typename Base::row_traits

Definition at line 4110 of file qrangemodel_impl.h.

◆ row_type

template<typename Range>
using QGenericTableItemModelImpl< Range >::row_type = typename Base::row_type

Definition at line 4107 of file qrangemodel_impl.h.

Constructor & Destructor Documentation

◆ QGenericTableItemModelImpl()

template<typename Range>
QGenericTableItemModelImpl< Range >::QGenericTableItemModelImpl ( Range && model,
QRangeModel * itemModel )
inlineexplicit

Definition at line 4113 of file qrangemodel_impl.h.

References QGenericTableItemModelImpl().

Referenced by QGenericTableItemModelImpl().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Function Documentation

◆ autoConnectPropertiesImpl()

template<typename Range>
bool QGenericTableItemModelImpl< Range >::autoConnectPropertiesImpl ( ) const
inlineprotected

Definition at line 4252 of file qrangemodel_impl.h.

◆ canInsertRowsImpl()

template<typename Range>
constexpr bool QGenericTableItemModelImpl< Range >::canInsertRowsImpl ( )
inlinestaticconstexprprotected

Definition at line 4165 of file qrangemodel_impl.h.

◆ canMoveColumns()

template<typename Range>
constexpr bool QGenericTableItemModelImpl< Range >::canMoveColumns ( const QModelIndex & source,
const QModelIndex & destination )
inlinestaticconstexprprotected

Definition at line 4175 of file qrangemodel_impl.h.

◆ canMoveRows()

template<typename Range>
constexpr bool QGenericTableItemModelImpl< Range >::canMoveRows ( const QModelIndex & source,
const QModelIndex & destination )
inlinestaticconstexprprotected

Definition at line 4180 of file qrangemodel_impl.h.

◆ canRemoveRowsImpl()

template<typename Range>
constexpr bool QGenericTableItemModelImpl< Range >::canRemoveRowsImpl ( )
inlinestaticconstexprprotected

Definition at line 4170 of file qrangemodel_impl.h.

◆ childRangeImpl() [1/2]

template<typename Range>
range_type * QGenericTableItemModelImpl< Range >::childRangeImpl ( const QModelIndex & )
inlineprotected

Definition at line 4231 of file qrangemodel_impl.h.

◆ childRangeImpl() [2/2]

template<typename Range>
const range_type * QGenericTableItemModelImpl< Range >::childRangeImpl ( const QModelIndex & ) const
inlineprotected

Definition at line 4226 of file qrangemodel_impl.h.

◆ childrenOf() [1/2]

template<typename Range>
const range_type & QGenericTableItemModelImpl< Range >::childrenOf ( const_row_ptr row) const
inlineprotected

Definition at line 4236 of file qrangemodel_impl.h.

◆ childrenOf() [2/2]

template<typename Range>
range_type & QGenericTableItemModelImpl< Range >::childrenOf ( row_ptr row)
inlineprotected

Definition at line 4242 of file qrangemodel_impl.h.

◆ columnCountImpl()

template<typename Range>
int QGenericTableItemModelImpl< Range >::columnCountImpl ( const QModelIndex & parent) const
inlineprotected

Definition at line 4145 of file qrangemodel_impl.h.

◆ defaultFlags()

template<typename Range>
constexpr Qt::ItemFlags QGenericTableItemModelImpl< Range >::defaultFlags ( )
inlinestaticconstexprprotected

Definition at line 4160 of file qrangemodel_impl.h.

◆ deleteRemovedRows()

template<typename Range>
template<typename It, typename Sentinel>
void QGenericTableItemModelImpl< Range >::deleteRemovedRows ( It && begin,
Sentinel && end )
inlineprotected

Definition at line 4206 of file qrangemodel_impl.h.

◆ dropOnItem()

template<typename Range>
bool QGenericTableItemModelImpl< Range >::dropOnItem ( const QMimeData * data,
const QModelIndex & index )
inlineprotected

Definition at line 4301 of file qrangemodel_impl.h.

◆ indexImpl()

template<typename Range>
QModelIndex QGenericTableItemModelImpl< Range >::indexImpl ( int row,
int column,
const QModelIndex &  ) const
inlineprotected

Definition at line 4118 of file qrangemodel_impl.h.

◆ makeEmptyRow()

template<typename Range>
auto QGenericTableItemModelImpl< Range >::makeEmptyRow ( typename Base::row_ptr )
inlineprotected

Definition at line 4192 of file qrangemodel_impl.h.

◆ matchImpl()

template<typename Range>
QModelIndexList QGenericTableItemModelImpl< Range >::matchImpl ( const QModelIndex & start,
int role,
const QVariant & value,
int hits,
Qt::MatchFlags flags,
const QCollator & collator ) const
inlineprotected

Definition at line 4271 of file qrangemodel_impl.h.

◆ moveRowsAcross()

template<typename Range>
bool QGenericTableItemModelImpl< Range >::moveRowsAcross ( const QModelIndex & ,
int ,
int ,
const QModelIndex & ,
int  )
inlineconstexprprotectednoexcept

Definition at line 4185 of file qrangemodel_impl.h.

◆ parentImpl()

template<typename Range>
QModelIndex QGenericTableItemModelImpl< Range >::parentImpl ( const QModelIndex & ) const
inlineprotected

Definition at line 4133 of file qrangemodel_impl.h.

◆ prunePersistentIndexList()

template<typename Range>
void QGenericTableItemModelImpl< Range >::prunePersistentIndexList ( QModelIndexList & ,
typename Base::row_ptr  )
inlineprotected

Definition at line 4269 of file qrangemodel_impl.h.

◆ resetParentInChildren()

template<typename Range>
void QGenericTableItemModelImpl< Range >::resetParentInChildren ( range_type * )
inlineprotected

Definition at line 4248 of file qrangemodel_impl.h.

◆ rowCountImpl()

template<typename Range>
int QGenericTableItemModelImpl< Range >::rowCountImpl ( const QModelIndex & parent) const
inlineprotected

Definition at line 4138 of file qrangemodel_impl.h.

◆ rowDataImpl() [1/2]

template<typename Range>
decltype(auto) QGenericTableItemModelImpl< Range >::rowDataImpl ( const QModelIndex & index)
inlineprotected

Definition at line 4220 of file qrangemodel_impl.h.

◆ rowDataImpl() [2/2]

template<typename Range>
decltype(auto) QGenericTableItemModelImpl< Range >::rowDataImpl ( const QModelIndex & index) const
inlineprotected

Definition at line 4214 of file qrangemodel_impl.h.

◆ sortImpl()

template<typename Range>
template<typename LessThan>
void QGenericTableItemModelImpl< Range >::sortImpl ( const LessThan & lessThan)
inlineprotected

Definition at line 4264 of file qrangemodel_impl.h.

◆ QRangeModelImpl< QGenericTableItemModelImpl< Range >, Range >

template<typename Range>
friend class QRangeModelImpl< QGenericTableItemModelImpl< Range >, Range >
friend

Definition at line 4088 of file qrangemodel_impl.h.


The documentation for this class was generated from the following file: