21 #ifndef SAYONARASELECTIONVIEW_H 22 #define SAYONARASELECTIONVIEW_H 24 #include "Utils/typedefs.h" 25 #include "Utils/Pimpl.h" 27 #include <QModelIndex> 29 class QItemSelectionModel;
47 enum class SelectionType
60 virtual QItemSelectionModel* selection_model()
const=0;
61 virtual QModelIndex model_index(
int row,
int col,
const QModelIndex& parent=QModelIndex())
const=0;
62 virtual int row_count(
const QModelIndex& parent=QModelIndex())
const=0;
63 virtual int column_count(
const QModelIndex& parent=QModelIndex())
const=0;
64 virtual void set_current_index(
int idx)=0;
66 void select_rows(
const IndexSet& indexes,
int min_col=-1,
int max_col=-1);
67 void select_row(
int row);
69 void select_columns(
const IndexSet& indexes,
int min_row=-1,
int max_row=-1);
70 void select_column(
int col);
72 void select_items(
const IndexSet& indexes);
73 void select_item(
int item);
77 void clear_selection();
78 int min_selected_item()
const;
80 virtual void set_selection_type(SelectionViewInterface::SelectionType type);
81 SelectionViewInterface::SelectionType selection_type()
const;
84 virtual int index_by_model_index(
const QModelIndex& idx)
const=0;
85 virtual QModelIndex model_index_by_index(
int idx)
const=0;
87 virtual IndexSet indexes_by_model_indexes(
const QModelIndexList& indexes)
const;
88 virtual QModelIndexList model_indexes_by_indexes(
const IndexSet& indexes)
const;
91 virtual void handle_key_press(QKeyEvent* e);
94 #endif // SAYONARASELECTIONVIEW_H Definition: AbstractPlaylist.h:33
The SayonaraSelectionView class.
Definition: SelectionView.h:42
Set namespace defines the setting: Which key and which type.
Definition: SettingKey.h:216
A set structure. Inherited from std::set with some useful methods. For integer and String this set is...
Definition: AbstractPlaylist.h:36