aboutsummaryrefslogtreecommitdiff
path: root/app/src/windows/participant_editor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/windows/participant_editor.cpp')
-rw-r--r--app/src/windows/participant_editor.cpp22
1 files changed, 12 insertions, 10 deletions
diff --git a/app/src/windows/participant_editor.cpp b/app/src/windows/participant_editor.cpp
index bab7731..49809c6 100644
--- a/app/src/windows/participant_editor.cpp
+++ b/app/src/windows/participant_editor.cpp
@@ -1,5 +1,7 @@
#include "turns/app/windows/participant_editor.hpp"
+#include "turns/lang/messages.hpp"
+
#include <print>
#include <gtkmm/editable.h>
@@ -11,19 +13,20 @@ namespace turns::app::windows
participant_editor::participant_editor(BaseObjectType * base, Glib::RefPtr<Gtk::Builder> const builder, Glib::RefPtr<domain::participant> obj)
: Gtk::Widget{base}
, m_adw{ADW_DIALOG(gobj())}
+ , m_disposition{ADW_COMBO_ROW(builder->get_widget<Gtk::ListBoxRow>("disposition")->gobj())}
, m_finish{builder->get_widget<Gtk::Button>("finish")}
+ , m_name{ADW_ENTRY_ROW(builder->get_widget<Gtk::ListBoxRow>("name")->gobj())}
+ , m_priority{ADW_SPIN_ROW(builder->get_widget<Gtk::ListBoxRow>("priority")->gobj())}
, m_participant{obj}
- {
- m_disposition = ADW_COMBO_ROW(builder->get_widget<Gtk::ListBoxRow>("disposition")->gobj());
- m_name = ADW_ENTRY_ROW(builder->get_widget<Gtk::ListBoxRow>("name")->gobj());
- m_priority = ADW_SPIN_ROW(builder->get_widget<Gtk::ListBoxRow>("priority")->gobj());
+ {
if (obj)
{
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_dialog_set_title(m_adw, obj ? lang::edit_participant : lang::add_participant);
m_finish->signal_clicked().connect(sigc::mem_fun(*this, &participant_editor::handle_finish_clicked));
}
@@ -46,15 +49,14 @@ namespace turns::app::windows
{
auto name = gtk_editable_get_text(GTK_EDITABLE(m_name));
auto priority = adw_spin_row_get_value(m_priority);
+
if (m_participant)
{
- m_participant->property_name().set_value(name);
- m_participant->property_priority().set_value(priority);
- }
- else
- {
- m_signal_finished.emit(name, priority);
+ m_participant->set_name(name);
+ m_participant->set_priority(priority);
}
+
+ m_signal_finished.emit(name, priority);
adw_dialog_close(m_adw);
}
} // namespace turns::app::windows \ No newline at end of file