1#ifndef YAZE_APP_GUI_CANVAS_CANVAS_MENU_H
2#define YAZE_APP_GUI_CANVAS_CANVAS_MENU_H
9#include "imgui/imgui.h"
82 std::optional<CanvasPopupDefinition>
popup;
126 std::function<
void()> cb)
131 std::function<
void()> cb,
const std::string& sc)
137 const std::string& ico,
138 std::function<
void()> cb,
140 const std::string& sc =
"") {
159 std::function<
void()> cb,
160 std::function<
bool()> condition) {
170 const std::string& popup_id,
171 std::function<
void()> render_callback) {
209 const std::vector<CanvasMenuItem>& its)
214 const std::vector<CanvasMenuItem>& its,
244 void AddItems(
const std::vector<CanvasMenuItem>& items) {
246 section.
items = items;
270 bool IsArmed(ImGuiID
id,
int frame)
const;
274 bool Click(ImGuiID
id,
int frame);
332 std::function<
void(
const std::string&, std::function<
void()>)>
333 popup_opened_callback =
nullptr);
345 std::function<
void(
const std::string&, std::function<
void()>)>
346 popup_opened_callback =
nullptr);
359 std::function<
void(
const std::string&, std::function<
void()>)>
360 popup_opened_callback =
nullptr);
MenuConfirmState & GetMenuConfirmState()
MenuSectionPriority
Menu section priority for controlling rendering order.
void RenderCanvasMenu(const CanvasMenuDefinition &menu, std::function< void(const std::string &, std::function< void()>)> popup_opened_callback)
Render a complete menu definition.
std::string ConfirmLabel(const std::string &label)
void RenderMenuSection(const CanvasMenuSection §ion, std::function< void(const std::string &, std::function< void()>)> popup_opened_callback)
Render a menu section.
ImVec2 BaseStyleVarVec2(ImGuiStyleVar idx)
void RenderMenuItem(const CanvasMenuItem &item, std::function< void(const std::string &, std::function< void()>)> popup_opened_callback)
Render a single menu item.