1#ifndef YAZE_APP_GUI_EDITOR_LAYOUT_H
2#define YAZE_APP_GUI_EDITOR_LAYOUT_H
8#include "imgui/imgui.h"
39 bool ModeButton(
const char* icon,
bool selected,
const char* tooltip);
46 void AddRomBadge(uint8_t version, std::function<
void()> on_upgrade =
nullptr);
49 bool AddProperty(
const char* icon,
const char* label, uint8_t* value,
50 std::function<
void()> on_change =
nullptr);
51 bool AddProperty(
const char* icon,
const char* label, uint16_t* value,
52 std::function<
void()> on_change =
nullptr);
55 bool AddCombo(
const char* icon,
int* current,
const char*
const items[],
59 bool AddToggle(
const char* icon,
bool* state,
const char* tooltip);
62 bool AddAction(
const char* icon,
const char* tooltip);
120 explicit PanelWindow(
const char* title,
const char* icon =
nullptr);
121 PanelWindow(
const char* title,
const char* icon,
bool* p_open);
154 void AddHeaderButton(
const char* icon,
const char* tooltip, std::function<
void()> callback);
157 bool Begin(
bool* p_open =
nullptr);
Modern layout manager for editor components.
void RegisterPanel(PanelWindow *panel)
std::vector< PanelWindow * > panels_
Draggable, dockable panel for editor sub-windows.
void SetIconCollapsible(bool collapsible)
static std::string duplicate_panel_name_
std::function< void(bool)> on_pin_changed_
static void ResetFrameTracking()
void SetMinimizable(bool minimizable)
static int last_frame_count_
PanelWindow(const char *title, const char *icon=nullptr)
std::vector< HeaderButton > header_buttons_
void SetPinChangedCallback(std::function< void(bool)> callback)
void SetPinned(bool pinned)
const char * GetWindowName() const
void SetSaveSettings(bool save)
void SetHeadless(bool headless)
void SetPinnable(bool pinnable)
static const std::string & GetDuplicatePanelName()
void SetClosable(bool closable)
void SetPosition(Position pos)
bool Begin(bool *p_open=nullptr)
void AddHeaderButton(const char *icon, const char *tooltip, std::function< void()> callback)
void DrawFloatingIconButton()
static bool duplicate_detected_
void SetMinimized(bool minimized)
void SetDockingAllowed(bool allowed)
static std::vector< std::string > panels_begun_this_frame_
static bool HasDuplicateRendering()
void SetDefaultSize(float width, float height)