LeechCraft 0.6.70-18450-gabe19ee3b0
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
LC::Util::RoledItemsModel< T > Class Template Reference

#include "itemsmodel.h"

Inheritance diagram for LC::Util::RoledItemsModel< T >:
Collaboration diagram for LC::Util::RoledItemsModel< T >:

Public Types

using FieldGetter_t = detail::FieldGetter_t<T>

Public Member Functions

 RoledItemsModel (QObject *parent=nullptr)
 RoledItemsModel (const QHash< int, FieldGetter_t > &getters, QObject *parent=nullptr)
template<auto F, typename V>
void SetField (int idx, V &&value)
template<auto... Fs, typename... Vs>
void SetFields (int idx, Vs &&... values)
Public Member Functions inherited from LC::Util::FlatItemsModelTypedBase< T >
void SetItems (QList< T > items)
template<typename U>
void SetItems (QList< U > items)
const QList< T > & GetItems () const
QList< T > & GetMutItems ()
qsizetype AddItem (const T &item)
void AddItems (const QList< T > &items)
void SetItem (int idx, const T &item)
template<typename F>
void EditItem (int idx, F &&editor)
void RemoveItem (int idx)
void RemoveItem (QList< T >::const_iterator it)
 FlatItemsModelBase (QStringList headers, QObject *=nullptr)
Public Member Functions inherited from LC::Util::FlatItemsModelBase
 FlatItemsModelBase (QStringList headers, QObject *=nullptr)
int columnCount (const QModelIndex &index={}) const override
QVariant data (const QModelIndex &index, int role) const override
QVariant headerData (int section, Qt::Orientation orientation, int role) const override
QModelIndex index (int row, int col, const QModelIndex &parent={}) const override
QModelIndex parent (const QModelIndex &) const override
int rowCount (const QModelIndex &parent={}) const override
void SetGlobalData (const QVariant &data, int role)

Protected Member Functions

QVariant GetData (int row, int, int role) const override
Protected Member Functions inherited from LC::Util::FlatItemsModelTypedBase< T >
int GetItemsCount () const override

Additional Inherited Members

Static Public Attributes inherited from LC::Util::FlatItemsModelBase
static constexpr auto DataRole = Qt::UserRole
Protected Attributes inherited from LC::Util::FlatItemsModelTypedBase< T >
QList< T > Items_

Detailed Description

template<typename T>
class LC::Util::RoledItemsModel< T >

Definition at line 137 of file itemsmodel.h.

Member Typedef Documentation

◆ FieldGetter_t

template<typename T>
using LC::Util::RoledItemsModel< T >::FieldGetter_t = detail::FieldGetter_t<T>

Definition at line 140 of file itemsmodel.h.

Constructor & Destructor Documentation

◆ RoledItemsModel() [1/2]

template<typename T>
LC::Util::RoledItemsModel< T >::RoledItemsModel ( QObject * parent = nullptr)
inlineexplicit

Definition at line 144 of file itemsmodel.h.

References LC::Util::FlatItemsModelBase::parent().

Here is the call graph for this function:

◆ RoledItemsModel() [2/2]

template<typename T>
LC::Util::RoledItemsModel< T >::RoledItemsModel ( const QHash< int, FieldGetter_t > & getters,
QObject * parent = nullptr )
inlineexplicit

Definition at line 150 of file itemsmodel.h.

References LC::Util::FlatItemsModelBase::parent().

Here is the call graph for this function:

Member Function Documentation

◆ GetData()

template<typename T>
QVariant LC::Util::RoledItemsModel< T >::GetData ( int row,
int ,
int role ) const
inlineoverrideprotectedvirtual

◆ SetField()

template<typename T>
template<auto F, typename V>
void LC::Util::RoledItemsModel< T >::SetField ( int idx,
V && value )
inline

Definition at line 157 of file itemsmodel.h.

References LC::Util::FlatItemsModelBase::index(), and LC::Util::FlatItemsModelTypedBase< T >::Items_.

Here is the call graph for this function:

◆ SetFields()

template<typename T>
template<auto... Fs, typename... Vs>
void LC::Util::RoledItemsModel< T >::SetFields ( int idx,
Vs &&... values )
inline

Definition at line 168 of file itemsmodel.h.

References LC::Util::FlatItemsModelBase::index(), and LC::Util::FlatItemsModelTypedBase< T >::Items_.

Here is the call graph for this function:

The documentation for this class was generated from the following file:
  • /home/abuild/rpmbuild/BUILD/leechcraft-doc-0.6.70+git.18450.gabe19ee3b0-build/leechcraft-0.6.70-18450-gabe19ee3b0/src/util/models/itemsmodel.h