From 1a83168d5c7269bd91043d79169898ca6893d88a Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Tue, 16 Jul 2024 16:20:47 +0200 Subject: app: rename main window to tracker --- app/src/application.cpp | 16 ++++----- app/src/main.cpp | 15 ++++++++ app/src/turns.cpp | 15 -------- app/src/windows/main.cpp | 83 --------------------------------------------- app/src/windows/tracker.cpp | 83 +++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 106 insertions(+), 106 deletions(-) create mode 100644 app/src/main.cpp delete mode 100644 app/src/turns.cpp delete mode 100644 app/src/windows/main.cpp create mode 100644 app/src/windows/tracker.cpp (limited to 'app/src') diff --git a/app/src/application.cpp b/app/src/application.cpp index 35dcfdb..efa1ce0 100644 --- a/app/src/application.cpp +++ b/app/src/application.cpp @@ -1,7 +1,7 @@ #include "turns/app/application.hpp" #include "turns/app/widgets/turn_order_view.hpp" -#include "turns/app/windows/main.hpp" +#include "turns/app/windows/tracker.hpp" #include #include @@ -37,22 +37,22 @@ namespace turns::app auto application::handle_action_quit() -> void { - m_main->close(); + m_tracker->close(); } auto application::on_activate() -> void { - auto builder = Gtk::Builder::create_from_resource("/ch/arknet/Turns/windows/main.ui"); - m_main = Gtk::Builder::get_widget_derived(builder, "main"); + auto builder = Gtk::Builder::create_from_resource("/ch/arknet/Turns/windows/tracker.ui"); + m_tracker = Gtk::Builder::get_widget_derived(builder, "tracker"); - m_application->add_window(*m_main); - m_main->present(); + m_application->add_window(*m_tracker); + m_tracker->present(); } auto application::on_shutdown() -> void { - m_main->close(); - delete m_main; + m_tracker->close(); + delete m_tracker; } auto application::on_startup() -> void diff --git a/app/src/main.cpp b/app/src/main.cpp new file mode 100644 index 0000000..d81f34f --- /dev/null +++ b/app/src/main.cpp @@ -0,0 +1,15 @@ +#include "turns/app/application.hpp" + +#include +#include + +auto main(int argc, char * argv[]) -> int +{ + setlocale(LC_ALL, ""); + bindtextdomain("turns", LOCALEDIR); + bind_textdomain_codeset("turns", "UTF-8"); + textdomain("turns"); + + auto app = turns::app::application::create(); + return app->run(argc, argv); +} \ No newline at end of file diff --git a/app/src/turns.cpp b/app/src/turns.cpp deleted file mode 100644 index d81f34f..0000000 --- a/app/src/turns.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include "turns/app/application.hpp" - -#include -#include - -auto main(int argc, char * argv[]) -> int -{ - setlocale(LC_ALL, ""); - bindtextdomain("turns", LOCALEDIR); - bind_textdomain_codeset("turns", "UTF-8"); - textdomain("turns"); - - auto app = turns::app::application::create(); - return app->run(argc, argv); -} \ No newline at end of file diff --git a/app/src/windows/main.cpp b/app/src/windows/main.cpp deleted file mode 100644 index a532dc0..0000000 --- a/app/src/windows/main.cpp +++ /dev/null @@ -1,83 +0,0 @@ -#include "turns/app/windows/main.hpp" - -#include "turns/app/widgets/participant_row.hpp" -#include "turns/app/windows/participant_editor.hpp" -#include "turns/lang/messages.hpp" - -#include -#include - -#include -#include -#include - -namespace turns::app::windows -{ - - namespace - { - auto editor_for(Glib::RefPtr participant) - { - auto builder = Gtk::Builder::create_from_resource("/ch/arknet/Turns/windows/participant_editor.ui"); - return std::pair{builder, Gtk::Builder::get_widget_derived(builder, "participant_editor", participant)}; - } - } // namespace - - main::main(BaseObjectType * base, Glib::RefPtr const builder) - : Gtk::ApplicationWindow{base} - , m_adw{ADW_APPLICATION_WINDOW(gobj())} - , m_controls{builder->get_widget("controls")} - , m_empty(builder->get_widget("empty")) - , m_stack{builder->get_widget("stack")} - , m_title(ADW_WINDOW_TITLE(builder->get_widget("title")->gobj())) - , m_turn_order{Gtk::make_managed()} - , m_subtitle{Glib::wrap(GTK_WIDGET(m_title)), "subtitle"} - , m_clear_action{add_action("clear", sigc::mem_fun(*m_turn_order, &widgets::turn_order_view::clear))} - { - m_stack->add(*m_turn_order); - - // clang-format off - m_clear_action_enabled = Glib::Binding::bind_property(m_turn_order->property_n_items(), - m_clear_action->property_enabled(), - Glib::Binding::Flags::SYNC_CREATE); - - m_controls_revealed = Glib::Binding::bind_property(m_turn_order->property_n_items(), - m_controls->property_reveal_child(), - Glib::Binding::Flags::SYNC_CREATE); - - m_visible_child_widget = Glib::Binding::bind_property(m_turn_order->property_n_items(), - m_stack->property_visible_child(), - Glib::Binding::Flags::SYNC_CREATE, - [this](auto count) { return count ? m_turn_order : m_empty; }); - - m_subtitle_text = Glib::Binding::bind_property(m_turn_order->property_n_items(), - m_subtitle, - Glib::Binding::Flags::SYNC_CREATE, - [](auto count) { return count ? "" : _(lang::no_active_turn_order); }); - // clang-format on - - add_action("add_participant", sigc::mem_fun(*this, &main::handle_add_participant)); - add_action_with_parameter("delete", Glib::VARIANT_TYPE_INT32, [this](auto param) { - auto index = Glib::VariantBase::cast_dynamic>(param); - m_turn_order->remove(index.get()); - }); - add_action_with_parameter("edit", Glib::VARIANT_TYPE_INT32, sigc::mem_fun(*this, &main::handle_edit_participant)); - } - - auto main::handle_add_participant() -> void - { - auto [lifeline, dialog] = editor_for(nullptr); - dialog->present(this); - dialog->signal_finished().connect(sigc::mem_fun(*m_turn_order, &widgets::turn_order_view::append)); - } - - auto main::handle_edit_participant(Glib::VariantBase param) -> void - { - static_cast(param); - auto index = Glib::VariantBase::cast_dynamic>(param); - auto participant = m_turn_order->get(index.get()); - auto [lifeline, dialog] = editor_for(participant); - dialog->present(this); - } - -} // namespace turns::app::windows diff --git a/app/src/windows/tracker.cpp b/app/src/windows/tracker.cpp new file mode 100644 index 0000000..f57e9eb --- /dev/null +++ b/app/src/windows/tracker.cpp @@ -0,0 +1,83 @@ +#include "turns/app/windows/tracker.hpp" + +#include "turns/app/widgets/participant_row.hpp" +#include "turns/app/windows/participant_editor.hpp" +#include "turns/lang/messages.hpp" + +#include +#include + +#include +#include +#include + +namespace turns::app::windows +{ + + namespace + { + auto editor_for(Glib::RefPtr participant) + { + auto builder = Gtk::Builder::create_from_resource("/ch/arknet/Turns/windows/participant_editor.ui"); + return std::pair{builder, Gtk::Builder::get_widget_derived(builder, "participant_editor", participant)}; + } + } // namespace + + tracker::tracker(BaseObjectType * base, Glib::RefPtr const builder) + : Gtk::ApplicationWindow{base} + , m_adw{ADW_APPLICATION_WINDOW(gobj())} + , m_controls{builder->get_widget("controls")} + , m_empty(builder->get_widget("empty")) + , m_stack{builder->get_widget("stack")} + , m_title(ADW_WINDOW_TITLE(builder->get_widget("title")->gobj())) + , m_turn_order{Gtk::make_managed()} + , m_subtitle{Glib::wrap(GTK_WIDGET(m_title)), "subtitle"} + , m_clear_action{add_action("clear", sigc::mem_fun(*m_turn_order, &widgets::turn_order_view::clear))} + { + m_stack->add(*m_turn_order); + + // clang-format off + m_clear_action_enabled = Glib::Binding::bind_property(m_turn_order->property_n_items(), + m_clear_action->property_enabled(), + Glib::Binding::Flags::SYNC_CREATE); + + m_controls_revealed = Glib::Binding::bind_property(m_turn_order->property_n_items(), + m_controls->property_reveal_child(), + Glib::Binding::Flags::SYNC_CREATE); + + m_visible_child_widget = Glib::Binding::bind_property(m_turn_order->property_n_items(), + m_stack->property_visible_child(), + Glib::Binding::Flags::SYNC_CREATE, + [this](auto count) { return count ? m_turn_order : m_empty; }); + + m_subtitle_text = Glib::Binding::bind_property(m_turn_order->property_n_items(), + m_subtitle, + Glib::Binding::Flags::SYNC_CREATE, + [](auto count) { return count ? "" : _(lang::no_active_turn_order); }); + // clang-format on + + add_action("add_participant", sigc::mem_fun(*this, &tracker::handle_add_participant)); + add_action_with_parameter("delete", Glib::VARIANT_TYPE_INT32, [this](auto param) { + auto index = Glib::VariantBase::cast_dynamic>(param); + m_turn_order->remove(index.get()); + }); + add_action_with_parameter("edit", Glib::VARIANT_TYPE_INT32, sigc::mem_fun(*this, &tracker::handle_edit_participant)); + } + + auto tracker::handle_add_participant() -> void + { + auto [lifeline, dialog] = editor_for(nullptr); + dialog->present(this); + dialog->signal_finished().connect(sigc::mem_fun(*m_turn_order, &widgets::turn_order_view::append)); + } + + auto tracker::handle_edit_participant(Glib::VariantBase param) -> void + { + static_cast(param); + auto index = Glib::VariantBase::cast_dynamic>(param); + auto participant = m_turn_order->get(index.get()); + auto [lifeline, dialog] = editor_for(participant); + dialog->present(this); + } + +} // namespace turns::app::windows -- cgit v1.2.3