From b2c8e4ca45c6872cb2891dcb9334e905995bd59e Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Thu, 5 Jun 2025 14:38:37 +0200 Subject: gui: reintroduce Preferences --- gui/src/main.cpp | 107 ++++++++++++++++++++++--------------------------------- 1 file changed, 43 insertions(+), 64 deletions(-) (limited to 'gui/src/main.cpp') diff --git a/gui/src/main.cpp b/gui/src/main.cpp index d8b0bf9..61fdde3 100644 --- a/gui/src/main.cpp +++ b/gui/src/main.cpp @@ -4,17 +4,35 @@ */ #include "init.hpp" +#include "settings.hpp" #include -#include +#include +#include + +#include #include +#include +#include #include +#include +#include #include #include +namespace +{ + auto show_about(Glib::RefPtr app) + { + auto active_window = app->get_active_window(); + auto dialog = Gtk::make_managed("/ch/arknet/Turns/metainfo.xml", ""); + dialog->present(active_window); + } +} // namespace + auto main(int argc, char ** argv) -> int { setlocale(LC_ALL, ""); @@ -27,75 +45,36 @@ auto main(int argc, char ** argv) -> int Turns::init(); Turns::gui::init(); + app->signal_startup().connect([app] { + auto style_manager = Adwaita::StyleManager::get_default(); + style_manager->set_color_scheme(Adwaita::ColorScheme::PreferLight); + + app->add_action("quit", sigc::mem_fun(*app, &Adwaita::Application::quit)); + app->add_action("about", sigc::bind(&show_about, app)); + app->set_accel_for_action("app.quit", "q"); + app->set_accel_for_action("win.clear", "x"); + app->set_accel_for_action("win.next", "space"); + app->set_accel_for_action("win.previous", "BackSpace"); + app->set_accel_for_action("win.add_participant", "a"); + app->set_accel_for_action("win.open", "o"); + app->set_accel_for_action("win.preferences", "comma"); + app->set_accel_for_action("win.save", "s"); + app->set_accel_for_action("win.save-as", "s"); + }); + + auto settings = Turns::gui::get_settings(); + + // app->signal_activate().connect([app, settings] { + // auto window = new turns::ui::Tracker{app, settings}; + // window->present(); + // }); + return app->run(argc, argv); } -// #include "turns/core/init.hpp" -// #include "turns/core/settings.hpp" -// #include "turns/ui/init.hpp" -// #include "turns/ui/tracker.hpp" - -// #include -// #include - -// #include - -// #include -// #include - -// #include -// #include -// #include - -// #include -// #include -// #include -// #include - -// #include - -// #include -// #include - -// auto show_about(Glib::RefPtr app) -// { -// auto active_window = app->get_active_window(); -// auto dialog = Gtk::make_managed("/ch/arknet/Turns/metainfo.xml", ""); -// dialog->present(active_window); -// } - // auto main(int argc, char * argv[]) -> int // { -// auto app = Adwaita::Application::create("ch.arknet.Turns", Gio::Application::Flags::HANDLES_OPEN); -// auto settings = turns::core::get_settings(); - -// turns::core::register_types(); - -// app->signal_startup().connect([app] { -// turns::ui::register_types(); - -// auto style_manager = Adwaita::StyleManager::get_default(); -// style_manager->set_color_scheme(Adwaita::ColorScheme::PreferLight); - -// app->add_action("quit", sigc::mem_fun(*app, &Adwaita::Application::quit)); -// app->add_action("about", sigc::bind(&show_about, app)); -// app->set_accel_for_action("app.quit", "q"); -// app->set_accel_for_action("win.clear", "x"); -// app->set_accel_for_action("win.next", "space"); -// app->set_accel_for_action("win.previous", "BackSpace"); -// app->set_accel_for_action("win.add_participant", "a"); -// app->set_accel_for_action("win.open", "o"); -// app->set_accel_for_action("win.preferences", "comma"); -// app->set_accel_for_action("win.save", "s"); -// app->set_accel_for_action("win.save-as", "s"); -// }); - -// app->signal_activate().connect([app, settings] { -// auto window = new turns::ui::Tracker{app, settings}; -// window->present(); -// }); - // app->signal_open().connect([app, settings](auto files, auto) { // auto windows = app->get_windows(); // auto window = static_cast(nullptr); -- cgit v1.2.3