1#ifndef YAZE_APP_EDITOR_SHELL_DIALOGS_EDITOR_SELECTION_DIALOG_H_
2#define YAZE_APP_EDITOR_SHELL_DIALOGS_EDITOR_SELECTION_DIALOG_H_
9#include "imgui/imgui.h"
43 bool Show(
bool* p_open =
nullptr);
97 const ImVec2& card_size);
Beautiful grid-based editor selection dialog.
void DrawEditorPanel(const EditorInfo &info, int index, const ImVec2 &card_size)
void ClearRecentEditors()
Clear recent editors (for new ROM sessions)
void Open()
Open the dialog.
EditorType GetSelectedEditor() const
Get the selected editor type.
void SaveRecentEditors()
Save recently used editors to settings.
void SetSelectionCallback(std::function< void(EditorType)> callback)
Set callback for when editor is selected.
void LoadRecentEditors()
Load recently used editors from settings.
void DrawQuickAccessButtons()
std::vector< EditorType > recent_editors_
std::function< void(EditorType)> selection_callback_
void Close()
Close the dialog.
std::vector< EditorInfo > editors_
static constexpr int kMaxRecentEditors
void MarkRecentlyUsed(EditorType type)
Mark an editor as recently used.
EditorType selected_editor_
bool Show(bool *p_open=nullptr)
Show the dialog.
bool IsOpen() const
Check if dialog is open.
Metadata about an available editor.