diff options
author | Marcus Nilsson <brainbomb@gmail.com> | 2021-11-27 13:23:58 +0100 |
---|---|---|
committer | Brian Gianforcaro <b.gianfo@gmail.com> | 2021-11-28 10:10:35 -0800 |
commit | c91eebfbaaf368824493fc149e31d9203cd3075a (patch) | |
tree | b3eb51469c3e79bb555e83f6eadb55d59a3fc935 | |
parent | cbf93ee687d3e2f5d75823387b15b90a1d7911e7 (diff) | |
download | serenity-c91eebfbaaf368824493fc149e31d9203cd3075a.zip |
Magnifier: Use LibMain
Use the new serenity_main construct and TRY in Magnifier.
-rw-r--r-- | Userland/Applications/Magnifier/CMakeLists.txt | 2 | ||||
-rw-r--r-- | Userland/Applications/Magnifier/main.cpp | 62 |
2 files changed, 25 insertions, 39 deletions
diff --git a/Userland/Applications/Magnifier/CMakeLists.txt b/Userland/Applications/Magnifier/CMakeLists.txt index 0118a39ab8..b3ed8910db 100644 --- a/Userland/Applications/Magnifier/CMakeLists.txt +++ b/Userland/Applications/Magnifier/CMakeLists.txt @@ -11,4 +11,4 @@ set(SOURCES ) serenity_app(Magnifier ICON app-magnifier) -target_link_libraries(Magnifier LibGUI) +target_link_libraries(Magnifier LibGUI LibMain) diff --git a/Userland/Applications/Magnifier/main.cpp b/Userland/Applications/Magnifier/main.cpp index 1d7fc7d31c..9e5b7accf8 100644 --- a/Userland/Applications/Magnifier/main.cpp +++ b/Userland/Applications/Magnifier/main.cpp @@ -5,37 +5,23 @@ */ #include "MagnifierWidget.h" +#include <LibCore/System.h> #include <LibGUI/ActionGroup.h> #include <LibGUI/Application.h> #include <LibGUI/Icon.h> #include <LibGUI/Menu.h> #include <LibGUI/Menubar.h> #include <LibGUI/Window.h> -#include <unistd.h> +#include <LibMain/Main.h> -int main(int argc, char** argv) +ErrorOr<int> serenity_main(Main::Arguments arguments) { - if (pledge("stdio cpath rpath recvfd sendfd unix", nullptr) < 0) { - perror("pledge"); - return 1; - } + TRY(Core::System::pledge("stdio cpath rpath recvfd sendfd unix", nullptr)); + auto app = GUI::Application::construct(arguments); - auto app = GUI::Application::construct(argc, argv); - - if (pledge("stdio cpath rpath recvfd sendfd", nullptr) < 0) { - perror("pledge"); - return 1; - } - - if (unveil("/res", "r") < 0) { - perror("unveil"); - return 1; - } - - if (unveil(nullptr, nullptr) < 0) { - perror("unveil"); - return 1; - } + TRY(Core::System::pledge("stdio cpath rpath recvfd sendfd", nullptr)); + TRY(Core::System::unveil("/res", "r")); + TRY(Core::System::unveil(nullptr, nullptr)); auto app_icon = GUI::Icon::default_icon("app-magnifier"); @@ -46,33 +32,33 @@ int main(int argc, char** argv) window->resize(window_dimensions, window_dimensions); window->set_minimizable(false); window->set_icon(app_icon.bitmap_for_size(16)); - auto& magnifier = window->set_main_widget<MagnifierWidget>(); + auto magnifier = TRY(window->try_set_main_widget<MagnifierWidget>()); - auto& file_menu = window->add_menu("&File"); - file_menu.add_action(GUI::CommonActions::make_quit_action([&](auto&) { + auto file_menu = TRY(window->try_add_menu("&File")); + TRY(file_menu->try_add_action(GUI::CommonActions::make_quit_action([&](auto&) { app->quit(); - })); + }))); auto size_action_group = make<GUI::ActionGroup>(); auto two_x_action = GUI::Action::create_checkable( "&2x", { Key_2 }, [&](auto&) { - magnifier.set_scale_factor(2); + magnifier->set_scale_factor(2); }); auto four_x_action = GUI::Action::create_checkable( "&4x", { Key_4 }, [&](auto&) { - magnifier.set_scale_factor(4); + magnifier->set_scale_factor(4); }); auto eight_x_action = GUI::Action::create_checkable( "&8x", { Key_8 }, [&](auto&) { - magnifier.set_scale_factor(8); + magnifier->set_scale_factor(8); }); auto pause_action = GUI::Action::create_checkable( "&Pause Capture", { Key_Space }, [&](auto& action) { - magnifier.pause_capture(action.is_checked()); + magnifier->pause_capture(action.is_checked()); }); size_action_group->add_action(two_x_action); @@ -80,17 +66,17 @@ int main(int argc, char** argv) size_action_group->add_action(eight_x_action); size_action_group->set_exclusive(true); - auto& view_menu = window->add_menu("&View"); - view_menu.add_action(two_x_action); - view_menu.add_action(four_x_action); - view_menu.add_action(eight_x_action); + auto view_menu = TRY(window->try_add_menu("&View")); + TRY(view_menu->try_add_action(two_x_action)); + TRY(view_menu->try_add_action(four_x_action)); + TRY(view_menu->try_add_action(eight_x_action)); two_x_action->set_checked(true); - view_menu.add_separator(); - view_menu.add_action(pause_action); + TRY(view_menu->try_add_separator()); + TRY(view_menu->try_add_action(pause_action)); - auto& help_menu = window->add_menu("&Help"); - help_menu.add_action(GUI::CommonActions::make_about_action("Magnifier", app_icon, window)); + auto help_menu = TRY(window->try_add_menu("&Help")); + help_menu->add_action(GUI::CommonActions::make_about_action("Magnifier", app_icon, window)); window->show(); |