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
QRangeModelImpl< Structure, Range, Protocol > Class Template Reference

#include <qrangemodel_impl.h>

Inheritance diagram for QRangeModelImpl< Structure, Range, Protocol >:
Collaboration diagram for QRangeModelImpl< Structure, Range, Protocol >:

Classes

struct  EmptyRowGenerator
struct  ItemReader
struct  unordered
struct  Compare
struct  MimeDataRowIterator
struct  MimeDataItemIterator
struct  MimeDataRange

Public Types

using range_type = QRangeModelDetails::wrapped_t<Range>
using range_features = QRangeModelDetails::range_traits<range_type>
using row_reference = decltype(*QRangeModelDetails::adl_begin(std::declval<range_type&>()))
using row_type = std::remove_reference_t<row_reference>
using wrapped_row_type = QRangeModelDetails::wrapped_t<row_type>
using row_features = QRangeModelDetails::range_traits<wrapped_row_type>
using row_traits = QRangeModelDetails::row_traits<std::remove_cv_t<wrapped_row_type>>
using protocol_type = QRangeModelDetails::wrapped_t<Protocol>
using protocol_traits = QRangeModelDetails::protocol_traits<Range, protocol_type>
using ModelData
using ProtocolStorage = QtPrivate::CompactStorage<Protocol>
using const_row_reference = decltype(*std::declval<typename ModelData::const_iterator&>())
template<typename BaseMethod, typename BaseMethod::template Overridden< Self > overridden>
using Override = typename Ancestor::template Override<BaseMethod, overridden>
using Destroy = Override<QRangeModelImplBase::Destroy, &Self::destroy>
using Index = Override<QRangeModelImplBase::Index, &Self::index>
using Parent = Override<QRangeModelImplBase::Parent, &Self::parent>
using Sibling = Override<QRangeModelImplBase::Sibling, &Self::sibling>
using RowCount = Override<QRangeModelImplBase::RowCount, &Self::rowCount>
using ColumnCount = Override<QRangeModelImplBase::ColumnCount, &Self::columnCount>
using Flags = Override<QRangeModelImplBase::Flags, &Self::flags>
using HeaderData = Override<QRangeModelImplBase::HeaderData, &Self::headerData>
using Data = Override<QRangeModelImplBase::Data, &Self::data>
using ItemData = Override<QRangeModelImplBase::ItemData, &Self::itemData>
using RoleNames = Override<QRangeModelImplBase::RoleNames, &Self::roleNames>
using InvalidateCaches = Override<QRangeModelImplBase::InvalidateCaches, &Self::invalidateCaches>
using SetHeaderData = Override<QRangeModelImplBase::SetHeaderData, &Self::setHeaderData>
using SetData = Override<QRangeModelImplBase::SetData, &Self::setData>
using SetItemData = Override<QRangeModelImplBase::SetItemData, &Self::setItemData>
using ClearItemData = Override<QRangeModelImplBase::ClearItemData, &Self::clearItemData>
using InsertColumns = Override<QRangeModelImplBase::InsertColumns, &Self::insertColumns>
using RemoveColumns = Override<QRangeModelImplBase::RemoveColumns, &Self::removeColumns>
using MoveColumns = Override<QRangeModelImplBase::MoveColumns, &Self::moveColumns>
using InsertRows = Override<QRangeModelImplBase::InsertRows, &Self::insertRows>
using RemoveRows = Override<QRangeModelImplBase::RemoveRows, &Self::removeRows>
using MoveRows = Override<QRangeModelImplBase::MoveRows, &Self::moveRows>
using MultiData = Override<QRangeModelImplBase::MultiData, &Self::multiData>
using SetAutoConnectPolicy
using InterfaceVersion = Override<QRangeModelImplBase::InterfaceVersion, &Self::interfaceVersion>
using Sort = Override<QRangeModelImplBase::Sort, &Self::sort>
using Match = Override<QRangeModelImplBase::Match, &Self::match>
using AdjustSupportedDragActions
using AdjustSupportedDropActions
using MimeTypes = Override<QRangeModelImplBase::MimeTypes, &Self::mimeTypes>
using CanDropMimeData = Override<QRangeModelImplBase::CanDropMimeData, &Self::canDropMimeData>
using DropMimeData = Override<QRangeModelImplBase::DropMimeData, &Self::dropMimeData>
using MimeData = Override<QRangeModelImplBase::MimeData, &Self::mimeData>
Public Types inherited from Interface
using Container = QVarLengthArray<Interface, 1>

Public Member Functions

 QRangeModelImpl (Range &&model, Protocol &&protocol, QRangeModel *itemModel)
void interfaceVersion (int &versionNumber) const
void invalidateCaches ()
bool setHeaderData (int, Qt::Orientation, const QVariant &, int)
QModelIndex index (int row, int column, const QModelIndex &parent) const
QModelIndex sibling (int row, int column, const QModelIndex &index) const
Qt::ItemFlags flags (const QModelIndex &index) const
QVariant headerData (int section, Qt::Orientation orientation, int role) const
QVariant data (const QModelIndex &index, int role) const
QMap< int, QVariantitemData (const QModelIndex &index) const
void multiData (const QModelIndex &index, QModelRoleDataSpan roleDataSpan) const
bool setData (const QModelIndex &index, const QVariant &data, int role)
template<typename LHS, typename RHS>
void updateTarget (LHS &org, RHS &&copy) noexcept
template<typename LHS, typename RHS>
void updateTarget (LHS *org, RHS &&copy) noexcept
bool setItemData (const QModelIndex &index, const QMap< int, QVariant > &data)
bool clearItemData (const QModelIndex &index)
QHash< int, QByteArrayroleNames () const
bool autoConnectPropertiesInRow (const row_type &row, int rowIndex, const QModelIndex &parent) const
void clearConnectionInRow (const row_type &row, int rowIndex, const QModelIndex &parent) const
void setAutoConnectPolicy ()
void sort (int column, Qt::SortOrder order)
template<typename LessThan>
void sortSubRange (range_type &range, row_ptr expectedParent, const LessThan &lessThan)
QModelIndexList match (const QModelIndex &start, int role, const QVariant &value, int hits, Qt::MatchFlags flags) const
bool matchRow (const_row_reference row, const QModelIndex &index, int role, const QVariant &value, Qt::MatchFlags flags) const
template<typename InsertFn>
bool doInsertColumns (int column, int count, const QModelIndex &parent, InsertFn insertFn)
bool insertColumns (int column, int count, const QModelIndex &parent)
bool removeColumns (int column, int count, const QModelIndex &parent)
bool moveColumns (const QModelIndex &sourceParent, int sourceColumn, int count, const QModelIndex &destParent, int destColumn)
template<typename InsertFn>
bool doInsertRows (int row, int count, const QModelIndex &parent, InsertFn &&insertFn)
bool insertRows (int row, int count, const QModelIndex &parent)
bool removeRows (int row, int count, const QModelIndex &parent={})
bool moveRows (const QModelIndex &sourceParent, int sourceRow, int count, const QModelIndex &destParent, int destRow)
const protocol_typeprotocol () const
protocol_typeprotocol ()
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 *data, Qt::DropAction action, int row, int column, const QModelIndex &target) const
template<Qt::Orientation orient, typename Entry>
bool doDropMimeData (std::vector< QRangeModelDetails::DroppedEntry< Entry > > &droppedEntries, DropOperation dropOperation, int row, int column, const QModelIndex &target)
bool dropMimeData (const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &target)
QMimeDatamimeData (const QModelIndexList &indexes) const
Public Member Functions inherited from Interface
 Interface ()=default
 Interface (const QCborValue &cbor)

Static Public Member Functions

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 ()

Static Public Attributes

static constexpr bool itemsAreQObjects
static constexpr bool rowsAreQObjects

Protected Types

using Self = QRangeModelImpl<Structure, Range, Protocol>
using Ancestor = QtPrivate::QQuasiVirtualSubclass<Self, QRangeModelImplBase>
using row_ptr = wrapped_row_type *
using const_row_ptr = const wrapped_row_type *
using AutoConnectPolicy = typename Ancestor::AutoConnectPolicy
using DropOperation = typename Ancestor::DropOperation

Protected Member Functions

Structure & that ()
const Structure & that () const
auto maybeBlockDataChangedDispatch ()
 ~QRangeModelImpl ()
void deleteOwnedRows ()
template<typename F>
bool writeAt (const QModelIndex &index, F &&writer)
template<typename F>
bool readAt (const QModelIndex &index, F &&reader) const
template<typename ItemType>
QMetaProperty roleProperty (int role) const
void connectPropertyOnRead (const QModelIndex &index, int role, const QObject *gadget, const QMetaProperty &prop) const
template<typename ItemType>
QVariant readRole (const QModelIndex &index, int role, ItemType *gadget) const
template<typename ItemType>
QVariant readRole (const QModelIndex &index, int role, const ItemType &gadget) const
template<typename ItemType>
QVariant readProperty (const QModelIndex &index, ItemType *gadget) const
template<typename ItemType>
QVariant readProperty (const QModelIndex &index, const ItemType &gadget) const
template<typename ItemType>
bool writeRole (int role, ItemType *gadget, const QVariant &data)
template<typename ItemType>
bool writeRole (int role, ItemType &&gadget, const QVariant &data)
const_row_reference rowData (const QModelIndex &index) const
row_reference rowData (const QModelIndex &index)
const range_typechildRange (const QModelIndex &index) const
range_typechildRange (const QModelIndex &index)
Protected Member Functions inherited from QtPrivate::QQuasiVirtualSubclass< Subclass, Interface >
template<typename... Args>
 QQuasiVirtualSubclass (Args &&... args)

Static Protected Member Functions

template<typename C>
static constexpr int size (const C &c)
static constexpr bool canInsertRows ()
static constexpr bool canRemoveRows ()
template<typename Value>
static QVariant read (const Value &value)
template<typename Value>
static QVariant read (Value *value)
template<typename Target>
static bool write (Target &target, const QVariant &value)
template<typename Target>
static bool write (Target *target, const QVariant &value)
template<typename ItemType>
static QVariant readProperty (const QMetaProperty &prop, ItemType *gadget)
template<typename ItemType>
static bool writeProperty (const QMetaProperty &prop, ItemType *gadget, const QVariant &data)
template<typename ItemType>
static bool writeProperty (int property, ItemType *gadget, const QVariant &data)
template<typename ItemType>
static bool writeProperty (int property, ItemType &&gadget, const QVariant &data)
template<typename ItemType>
static bool resetProperty (int property, ItemType *object)
template<typename ItemType>
static bool resetProperty (int property, ItemType &&object)

Protected Attributes

ModelData m_data

Static Protected Attributes

static constexpr int static_row_count = QRangeModelDetails::static_size_v<range_type>
static constexpr bool rows_are_raw_pointers = std::is_pointer_v<row_type>
static constexpr bool rows_are_owning_or_raw_pointers
static constexpr int static_column_count = QRangeModelDetails::static_size_v<row_type>
static constexpr bool one_dimensional_range = static_column_count == 0
template<typename T>
static constexpr bool has_metaobject

Friends

template<typename, typename, typename>
class QRangeModelAdapter

Additional Inherited Members

Public Attributes inherited from Interface
QAnyStringView className

Detailed Description

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
class QRangeModelImpl< Structure, Range, Protocol >

Definition at line 1390 of file qrangemodel_impl.h.

Member Typedef Documentation

◆ AdjustSupportedDragActions

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::AdjustSupportedDragActions
Initial value:
Method<&Self::adjustSupportedDragActions > AdjustSupportedDragActions
typename Ancestor::template Override< BaseMethod, overridden > Override
Qt::DropActions adjustSupportedDragActions(Qt::DropActions dragActions)

Definition at line 3283 of file qrangemodel_impl.h.

◆ AdjustSupportedDropActions

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::AdjustSupportedDropActions
Initial value:
Method<&Self::adjustSupportedDropActions > AdjustSupportedDropActions
Qt::DropActions adjustSupportedDropActions(Qt::DropActions dropActions)

Definition at line 3285 of file qrangemodel_impl.h.

◆ Ancestor

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::Ancestor = QtPrivate::QQuasiVirtualSubclass<Self, QRangeModelImplBase>
protected

Definition at line 1432 of file qrangemodel_impl.h.

◆ AutoConnectPolicy

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::AutoConnectPolicy = typename Ancestor::AutoConnectPolicy
protected

Definition at line 1516 of file qrangemodel_impl.h.

◆ CanDropMimeData

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::CanDropMimeData = Override<QRangeModelImplBase::CanDropMimeData, &Self::canDropMimeData>

Definition at line 3289 of file qrangemodel_impl.h.

◆ ClearItemData

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::ClearItemData = Override<QRangeModelImplBase::ClearItemData, &Self::clearItemData>

Definition at line 3268 of file qrangemodel_impl.h.

◆ ColumnCount

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::ColumnCount = Override<QRangeModelImplBase::ColumnCount, &Self::columnCount>

Definition at line 3257 of file qrangemodel_impl.h.

◆ const_row_ptr

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::const_row_ptr = const wrapped_row_type *
protected

Definition at line 1479 of file qrangemodel_impl.h.

◆ const_row_reference

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::const_row_reference = decltype(*std::declval<typename ModelData::const_iterator&>())

Definition at line 1421 of file qrangemodel_impl.h.

◆ Data

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::Data = Override<QRangeModelImplBase::Data, &Self::data>

Definition at line 3261 of file qrangemodel_impl.h.

◆ Destroy

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::Destroy = Override<QRangeModelImplBase::Destroy, &Self::destroy>

Definition at line 3252 of file qrangemodel_impl.h.

◆ DropMimeData

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::DropMimeData = Override<QRangeModelImplBase::DropMimeData, &Self::dropMimeData>

Definition at line 3290 of file qrangemodel_impl.h.

◆ DropOperation

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::DropOperation = typename Ancestor::DropOperation
protected

Definition at line 1517 of file qrangemodel_impl.h.

◆ Flags

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::Flags = Override<QRangeModelImplBase::Flags, &Self::flags>

Definition at line 3258 of file qrangemodel_impl.h.

◆ HeaderData

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::HeaderData = Override<QRangeModelImplBase::HeaderData, &Self::headerData>

Definition at line 3259 of file qrangemodel_impl.h.

◆ Index

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::Index = Override<QRangeModelImplBase::Index, &Self::index>

Definition at line 3253 of file qrangemodel_impl.h.

◆ InsertColumns

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::InsertColumns = Override<QRangeModelImplBase::InsertColumns, &Self::insertColumns>

Definition at line 3269 of file qrangemodel_impl.h.

◆ InsertRows

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::InsertRows = Override<QRangeModelImplBase::InsertRows, &Self::insertRows>

Definition at line 3272 of file qrangemodel_impl.h.

◆ InterfaceVersion

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::InterfaceVersion = Override<QRangeModelImplBase::InterfaceVersion, &Self::interfaceVersion>

Definition at line 3280 of file qrangemodel_impl.h.

◆ InvalidateCaches

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::InvalidateCaches = Override<QRangeModelImplBase::InvalidateCaches, &Self::invalidateCaches>

Definition at line 3264 of file qrangemodel_impl.h.

◆ ItemData

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::ItemData = Override<QRangeModelImplBase::ItemData, &Self::itemData>

Definition at line 3262 of file qrangemodel_impl.h.

◆ Match

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::Match = Override<QRangeModelImplBase::Match, &Self::match>

Definition at line 3282 of file qrangemodel_impl.h.

◆ MimeData

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::MimeData = Override<QRangeModelImplBase::MimeData, &Self::mimeData>

Definition at line 3291 of file qrangemodel_impl.h.

◆ MimeTypes

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::MimeTypes = Override<QRangeModelImplBase::MimeTypes, &Self::mimeTypes>

Definition at line 3288 of file qrangemodel_impl.h.

◆ ModelData

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::ModelData

◆ MoveColumns

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::MoveColumns = Override<QRangeModelImplBase::MoveColumns, &Self::moveColumns>

Definition at line 3271 of file qrangemodel_impl.h.

◆ MoveRows

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::MoveRows = Override<QRangeModelImplBase::MoveRows, &Self::moveRows>

Definition at line 3274 of file qrangemodel_impl.h.

◆ MultiData

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::MultiData = Override<QRangeModelImplBase::MultiData, &Self::multiData>

Definition at line 3276 of file qrangemodel_impl.h.

◆ Override

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename BaseMethod, typename BaseMethod::template Overridden< Self > overridden>
using QRangeModelImpl< Structure, Range, Protocol >::Override = typename Ancestor::template Override<BaseMethod, overridden>

Definition at line 3250 of file qrangemodel_impl.h.

◆ Parent

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::Parent = Override<QRangeModelImplBase::Parent, &Self::parent>

Definition at line 3254 of file qrangemodel_impl.h.

◆ protocol_traits

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::protocol_traits = QRangeModelDetails::protocol_traits<Range, protocol_type>

Definition at line 1404 of file qrangemodel_impl.h.

◆ protocol_type

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::protocol_type = QRangeModelDetails::wrapped_t<Protocol>

Definition at line 1403 of file qrangemodel_impl.h.

◆ ProtocolStorage

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::ProtocolStorage = QtPrivate::CompactStorage<Protocol>

Definition at line 1419 of file qrangemodel_impl.h.

◆ range_features

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::range_features = QRangeModelDetails::range_traits<range_type>

Definition at line 1397 of file qrangemodel_impl.h.

◆ range_type

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::range_type = QRangeModelDetails::wrapped_t<Range>

Definition at line 1396 of file qrangemodel_impl.h.

◆ RemoveColumns

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::RemoveColumns = Override<QRangeModelImplBase::RemoveColumns, &Self::removeColumns>

Definition at line 3270 of file qrangemodel_impl.h.

◆ RemoveRows

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::RemoveRows = Override<QRangeModelImplBase::RemoveRows, &Self::removeRows>

Definition at line 3273 of file qrangemodel_impl.h.

◆ RoleNames

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::RoleNames = Override<QRangeModelImplBase::RoleNames, &Self::roleNames>

Definition at line 3263 of file qrangemodel_impl.h.

◆ row_features

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::row_features = QRangeModelDetails::range_traits<wrapped_row_type>

Definition at line 1401 of file qrangemodel_impl.h.

◆ row_ptr

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::row_ptr = wrapped_row_type *
protected

Definition at line 1478 of file qrangemodel_impl.h.

◆ row_reference

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::row_reference = decltype(*QRangeModelDetails::adl_begin(std::declval<range_type&>()))

Definition at line 1398 of file qrangemodel_impl.h.

◆ row_traits

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::row_traits = QRangeModelDetails::row_traits<std::remove_cv_t<wrapped_row_type>>

Definition at line 1402 of file qrangemodel_impl.h.

◆ row_type

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::row_type = std::remove_reference_t<row_reference>

Definition at line 1399 of file qrangemodel_impl.h.

◆ RowCount

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::RowCount = Override<QRangeModelImplBase::RowCount, &Self::rowCount>

Definition at line 3256 of file qrangemodel_impl.h.

◆ Self

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::Self = QRangeModelImpl<Structure, Range, Protocol>
protected

Definition at line 1431 of file qrangemodel_impl.h.

◆ SetAutoConnectPolicy

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::SetAutoConnectPolicy

◆ SetData

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::SetData = Override<QRangeModelImplBase::SetData, &Self::setData>

Definition at line 3266 of file qrangemodel_impl.h.

◆ SetHeaderData

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::SetHeaderData = Override<QRangeModelImplBase::SetHeaderData, &Self::setHeaderData>

Definition at line 3265 of file qrangemodel_impl.h.

◆ SetItemData

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::SetItemData = Override<QRangeModelImplBase::SetItemData, &Self::setItemData>

Definition at line 3267 of file qrangemodel_impl.h.

◆ Sibling

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::Sibling = Override<QRangeModelImplBase::Sibling, &Self::sibling>

Definition at line 3255 of file qrangemodel_impl.h.

◆ Sort

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::Sort = Override<QRangeModelImplBase::Sort, &Self::sort>

Definition at line 3281 of file qrangemodel_impl.h.

◆ wrapped_row_type

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
using QRangeModelImpl< Structure, Range, Protocol >::wrapped_row_type = QRangeModelDetails::wrapped_t<row_type>

Definition at line 1400 of file qrangemodel_impl.h.

Constructor & Destructor Documentation

◆ QRangeModelImpl()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
QRangeModelImpl< Structure, Range, Protocol >::QRangeModelImpl ( Range && model,
Protocol && protocol,
QRangeModel * itemModel )
inlineexplicit

Definition at line 1529 of file qrangemodel_impl.h.

Referenced by QRangeModelImpl().

Here is the caller graph for this function:

◆ ~QRangeModelImpl()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
QRangeModelImpl< Structure, Range, Protocol >::~QRangeModelImpl ( )
inlineprotected

Definition at line 3294 of file qrangemodel_impl.h.

Member Function Documentation

◆ adjustSupportedDragActions()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
Qt::DropActions QRangeModelImpl< Structure, Range, Protocol >::adjustSupportedDragActions ( Qt::DropActions dragActions)
inline

Definition at line 2811 of file qrangemodel_impl.h.

◆ adjustSupportedDropActions()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
Qt::DropActions QRangeModelImpl< Structure, Range, Protocol >::adjustSupportedDropActions ( Qt::DropActions dropActions)
inline

Definition at line 2816 of file qrangemodel_impl.h.

◆ autoConnectPropertiesInRow()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::autoConnectPropertiesInRow ( const row_type & row,
int rowIndex,
const QModelIndex & parent ) const
inline

Definition at line 2177 of file qrangemodel_impl.h.

◆ canDropMimeData()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::canDropMimeData ( const QMimeData * data,
Qt::DropAction action,
int row,
int column,
const QModelIndex & target ) const
inline

Definition at line 2835 of file qrangemodel_impl.h.

◆ canInsertRows()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
constexpr bool QRangeModelImpl< Structure, Range, Protocol >::canInsertRows ( )
inlinestaticconstexprprotected

Definition at line 3333 of file qrangemodel_impl.h.

Referenced by insertRows().

Here is the caller graph for this function:

◆ canRemoveRows()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
constexpr bool QRangeModelImpl< Structure, Range, Protocol >::canRemoveRows ( )
inlinestaticconstexprprotected

Definition at line 3353 of file qrangemodel_impl.h.

◆ childRange() [1/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
range_type * QRangeModelImpl< Structure, Range, Protocol >::childRange ( const QModelIndex & index)
inlineprotected

Definition at line 3604 of file qrangemodel_impl.h.

◆ childRange() [2/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
const range_type * QRangeModelImpl< Structure, Range, Protocol >::childRange ( const QModelIndex & index) const
inlineprotected

Definition at line 3595 of file qrangemodel_impl.h.

◆ clearConnectionInRow()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
void QRangeModelImpl< Structure, Range, Protocol >::clearConnectionInRow ( const row_type & row,
int rowIndex,
const QModelIndex & parent ) const
inline

Definition at line 2191 of file qrangemodel_impl.h.

◆ clearItemData()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::clearItemData ( const QModelIndex & index)
inline

Definition at line 2135 of file qrangemodel_impl.h.

◆ columnCount()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
int QRangeModelImpl< Structure, Range, Protocol >::columnCount ( const QModelIndex & parent) const
inline

Definition at line 2807 of file qrangemodel_impl.h.

◆ connectPropertyOnRead()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
void QRangeModelImpl< Structure, Range, Protocol >::connectPropertyOnRead ( const QModelIndex & index,
int role,
const QObject * gadget,
const QMetaProperty & prop ) const
inlineprotected

Definition at line 3448 of file qrangemodel_impl.h.

◆ data()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
QVariant QRangeModelImpl< Structure, Range, Protocol >::data ( const QModelIndex & index,
int role ) const
inline

Definition at line 1707 of file qrangemodel_impl.h.

◆ deleteOwnedRows()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
void QRangeModelImpl< Structure, Range, Protocol >::deleteOwnedRows ( )
inlineprotected

Definition at line 3299 of file qrangemodel_impl.h.

Referenced by ~QRangeModelImpl().

Here is the caller graph for this function:

◆ destroy()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
void QRangeModelImpl< Structure, Range, Protocol >::destroy ( )
inline

Definition at line 2809 of file qrangemodel_impl.h.

◆ doDropMimeData()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<Qt::Orientation orient, typename Entry>
bool QRangeModelImpl< Structure, Range, Protocol >::doDropMimeData ( std::vector< QRangeModelDetails::DroppedEntry< Entry > > & droppedEntries,
DropOperation dropOperation,
int row,
int column,
const QModelIndex & target )
inline

Definition at line 2863 of file qrangemodel_impl.h.

◆ doInsertColumns()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename InsertFn>
bool QRangeModelImpl< Structure, Range, Protocol >::doInsertColumns ( int column,
int count,
const QModelIndex & parent,
InsertFn insertFn )
inline

Definition at line 2526 of file qrangemodel_impl.h.

◆ doInsertRows()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename InsertFn>
bool QRangeModelImpl< Structure, Range, Protocol >::doInsertRows ( int row,
int count,
const QModelIndex & parent,
InsertFn && insertFn )
inline

Definition at line 2645 of file qrangemodel_impl.h.

◆ dropMimeData()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::dropMimeData ( const QMimeData * data,
Qt::DropAction action,
int row,
int column,
const QModelIndex & target )
inline

Definition at line 2996 of file qrangemodel_impl.h.

◆ dynamicColumns()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
constexpr bool QRangeModelImpl< Structure, Range, Protocol >::dynamicColumns ( )
inlinestaticconstexpr

Definition at line 1527 of file qrangemodel_impl.h.

Referenced by moveColumns().

Here is the caller graph for this function:

◆ dynamicRows()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
constexpr bool QRangeModelImpl< Structure, Range, Protocol >::dynamicRows ( )
inlinestaticconstexpr

Definition at line 1526 of file qrangemodel_impl.h.

◆ fixedColumnCount()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
constexpr int QRangeModelImpl< Structure, Range, Protocol >::fixedColumnCount ( )
inlinestaticconstexpr

Definition at line 2800 of file qrangemodel_impl.h.

◆ flags()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
Qt::ItemFlags QRangeModelImpl< Structure, Range, Protocol >::flags ( const QModelIndex & index) const
inline

Definition at line 1579 of file qrangemodel_impl.h.

◆ headerData()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
QVariant QRangeModelImpl< Structure, Range, Protocol >::headerData ( int section,
Qt::Orientation orientation,
int role ) const
inline

Definition at line 1683 of file qrangemodel_impl.h.

◆ index()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
QModelIndex QRangeModelImpl< Structure, Range, Protocol >::index ( int row,
int column,
const QModelIndex & parent ) const
inline

Definition at line 1550 of file qrangemodel_impl.h.

◆ insertColumns()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::insertColumns ( int column,
int count,
const QModelIndex & parent )
inline

Definition at line 2563 of file qrangemodel_impl.h.

◆ insertRows()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::insertRows ( int row,
int count,
const QModelIndex & parent )
inline

Definition at line 2680 of file qrangemodel_impl.h.

◆ interfaceVersion()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
void QRangeModelImpl< Structure, Range, Protocol >::interfaceVersion ( int & versionNumber) const
inline

Definition at line 1539 of file qrangemodel_impl.h.

◆ invalidateCaches()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
void QRangeModelImpl< Structure, Range, Protocol >::invalidateCaches ( )
inline

Definition at line 1544 of file qrangemodel_impl.h.

◆ isMutable()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
constexpr bool QRangeModelImpl< Structure, Range, Protocol >::isMutable ( )
inlinestaticconstexpr

Definition at line 1520 of file qrangemodel_impl.h.

◆ isPrimaryRole()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
constexpr bool QRangeModelImpl< Structure, Range, Protocol >::isPrimaryRole ( int role)
inlinestaticconstexpr

Definition at line 1723 of file qrangemodel_impl.h.

◆ isRangeModelRole()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
constexpr bool QRangeModelImpl< Structure, Range, Protocol >::isRangeModelRole ( int role)
inlinestaticconstexpr

Definition at line 1717 of file qrangemodel_impl.h.

◆ itemData()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
QMap< int, QVariant > QRangeModelImpl< Structure, Range, Protocol >::itemData ( const QModelIndex & index) const
inline

Definition at line 1728 of file qrangemodel_impl.h.

◆ match()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
QModelIndexList QRangeModelImpl< Structure, Range, Protocol >::match ( const QModelIndex & start,
int role,
const QVariant & value,
int hits,
Qt::MatchFlags flags ) const
inline

Definition at line 2484 of file qrangemodel_impl.h.

◆ matchRow()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::matchRow ( const_row_reference row,
const QModelIndex & index,
int role,
const QVariant & value,
Qt::MatchFlags flags ) const
inline

Definition at line 2491 of file qrangemodel_impl.h.

◆ maybeBlockDataChangedDispatch()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
auto QRangeModelImpl< Structure, Range, Protocol >::maybeBlockDataChangedDispatch ( )
inlineprotected

Definition at line 1468 of file qrangemodel_impl.h.

Referenced by setData(), and setItemData().

Here is the caller graph for this function:

◆ mimeData()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
QMimeData * QRangeModelImpl< Structure, Range, Protocol >::mimeData ( const QModelIndexList & indexes) const
inline

Definition at line 3227 of file qrangemodel_impl.h.

◆ mimeTypes()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
QStringList QRangeModelImpl< Structure, Range, Protocol >::mimeTypes ( ) const
inline

Definition at line 2824 of file qrangemodel_impl.h.

◆ moveColumns()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::moveColumns ( const QModelIndex & sourceParent,
int sourceColumn,
int count,
const QModelIndex & destParent,
int destColumn )
inline

Definition at line 2612 of file qrangemodel_impl.h.

◆ moveRows()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::moveRows ( const QModelIndex & sourceParent,
int sourceRow,
int count,
const QModelIndex & destParent,
int destRow )
inline

Definition at line 2759 of file qrangemodel_impl.h.

◆ multiData()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
void QRangeModelImpl< Structure, Range, Protocol >::multiData ( const QModelIndex & index,
QModelRoleDataSpan roleDataSpan ) const
inline

Definition at line 1862 of file qrangemodel_impl.h.

◆ parent()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
QModelIndex QRangeModelImpl< Structure, Range, Protocol >::parent ( const QModelIndex & child) const
inline

Definition at line 2796 of file qrangemodel_impl.h.

◆ protocol() [1/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
protocol_type & QRangeModelImpl< Structure, Range, Protocol >::protocol ( )
inline

Definition at line 2794 of file qrangemodel_impl.h.

◆ protocol() [2/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
const protocol_type & QRangeModelImpl< Structure, Range, Protocol >::protocol ( ) const
inline

Definition at line 2793 of file qrangemodel_impl.h.

◆ read() [1/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename Value>
QVariant QRangeModelImpl< Structure, Range, Protocol >::read ( const Value & value)
inlinestaticprotected

Definition at line 3385 of file qrangemodel_impl.h.

◆ read() [2/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename Value>
QVariant QRangeModelImpl< Structure, Range, Protocol >::read ( Value * value)
inlinestaticprotected

Definition at line 3393 of file qrangemodel_impl.h.

◆ readAt()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename F>
bool QRangeModelImpl< Structure, Range, Protocol >::readAt ( const QModelIndex & index,
F && reader ) const
inlineprotected

Definition at line 3377 of file qrangemodel_impl.h.

◆ readProperty() [1/3]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename ItemType>
QVariant QRangeModelImpl< Structure, Range, Protocol >::readProperty ( const QMetaProperty & prop,
ItemType * gadget )
inlinestaticprotected

Definition at line 3490 of file qrangemodel_impl.h.

◆ readProperty() [2/3]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename ItemType>
QVariant QRangeModelImpl< Structure, Range, Protocol >::readProperty ( const QModelIndex & index,
const ItemType & gadget ) const
inlineprotected

Definition at line 3512 of file qrangemodel_impl.h.

◆ readProperty() [3/3]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename ItemType>
QVariant QRangeModelImpl< Structure, Range, Protocol >::readProperty ( const QModelIndex & index,
ItemType * gadget ) const
inlineprotected

Definition at line 3499 of file qrangemodel_impl.h.

◆ readRole() [1/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename ItemType>
QVariant QRangeModelImpl< Structure, Range, Protocol >::readRole ( const QModelIndex & index,
int role,
const ItemType & gadget ) const
inlineprotected

Definition at line 3484 of file qrangemodel_impl.h.

◆ readRole() [2/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename ItemType>
QVariant QRangeModelImpl< Structure, Range, Protocol >::readRole ( const QModelIndex & index,
int role,
ItemType * gadget ) const
inlineprotected

Definition at line 3465 of file qrangemodel_impl.h.

◆ removeColumns()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::removeColumns ( int column,
int count,
const QModelIndex & parent )
inline

Definition at line 2575 of file qrangemodel_impl.h.

◆ removeRows()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::removeRows ( int row,
int count,
const QModelIndex & parent = {} )
inline

Definition at line 2703 of file qrangemodel_impl.h.

◆ resetProperty() [1/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename ItemType>
bool QRangeModelImpl< Structure, Range, Protocol >::resetProperty ( int property,
ItemType && object )
inlinestaticprotected

Definition at line 3577 of file qrangemodel_impl.h.

◆ resetProperty() [2/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename ItemType>
bool QRangeModelImpl< Structure, Range, Protocol >::resetProperty ( int property,
ItemType * object )
inlinestaticprotected

Definition at line 3557 of file qrangemodel_impl.h.

◆ roleNames()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
QHash< int, QByteArray > QRangeModelImpl< Structure, Range, Protocol >::roleNames ( ) const
inline

Definition at line 2169 of file qrangemodel_impl.h.

◆ roleProperty()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename ItemType>
QMetaProperty QRangeModelImpl< Structure, Range, Protocol >::roleProperty ( int role) const
inlineprotected

Definition at line 3426 of file qrangemodel_impl.h.

◆ rowCount()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
int QRangeModelImpl< Structure, Range, Protocol >::rowCount ( const QModelIndex & parent) const
inline

Definition at line 2798 of file qrangemodel_impl.h.

◆ rowData() [1/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
row_reference QRangeModelImpl< Structure, Range, Protocol >::rowData ( const QModelIndex & index)
inlineprotected

Definition at line 3589 of file qrangemodel_impl.h.

◆ rowData() [2/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
const_row_reference QRangeModelImpl< Structure, Range, Protocol >::rowData ( const QModelIndex & index) const
inlineprotected

Definition at line 3583 of file qrangemodel_impl.h.

◆ setAutoConnectPolicy()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
void QRangeModelImpl< Structure, Range, Protocol >::setAutoConnectPolicy ( )
inline

Definition at line 2205 of file qrangemodel_impl.h.

◆ setData()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::setData ( const QModelIndex & index,
const QVariant & data,
int role )
inline

Definition at line 1870 of file qrangemodel_impl.h.

◆ setHeaderData()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::setHeaderData ( int ,
Qt::Orientation ,
const QVariant & ,
int  )
inline

Definition at line 1547 of file qrangemodel_impl.h.

◆ setItemData()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::setItemData ( const QModelIndex & index,
const QMap< int, QVariant > & data )
inline

Definition at line 2025 of file qrangemodel_impl.h.

◆ sibling()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
QModelIndex QRangeModelImpl< Structure, Range, Protocol >::sibling ( int row,
int column,
const QModelIndex & index ) const
inline

Definition at line 1560 of file qrangemodel_impl.h.

◆ size()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename C>
constexpr int QRangeModelImpl< Structure, Range, Protocol >::size ( const C & c)
inlinestaticconstexprprotected

Definition at line 1438 of file qrangemodel_impl.h.

◆ sort()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
void QRangeModelImpl< Structure, Range, Protocol >::sort ( int column,
Qt::SortOrder order )
inline

Definition at line 2369 of file qrangemodel_impl.h.

◆ sortSubRange()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename LessThan>
void QRangeModelImpl< Structure, Range, Protocol >::sortSubRange ( range_type & range,
row_ptr expectedParent,
const LessThan & lessThan )
inline

Definition at line 2405 of file qrangemodel_impl.h.

◆ that() [1/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
Structure & QRangeModelImpl< Structure, Range, Protocol >::that ( )
inlineprotected

Definition at line 1434 of file qrangemodel_impl.h.

◆ that() [2/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
const Structure & QRangeModelImpl< Structure, Range, Protocol >::that ( ) const
inlineprotected

Definition at line 1435 of file qrangemodel_impl.h.

◆ updateTarget() [1/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename LHS, typename RHS>
void QRangeModelImpl< Structure, Range, Protocol >::updateTarget ( LHS & org,
RHS && copy )
inlinenoexcept

Definition at line 2010 of file qrangemodel_impl.h.

◆ updateTarget() [2/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename LHS, typename RHS>
void QRangeModelImpl< Structure, Range, Protocol >::updateTarget ( LHS * org,
RHS && copy )
inlinenoexcept

Definition at line 2020 of file qrangemodel_impl.h.

◆ write() [1/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename Target>
bool QRangeModelImpl< Structure, Range, Protocol >::write ( Target & target,
const QVariant & value )
inlinestaticprotected

Definition at line 3405 of file qrangemodel_impl.h.

◆ write() [2/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename Target>
bool QRangeModelImpl< Structure, Range, Protocol >::write ( Target * target,
const QVariant & value )
inlinestaticprotected

Definition at line 3418 of file qrangemodel_impl.h.

◆ writeAt()

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename F>
bool QRangeModelImpl< Structure, Range, Protocol >::writeAt ( const QModelIndex & index,
F && writer )
inlineprotected

Definition at line 3359 of file qrangemodel_impl.h.

◆ writeProperty() [1/3]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename ItemType>
bool QRangeModelImpl< Structure, Range, Protocol >::writeProperty ( const QMetaProperty & prop,
ItemType * gadget,
const QVariant & data )
inlinestaticprotected

Definition at line 3535 of file qrangemodel_impl.h.

◆ writeProperty() [2/3]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename ItemType>
bool QRangeModelImpl< Structure, Range, Protocol >::writeProperty ( int property,
ItemType && gadget,
const QVariant & data )
inlinestaticprotected

Definition at line 3551 of file qrangemodel_impl.h.

◆ writeProperty() [3/3]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename ItemType>
bool QRangeModelImpl< Structure, Range, Protocol >::writeProperty ( int property,
ItemType * gadget,
const QVariant & data )
inlinestaticprotected

Definition at line 3543 of file qrangemodel_impl.h.

◆ writeRole() [1/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename ItemType>
bool QRangeModelImpl< Structure, Range, Protocol >::writeRole ( int role,
ItemType && gadget,
const QVariant & data )
inlineprotected

Definition at line 3529 of file qrangemodel_impl.h.

◆ writeRole() [2/2]

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename ItemType>
bool QRangeModelImpl< Structure, Range, Protocol >::writeRole ( int role,
ItemType * gadget,
const QVariant & data )
inlineprotected

Definition at line 3518 of file qrangemodel_impl.h.

◆ QRangeModelAdapter

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename, typename, typename>
friend class QRangeModelAdapter
friend

Definition at line 3613 of file qrangemodel_impl.h.

Member Data Documentation

◆ has_metaobject

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
template<typename T>
bool QRangeModelImpl< Structure, Range, Protocol >::has_metaobject
staticconstexprprotected
Initial value:
std::remove_pointer_t<std::remove_reference_t<T>>>
static constexpr bool has_metaobject_v

Definition at line 1482 of file qrangemodel_impl.h.

◆ itemsAreQObjects

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::itemsAreQObjects
staticconstexpr
Initial value:
= std::is_base_of_v<QObject, std::remove_pointer_t<
\inmodule QtCore
Definition qobject.h:106
std::conditional_t< is_range, typename range_traits< std::remove_cv_t< wrapped_row_type > >::value_type, std::remove_cv_t< wrapped_row_type > > item_type

Definition at line 1406 of file qrangemodel_impl.h.

Referenced by doInsertColumns(), doInsertRows(), maybeBlockDataChangedDispatch(), removeColumns(), setAutoConnectPolicy(), and setData().

◆ m_data

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
ModelData QRangeModelImpl< Structure, Range, Protocol >::m_data
protected

Definition at line 3615 of file qrangemodel_impl.h.

◆ one_dimensional_range

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::one_dimensional_range = static_column_count == 0
staticconstexprprotected

Definition at line 1466 of file qrangemodel_impl.h.

Referenced by fixedColumnCount().

◆ rows_are_owning_or_raw_pointers

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::rows_are_owning_or_raw_pointers
staticconstexprprotected
Initial value:
=
std::disjunction< is_any_owning_ptr< T >, std::is_pointer< T > > is_owning_or_raw_pointer

Definition at line 1463 of file qrangemodel_impl.h.

Referenced by insertRows().

◆ rows_are_raw_pointers

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::rows_are_raw_pointers = std::is_pointer_v<row_type>
staticconstexprprotected

Definition at line 1462 of file qrangemodel_impl.h.

Referenced by deleteOwnedRows().

◆ rowsAreQObjects

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
bool QRangeModelImpl< Structure, Range, Protocol >::rowsAreQObjects
staticconstexpr
Initial value:
= std::is_base_of_v<QObject, wrapped_row_type>

Definition at line 1408 of file qrangemodel_impl.h.

Referenced by doInsertRows(), maybeBlockDataChangedDispatch(), setAutoConnectPolicy(), and setData().

◆ static_column_count

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
int QRangeModelImpl< Structure, Range, Protocol >::static_column_count = QRangeModelDetails::static_size_v<row_type>
staticconstexprprotected

Definition at line 1465 of file qrangemodel_impl.h.

Referenced by dynamicColumns(), fixedColumnCount(), and flags().

◆ static_row_count

template<typename Structure, typename Range, typename Protocol = QRangeModelDetails::table_protocol_t<Range>>
int QRangeModelImpl< Structure, Range, Protocol >::static_row_count = QRangeModelDetails::static_size_v<range_type>
staticconstexprprotected

Definition at line 1461 of file qrangemodel_impl.h.

Referenced by dynamicRows().


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