From 9939d625b5f1dd9c68ddc084d5ca8e8fc8ef7b52 Mon Sep 17 00:00:00 2001 From: Dynamitos Date: Thu, 28 Apr 2022 19:24:44 +0200 Subject: [PATCH] Adding EnTT --- .gitmodules | 3 +++ CMakeLists.txt | 1 + cmake/SuperBuild.cmake | 5 +++++ external/entt | 1 + src/Engine/UI/Elements/Button.cpp | 4 ++++ src/Engine/UI/Elements/Button.h | 13 +++++++++++++ src/Engine/UI/Elements/CMakeLists.txt | 4 ++++ src/Engine/UI/Elements/Label.cpp | 4 ++++ src/Engine/UI/Elements/Label.h | 17 +++++++++++++++++ 9 files changed, 52 insertions(+) create mode 160000 external/entt create mode 100644 src/Engine/UI/Elements/Button.cpp create mode 100644 src/Engine/UI/Elements/Button.h create mode 100644 src/Engine/UI/Elements/Label.cpp create mode 100644 src/Engine/UI/Elements/Label.h diff --git a/.gitmodules b/.gitmodules index 7a36cd7..dff0602 100644 --- a/.gitmodules +++ b/.gitmodules @@ -31,3 +31,6 @@ [submodule "external/freetype"] path = external/freetype url = https://gitlab.freedesktop.org/freetype/freetype.git +[submodule "external/entt"] + path = external/entt + url = git@github.com:skypjack/entt.git diff --git a/CMakeLists.txt b/CMakeLists.txt index adce967..753811c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -20,6 +20,7 @@ set(STB_ROOT ${EXTERNAL_ROOT}/stb) set(TTFPARSER_ROOT ${EXTERNAL_ROOT}/ttf-parser) set(FREETYPE_ROOT ${EXTERNAL_ROOT}/freetype) set(SPIRV_ROOT ${EXTERNAL_ROOT}/SPIRV-Cross) +set(ENTT_ROOT ${EXTERNAL_ROOT}/entt) set(NSAM_ROOT ${EXTERNAL_ROOT}/aftermath) set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/) diff --git a/cmake/SuperBuild.cmake b/cmake/SuperBuild.cmake index b8ee817..985c82b 100644 --- a/cmake/SuperBuild.cmake +++ b/cmake/SuperBuild.cmake @@ -61,6 +61,11 @@ set(GLFW_VULKAN_STATIC OFF CACHE BOOL "GLFW vulkan static") add_subdirectory(${GLFW_ROOT} ${GLFW_ROOT}) +#--------------EnTT------------------------------ +list(APPEND DEPENDENCIES EnTT) + +add_subdirectory(${ENTT_ROOT} ${ENTT_ROOT}) + #--------------FreeType------------------------------ list(APPEND DEPENDENCIES freetype) diff --git a/external/entt b/external/entt new file mode 160000 index 0000000..ebc0c18 --- /dev/null +++ b/external/entt @@ -0,0 +1 @@ +Subproject commit ebc0c18534a33afcd49878cadea2620bac5cc6bf diff --git a/src/Engine/UI/Elements/Button.cpp b/src/Engine/UI/Elements/Button.cpp new file mode 100644 index 0000000..b14610d --- /dev/null +++ b/src/Engine/UI/Elements/Button.cpp @@ -0,0 +1,4 @@ +#include "Button.h" + +using namespace Seele; +using namespace Seele::UI; diff --git a/src/Engine/UI/Elements/Button.h b/src/Engine/UI/Elements/Button.h new file mode 100644 index 0000000..6f77296 --- /dev/null +++ b/src/Engine/UI/Elements/Button.h @@ -0,0 +1,13 @@ +#pragma once +#include "Element.h" + +namespace Seele +{ +namespace UI +{ +class Button : public Element +{ + +}; +} // namespace UI +} // namespace Seele diff --git a/src/Engine/UI/Elements/CMakeLists.txt b/src/Engine/UI/Elements/CMakeLists.txt index 5b13ba7..005c939 100644 --- a/src/Engine/UI/Elements/CMakeLists.txt +++ b/src/Engine/UI/Elements/CMakeLists.txt @@ -1,6 +1,10 @@ target_sources(Engine PRIVATE + Button.h + Button.cpp Element.h Element.cpp + Label.h + Label.cpp Panel.h Panel.cpp) \ No newline at end of file diff --git a/src/Engine/UI/Elements/Label.cpp b/src/Engine/UI/Elements/Label.cpp new file mode 100644 index 0000000..8a23d82 --- /dev/null +++ b/src/Engine/UI/Elements/Label.cpp @@ -0,0 +1,4 @@ +#include "Label.h" + +using namespace Seele; +using namespace Seele::UI; \ No newline at end of file diff --git a/src/Engine/UI/Elements/Label.h b/src/Engine/UI/Elements/Label.h new file mode 100644 index 0000000..9102c5a --- /dev/null +++ b/src/Engine/UI/Elements/Label.h @@ -0,0 +1,17 @@ +#pragma once +#include "Element.h" + +namespace Seele +{ +namespace UI +{ +class Label : public Element +{ +public: + Label(); + ~Label(); +private: + std::string text; +}; +} // namespace UI +} // namespace Seele