12#ifndef ZOAPPUIBUTTON_H
13#define ZOAPPUIBUTTON_H
15#include <nlohmann/json.hpp>
123 static std::shared_ptr<BaseSimObjectAspect>
create(
const nlohmann::json& jsonAspectProperties);
130 std::shared_ptr<BaseSimObjectAspect>
clone()
const override;
209 std::array<std::shared_ptr<NineSlicePanel>, State::TOTAL>
mStatePanels {};
360 {UIButton::State::ACTIVE,
"active"},
361 {UIButton::State::HOVER,
"hover"},
362 {UIButton::State::PRESSED,
"pressed"},
363 {UIButton::State::INACTIVE,
"inactive"},
The interface implemented by aspects which wish to respond to pointer hover related events.
Definition interface_pointer_callback.hpp:121
The interface used by aspects which wish to respond to mouse left click events (or equivalent).
Definition interface_pointer_callback.hpp:89
A Signal object, designed to emit signals matching some data signature to be received by all the Sign...
Definition signals.hpp:323
An object containing closely related methods and data, and exposing object lifecycle and application ...
Definition sim_system.hpp:956
Contains classes that serve as interfaces for sim objects that wish to respond to click events.
Namespace containing all class definitions and functions related to the ToyMaker engine.
Definition application.hpp:24
Contains class defining this project's implementation of nine-slice (or nine-region) resizable panels...
Classes relating to this engine's implementation of signals. Contains template classes used to define...
Classes and structs relating to the SimSystem, the system responsible for providing some level of gen...