ReactOS 0.4.16-dev-1133-g947c03e
gui.h
Go to the documentation of this file.
1#pragma once
2
3#include "rapps.h"
4#include "rosui.h"
5#include "crichedit.h"
6#include "asyncinet.h"
7#include "appview.h"
8#include <shlobj_undoc.h>
9#include <shlguid_undoc.h>
10
11#include <atlbase.h>
12#include <atlcom.h>
13#include <atltypes.h>
14#include <atlwin.h>
15#include <wininet.h>
16#include <shellutils.h>
17#include <ui/rosctrls.h>
18#include <gdiplus.h>
19#include <math.h>
20
21#define SEARCH_TIMER_ID 'SR'
22#define TREEVIEW_ICON_SIZE 24
23
24class CSideTreeView : public CUiWindow<CTreeView>
25{
27
28 public:
30
32 AddItem(HTREEITEM hParent, CStringW &Text, INT Image, INT SelectedImage, LPARAM lParam);
33
35 AddCategory(HTREEITEM hRootItem, UINT TextIndex, UINT IconIndex);
36
39
40 VOID
42
44};
45
46class CMainWindow : public CWindowImpl<CMainWindow, CWindow, CFrameWinTraits>
47{
50
53
55 friend class CApplicationView;
56
59
63
66
67 public:
70
71 explicit CMainWindow(CAppDB *db, BOOL bAppwiz = FALSE);
72
74
75 private:
76 VOID
78
79 BOOL
81 BOOL
83 BOOL
85 BOOL
87 BOOL
89 VOID
91 BOOL
93
94 VOID
96
97 VOID
99
100 BOOL
102 BOOL
103 UninstallSelectedApp(BOOL bModify);
104
105 BOOL
107 VOID
108 ShowAboutDlg();
109 VOID
111 VOID
113
114 VOID
115 UpdateApplicationsList(AppsCategories EnumType, BOOL bReload = FALSE, BOOL bCheckAvailable = FALSE);
116 VOID
118
119 public:
120 static ATL::CWndClassInfo &
122
123 HWND
124 Create();
125
126 // this function is called when a item of application-view is checked/unchecked
127 // CallbackParam is the param passed to application-view when adding the item (the one getting focus now).
128 VOID
129 ItemCheckStateChanged(BOOL bChecked, LPVOID CallbackParam);
130
131 // this function is called when application-view is asked to install an application
132 // if Info is not zero, this app should be installed. otherwise those checked apps should be installed
133 BOOL
135
136 // this function is called when search text is changed
137 BOOL
138 SearchTextChanged(CStringW &SearchText);
139
140 void
141 HandleTabOrder(int direction);
142};
143
144// Main window
145VOID
146MainWindowLoop(CMainWindow *wnd, INT nShowCmd);
AppsCategories
Definition: appinfo.h:25
VOID MainWindowLoop(CMainWindow *wnd, INT nShowCmd)
Definition: gui.cpp:899
Definition: appdb.h:9
BOOL RemoveSelectedAppFromRegistry()
Definition: gui.cpp:271
AppsCategories SelectedEnumType
Definition: gui.h:65
BOOL m_bAppwizMode
Definition: gui.h:61
HTREEITEM hRootItemInstalled
Definition: gui.h:62
VOID UpdateStatusBarText()
Definition: gui.cpp:647
BOOL CreateLayout()
Definition: gui.cpp:189
BOOL CreateTreeView()
Definition: gui.cpp:149
CSideTreeView * m_TreeView
Definition: gui.h:51
CStringW szSearchPattern
Definition: gui.h:64
CUiSplitPanel * m_VSplitter
Definition: gui.h:49
VOID AddApplicationsToView(CAtlList< CAppInfo * > &List)
Definition: gui.cpp:667
BOOL CreateVSplitter()
Definition: gui.cpp:171
BOOL SearchTextChanged(CStringW &SearchText)
Definition: gui.cpp:849
VOID CheckAvailable()
Definition: gui.cpp:305
LRESULT OnSize(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
Definition: main.cpp:767
VOID UpdateApplicationsList(AppsCategories EnumType, BOOL bReload=FALSE, BOOL bCheckAvailable=FALSE)
Definition: gui.cpp:684
static ATL::CWndClassInfo & GetWndClassInfo()
Definition: gui.cpp:780
BOOL bUpdating
Definition: gui.h:60
static bool m_PendingInstalledViewRefresh
Definition: gui.h:69
~CMainWindow()
Definition: gui.cpp:91
CMainWindow()
Definition: main.h:30
void HandleTabOrder(int direction)
Definition: gui.cpp:866
BOOL InstallApplication(CAppInfo *Info)
Definition: gui.cpp:843
LRESULT OnCommand(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
Definition: main.cpp:819
CAtlList< CAppInfo * > m_Selected
Definition: gui.h:58
VOID ShowAboutDlg()
Definition: gui.cpp:544
BOOL InitControls()
Definition: gui.cpp:233
VOID InitCategoriesList()
Definition: gui.cpp:97
VOID ItemCheckStateChanged(BOOL bChecked, LPVOID CallbackParam)
Definition: gui.cpp:815
CAppDB * m_Db
Definition: gui.h:57
CUiWindow< CStatusBar > * m_StatusBar
Definition: gui.h:52
HWND Create()
Definition: gui.cpp:797
BOOL ProcessWindowMessage(HWND hwnd, UINT Msg, WPARAM wParam, LPARAM lParam, LRESULT &theResult, DWORD dwMapId)
Definition: gui.cpp:316
CUiPanel * m_ClientPanel
Definition: gui.h:48
VOID LayoutCleanup()
Definition: gui.cpp:223
static HWND m_hLastFocus
Definition: gui.h:68
BOOL CreateStatusBar()
Definition: gui.cpp:138
BOOL UninstallSelectedApp(BOOL bModify)
Definition: gui.cpp:292
BOOL CreateApplicationView()
Definition: gui.cpp:160
CApplicationView * m_ApplicationView
Definition: gui.h:54
HIMAGELIST hImageTreeView
Definition: gui.h:26
CSideTreeView()
Definition: gui.cpp:33
HTREEITEM AddCategory(HTREEITEM hRootItem, UINT TextIndex, UINT IconIndex)
Definition: gui.cpp:46
~CSideTreeView()
Definition: gui.cpp:77
VOID DestroyImageList()
Definition: gui.cpp:71
HIMAGELIST SetImageList()
Definition: gui.cpp:65
WPARAM wParam
Definition: combotst.c:138
struct @1680 Msg[]
char * Text
Definition: combotst.c:136
LPARAM lParam
Definition: combotst.c:139
#define NULL
Definition: types.h:112
#define FALSE
Definition: types.h:117
static const WCHAR IconIndex[]
Definition: install.c:52
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
unsigned int UINT
Definition: ndis.h:50
int32_t INT
Definition: typedefs.h:58
#define AddItem
Definition: userenv.h:209
_Must_inspect_result_ _In_ WDFCHILDLIST _In_ PWDF_CHILD_LIST_ITERATOR _Out_ WDFDEVICE _Inout_opt_ PWDF_CHILD_RETRIEVE_INFO Info
Definition: wdfchildlist.h:690
_Must_inspect_result_ _In_ WDFCMRESLIST List
Definition: wdfresource.h:550
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023
LONG_PTR LPARAM
Definition: windef.h:208
LONG_PTR LRESULT
Definition: windef.h:209
UINT_PTR WPARAM
Definition: windef.h:207