1#ifndef YAZE_GUI_COLOR_H
2#define YAZE_GUI_COLOR_H
9#include "absl/status/status.h"
11#include "imgui/imgui.h"
30 "{:02X}{:02X}{:02X}{:02X}",
static_cast<int>(color.
red * 255),
31 static_cast<int>(color.
green * 255),
static_cast<int>(color.
blue * 255),
32 static_cast<int>(color.
alpha * 255));
34 return absl::StrFormat(
"%02X%02X%02X%02X",
static_cast<int>(color.
red * 255),
35 static_cast<int>(color.
green * 255),
36 static_cast<int>(color.
blue * 255),
37 static_cast<int>(color.
alpha * 255));
50 ImGuiColorEditFlags flags = 0,
51 const ImVec2 &size_arg = ImVec2(0, 0));
54 ImGuiColorEditFlags flags = 0);
59 const std::string &title =
"",
60 bool show_color_picker =
false,
61 int colors_per_row = 8,
62 ImGuiColorEditFlags flags = 0);
Represents a palette of colors for the Super Nintendo Entertainment System (SNES).
Graphical User Interface (GUI) components for the application.
ImVec4 ConvertColorToImVec4(const Color &color)
IMGUI_API bool SnesColorButton(absl::string_view id, gfx::SnesColor &color, ImGuiColorEditFlags flags, const ImVec2 &size_arg)
ImVec4 ConvertSnesColorToImVec4(const gfx::SnesColor &color)
void SelectablePalettePipeline(uint64_t &palette_id, bool &refresh_graphics, gfx::SnesPalette &palette)
absl::Status DisplayEditablePalette(gfx::SnesPalette &palette, const std::string &title, bool show_color_picker, int colors_per_row, ImGuiColorEditFlags flags)
IMGUI_API bool SnesColorEdit4(absl::string_view label, gfx::SnesColor *color, ImGuiColorEditFlags flags)
std::string ColorToHexString(const Color &color)
absl::Status DisplayPalette(gfx::SnesPalette &palette, bool loaded)
gfx::SnesColor ConvertImVec4ToSnesColor(const ImVec4 &color)
Main namespace for the application.