// Copyright (c) 2023 Dominic Masters // // This software is released under the MIT License. // https://opensource.org/licenses/MIT #pragma once #include "scene/Scene.hpp" #include "game/DawnGame.hpp" #include "scene/components/ui/UICanvas.hpp" #include "ui/UILabel.hpp" #include "ui/UIBorder.hpp" #include "ui/UIGrid.hpp" #include "ui/UISprite.hpp" #include "prefabs/SimpleSpinningCubePrefab.hpp" #include "ui/UIMenu.hpp" namespace Dawn { class TestMenuItem : public UIMenuItem { public: UILabel *label; void onItemSelected() { } void onItemOver() { this->label->setText("test.2"); } void onItemOff() { this->label->setText("test.1"); } bool_t canBeOvered() { return true; } bool_t canBeSelected() { return true; } }; class TestUIScene : public Scene { private: Camera *camera = nullptr; UICanvas *canvas = nullptr; public: TestUIScene(DawnGame *game); std::vector getRequiredAssets() override; void stage() override; }; }