From 163b9e2534b4c98774647630d61a73ea94d5998c Mon Sep 17 00:00:00 2001 From: Sander Speetjens Date: Fri, 23 Aug 2024 22:28:34 +0200 Subject: [PATCH] UI Add led element --- src/UI/CMakeLists.txt | 1 + src/UI/UI.hpp | 1 + src/UI/UI_led.cpp | 22 ++++++++++++++++++++++ src/UI/UI_led.hpp | 15 +++++++++++++++ 4 files changed, 39 insertions(+) create mode 100644 src/UI/UI_led.cpp create mode 100644 src/UI/UI_led.hpp diff --git a/src/UI/CMakeLists.txt b/src/UI/CMakeLists.txt index ad3c903..cca4097 100644 --- a/src/UI/CMakeLists.txt +++ b/src/UI/CMakeLists.txt @@ -13,6 +13,7 @@ target_sources(UI PRIVATE ${CMAKE_CURRENT_LIST_DIR}/UI_item.cpp ${CMAKE_CURRENT_LIST_DIR}/UI_label.cpp + ${CMAKE_CURRENT_LIST_DIR}/UI_led.cpp ${CMAKE_CURRENT_LIST_DIR}/UI_button.cpp ${CMAKE_CURRENT_LIST_DIR}/UI_slider.cpp ${CMAKE_CURRENT_LIST_DIR}/UI_x_boxes.cpp diff --git a/src/UI/UI.hpp b/src/UI/UI.hpp index df7df51..31659b4 100644 --- a/src/UI/UI.hpp +++ b/src/UI/UI.hpp @@ -4,4 +4,5 @@ #include "UI_checkbox.hpp" #include "UI_combobox.hpp" #include "UI_label.hpp" +#include "UI_led.hpp" #include "UI_slider.hpp" \ No newline at end of file diff --git a/src/UI/UI_led.cpp b/src/UI/UI_led.cpp new file mode 100644 index 0000000..bf5cbec --- /dev/null +++ b/src/UI/UI_led.cpp @@ -0,0 +1,22 @@ +#include "UI_led.hpp" + +UI_led::UI_led(std::string id, std::string text, Color fg_color, Color bg_color) : +UI_item(id, UI_LED_TYPE, text, 12, fg_color, bg_color) +{ + +} + +UI_led::UI_led(const json& j) : UI_item(j) +{ + from_json(j); +} + +void UI_led::from_json(const json& j) +{ + UI_item::from_json(j); +} + +json UI_led::to_json() const +{ + return UI_item::to_json(); +} \ No newline at end of file diff --git a/src/UI/UI_led.hpp b/src/UI/UI_led.hpp new file mode 100644 index 0000000..1c4dbaf --- /dev/null +++ b/src/UI/UI_led.hpp @@ -0,0 +1,15 @@ +#pragma once +#include +#include "UI_item.hpp" + +#define UI_LED_TYPE std::string("UIled") + +class UI_led : public UI_item +{ +public: + UI_led(std::string id, std::string text, Color fg_color, Color bg_color); + UI_led(const json& j); + + void from_json(const json& j) override; + json to_json() const override; +}; \ No newline at end of file