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, QVariant > itemData (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, QByteArray > roleNames () 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_type & protocol () const
protocol_type & protocol ()
QModelIndex parent (const QModelIndex &child) const
int rowCount (const QModelIndex &parent) const
int columnCount (const QModelIndex &parent) const
void destroy ()
Qt::DropActions adjustSupportedDragActions (Qt::DropActions dragActions)
Qt::DropActions adjustSupportedDropActions (Qt::DropActions dropActions)
QStringList mimeTypes () const
bool canDropMimeData (const QMimeData *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)
QMimeData * mimeData (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_type * childRange (const QModelIndex &index) const
range_type * childRange (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 1404 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 3301 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 3303 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 1446 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 1530 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 3307 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 3286 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 3275 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 1493 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 1435 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 3279 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 3270 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 3308 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 1531 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 3276 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 3277 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 3271 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 3287 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 3290 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 3298 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 3282 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 3280 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 3300 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 3309 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 3306 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 3289 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 3292 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 3294 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 3268 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 3272 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 1418 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 1417 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 1433 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 1411 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 1410 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 3288 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 3291 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 3281 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 1415 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 1492 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 1412 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 1416 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 1413 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 3274 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 1445 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 3284 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 3283 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 3285 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 3273 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 3299 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 1414 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 1543 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 3312 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 2829 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 2834 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 2191 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 2853 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 3351 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 3371 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 3622 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 3613 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 2205 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 2149 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 2825 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 3466 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 1721 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 3317 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 2827 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 2881 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 2544 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 2663 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 3014 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 1541 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 1540 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 2818 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 1593 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 1697 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 1564 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 2581 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 2698 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 1553 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 1558 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 1534 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 1737 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 1731 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 1742 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 2498 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 2509 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 1482 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 3245 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 2842 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 2630 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 2777 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 1876 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 2814 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 2812 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 2811 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 3403 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 3411 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 3395 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 3508 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 3530 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 3517 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 3502 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 3483 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 2593 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 2721 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 3595 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 3575 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 2183 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 3444 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 2816 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 3607 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 3601 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 2219 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 1884 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 1561 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 2039 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 1574 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 1452 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 2383 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 2419 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 1448 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 1449 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 2024 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 2034 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 3423 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 3436 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 3377 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 3553 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 3569 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 3561 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 3547 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 3536 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 3631 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 1496 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 1420 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 3633 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 1480 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 1477 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 1476 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 1422 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 1479 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 1475 of file qrangemodel_impl.h.

Referenced by dynamicRows().


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