mirror of
https://github.com/reactos/reactos.git
synced 2025-01-05 22:12:46 +00:00
e694e24720
Providing quick access of Control Panel "Add/Remove Programs". JIRA issue: CORE-19419 - Don't download the database if bAppwizMode in ParseCmdAndExecute function. - Add CAppDB::GetAvailableCount method. - Add CMainWindow::CheckAvailable method. - Use CMainWindow::CheckAvailable in some cases of TVN_SELCHANGED handling.
40 lines
673 B
C++
40 lines
673 B
C++
#pragma once
|
|
|
|
#include <atlcoll.h>
|
|
#include <atlpath.h>
|
|
|
|
#include "appinfo.h"
|
|
|
|
class CAppDB
|
|
{
|
|
private:
|
|
CPathW m_BasePath;
|
|
CAtlList<CAppInfo *> m_Available;
|
|
CAtlList<CAppInfo *> m_Installed;
|
|
|
|
BOOL
|
|
EnumerateFiles();
|
|
|
|
public:
|
|
CAppDB(const CStringW &path);
|
|
|
|
VOID
|
|
GetApps(CAtlList<CAppInfo *> &List, AppsCategories Type) const;
|
|
CAppInfo *
|
|
FindByPackageName(const CStringW &name);
|
|
|
|
VOID
|
|
UpdateAvailable();
|
|
VOID
|
|
UpdateInstalled();
|
|
VOID
|
|
RemoveCached();
|
|
|
|
BOOL
|
|
RemoveInstalledAppFromRegistry(const CAppInfo *Info);
|
|
|
|
size_t GetAvailableCount() const
|
|
{
|
|
return m_Available.GetCount();
|
|
}
|
|
};
|