* 06-09-2007 Created
*/
-#include "resource.h"
#include "input.h"
static HWND MainDlgWnd;
-static HIMAGELIST hImgList;
// for SaveInputLang()
static INT OldLayoutNum;
}
static VOID
-InitLangList(HWND hWnd)
+InitLangList(HWND hWnd, HIMAGELIST hImgList)
{
HKEY hKey, hSubKey;
TCHAR szBuf[MAX_PATH], szPreload[CCH_LAYOUT_ID + 1], szSub[CCH_LAYOUT_ID + 1];
VOID
UpdateLayoutsList(VOID)
{
- (VOID) ImageList_Destroy(hImgList);
+ HIMAGELIST hImgList;
+
+ /* Clear the list */
(VOID) ListView_DeleteAllItems(GetDlgItem(MainDlgWnd, IDC_KEYLAYOUT_LIST));
+
+ /* Crate new list */
hImgList = ImageList_Create(16, 16, ILC_COLOR8 | ILC_MASK, 0, 1);
- InitLangList(MainDlgWnd);
- (VOID) ListView_SetImageList(GetDlgItem(MainDlgWnd, IDC_KEYLAYOUT_LIST), hImgList, LVSIL_SMALL);
+ InitLangList(MainDlgWnd, hImgList);
+ hImgList = ListView_SetImageList(GetDlgItem(MainDlgWnd, IDC_KEYLAYOUT_LIST), hImgList, LVSIL_SMALL);
+
+ /* Destroy old image list */
+ if(hImgList)
+ (VOID) ImageList_Destroy(hImgList);
}
typedef struct _REG_KB_ENTRY_
{
case WM_INITDIALOG:
{
+ HIMAGELIST hImgList;
+
MainDlgWnd = hwndDlg;
AddListColumn(hwndDlg);
(VOID) ListView_SetExtendedListViewStyle(GetDlgItem(MainDlgWnd, IDC_KEYLAYOUT_LIST),
LVS_EX_FULLROWSELECT);
hImgList = ImageList_Create(16, 16, ILC_COLOR8 | ILC_MASK, 0, 1);
- InitLangList(hwndDlg);
+ InitLangList(hwndDlg, hImgList);
(VOID) ListView_SetImageList(GetDlgItem(MainDlgWnd, IDC_KEYLAYOUT_LIST), hImgList, LVSIL_SMALL);
}
break;
}
break;
case WM_DESTROY:
- (VOID) ImageList_Destroy(hImgList);
break;
}