69e07640869e2be560c9427c9f9fe02dc5b2ca72
[reactos.git] / base / applications / rapps / include / dialogs.h
1 #pragma once
2
3 #include "available.h"
4
5 #include <windef.h>
6 #include <atlsimpcoll.h>
7
8 // Download dialog (loaddlg.cpp)
9 class CDowloadingAppsListView;
10 struct DownloadInfo;
11
12 class CDownloadManager
13 {
14 static ATL::CSimpleArray<DownloadInfo> AppsToInstallList;
15 static CDowloadingAppsListView DownloadsListView;
16
17 static VOID Download(const DownloadInfo& DLInfo, BOOL bIsModal = FALSE);
18 static VOID SetProgressMarquee(HWND Item, BOOL Enable);
19
20 public:
21 static INT_PTR CALLBACK DownloadDlgProc(HWND Dlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
22 static LRESULT CALLBACK DownloadProgressProc(HWND hWnd,
23 UINT uMsg,
24 WPARAM wParam,
25 LPARAM lParam,
26 UINT_PTR uIdSubclass,
27 DWORD_PTR dwRefData);
28
29 static DWORD WINAPI ThreadFunc(LPVOID Context);
30 static BOOL DownloadListOfApplications(const ATL::CSimpleArray<CAvailableApplicationInfo>& AppsList, BOOL bIsModal = FALSE);
31 static BOOL DownloadApplication(CAvailableApplicationInfo* pAppInfo, BOOL bIsModal = FALSE);
32 static VOID DownloadApplicationsDB(LPCWSTR lpUrl);
33 static VOID LaunchDownloadDialog(BOOL);
34 };
35
36 // Settings dialog (settingsdlg.cpp)
37 VOID CreateSettingsDlg(HWND hwnd);
38
39 // About dialog (aboutdlg.cpp)
40 VOID ShowAboutDialog();