Miam-Player  0.8.0
A nice music player
MiamSortFilterProxyModel Class Reference

The MiamSortFilterProxyModel class provides support for the MiamItemModel class. More...

#include <miamsortfilterproxymodel.h>

Inheritance diagram for MiamSortFilterProxyModel:
LibraryFilterProxyModel UniqueLibraryFilterProxyModel

Signals

void aboutToHighlightLetters (const QSet< QChar > &letters)
 

Public Member Functions

 MiamSortFilterProxyModel (QObject *parent=nullptr)
 
virtual ~MiamSortFilterProxyModel ()
 
void setTopLevelItems (const QMultiHash< SeparatorItem *, QModelIndex > &topLevelItems)
 
void findMusic (const QString &text)
 
void highlightMatchingText (const QString &text)
 
virtual int defaultSortColumn () const
 

Protected Attributes

QMultiHash< SeparatorItem *, QModelIndex > _topLevelItems
 

Detailed Description

The MiamSortFilterProxyModel class provides support for the MiamItemModel class.

This class has 2 ways to filter music in a library when one is typing a string.

  1. By excluding all terms which are not matching the filter
  2. By keeping everything visible to the user, and highlighting (in bold) the terms that are matching input
    Author
    Matthieu Bachelier

Constructor & Destructor Documentation

§ MiamSortFilterProxyModel()

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

§ ~MiamSortFilterProxyModel()

virtual MiamSortFilterProxyModel::~MiamSortFilterProxyModel ( )
inlinevirtual

Member Function Documentation

§ aboutToHighlightLetters

void MiamSortFilterProxyModel::aboutToHighlightLetters ( const QSet< QChar > &  letters)
signal

§ defaultSortColumn()

virtual int MiamSortFilterProxyModel::defaultSortColumn ( ) const
inlinevirtual

For classes that are subclassing this filter, allow to change sort column (for models based on a Table for example).

Reimplemented in UniqueLibraryFilterProxyModel.

§ findMusic()

void MiamSortFilterProxyModel::findMusic ( const QString &  text)

Single entry point for filtering library, and dispatch to the chosen operation defined in settings.

§ highlightMatchingText()

void MiamSortFilterProxyModel::highlightMatchingText ( const QString &  text)

Highlight items in the Tree when one has activated this option in settings.

§ setTopLevelItems()

void MiamSortFilterProxyModel::setTopLevelItems ( const QMultiHash< SeparatorItem *, QModelIndex > &  topLevelItems)
inline

Member Data Documentation

§ _topLevelItems

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

Top levels items are specific items, like letters 'A', 'B', ... in the library. Each letter has a reference to all items beginning with this letter.


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