1#ifndef YAZE_APP_EDITOR_MUSIC_PANELS_MUSIC_SONG_BROWSER_PANEL_H_
2#define YAZE_APP_EDITOR_MUSIC_PANELS_MUSIC_SONG_BROWSER_PANEL_H_
24 int* current_song_index,
34 std::string
GetId()
const override {
return "music.song_browser"; }
44 void Draw(
bool* p_open)
override {
46 ImGui::TextDisabled(
"Music bank not loaded");
Base interface for all logical panel components.
EditorPanel wrapper for the music song browser.
int * current_song_index_
void SetOnExportAsm(std::function< void(int)> callback)
zelda3::music::MusicBank * music_bank_
std::string GetIcon() const override
Material Design icon for this panel.
MusicSongBrowserPanel(zelda3::music::MusicBank *music_bank, int *current_song_index, music::SongBrowserView *song_browser_view)
void SetOnOpenPianoRoll(std::function< void(int)> callback)
std::string GetEditorCategory() const override
Editor category this panel belongs to.
void SetOnEdit(std::function< void()> callback)
std::string GetDisplayName() const override
Human-readable name shown in menus and title bars.
music::SongBrowserView * song_browser_view_
int GetPriority() const override
Get display priority for menu ordering.
void SetOnImportAsm(std::function< void(int)> callback)
void Draw(bool *p_open) override
Draw the panel content.
std::string GetId() const override
Unique identifier for this panel.
void SetOnSongSelected(std::function< void(int)> callback)
void SetOnOpenTracker(std::function< void(int)> callback)
UI component for browsing and managing songs.
void SetOnOpenTracker(std::function< void(int)> callback)
Set callback for opening tracker on a song.
void SetOnEdit(std::function< void()> callback)
int GetSelectedSongIndex() const
void Draw(MusicBank &bank)
Draw the song browser.
void SetOnSongSelected(std::function< void(int)> callback)
Set callback for when a song is selected.
void SetOnExportAsm(std::function< void(int)> callback)
Set callback for exporting a song to ASM.
void SetOnOpenPianoRoll(std::function< void(int)> callback)
Set callback for opening piano roll on a song.
void SetSelectedSongIndex(int index)
void SetOnImportAsm(std::function< void(int)> callback)
Set callback for importing ASM to a song.
Manages the collection of songs, instruments, and samples from a ROM.
#define ICON_MD_LIBRARY_MUSIC