1#ifndef YAZE_APP_GUI_UI_HELPERS_H
2#define YAZE_APP_GUI_UI_HELPERS_H
7#include "imgui/imgui.h"
65void ColoredText(
const char* text,
const ImVec4& color);
68void ColoredTextF(
const ImVec4& color,
const char* fmt, ...) IM_FMTARGS(2);
104void BeginField(
const char* label,
float label_width = 0.0f);
109 ImGuiTableFlags extra_flags = 0);
113void PropertyRow(
const char* label,
const char* value);
120 const ImVec4& color = ImVec4(1, 1, 1, 1));
127bool IconButton(
const char* icon,
const char* label,
128 const ImVec2& size = ImVec2(0, 0));
131bool IconButton(
const char* icon,
const char* tooltip =
nullptr);
136 const ImVec2& size = ImVec2(0, 0));
139bool StyledButton(
const char* label,
const ImVec4& color,
140 const ImVec2& size = ImVec2(0, 0));
143bool ToggleIconButton(
const char* icon_on,
const char* icon_off,
bool* state,
144 const char* tooltip =
nullptr);
148 const ImVec2& size = ImVec2(0, 0));
168bool EditorTabItem(
const char* icon,
const char* label,
bool* p_open =
nullptr);
172 const char* confirm_text =
"OK",
173 const char* cancel_text =
"Cancel");
181 const char* tooltip =
nullptr);
216void LoadingSpinner(
const char* label =
nullptr,
float radius = 10.0f);
242bool IconCombo(
const char* icon,
const char* label,
int* current,
243 const char*
const items[],
int count);
void RightAlign(float width)
void VerticalSpacing(float pixels)
void EndCanvasContainer()
std::string MakePanelTitle(const std::string &title)
ImVec4 GetVanillaRomColor()
void PropertyRow(const char *label, const char *value)
void ColoredText(const char *text, const ImVec4 &color)
ButtonColorSet GetWarningButtonColors()
ButtonColorSet GetDangerButtonColors()
bool ToggleIconButton(const char *icon_on, const char *icon_off, bool *state, const char *tooltip)
void BeginField(const char *label, float label_width)
void SeparatorText(const char *label)
void StatusIndicator(const char *label, bool active, const char *tooltip)
ImVec4 GetSelectedColor()
void BeginTwoColumns(const char *id, float split_ratio)
void RomVersionBadge(const char *version, bool is_vanilla)
bool EditorTabItem(const char *icon, const char *label, bool *p_open)
ImVec4 GetEntranceColor()
void CenterText(const char *text)
bool LabeledInputHex(const char *label, uint8_t *value)
void SectionHeader(const char *icon, const char *label, const ImVec4 &color)
void LockIndicator(bool locked, const char *label)
bool IconButton(const char *icon, const char *label, const ImVec2 &size)
void PropertyRowHex(const char *label, uint8_t value)
bool ToggleButton(const char *label, bool active, const ImVec2 &size)
float GetResponsiveWidth(float min_width, float max_width, float ratio)
void SetupResponsiveColumns(int count, float min_col_width)
ButtonColorSet GetSuccessButtonColors()
bool ColoredButton(const char *label, ButtonType type, const ImVec2 &size)
bool BeginPropertyTable(const char *id, int columns, ImGuiTableFlags extra_flags)
void BeginCanvasContainer(const char *id, bool scrollable)
bool IconCombo(const char *icon, const char *label, int *current, const char *const items[], int count)
void LoadingSpinner(const char *label, float radius)
ImVec4 GetDisabledColor()
void ColoredTextF(const ImVec4 &color, const char *fmt,...)
bool ConfirmationDialog(const char *id, const char *title, const char *message, const char *confirm_text, const char *cancel_text)
ImVec4 GetModifiedColor()
bool StyledButton(const char *label, const ImVec4 &color, const ImVec2 &size)
float GetFadeIn(float duration)
float GetPulseAlpha(float speed)
void PushPulseEffect(float speed)
void HelpMarker(const char *desc)
Color GetThemeColor(const std::string &color_name)
void RenderProviderBadge(const char *provider)
void StatusBadge(const char *text, ButtonType type)
void ThemedText(const char *text, SemanticColor color)
void HorizontalSpacing(float pixels)
void ThemedTextF(SemanticColor color, const char *fmt,...)
ImVec4 GetCustomRomColor()
ButtonColorSet GetPrimaryButtonColors()
ImVec4 ResolveSemanticColor(SemanticColor color)