21 #ifndef SEARCHABLEVIEW_H 22 #define SEARCHABLEVIEW_H 24 #include "GUI/Utils/Widgets/WidgetTemplate.h" 25 #include "GUI/Utils/SearchableWidget/SelectionView.h" 26 #include "GUI/Utils/SearchableWidget/SearchableModel.h" 27 #include "Utils/Pimpl.h" 34 class QAbstractItemView;
35 class QItemSelectionModel;
47 enum class SearchDirection : unsigned char
60 virtual QModelIndex model_index(
int row,
int col,
const QModelIndex& parent=QModelIndex())
const override final;
61 virtual int row_count(
const QModelIndex& parent=QModelIndex())
const override final;
62 virtual int column_count(
const QModelIndex& parent=QModelIndex())
const override final;
63 bool is_empty(
const QModelIndex& parent=QModelIndex())
const;
64 bool has_rows(
const QModelIndex& parent=QModelIndex())
const;
66 virtual QItemSelectionModel* selection_model()
const override final;
67 virtual void set_current_index(
int idx)
override final;
69 bool is_minisearcher_active()
const;
70 void set_mini_searcher_padding(
int padding);
73 virtual void select_match(
const QString& str, SearchDirection direction);
74 virtual QModelIndex match_index(
const QString& str, SearchDirection direction)
const;
75 void handle_key_press(QKeyEvent* e)
override;
79 template<
typename View,
typename Model>
86 using SearchableViewInterface::set_search_model;
95 virtual void set_model(Model* model)
98 set_search_model(model);
102 void keyPressEvent(QKeyEvent* e)
override 112 View::keyPressEvent(e);
120 #endif // SEARCHABLEVIEW_H Definition: SearchableView.h:80
The SearchViewInterface class.
Definition: SearchableView.h:41
The SayonaraSelectionView class.
Definition: SelectionView.h:47
Definition: SearchableModel.h:34