aboutsummaryrefslogtreecommitdiff
path: root/gui/include/turn_order_view.hpp
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@gmail.com>2025-05-24 11:58:39 +0200
committerFelix Morgner <felix.morgner@gmail.com>2025-05-24 11:58:39 +0200
commit72ab1fb4c1bf363f46470816d8b914a78ac493c4 (patch)
tree27349a1bacbab4ea698be35d2d3d9b5184b15ca1 /gui/include/turn_order_view.hpp
parentb7f2ff4d991ae068f7834bf8e565f6261bf7fff1 (diff)
downloadturns-72ab1fb4c1bf363f46470816d8b914a78ac493c4.tar.xz
turns-72ab1fb4c1bf363f46470816d8b914a78ac493c4.zip
gui: restructure file layout and apply licenses
Diffstat (limited to 'gui/include/turn_order_view.hpp')
-rw-r--r--gui/include/turn_order_view.hpp45
1 files changed, 45 insertions, 0 deletions
diff --git a/gui/include/turn_order_view.hpp b/gui/include/turn_order_view.hpp
new file mode 100644
index 0000000..9a7ede6
--- /dev/null
+++ b/gui/include/turn_order_view.hpp
@@ -0,0 +1,45 @@
+/*
+ * SPDX-FileCopyrightText: 2025 Felix Morgner <felix.morgner@gmail.com>
+ * SPDX-License-Identifier: LGPL-2.1-only
+ */
+
+#ifndef TURNS_UI_TURN_ORDER_VIEW_HPP
+#define TURNS_UI_TURN_ORDER_VIEW_HPP
+
+#include "turns/core/fwd.hpp"
+#include "turns/core/turn_order_model.hpp"
+#include "turns/ui/template_widget.hpp"
+
+#include <glibmm/object.h>
+#include <glibmm/refptr.h>
+
+#include <gtkmm/box.h>
+#include <gtkmm/listbox.h>
+#include <gtkmm/progressbar.h>
+#include <gtkmm/widget.h>
+
+#include <array>
+
+namespace turns::ui
+{
+ struct TurnOrderView : template_widget<TurnOrderView, Gtk::Box>
+ {
+ using model_type = core::TurnOderModel;
+
+ auto constexpr inline static children = std::array{
+ "progress",
+ "view",
+ };
+
+ explicit TurnOrderView(Glib::RefPtr<model_type> model = {});
+
+ private:
+ auto handle_create_row(Glib::RefPtr<Glib::Object> const item) -> Gtk::Widget *;
+
+ Glib::RefPtr<model_type> m_model;
+ Gtk::ProgressBar * m_progress;
+ Gtk::ListBox * m_view;
+ };
+} // namespace turns::ui::widgets
+
+#endif \ No newline at end of file