feat: added return value to Toggle
This commit is contained in:
parent
5e16b201c4
commit
d54d5add5e
|
|
@ -35,7 +35,8 @@ void ToggleHovered(Clay_ElementId element, Clay_PointerData pointer, intptr_t da
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Toggle(Clay_String label, Clay_Color selected, bool &state) {
|
bool Toggle(Clay_String label, Clay_Color selected, bool &state) {
|
||||||
|
bool const before{state};
|
||||||
CLAY_AUTO_ID({
|
CLAY_AUTO_ID({
|
||||||
.layout = {
|
.layout = {
|
||||||
.sizing = { CLAY_SIZING_GROW(), CLAY_SIZING_GROW() },
|
.sizing = { CLAY_SIZING_GROW(), CLAY_SIZING_GROW() },
|
||||||
|
|
@ -68,10 +69,12 @@ void Toggle(Clay_String label, Clay_Color selected, bool &state) {
|
||||||
.textColor = theme->textColor
|
.textColor = theme->textColor
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
// return if the value changed this frame
|
||||||
|
return before != state;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Body(Clay_String string, Clay_TextElementConfig baseCfg) {
|
void Body(Clay_String string, Clay_TextElementConfig baseCfg) {
|
||||||
baseCfg.fontId = cera::FONT_DEFAULT;
|
baseCfg.fontId = cera::FONT_REGULAR;
|
||||||
baseCfg.fontSize = cera::baseFontSize;
|
baseCfg.fontSize = cera::baseFontSize;
|
||||||
CLAY_TEXT(string, CLAY_TEXT_CONFIG(baseCfg));
|
CLAY_TEXT(string, CLAY_TEXT_CONFIG(baseCfg));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,14 @@
|
||||||
#ifndef ELEMENTS_H
|
#ifndef ELEMENTS_H
|
||||||
#define ELEMENTS_H
|
#define ELEMENTS_H
|
||||||
|
|
||||||
#include <clay/clay.h>
|
|
||||||
#include "style.h"
|
#include "style.h"
|
||||||
|
#include <SDL3/SDL_render.h>
|
||||||
|
#include <clay/clay.h>
|
||||||
|
|
||||||
namespace cera {
|
namespace cera {
|
||||||
typedef void(*OnHoveredFn)(Clay_ElementId element, Clay_PointerData pointer, intptr_t data);
|
typedef void(*OnHoveredFn)(Clay_ElementId element, Clay_PointerData pointer, intptr_t data);
|
||||||
void TextButton(Clay_String text, Clay_Color color, OnHoveredFn onHovered, intptr_t onHoveredData = 0);
|
void TextButton(Clay_String text, Clay_Color color, OnHoveredFn onHovered, intptr_t onHoveredData = 0);
|
||||||
void Toggle(Clay_String label, Clay_Color selected, bool &state);
|
bool Toggle(Clay_String label, Clay_Color selected, bool &state);
|
||||||
void Body(Clay_String string, Clay_TextElementConfig baseCfg = {.textColor = theme->textColor});
|
void Body(Clay_String string, Clay_TextElementConfig baseCfg = {.textColor = theme->textColor});
|
||||||
void Header(Clay_String string, size_t header, Clay_TextElementConfig baseCfg = {.textColor = theme->textColor});
|
void Header(Clay_String string, size_t header, Clay_TextElementConfig baseCfg = {.textColor = theme->textColor});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue