diff --git a/src/bedsidemon/about_menu.cpp b/src/bedsidemon/about_menu.cpp
index 19cee2d..03e2e58 100644
--- a/src/bedsidemon/about_menu.cpp
+++ b/src/bedsidemon/about_menu.cpp
@@ -21,4 +21,41 @@ along with this program. If not, see .
#include "about_menu.hpp"
+#include
+
+using namespace std::string_literals;
+
using namespace bedsidemon;
+
+namespace m {
+using namespace ruis::make;
+} // namespace m
+
+namespace {
+std::vector> make_contents(utki::shared_ref c)
+{
+ // clang-format off
+ return {
+ m::text(c,
+ {},
+ U"TODO:"s
+ )
+ };
+ // clang-format on
+}
+} // namespace
+
+about_menu::about_menu(utki::shared_ref context) :
+ ruis::widget(
+ std::move(context),
+ {
+ .dims = {ruis::dim::fill, ruis::dim::fill}
+},
+ {}
+ ),
+ menu(
+ this->context, //
+ U"About"s,
+ make_contents(this->context)
+ )
+{}
diff --git a/src/bedsidemon/about_menu.hpp b/src/bedsidemon/about_menu.hpp
index ae0deed..5acf842 100644
--- a/src/bedsidemon/about_menu.hpp
+++ b/src/bedsidemon/about_menu.hpp
@@ -21,9 +21,14 @@ along with this program. If not, see .
#pragma once
+#include "menu.hpp"
+
namespace bedsidemon {
-class about_menu
-{};
+class about_menu : public menu
+{
+public:
+ about_menu(utki::shared_ref context);
+};
} // namespace bedsidemon
diff --git a/src/bedsidemon/application.cpp b/src/bedsidemon/application.cpp
index 5dc3695..3754734 100644
--- a/src/bedsidemon/application.cpp
+++ b/src/bedsidemon/application.cpp
@@ -31,6 +31,7 @@ along with this program. If not, see .
#include "spo2/setocare_st_t130_u01.hpp"
#include "spo2/spo2_parameter_window.hpp"
+#include "about_menu.hpp"
#include "gui.hpp"
#include "settings_menu.hpp"
@@ -121,6 +122,11 @@ application::application(bool window, std::string_view res_path) :
app.open_menu(utki::make_shared(app.gui.context));
};
+ c.get().get_widget_as("about_button"sv).click_handler = [](ruis::push_button& b) {
+ auto& app = bedsidemon::application::inst();
+ app.open_menu(utki::make_shared(app.gui.context));
+ };
+
c.get().get_widget_as("exit_button"sv).click_handler = [](ruis::push_button& b) {
auto& app = bedsidemon::application::inst();
app.quit();
diff --git a/src/bedsidemon/menu.cpp b/src/bedsidemon/menu.cpp
index 914ccf8..cca076b 100644
--- a/src/bedsidemon/menu.cpp
+++ b/src/bedsidemon/menu.cpp
@@ -67,7 +67,7 @@ menu::menu(
.font_size = style::font_size_menu_title
}
},
- U"Settings"s
+ std::move(title)
),
m::margins(this->context,
{