Zelda64Recomp/src/ui/elements/ui_button.h
2025-03-14 16:42:36 -04:00

25 lines
No EOL
600 B
C++

#pragma once
#include "ui_element.h"
namespace recompui {
enum class ButtonStyle {
Primary,
Secondary
};
class Button : public Element {
protected:
ButtonStyle style = ButtonStyle::Primary;
Style hover_style;
std::list<std::function<void()>> pressed_callbacks;
// Element overrides.
virtual void process_event(const Event &e) override;
public:
Button(const std::string &text, ButtonStyle style, Element *parent);
void add_pressed_callback(std::function<void()> callback);
};
} // namespace recompui