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, {