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 QCollator &collator) 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 1394 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 3291 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 3293 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 1436 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 1520 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 3297 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 3276 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 3265 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 1483 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 1425 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 3269 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 3260 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 3298 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 1521 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 3266 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 3267 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 3261 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 3277 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 3280 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 3288 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 3272 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 3270 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 3290 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 3299 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 3296 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 3279 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 3282 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 3284 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 3258 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 3262 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 1408 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 1407 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 1423 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 1401 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 1400 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 3278 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 3281 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 3271 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 1405 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 1482 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 1402 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 1406 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 1403 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 3264 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 1435 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 3274 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 3273 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 3275 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 3263 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 3289 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 1404 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 1533 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 3302 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 2819 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 2824 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 2181 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 2843 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 3341 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 3361 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 3612 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 3603 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 2195 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 2139 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 2815 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 3456 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 1711 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 3307 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 2817 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 2871 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 2534 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 2653 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 3004 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 1531 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 1530 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 2808 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 1583 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 1687 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 1554 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 2571 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 2688 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 1543 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 1548 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 1524 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 1727 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 1721 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 1732 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 2488 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 QCollator & collator ) const
inline

Definition at line 2499 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 1472 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 3235 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 2832 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 2620 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 2767 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 1866 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 2804 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 2802 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 2801 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 3393 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 3401 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 3385 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 3498 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 3520 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 3507 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 3492 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 3473 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 2583 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 2711 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 3585 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 3565 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 2173 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 3434 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 2806 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 3597 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 3591 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 2209 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 1874 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 1551 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 2029 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 1564 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 1442 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 2373 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 2409 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 1438 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 1439 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 2014 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 2024 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 3413 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 3426 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 3367 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 3543 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 3559 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 3551 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 3537 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 3526 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 3621 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 1486 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 1410 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 3623 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 1470 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 1467 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 1466 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 1412 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 1469 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 1465 of file qrangemodel_impl.h.

Referenced by dynamicRows().


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