mirror of
https://github.com/LNH-team/pico-launcher.git
synced 2026-06-02 09:06:54 +02:00
Add new shared pointer and make use of it
This commit is contained in:
@@ -15,6 +15,34 @@ FileInfoManager::~FileInfoManager()
|
||||
}
|
||||
}
|
||||
|
||||
void FileInfoManager::LoadFileInfo(int index)
|
||||
{
|
||||
auto internalFileInfo = _extraFileInfo[index].internalFileInfo;
|
||||
if (!internalFileInfo)
|
||||
{
|
||||
internalFileInfo = _items[index]->CreateInternalFileInfo();
|
||||
}
|
||||
|
||||
if (!_extraFileInfo[index].fileCover.Lock())
|
||||
{
|
||||
_extraFileInfo[index].fileCover = SharedPtr(_coverRepository.GetCoverForFile(*_items[index], internalFileInfo));
|
||||
}
|
||||
|
||||
_extraFileInfo[index].internalFileInfo = internalFileInfo;
|
||||
}
|
||||
|
||||
void FileInfoManager::ReleaseFileInfo(int index)
|
||||
{
|
||||
auto internalFileInfo = _extraFileInfo[index].internalFileInfo;
|
||||
if (internalFileInfo)
|
||||
{
|
||||
_extraFileInfo[index].internalFileInfo = nullptr;
|
||||
delete internalFileInfo;
|
||||
}
|
||||
|
||||
_extraFileInfo[index].fileCover.Reset();
|
||||
}
|
||||
|
||||
int FileInfoManager::GetItemIndex(const char* fileName)
|
||||
{
|
||||
if (fileName == nullptr)
|
||||
@@ -23,10 +51,10 @@ int FileInfoManager::GetItemIndex(const char* fileName)
|
||||
}
|
||||
for (u32 i = 0; i < _itemCount; i++)
|
||||
{
|
||||
if (strcmp(fileName, _items[i]->GetFileName()) == 0)
|
||||
{
|
||||
return i;
|
||||
}
|
||||
if (strcmp(fileName, _items[i]->GetFileName()) == 0)
|
||||
{
|
||||
return i;
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
Reference in New Issue
Block a user