GAbstractView: Add on_selection callback.

This callback is fired whenever the model's selection is updated.
Note that it only fires when there is a model, and when the index is valid.
This commit is contained in:
Andreas Kling 2019-06-22 10:40:35 +02:00
parent dd6b8135c2
commit d0b7d5e84c
Notes: sideshowbarker 2024-07-19 13:31:42 +09:00
2 changed files with 3 additions and 0 deletions

View file

@ -44,6 +44,8 @@ void GAbstractView::did_update_selection()
{
if (!model() || model()->selected_index() != m_edit_index)
stop_editing();
if (model() && on_selection && model()->selected_index().is_valid())
on_selection(model()->selected_index());
}
void GAbstractView::did_scroll()

View file

@ -32,6 +32,7 @@ public:
bool activates_on_selection() const { return m_activates_on_selection; }
Function<void(const GModelIndex&)> on_activation;
Function<void(const GModelIndex&)> on_selection;
Function<void(const GModelNotification&)> on_model_notification;
virtual const char* class_name() const override { return "GAbstractView"; }