return NULL;
}
-ATL::CSimpleArray<CAvailableApplicationInfo*> CAvailableApps::FindInfoList(const ATL::CSimpleArray<ATL::CStringW> &arrAppsNames) const
+ATL::CSimpleArray<CAvailableApplicationInfo> CAvailableApps::FindInfoList(const ATL::CSimpleArray<ATL::CStringW> &arrAppsNames) const
{
- ATL::CSimpleArray<CAvailableApplicationInfo*> result;
+ ATL::CSimpleArray<CAvailableApplicationInfo> result;
for (INT i = 0; i < arrAppsNames.GetSize(); ++i)
{
CAvailableApplicationInfo* Info = FindInfo(arrAppsNames[i]);
if (Info)
{
- result.Add(Info);
+ result.Add(*Info);
}
}
return result;
}
}
- ATL::CSimpleArray<CAvailableApplicationInfo*> GetCheckedItems()
+ ATL::CSimpleArray<CAvailableApplicationInfo> GetCheckedItems()
{
if (!bHasCheckboxes)
{
- return ATL::CSimpleArray<CAvailableApplicationInfo*>();
+ return ATL::CSimpleArray<CAvailableApplicationInfo>();
}
- ATL::CSimpleArray<CAvailableApplicationInfo*> list;
+ ATL::CSimpleArray<CAvailableApplicationInfo> list;
for (INT i = 0; i >= 0; i = GetNextItem(i, LVNI_ALL))
{
if (GetCheckState(i) != FALSE)
{
CAvailableApplicationInfo* pAppInfo = (CAvailableApplicationInfo*) GetItemData(i);
- list.Add(pAppInfo);
+ list.Add(*pAppInfo);
}
}
return list;
ATL::CStringW m_szSHA1;
ATL::CStringW m_szInstalledVersion;
+ // Create an object from file
CAvailableApplicationInfo(const ATL::CStringW& sFileNameParam);
// Load all info from the file
BOOL Enum(INT EnumType, AVAILENUMPROC lpEnumProc);
CAvailableApplicationInfo* FindInfo(const ATL::CStringW& szAppName) const;
- ATL::CSimpleArray<CAvailableApplicationInfo*> FindInfoList(const ATL::CSimpleArray<ATL::CStringW> &arrAppsNames) const;
+ ATL::CSimpleArray<CAvailableApplicationInfo> FindInfoList(const ATL::CSimpleArray<ATL::CStringW> &arrAppsNames) const;
const ATL::CStringW& GetFolderPath() const;
const ATL::CStringW& GetAppPath() const;
DWORD_PTR dwRefData);
static DWORD WINAPI ThreadFunc(LPVOID Context);
- static BOOL DownloadListOfApplications(const ATL::CSimpleArray<CAvailableApplicationInfo*>& AppsList, BOOL bIsModal = FALSE);
+ static BOOL DownloadListOfApplications(const ATL::CSimpleArray<CAvailableApplicationInfo>& AppsList, BOOL bIsModal = FALSE);
static BOOL DownloadApplication(CAvailableApplicationInfo* pAppInfo, BOOL bIsModal = FALSE);
static VOID DownloadApplicationsDB(LPCWSTR lpUrl);
static VOID LaunchDownloadDialog(BOOL);
return 0;
}
-BOOL CDownloadManager::DownloadListOfApplications(const ATL::CSimpleArray<CAvailableApplicationInfo*>& AppsList, BOOL bIsModal)
+BOOL CDownloadManager::DownloadListOfApplications(const ATL::CSimpleArray<CAvailableApplicationInfo>& AppsList, BOOL bIsModal)
{
if (AppsList.GetSize() == 0)
- {
return FALSE;
- }
// Initialize shared variables
for (INT i = 0; i < AppsList.GetSize(); ++i)
{
- if (AppsList[i])
- {
- AppsToInstallList.Add(*(AppsList[i]));
- }
+ AppsToInstallList.Add(AppsList[i]); // implicit conversion to DownloadInfo
}
// Create a dialog and issue a download process
apps.UpdateAppsDB();
apps.Enum(ENUM_ALL_AVAILABLE, NULL);
- ATL::CSimpleArray<CAvailableApplicationInfo*> arrAppInfo = apps.FindInfoList(arrNames);
+ ATL::CSimpleArray<CAvailableApplicationInfo> arrAppInfo = apps.FindInfoList(arrNames);
if (arrAppInfo.GetSize() > 0)
{
CDownloadManager::DownloadListOfApplications(arrAppInfo, TRUE);