From 3b34ac3ccbeb62673b37f0c73cc145fede43c404 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Sat, 24 May 2025 12:13:08 +0200 Subject: gui: add basic frame --- gui/CMakeLists.txt | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ gui/src/main.cpp | 11 +++++++++++ 2 files changed, 59 insertions(+) (limited to 'gui') diff --git a/gui/CMakeLists.txt b/gui/CMakeLists.txt index ebdb1be..cf7830b 100644 --- a/gui/CMakeLists.txt +++ b/gui/CMakeLists.txt @@ -1,6 +1,54 @@ # SPDX-FileCopyrightText: 2025 Felix Morgner # SPDX-License-Identifier: LGPL-2.1-only +cmake_minimum_required(VERSION "4.0.0") + +project("turns-gui" + LANGUAGES C CXX + DESCRIPTION "Turns, the simple turn order tracker" + VERSION "1.0.0" +) + +include("FetchContent") + +find_package("PkgConfig" REQUIRED) + +# Dependencies + +pkg_check_modules("glibmm" + IMPORTED_TARGET + REQUIRED + "glibmm-2.68>=${TURNS_GLIB_MINIMUM_VERSION}" +) + +# Application + +add_executable("gui" "src/main.cpp") +add_executable("turns::gui" ALIAS "gui") + +target_compile_features("gui" PUBLIC + "c_std_23" + "cxx_std_23" +) + +target_include_directories("gui" PUBLIC + "$" +) + +target_link_libraries("gui" PUBLIC + "adwaitamm::adwaitamm" + "turns::mm" +) + +set_target_properties("gui" PROPERTIES + OUTPUT_NAME "turns" + INTERPROCEDURAL_OPTIMIZATION "${TURNS_CAN_DO_IPO}" + C_EXTENSIONS OFF + CXX_EXTENSIONS OFF +) + +install(TARGETS "gui") + # add_executable("app" # "src/main.cpp" # ) diff --git a/gui/src/main.cpp b/gui/src/main.cpp index a1f9843..dec6b8c 100644 --- a/gui/src/main.cpp +++ b/gui/src/main.cpp @@ -3,6 +3,17 @@ * SPDX-License-Identifier: LGPL-2.1-only */ +#include + +#include + +auto main(int argc, char ** argv) -> int +{ + auto app = Adwaita::Application::create("ch.arknet.Turns", Gio::Application::Flags::HANDLES_OPEN); + + return app->run(argc, argv); +} + // #include "turns/core/init.hpp" // #include "turns/core/settings.hpp" // #include "turns/ui/init.hpp" -- cgit v1.2.3