From 5d8f799a1171f92054d4b45ba130cd7fdad0bd01 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Fri, 23 May 2025 14:04:27 +0200 Subject: app: prepare restructuring --- app/src/main.cpp | 97 -------------------------------------------------------- 1 file changed, 97 deletions(-) delete mode 100644 app/src/main.cpp (limited to 'app/src/main.cpp') diff --git a/app/src/main.cpp b/app/src/main.cpp deleted file mode 100644 index f179cf8..0000000 --- a/app/src/main.cpp +++ /dev/null @@ -1,97 +0,0 @@ -#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 -{ - setlocale(LC_ALL, ""); - bindtextdomain("turns", LOCALEDIR); - bind_textdomain_codeset("turns", "UTF-8"); - textdomain("turns"); - - 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); - - if (windows.empty()) - { - window = new turns::ui::Tracker{app, settings}; - } - else - { - window = dynamic_cast(windows[0]); - } - - window->present(); - window->load(files[0]); - }); - - app->signal_window_removed().connect([](auto window) { - auto tracker = dynamic_cast(window); - if (tracker) - { - delete tracker; - } - }); - - return app->run(argc, argv); -} \ No newline at end of file -- cgit v1.2.3