diff options
Diffstat (limited to 'app/src/windows')
| -rw-r--r-- | app/src/windows/main.cpp | 2 | ||||
| -rw-r--r-- | app/src/windows/participant_editor.cpp | 7 |
2 files changed, 6 insertions, 3 deletions
diff --git a/app/src/windows/main.cpp b/app/src/windows/main.cpp index a8f8739..68d2c5f 100644 --- a/app/src/windows/main.cpp +++ b/app/src/windows/main.cpp @@ -69,7 +69,7 @@ namespace turns::app::windows { auto [lifeline, dialog] = editor_for(nullptr); dialog->present(this); - dialog->signal_finished().connect([this](auto name, auto priority) { m_participant_list_data->append(name, priority); }); + dialog->signal_finished().connect([this](auto name, auto priority, auto disposition) { m_participant_list_data->append(name, priority, disposition); }); } auto main::handle_clear() -> void diff --git a/app/src/windows/participant_editor.cpp b/app/src/windows/participant_editor.cpp index 5ca6602..1c97442 100644 --- a/app/src/windows/participant_editor.cpp +++ b/app/src/windows/participant_editor.cpp @@ -40,10 +40,11 @@ namespace turns::app::windows adw_combo_row_set_factory(m_disposition, GTK_LIST_ITEM_FACTORY(m_disposition_factory->gobj())); adw_combo_row_set_model(m_disposition, G_LIST_MODEL(m_disposition_model->gobj())); - if (obj) + if (m_participant) { gtk_editable_set_text(GTK_EDITABLE(m_name), m_participant->property_name().get_value().c_str()); adw_spin_row_set_value(m_priority, m_participant->property_priority().get_value()); + adw_combo_row_set_selected(m_disposition, static_cast<unsigned>(m_participant->get_disposition())); } } @@ -61,14 +62,16 @@ namespace turns::app::windows { auto name = gtk_editable_get_text(GTK_EDITABLE(m_name)); auto priority = adw_spin_row_get_value(m_priority); + auto disposition = static_cast<domain::disposition>(adw_combo_row_get_selected(m_disposition)); if (m_participant) { m_participant->set_name(name); m_participant->set_priority(priority); + m_participant->set_disposition(disposition); } - m_signal_finished.emit(name, priority); + m_signal_finished.emit(name, priority, disposition); adw_dialog_close(m_adw); } |
