Miam-Player  0.8.0
A nice music player
MiamItemModel Class Referenceabstract

The MiamItemModel class. More...

#include <miamitemmodel.h>

Inheritance diagram for MiamItemModel:
LibraryItemModel UniqueLibraryItemModel

Public Member Functions

 MiamItemModel (QObject *parent=nullptr)
 
virtual ~MiamItemModel ()
 
virtual QChar currentLetter (const QModelIndex &index) const =0
 
QStandardItem * letterItem (const QString &letter) const
 
virtual void load (const QString &=QString::null)=0
 
virtual QSortFilterProxyModel * proxy () const =0
 

Protected Member Functions

void deleteCache ()
 
SeparatorIteminsertSeparator (const QStandardItem *node)
 

Protected Attributes

QHash< uint, QStandardItem * > _hash
 
QHash< QString, SeparatorItem * > _letters
 
QMultiHash< SeparatorItem *, QModelIndex > _topLevelItems
 
QHash< QString, TrackItem * > _tracks
 

Detailed Description

The MiamItemModel class.

Author
Matthieu Bachelier

Constructor & Destructor Documentation

◆ MiamItemModel()

MiamItemModel::MiamItemModel ( QObject *  parent = nullptr)
explicit

◆ ~MiamItemModel()

MiamItemModel::~MiamItemModel ( )
virtual

Member Function Documentation

◆ currentLetter()

virtual QChar MiamItemModel::currentLetter ( const QModelIndex &  index) const
pure virtual

◆ deleteCache()

void MiamItemModel::deleteCache ( )
protected

◆ insertSeparator()

SeparatorItem * MiamItemModel::insertSeparator ( const QStandardItem *  node)
protected

◆ letterItem()

QStandardItem* MiamItemModel::letterItem ( const QString &  letter) const
inline

◆ load()

virtual void MiamItemModel::load ( const QString &  = QString::null)
pure virtual

◆ proxy()

virtual QSortFilterProxyModel* MiamItemModel::proxy ( ) const
pure virtual

Member Data Documentation

◆ _hash

QHash<uint, QStandardItem*> MiamItemModel::_hash
protected

This hash is a cache, used to insert nodes in this tree at the right location.

◆ _letters

QHash<QString, SeparatorItem*> MiamItemModel::_letters
protected

Letters are items to groups separate of top levels items (items without parent).

◆ _topLevelItems

QMultiHash<SeparatorItem*, QModelIndex> MiamItemModel::_topLevelItems
protected

Letter L returns all Artists (e.g.) starting with L.

◆ _tracks

QHash<QString, TrackItem*> MiamItemModel::_tracks
protected

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