From 101f1405cc48569d8acd206d5f2443f96d66cf13 Mon Sep 17 00:00:00 2001 From: McMassiveNZ <12842622+McMassiveNZ@users.noreply.github.com> Date: Wed, 3 May 2023 22:30:09 +0200 Subject: [PATCH] Add NullWindow Implementation --- src/CMakeLists.txt | 6 ++++++ src/platform/null_window.cpp | 27 +++++++++++++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 src/platform/null_window.cpp diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 17caf24..16f66cf 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -7,9 +7,15 @@ set(STARTER_WINDOW_SRC ) source_group("" FILES ${STARTER_WINDOW_SRC}) +if(MSVC) set(PLATFORM_SRC platform/win32_window.cpp ) +else() +set(PLATFORM_SRC + platform/null_window.cpp +) +endif() source_group(platform FILES ${PLATFORM_SRC}) list(APPEND SOURCE_FILES ${PLATFORM_SRC}) diff --git a/src/platform/null_window.cpp b/src/platform/null_window.cpp new file mode 100644 index 0000000..63bdb5e --- /dev/null +++ b/src/platform/null_window.cpp @@ -0,0 +1,27 @@ +#include "../window.h" + +namespace starter_window +{ + +class NullWindowImpl : public Window +{ +public: + NullWindowImpl() = default; + ~NullWindowImpl() override = default; + + NullWindowImpl(NullWindowImpl&&) = delete; + NullWindowImpl& operator=(NullWindowImpl&&) = delete; + NullWindowImpl(const NullWindowImpl&) = delete; + NullWindowImpl& operator=(const NullWindowImpl&) = delete; + + bool PumpMessages() override { return true; } + +}; + +} // namespace starter_window + +std::unique_ptr swCreateWindow(starter_window::WindowCreateParams) +{ + auto result = std::make_unique(); + return result; +}