Sayonara Player
Public Types | Public Member Functions | Protected Types | Protected Member Functions | List of all members
SearchableView< View, Model > Class Template Referenceabstract
Inheritance diagram for SearchableView< View, Model >:
SearchableViewInterface SelectionViewInterface

Public Types

enum class  SelectionType {
  Rows = 0 ,
  Items
}
 

Public Member Functions

 SearchableView (QWidget *parent=nullptr)
 
virtual void setSearchableModel (Model *model)
 
int rowCount () const
 
QAbstractItemView * view () const
 
virtual int viewportHeight () const
 
virtual int viewportWidth () const
 
int setSearchstring (const QString &str)
 
void selectNextMatch (const QString &str)
 
void selectPreviousMatch (const QString &str)
 
virtual void searchDone ()
 
virtual IndexSet selectedItems () const
 

Protected Types

enum class  SearchDirection : unsigned char {
  First ,
  Next ,
  Prev
}
 

Protected Member Functions

void keyPressEvent (QKeyEvent *e) override
 
virtual QModelIndex matchIndex (const QString &str, SearchDirection direction) const
 
virtual void selectMatch (const QString &str, SearchDirection direction)
 
bool handleKeyPress (QKeyEvent *e) override
 
void selectRows (const IndexSet &rows, int minimumColumn=-1, int maximumColumn=-1)
 
void selectItems (const IndexSet &indexes)
 
void selectAll ()
 
virtual SelectionViewInterface::SelectionType selectionType () const
 
virtual int mapModelIndexToIndex (const QModelIndex &idx) const =0
 
virtual ModelIndexRange mapIndexToModelIndexes (int idx) const =0
 

Member Function Documentation

◆ handleKeyPress()

bool SearchableViewInterface::handleKeyPress ( QKeyEvent *  e)
overrideprotectedvirtualinherited

Reimplemented from SelectionViewInterface.