aboutsummaryrefslogtreecommitdiff
path: root/extension/src/openvic-extension/UIAdapter.hpp
diff options
context:
space:
mode:
author Hop311 <Hop3114@gmail.com>2023-11-17 21:17:55 +0100
committer GitHub <noreply@github.com>2023-11-17 21:17:55 +0100
commit9165f5980c5cfe75b3bad4303a5822340f6adcfc (patch)
tree79a69cb7601bf1367e4ee4f10ebf61b698319bf3 /extension/src/openvic-extension/UIAdapter.hpp
parent72d893d55d26ae9dc6739a853d1773b3cb286123 (diff)
parentaefc61a1aff091e31436c60d004531b5905cecba (diff)
Merge pull request #166 from OpenVicProject/gui
GUI elements -> Godot UI nodes generator
Diffstat (limited to 'extension/src/openvic-extension/UIAdapter.hpp')
-rw-r--r--extension/src/openvic-extension/UIAdapter.hpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/extension/src/openvic-extension/UIAdapter.hpp b/extension/src/openvic-extension/UIAdapter.hpp
new file mode 100644
index 0000000..d54a6b5
--- /dev/null
+++ b/extension/src/openvic-extension/UIAdapter.hpp
@@ -0,0 +1,19 @@
+#pragma once
+
+#include <godot_cpp/classes/control.hpp>
+
+#include <openvic-simulation/interface/GUI.hpp>
+
+#include "openvic-extension/singletons/AssetManager.hpp"
+
+namespace OpenVic::GodotGUIBuilder {
+ bool generate_element(GUI::Element const* element, AssetManager& asset_manager, godot::Control*& result);
+
+ bool generate_icon(GUI::Element const& element, AssetManager& asset_manager, godot::Control*& result);
+ bool generate_button(GUI::Element const& element, AssetManager& asset_manager, godot::Control*& result);
+ bool generate_checkbox(GUI::Element const& element, AssetManager& asset_manager, godot::Control*& result);
+ bool generate_text(GUI::Element const& element, AssetManager& asset_manager, godot::Control*& result);
+ bool generate_overlapping_elements(GUI::Element const& element, AssetManager& asset_manager, godot::Control*& result);
+ bool generate_listbox(GUI::Element const& element, AssetManager& asset_manager, godot::Control*& result);
+ bool generate_window(GUI::Element const& element, AssetManager& asset_manager, godot::Control*& result);
+}