Andrew Nguyen : regedit: Convert the frame window code to Unicode.
Alexandre Julliard
julliard at winehq.org
Mon Apr 18 11:10:52 CDT 2011
Module: wine
Branch: master
Commit: 9b586bc2ee8ac299306717f21a8bd49f2417599b
URL: http://source.winehq.org/git/wine.git/?a=commit;h=9b586bc2ee8ac299306717f21a8bd49f2417599b
Author: Andrew Nguyen <anguyen at codeweavers.com>
Date: Sat Apr 16 03:07:17 2011 -0500
regedit: Convert the frame window code to Unicode.
---
programs/regedit/framewnd.c | 55 ++++++++++++++++++++++++------------------
1 files changed, 31 insertions(+), 24 deletions(-)
diff --git a/programs/regedit/framewnd.c b/programs/regedit/framewnd.c
index c4f4f92..0cdedec 100644
--- a/programs/regedit/framewnd.c
+++ b/programs/regedit/framewnd.c
@@ -105,7 +105,10 @@ static void UpdateMenuItems(HMENU hMenu) {
BOOL bAllowEdit = FALSE;
HKEY hRootKey = NULL;
LPWSTR keyName;
- keyName = GetItemPath(hwndTV, TreeView_GetSelection(hwndTV), &hRootKey);
+ HTREEITEM selection;
+
+ selection = (HTREEITEM)SendMessageW(hwndTV, TVM_GETNEXTITEM, TVGN_CARET, 0);
+ keyName = GetItemPath(hwndTV, selection, &hRootKey);
if (GetFocus() != hwndTV || (keyName && *keyName)) { /* can't modify root keys, but allow for their values */
bAllowEdit = TRUE;
}
@@ -327,10 +330,12 @@ static BOOL InitOpenFileName(HWND hWnd, OPENFILENAMEW *pofn)
return TRUE;
}
-static BOOL import_registry_filename(LPTSTR filename)
+static BOOL import_registry_filename(LPWSTR filename)
{
+ static const WCHAR mode_r[] = {'r',0};
+
BOOL Success;
- FILE* reg_file = fopen(filename, "r");
+ FILE* reg_file = _wfopen(filename, mode_r);
if(!reg_file)
return FALSE;
@@ -353,13 +358,8 @@ static BOOL ImportRegistryFile(HWND hWnd)
LoadStringW(hInst, IDS_FILEDIALOG_IMPORT_TITLE, title, COUNT_OF(title));
ofn.lpstrTitle = title;
if (GetOpenFileNameW(&ofn)) {
- CHAR* fileA = GetMultiByteString(ofn.lpstrFile);
- if (!import_registry_filename(fileA)) {
- /*printf("Can't open file \"%s\"\n", ofn.lpstrFile);*/
- HeapFree(GetProcessHeap(), 0, fileA);
+ if (!import_registry_filename(ofn.lpstrFile))
return FALSE;
- }
- HeapFree(GetProcessHeap(), 0, fileA);
} else {
CheckCommDlgError(hWnd);
}
@@ -397,8 +397,8 @@ static BOOL PrintRegistryHive(HWND hWnd, LPCWSTR path)
#if 1
PRINTDLGW pd;
- ZeroMemory(&pd, sizeof(PRINTDLG));
- pd.lStructSize = sizeof(PRINTDLG);
+ ZeroMemory(&pd, sizeof(PRINTDLGW));
+ pd.lStructSize = sizeof(PRINTDLGW);
pd.hwndOwner = hWnd;
pd.hDevMode = NULL; /* Don't forget to free or store hDevMode*/
pd.hDevNames = NULL; /* Don't forget to free or store hDevNames*/
@@ -555,7 +555,7 @@ static INT_PTR CALLBACK addtofavorites_dlgproc(HWND hwndDlg, UINT uMsg, WPARAM w
switch(LOWORD(wParam)) {
case IDC_VALUE_NAME:
if (HIWORD(wParam) == EN_UPDATE) {
- EnableWindow(GetDlgItem(hwndDlg, IDOK), GetWindowTextLength(hwndValue)>0);
+ EnableWindow(GetDlgItem(hwndDlg, IDOK), GetWindowTextLengthW(hwndValue) > 0);
return TRUE;
}
break;
@@ -696,11 +696,11 @@ static BOOL _CmdWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
HeapFree(GetProcessHeap(), 0, keyPath);
} else if (hWndDelete == g_pChildWnd->hListWnd) {
WCHAR* keyPath = GetItemPath(g_pChildWnd->hTreeWnd, 0, &hKeyRoot);
- curIndex = ListView_GetNextItem(g_pChildWnd->hListWnd, -1, LVNI_SELECTED);
+ curIndex = SendMessageW(g_pChildWnd->hListWnd, LVM_GETNEXTITEM, -1, MAKELPARAM(LVNI_SELECTED, 0));
while(curIndex != -1) {
WCHAR* valueName = GetItemText(g_pChildWnd->hListWnd, curIndex);
- curIndex = ListView_GetNextItem(g_pChildWnd->hListWnd, curIndex, LVNI_SELECTED);
+ curIndex = SendMessageW(g_pChildWnd->hListWnd, LVM_GETNEXTITEM, curIndex, MAKELPARAM(LVNI_SELECTED, 0));
if(curIndex != -1 && firstItem) {
if (MessageBoxW(hWnd, MAKEINTRESOURCEW(IDS_DELETE_BOX_TEXT_MULTIPLE),
MAKEINTRESOURCEW(IDS_DELETE_BOX_TITLE),
@@ -720,7 +720,7 @@ static BOOL _CmdWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
HeapFree(GetProcessHeap(), 0, keyPath);
} else if (IsChild(g_pChildWnd->hTreeWnd, hWndDelete) ||
IsChild(g_pChildWnd->hListWnd, hWndDelete)) {
- SendMessage(hWndDelete, WM_KEYDOWN, VK_DELETE, 0);
+ SendMessageW(hWndDelete, WM_KEYDOWN, VK_DELETE, 0);
}
break;
}
@@ -738,14 +738,14 @@ static BOOL _CmdWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
HTREEITEM hItem;
if (LOWORD(wParam) == ID_EDIT_FIND &&
- DialogBox(0, MAKEINTRESOURCE(IDD_FIND), hWnd, find_dlgproc) != IDOK)
+ DialogBoxW(0, MAKEINTRESOURCEW(IDD_FIND), hWnd, find_dlgproc) != IDOK)
break;
if (!*searchString)
break;
- hItem = TreeView_GetSelection(g_pChildWnd->hTreeWnd);
+ hItem = (HTREEITEM)SendMessageW(g_pChildWnd->hTreeWnd, TVM_GETNEXTITEM, TVGN_CARET, 0);
if (hItem) {
- int row = ListView_GetNextItem(g_pChildWnd->hListWnd, -1, LVNI_FOCUSED);
- HCURSOR hcursorOld = SetCursor(LoadCursor(NULL, IDC_WAIT));
+ int row = SendMessageW(g_pChildWnd->hListWnd, LVM_GETNEXTITEM, -1, MAKELPARAM(LVNI_FOCUSED, 0));
+ HCURSOR hcursorOld = SetCursor(LoadCursorW(NULL, (LPCWSTR)IDC_WAIT));
hItem = FindNext(g_pChildWnd->hTreeWnd, hItem, searchString, searchMask, &row);
SetCursor(hcursorOld);
if (hItem) {
@@ -753,8 +753,15 @@ static BOOL _CmdWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
InvalidateRect(g_pChildWnd->hTreeWnd, NULL, TRUE);
UpdateWindow(g_pChildWnd->hTreeWnd);
if (row != -1) {
- ListView_SetItemState(g_pChildWnd->hListWnd, -1, 0, LVIS_FOCUSED|LVIS_SELECTED);
- ListView_SetItemState(g_pChildWnd->hListWnd, row, LVIS_FOCUSED|LVIS_SELECTED, LVIS_FOCUSED|LVIS_SELECTED);
+ LVITEMW item;
+
+ item.state = 0;
+ item.stateMask = LVIS_FOCUSED | LVIS_SELECTED;
+ SendMessageW(g_pChildWnd->hListWnd, LVM_SETITEMSTATE, (UINT)-1, (LPARAM)&item);
+
+ item.state = LVIS_FOCUSED | LVIS_SELECTED;
+ item.stateMask = LVIS_FOCUSED | LVIS_SELECTED;
+ SendMessageW(g_pChildWnd->hListWnd, LVM_SETITEMSTATE, row, (LPARAM)&item);
SetFocus(g_pChildWnd->hListWnd);
} else {
SetFocus(g_pChildWnd->hTreeWnd);
@@ -840,7 +847,7 @@ static BOOL _CmdWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
HKEY hKey;
LPWSTR lpKeyPath = GetItemFullPath(g_pChildWnd->hTreeWnd, NULL, FALSE);
if (lpKeyPath) {
- if (DialogBox(0, MAKEINTRESOURCE(IDD_ADDFAVORITE), hWnd, addtofavorites_dlgproc) == IDOK) {
+ if (DialogBoxW(0, MAKEINTRESOURCEW(IDD_ADDFAVORITE), hWnd, addtofavorites_dlgproc) == IDOK) {
if (RegCreateKeyExW(HKEY_CURRENT_USER, favoritesKey,
0, NULL, 0,
KEY_READ|KEY_WRITE, NULL, &hKey, NULL) == ERROR_SUCCESS) {
@@ -854,7 +861,7 @@ static BOOL _CmdWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
}
case ID_FAVORITES_REMOVEFAVORITE:
{
- if (DialogBox(0, MAKEINTRESOURCE(IDD_DELFAVORITE), hWnd, removefavorite_dlgproc) == IDOK) {
+ if (DialogBoxW(0, MAKEINTRESOURCEW(IDD_DELFAVORITE), hWnd, removefavorite_dlgproc) == IDOK) {
HKEY hKey;
if (RegOpenKeyExW(HKEY_CURRENT_USER, favoritesKey,
0, KEY_READ|KEY_WRITE, &hKey) == ERROR_SUCCESS) {
@@ -896,7 +903,7 @@ static BOOL _CmdWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
pts = pt;
if(ClientToScreen(g_pChildWnd->hWnd, &pts)) {
SetCursorPos(pts.x, pts.y);
- SetCursor(LoadCursor(0, IDC_SIZEWE));
+ SetCursor(LoadCursorW(0, (LPCWSTR)IDC_SIZEWE));
SendMessageW(g_pChildWnd->hWnd, WM_LBUTTONDOWN, 0, MAKELPARAM(pt.x, pt.y));
}
return TRUE;
More information about the wine-cvs
mailing list