From 0b38380437c5ebf9991d963e3a4320a354982128 Mon Sep 17 00:00:00 2001 From: Pcornat Date: Wed, 18 Mar 2026 19:39:02 +0100 Subject: [PATCH] Keeping both builders, renaming them. --- app_win_2_back.cpp | 59 +++++++++++++++++++++++++--------------------- app_win_2_back.hpp | 3 ++- 2 files changed, 34 insertions(+), 28 deletions(-) diff --git a/app_win_2_back.cpp b/app_win_2_back.cpp index 951358f..eaec021 100644 --- a/app_win_2_back.cpp +++ b/app_win_2_back.cpp @@ -23,10 +23,15 @@ namespace gui_to_app { void AppWin2Back::on_startup() { Application::on_startup(); - const auto menu_bar = []() -> Glib::RefPtr { + const auto menu_bar = [this]() -> Glib::RefPtr { try { - const auto builder = Gtk::Builder::create_from_file("menu_bar.ui"); - return builder->get_object("menu"); + menu_builder = Gtk::Builder::create_from_file("menu_bar.ui"); + if (menu_builder != nullptr) { + return menu_builder->get_object("menu"); + } else { + spdlog::error("Error while loading menu bar UI"); + return nullptr; + } } catch (const std::exception &e) { spdlog::error("Error occurred while loader menu bar: {}", e.what()); return nullptr; @@ -73,18 +78,18 @@ namespace gui_to_app { } bool AppWin2Back::switches_procedure() { - sword_switch = app_builder->get_widget("sword_button"); - lance_switch = app_builder->get_widget("lance_button"); - morgen_switch = app_builder->get_widget("morgenstern_button"); - bow_switch = app_builder->get_widget("arc_button"); - chainmail_switch = app_builder->get_widget("chainmail_button"); - cookpot_switch = app_builder->get_widget("cookingpot_button"); - pamphlet_switch = app_builder->get_widget("pamphlet_tourist_button"); - medkit_switch = app_builder->get_widget("medkit_button"); - fourche_switch = app_builder->get_widget("fourche_button"); - dagger_switch = app_builder->get_widget("dagger_button"); - rock_kit_switch = app_builder->get_widget("rock_kit_button"); - sack_switch = app_builder->get_widget("sack_button"); + sword_switch = window_builder->get_widget("sword_button"); + lance_switch = window_builder->get_widget("lance_button"); + morgen_switch = window_builder->get_widget("morgenstern_button"); + bow_switch = window_builder->get_widget("arc_button"); + chainmail_switch = window_builder->get_widget("chainmail_button"); + cookpot_switch = window_builder->get_widget("cookingpot_button"); + pamphlet_switch = window_builder->get_widget("pamphlet_tourist_button"); + medkit_switch = window_builder->get_widget("medkit_button"); + fourche_switch = window_builder->get_widget("fourche_button"); + dagger_switch = window_builder->get_widget("dagger_button"); + rock_kit_switch = window_builder->get_widget("rock_kit_button"); + sack_switch = window_builder->get_widget("sack_button"); const auto test_result = ranges::to >( std::array{ @@ -143,7 +148,7 @@ namespace gui_to_app { void AppWin2Back::on_activate() { Application::on_activate(); - app_builder = [] -> Glib::RefPtr { + window_builder = [] -> Glib::RefPtr { try { return Gtk::Builder::create_from_file("window_ui.ui"); } catch (const std::exception &e) { @@ -151,16 +156,16 @@ namespace gui_to_app { return nullptr; } }(); - if (!app_builder) { + if (!window_builder) { spdlog::critical("Error while loading UI"); quit(); return; } - main_window = Gtk::Builder::get_widget_derived(app_builder, "main_window"); + main_window = Gtk::Builder::get_widget_derived(window_builder, "main_window"); if (main_window != nullptr) { add_window(*main_window); main_window->set_show_menubar(true); - main_window->set_visible(true); + main_window->present(); } else { spdlog::critical("Error while getting window from builder"); on_quit(); @@ -169,7 +174,7 @@ namespace gui_to_app { if (switches_procedure()) { return; } - debug_button = app_builder->get_widget("debug_button"); + debug_button = window_builder->get_widget("debug_button"); hab_labels = CaracInterface{ { "habilete_label_base", @@ -177,7 +182,7 @@ namespace gui_to_app { "habilete_label_materiel", "habilete_label_total" }, - app_builder + window_builder }; endu_labels = CaracInterface{ { @@ -186,7 +191,7 @@ namespace gui_to_app { "endurance_label_materiel", "endurance_label_total" }, - app_builder + window_builder }; addr_labels = CaracInterface{ { @@ -195,7 +200,7 @@ namespace gui_to_app { "adresse_label_materiel", "adresse_label_total" }, - app_builder + window_builder }; luck_labels = CaracInterface{ { @@ -204,12 +209,12 @@ namespace gui_to_app { "chance_label_materiel", "chance_label_total" }, - app_builder + window_builder }; - damage_label = app_builder->get_widget("label_degat"); - armor_label = app_builder->get_widget("label_armure"); - critic_label = app_builder->get_widget("label_critique"); + damage_label = window_builder->get_widget("label_degat"); + armor_label = window_builder->get_widget("label_armure"); + critic_label = window_builder->get_widget("label_critique"); debug_button->signal_clicked().connect(sigc::mem_fun(*this, &AppWin2Back::debug_button_clicked), false); } diff --git a/app_win_2_back.hpp b/app_win_2_back.hpp index 2865b72..1c35836 100644 --- a/app_win_2_back.hpp +++ b/app_win_2_back.hpp @@ -83,7 +83,8 @@ namespace gui_to_app { bool erase_obj(const character::billyEnums &obj) noexcept; - Glib::RefPtr app_builder; + Glib::RefPtr window_builder; + Glib::RefPtr menu_builder; learn_gtkmm4::HelloWorld *main_window{ nullptr }; selection_button *sword_switch{ nullptr }; selection_button *lance_switch{ nullptr };