From 938328d3c87d5b7f2d56921cc5893f1c2d98302d Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Thu, 5 Jun 2025 14:42:44 +0200 Subject: gui: reintroduce TurnOrderView --- gui/CMakeLists.txt | 1 + gui/include/turn_order_view.hpp | 17 ++++++++--------- gui/src/init.cpp | 2 ++ gui/src/turn_order_view.cpp | 22 +++++++++++----------- 4 files changed, 22 insertions(+), 20 deletions(-) (limited to 'gui') diff --git a/gui/CMakeLists.txt b/gui/CMakeLists.txt index 5623332..902fdd0 100644 --- a/gui/CMakeLists.txt +++ b/gui/CMakeLists.txt @@ -70,6 +70,7 @@ add_library("gui_impl" "src/participant_row.cpp" "src/preferences.cpp" "src/settings.cpp" + "src/turn_order_view.cpp" ) target_include_directories("gui_impl" PUBLIC diff --git a/gui/include/turn_order_view.hpp b/gui/include/turn_order_view.hpp index 9a7ede6..eaa8501 100644 --- a/gui/include/turn_order_view.hpp +++ b/gui/include/turn_order_view.hpp @@ -3,16 +3,15 @@ * SPDX-License-Identifier: LGPL-2.1-only */ -#ifndef TURNS_UI_TURN_ORDER_VIEW_HPP -#define TURNS_UI_TURN_ORDER_VIEW_HPP +#ifndef TURNS_GUI_TURN_ORDER_VIEW_HPP +#define TURNS_GUI_TURN_ORDER_VIEW_HPP -#include "turns/core/fwd.hpp" -#include "turns/core/turn_order_model.hpp" -#include "turns/ui/template_widget.hpp" +#include "template_widget.hpp" + +#include #include #include - #include #include #include @@ -20,11 +19,11 @@ #include -namespace turns::ui +namespace Turns::gui { struct TurnOrderView : template_widget { - using model_type = core::TurnOderModel; + using model_type = TurnOrder; auto constexpr inline static children = std::array{ "progress", @@ -40,6 +39,6 @@ namespace turns::ui Gtk::ProgressBar * m_progress; Gtk::ListBox * m_view; }; -} // namespace turns::ui::widgets +} // namespace Turns::gui #endif \ No newline at end of file diff --git a/gui/src/init.cpp b/gui/src/init.cpp index 4d68929..4e36947 100644 --- a/gui/src/init.cpp +++ b/gui/src/init.cpp @@ -3,6 +3,7 @@ #include "participant_editor.hpp" #include "participant_row.hpp" #include "preferences.hpp" +#include "turn_order_view.hpp" #include @@ -11,4 +12,5 @@ auto Turns::gui::init() -> void g_type_ensure(ParticipantRow{nullptr}.get_type()); g_type_ensure(ParticipantEditor{nullptr}.get_type()); g_type_ensure(Preferences{}.get_type()); + g_type_ensure(TurnOrderView{}.get_type()); } diff --git a/gui/src/turn_order_view.cpp b/gui/src/turn_order_view.cpp index 5e5d550..89f4c81 100644 --- a/gui/src/turn_order_view.cpp +++ b/gui/src/turn_order_view.cpp @@ -3,11 +3,12 @@ * SPDX-License-Identifier: LGPL-2.1-only */ -#include "turns/ui/turn_order_view.hpp" +#include "turn_order_view.hpp" -#include "turns/core/participant.hpp" -#include "turns/ui/participant_row.hpp" -#include "turns/ui/template_widget.hpp" +#include "participant_row.hpp" +#include "template_widget.hpp" + +#include #include @@ -15,7 +16,6 @@ #include #include #include - #include #include #include @@ -24,7 +24,7 @@ #include -namespace turns::ui +namespace Turns::gui { namespace { @@ -47,23 +47,23 @@ namespace turns::ui set_orientation(Gtk::Orientation::VERTICAL); m_view->bind_model(m_model, sigc::mem_fun(*this, &TurnOrderView::handle_create_row)); - Glib::Binding::bind_property(m_model->progress(), m_progress->property_fraction(), Glib::Binding::Flags::SYNC_CREATE); + // Glib::Binding::bind_property(m_model->progress(), m_progress->property_fraction(), Glib::Binding::Flags::SYNC_CREATE); } auto TurnOrderView::handle_create_row(Glib::RefPtr const item) -> Gtk::Widget * { - auto participant = std::dynamic_pointer_cast(item); + auto participant = std::dynamic_pointer_cast(item); auto row = Gtk::make_managed(participant); - Glib::Binding::bind_property(m_model->is_running(), + Glib::Binding::bind_property(m_model->property_running(), row->delete_enabled(), Glib::Binding::Flags::SYNC_CREATE | Glib::Binding::Flags::INVERT_BOOLEAN); - Glib::Binding::bind_property(m_model->is_running(), + Glib::Binding::bind_property(m_model->property_running(), row->edit_enabled(), Glib::Binding::Flags::SYNC_CREATE | Glib::Binding::Flags::INVERT_BOOLEAN); return row; } -} // namespace turns::ui::widgets \ No newline at end of file +} // namespace Turns::gui \ No newline at end of file -- cgit v1.2.3