HWND hMainWnd;
HINSTANCE hInst;
-HIMAGELIST hImageListView = NULL;
HIMAGELIST hImageTreeView = NULL;
INT SelectedEnumType = ENUM_ALL_COMPONENTS;
SETTINGS_INFO SettingsInfo;
PAPPLICATION_INFO ItemInfo;
INT Index;
- if (!IsInstalledApplication(Info.szRegName, FALSE) &&
- !IsInstalledApplication(Info.szRegName, TRUE))
+ /* Only add a ListView entry if...
+ - no RegName was supplied (so we cannot determine whether the application is installed or not) or
+ - a RegName was supplied and the application is not installed
+ */
+ if (!*Info.szRegName || (!IsInstalledApplication(Info.szRegName, FALSE) && !IsInstalledApplication(Info.szRegName, TRUE)))
{
ItemInfo = HeapAlloc(GetProcessHeap(), 0, sizeof(APPLICATION_INFO));
if (!ItemInfo) return FALSE;
{
WCHAR szBuffer1[MAX_STR_LEN], szBuffer2[MAX_STR_LEN];
HICON hIcon;
+ HIMAGELIST hImageListView;
- if (hImageListView) ImageList_Destroy(hImageListView);
(VOID) ListView_DeleteAllItems(hListView);
/* Create image list */
}
/* Set image list for ListView */
- (VOID) ListView_SetImageList(hListView, hImageListView, LVSIL_SMALL);
+ hImageListView = ListView_SetImageList(hListView, hImageListView, LVSIL_SMALL);
+
+ /* Destroy old image list */
+ if (hImageListView)
+ ImageList_Destroy(hImageListView);
SelectedEnumType = EnumType;
return TRUE;
}
+ case WM_SYSCOLORCHANGE:
+ {
+ /* Forward WM_SYSCOLORCHANGE to common controls */
+ SendMessage(hListView, WM_SYSCOLORCHANGE, 0, 0);
+ SendMessage(hTreeView, WM_SYSCOLORCHANGE, 0, 0);
+ SendMessage(hToolBar, WM_SYSCOLORCHANGE, 0, 0);
+ SendMessageW(hRichEdit, EM_SETBKGNDCOLOR, 0, GetSysColor(COLOR_BTNFACE));
+ }
+ break;
+
case WM_DESTROY:
{
ShowWindow(hwnd, SW_HIDE);
FreeAvailableAppList();
if (IS_INSTALLED_ENUM(SelectedEnumType))
FreeInstalledAppList();
- if (hImageListView) ImageList_Destroy(hImageListView);
if (hImageTreeView) ImageList_Destroy(hImageTreeView);
PostQuitMessage(0);