From dec89f2040bfdff54fb6139414eb66467f3600ed Mon Sep 17 00:00:00 2001 From: Nivaturimika <159065448+Nivaturimika@users.noreply.github.com> Date: Sun, 7 Apr 2024 05:05:39 +0100 Subject: [PATCH] Update gui_diplomacy_request_topbar.hpp --- src/gui/gui_diplomacy_request_topbar.hpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/gui/gui_diplomacy_request_topbar.hpp b/src/gui/gui_diplomacy_request_topbar.hpp index 00303d619..3fdec6b47 100644 --- a/src/gui/gui_diplomacy_request_topbar.hpp +++ b/src/gui/gui_diplomacy_request_topbar.hpp @@ -94,9 +94,12 @@ class diplomatic_message_topbar_flag_button : public flag_button { }; class diplomatic_message_topbar_entry_window : public listbox_row_element_base { public: + diplomatic_message_topbar_button* btn = nullptr; std::unique_ptr make_child(sys::state& state, std::string_view name, dcon::gui_def_id id) noexcept override { if(name == "diplomessageicon_button") { - return make_element_by_type(state, id); + auto ptr = make_element_by_type(state, id); + btn = ptr.get(); + return ptr; } else if(name == "flag") { return make_element_by_type(state, id); } else if(name == "messageicon_bg_overlay") { @@ -155,8 +158,11 @@ void diplomatic_message_topbar_button::button_action(sys::state& state) noexcept } void diplomatic_message_topbar_flag_button::button_action(sys::state& state) noexcept { - if(parent) - static_cast(parent)->button_action(state); + if(parent) { + auto win = static_cast(parent); + if(win->btn) + win->btn->button_action(state); + } } }