Sayonara Player
Public Types | Public Member Functions | Protected Types | Protected Member Functions | List of all members
SearchableView< View, Model > Class Template Referenceabstract

Public Types

enum  SelectionType {
  Rows =0,
  Columns,
  Items
}
 

Public Member Functions

 SearchableView (QWidget *parent=nullptr)
 
virtual void set_model (Model *model)
 
virtual void set_search_model (SearchableModelInterface *model)
 
virtual QModelIndex model_index (int row, int col, const QModelIndex &parent=QModelIndex()) const override final
 
virtual int row_count (const QModelIndex &parent=QModelIndex()) const override final
 
virtual int column_count (const QModelIndex &parent=QModelIndex()) const override final
 
bool is_empty (const QModelIndex &parent=QModelIndex()) const
 
bool has_rows (const QModelIndex &parent=QModelIndex()) const
 
virtual QItemSelectionModel * selection_model () const override final
 
virtual void set_current_index (int idx) override final
 
bool is_minisearcher_active () const
 
void set_mini_searcher_padding (int padding)
 
virtual IndexSet selected_items () const
 

Protected Types

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

Protected Member Functions

void keyPressEvent (QKeyEvent *e) override
 
virtual void select_match (const QString &str, SearchDirection direction)
 
virtual QModelIndex match_index (const QString &str, SearchDirection direction) const
 
void handle_key_press (QKeyEvent *e) override
 
void select_rows (const IndexSet &indexes, int min_col=-1, int max_col=-1)
 
void select_row (int row)
 
void select_columns (const IndexSet &indexes, int min_row=-1, int max_row=-1)
 
void select_column (int col)
 
void select_items (const IndexSet &indexes)
 
void select_item (int item)
 
void select_all ()
 
virtual void clear_selection ()
 
int min_selected_item () const
 
virtual void set_selection_type (SelectionViewInterface::SelectionType type)
 
SelectionViewInterface::SelectionType selection_type () const
 
virtual int index_by_model_index (const QModelIndex &idx) const =0
 
virtual ModelIndexRange model_indexrange_by_index (int idx) const =0
 
virtual IndexSet indexes_by_model_indexes (const QModelIndexList &indexes) const
 
virtual ModelIndexRanges model_indexranges_by_indexes (const IndexSet &indexes) const
 
Inheritance diagram for SearchableView< View, Model >:
SearchableViewInterface SelectionViewInterface