diff options
Diffstat (limited to 'app/src/windows/main.cpp')
| -rw-r--r-- | app/src/windows/main.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/app/src/windows/main.cpp b/app/src/windows/main.cpp index 20d0649..f25b220 100644 --- a/app/src/windows/main.cpp +++ b/app/src/windows/main.cpp @@ -22,7 +22,7 @@ namespace turns::app::windows , m_open_main_menu{builder->get_widget<Gtk::MenuButton>("open_main_menu")} , m_participant_list{builder->get_widget<Gtk::ListBox>("participant_list")} , m_title(ADW_WINDOW_TITLE(builder->get_widget<Gtk::Widget>("title")->gobj())) - , m_tests{Gtk::StringList::create()} + , m_participants{Gio::ListStore<domain::participant>::create()} { m_add_participant->set_tooltip_text(_(tooltips::add_a_participant)); m_open_main_menu->set_tooltip_text(_(tooltips::main_menu)); @@ -30,18 +30,19 @@ namespace turns::app::windows for (auto n : std::views::iota(0, 32)) { - m_tests->append(std::format("Participant #{}", n)); + auto name = std::format("Participant #{}", n); + auto participant = domain::participant::create(name, n); + m_participants->append(participant); } - m_participant_list->bind_model(m_tests, sigc::mem_fun(*this, &main::handle_create_list_row)); + m_participant_list->bind_model(m_participants, sigc::mem_fun(*this, &main::handle_create_list_row)); } auto main::handle_create_list_row(Glib::RefPtr<Glib::Object> const item) -> Gtk::Widget * { - auto data = std::dynamic_pointer_cast<Gtk::StringObject>(item); + auto participant = std::dynamic_pointer_cast<domain::participant>(item); auto widget = Gtk::make_managed<widgets::participant_list_row>(); - widget->set_title(data->get_string()); - widget->set_subtitle("Details for " + data->get_string()); + widget->set_title(participant->name()); return widget; } |
