Browser: can <Insert> a directory - all d64 in it are loaded into caddy

This commit is contained in:
penfold42 2018-08-07 18:57:21 +10:00
parent 93985e46c0
commit 3152d4efd5
2 changed files with 26 additions and 0 deletions

View file

@ -868,6 +868,31 @@ bool FileBrowser::FillCaddyWithSelections()
} }
bool FileBrowser::AddToCaddy(FileBrowser::BrowsableList::Entry* current) bool FileBrowser::AddToCaddy(FileBrowser::BrowsableList::Entry* current)
{
if (!current) return false;
else if (!(current->filImage.fattrib & AM_DIR) && DiskImage::IsDiskImageExtention(current->filImage.fname))
{
return AddImageToCaddy(current);
}
else if (current->filImage.fattrib & AM_DIR)
{
bool ret = false;
f_chdir(current->filImage.fname);
RefreshFolderEntries();
RefeshDisplay();
for (unsigned i = 0; i < folder.entries.size(); ++i)
ret |= AddImageToCaddy(&folder.entries[i]);
RefeshDisplay();
return ret;
}
return false;
}
bool FileBrowser::AddImageToCaddy(FileBrowser::BrowsableList::Entry* current)
{ {
bool added = false; bool added = false;

View file

@ -211,6 +211,7 @@ private:
bool FillCaddyWithSelections(); bool FillCaddyWithSelections();
bool AddToCaddy(FileBrowser::BrowsableList::Entry* current); bool AddToCaddy(FileBrowser::BrowsableList::Entry* current);
bool AddImageToCaddy(FileBrowser::BrowsableList::Entry* current);
bool CheckForPNG(const char* filename, FILINFO& filIcon); bool CheckForPNG(const char* filename, FILINFO& filIcon);
void DisplayPNG(); void DisplayPNG();