summaryrefslogtreecommitdiffhomepage
path: root/dev/DLL/WRenderer
diff options
context:
space:
mode:
Diffstat (limited to 'dev/DLL/WRenderer')
-rw-r--r--dev/DLL/WRenderer/.keep0
-rw-r--r--dev/DLL/WRenderer/CoreDefs.hxx26
-rw-r--r--dev/DLL/WRenderer/ReadMe.md5
-rw-r--r--dev/DLL/WRenderer/Sources/UIRenderView.cxx34
-rw-r--r--dev/DLL/WRenderer/build.json20
5 files changed, 85 insertions, 0 deletions
diff --git a/dev/DLL/WRenderer/.keep b/dev/DLL/WRenderer/.keep
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/dev/DLL/WRenderer/.keep
diff --git a/dev/DLL/WRenderer/CoreDefs.hxx b/dev/DLL/WRenderer/CoreDefs.hxx
new file mode 100644
index 00000000..28eff7ef
--- /dev/null
+++ b/dev/DLL/WRenderer/CoreDefs.hxx
@@ -0,0 +1,26 @@
+/* -------------------------------------------
+
+ Copyright ZKA Technologies.
+
+------------------------------------------- */
+
+#pragma once
+
+#include <Modules/CoreCG/FbRenderer.hxx>
+#include <Modules/CoreCG/WindowRenderer.hxx>
+
+namespace System
+{
+ class UIRenderEffect;
+ class UIRenderCanvas;
+ class UIRenderView; // phone desktop, computer desktop, remote desktop.
+
+ enum
+ {
+ eDesktopInvalid,
+ eDesktopPC,
+ eDesktopMobile,
+ eDestkopRemote,
+ eDesktopCount,
+ };
+} // namespace System
diff --git a/dev/DLL/WRenderer/ReadMe.md b/dev/DLL/WRenderer/ReadMe.md
new file mode 100644
index 00000000..53c2ba24
--- /dev/null
+++ b/dev/DLL/WRenderer/ReadMe.md
@@ -0,0 +1,5 @@
+# ZKA Window Renderer.
+
+Acts as the main rendering engine of the UI stack.
+
+###### (c) ZKA Technologies, all rights reserved.
diff --git a/dev/DLL/WRenderer/Sources/UIRenderView.cxx b/dev/DLL/WRenderer/Sources/UIRenderView.cxx
new file mode 100644
index 00000000..0091cef4
--- /dev/null
+++ b/dev/DLL/WRenderer/Sources/UIRenderView.cxx
@@ -0,0 +1,34 @@
+/* -------------------------------------------
+
+ Copyright ZKA Technologies.
+
+------------------------------------------- */
+
+#include <UIRenderView.hxx>
+
+/// @file Renderer.cxx
+/// @brief 2D UI renderer, using GX APIs.
+
+namespace System
+{
+ UIRenderView::UIRenderView() = default;
+ UIRenderView::~UIRenderView() = default;
+
+ UIRenderEffect* UIRenderView::GetEffect(const SizeT& at)
+ {
+ if (!this->fEffects->Contains(at))
+ {
+ return nullptr;
+ }
+
+ return this->fEffects[at];
+ }
+
+ SizeT UIRenderView::AddEffect(const UIRenderEffect* effect)
+ {
+ if (!effect)
+ return (SizeT)-1;
+
+ return this->fEffects->Add(effect);
+ }
+} // namespace System
diff --git a/dev/DLL/WRenderer/build.json b/dev/DLL/WRenderer/build.json
new file mode 100644
index 00000000..7a166044
--- /dev/null
+++ b/dev/DLL/WRenderer/build.json
@@ -0,0 +1,20 @@
+{
+ "compiler_path": "x86_64-w64-mingw32-g++",
+ "compiler_std": "c++20",
+ "headers_path": ["../"],
+ "sources_path": ["Sources/*.cxx"],
+ "output_name": "wrenderer.dll",
+ "compiler_flags": [
+ "-ffreestanding",
+ "-shared",
+ "-fno-rtti",
+ "-fno-exceptions",
+ "-Wl,--subsystem=17"
+ ],
+ "cpp_macros": [
+ "__WRENDER_IMPL__",
+ "cWRVersion=0x0100",
+ "cWRVersionHighest=0x0100",
+ "cWRVersionLowest=0x0100"
+ ]
+}