diff options
Diffstat (limited to 'app/src/widgets/turn_order_view.cpp')
| -rw-r--r-- | app/src/widgets/turn_order_view.cpp | 20 |
1 files changed, 3 insertions, 17 deletions
diff --git a/app/src/widgets/turn_order_view.cpp b/app/src/widgets/turn_order_view.cpp index ccc6d25..67e0afa 100644 --- a/app/src/widgets/turn_order_view.cpp +++ b/app/src/widgets/turn_order_view.cpp @@ -25,35 +25,21 @@ namespace turns::app::widgets { if (model) { - m_view->bind_model(m_model->list_model(), sigc::mem_fun(*this, &turn_order_view::handle_create_row)); - m_model->property_active_participant().signal_changed().connect( - sigc::mem_fun(*this, &turn_order_view::handle_active_participant_changed)); + m_view->bind_model(m_model, sigc::mem_fun(*this, &turn_order_view::handle_create_row)); } } - auto turn_order_view::handle_active_participant_changed() -> void - { - std::ranges::for_each(m_view->get_children(), [](auto c) { c->remove_css_class("active-participant"); }); - - auto index = m_model->active_participant(); - if (index != std::numeric_limits<domain::turn_order::active_participant_type>::max()) - { - auto row = m_view->get_row_at_index(index); - row->add_css_class("active-participant"); - row->grab_focus(); - } - } auto turn_order_view::handle_create_row(Glib::RefPtr<Glib::Object> const item) -> Gtk::Widget * { auto participant = std::dynamic_pointer_cast<domain::participant>(item); auto row = Gtk::make_managed<widgets::participant_row>(participant); - Glib::Binding::bind_property(m_model->property_running(), + Glib::Binding::bind_property(m_model->is_running(), row->property_delete_enabled(), Glib::Binding::Flags::SYNC_CREATE | Glib::Binding::Flags::INVERT_BOOLEAN); - Glib::Binding::bind_property(m_model->property_running(), + Glib::Binding::bind_property(m_model->is_running(), row->property_edit_enabled(), Glib::Binding::Flags::SYNC_CREATE | Glib::Binding::Flags::INVERT_BOOLEAN); |
