LeechCraft  0.6.70-18450-gabe19ee3b0
Modular cross-platform feature rich live environment.
LC::Util::NamedItemsModel< T > Class Template Reference

#include "itemsmodel.h"

+ Inheritance diagram for LC::Util::NamedItemsModel< T >:
+ Collaboration diagram for LC::Util::NamedItemsModel< T >:

Public Types

using FieldGetter_t = detail::FieldGetter_t< T >
 
using FieldsList_t = QVector< QPair< QByteArray, FieldGetter_t > >
 

Public Member Functions

template<typename... Fields>
 NamedItemsModel (QObject *parent, Fields...) noexcept
 
QHash< int, QByteArray > roleNames () const override
 
- Public Member Functions inherited from LC::Util::FlatItemsModelTypedBase< T >
void SetItems (QList< T > items)
 
template<typename U >
requires std::is_constructible_v< T, 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::NamedItemsModel< T >

Definition at line 205 of file itemsmodel.h.

Member Typedef Documentation

◆ FieldGetter_t

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

Definition at line 208 of file itemsmodel.h.

◆ FieldsList_t

template<typename T >
using LC::Util::NamedItemsModel< T >::FieldsList_t = QVector<QPair<QByteArray, FieldGetter_t> >

Definition at line 209 of file itemsmodel.h.

Constructor & Destructor Documentation

◆ NamedItemsModel()

template<typename T >
template<typename... Fields>
LC::Util::NamedItemsModel< T >::NamedItemsModel ( QObject *  parent,
Fields...   
)
inlineexplicitnoexcept

Definition at line 215 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::NamedItemsModel< T >::GetData ( int  row,
int  ,
int  role 
) const
inlineoverrideprotectedvirtual

◆ roleNames()

template<typename T >
QHash<int, QByteArray> LC::Util::NamedItemsModel< T >::roleNames ( ) const
inlineoverride

Definition at line 222 of file itemsmodel.h.


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