Commit 9c93c484 authored by Robert Shearman's avatar Robert Shearman Committed by Alexandre Julliard

- Use hourglass cursor for better feedback when expanding nodes.

- Turn off redrawing when expanding to make it faster.
parent 197b5e31
...@@ -249,6 +249,7 @@ BOOL OnTreeExpanding(HWND hwndTV, NMTREEVIEW* pnmtv) ...@@ -249,6 +249,7 @@ BOOL OnTreeExpanding(HWND hwndTV, NMTREEVIEW* pnmtv)
LPCTSTR keyPath; LPCTSTR keyPath;
LPTSTR Name; LPTSTR Name;
LONG errCode; LONG errCode;
HCURSOR hcursorOld;
static int expanding; static int expanding;
if (expanding) return FALSE; if (expanding) return FALSE;
...@@ -256,6 +257,8 @@ BOOL OnTreeExpanding(HWND hwndTV, NMTREEVIEW* pnmtv) ...@@ -256,6 +257,8 @@ BOOL OnTreeExpanding(HWND hwndTV, NMTREEVIEW* pnmtv)
return TRUE; return TRUE;
} }
expanding = TRUE; expanding = TRUE;
hcursorOld = SetCursor(LoadCursor(NULL, IDC_WAIT));
SendMessage(hwndTV, WM_SETREDRAW, FALSE, 0);
keyPath = GetItemPath(hwndTV, pnmtv->itemNew.hItem, &hRoot); keyPath = GetItemPath(hwndTV, pnmtv->itemNew.hItem, &hRoot);
if (!keyPath) goto done; if (!keyPath) goto done;
...@@ -291,6 +294,8 @@ BOOL OnTreeExpanding(HWND hwndTV, NMTREEVIEW* pnmtv) ...@@ -291,6 +294,8 @@ BOOL OnTreeExpanding(HWND hwndTV, NMTREEVIEW* pnmtv)
HeapFree(GetProcessHeap(), 0, Name); HeapFree(GetProcessHeap(), 0, Name);
done: done:
SendMessage(hwndTV, WM_SETREDRAW, TRUE, 0);
SetCursor(hcursorOld);
expanding = FALSE; expanding = FALSE;
return TRUE; return TRUE;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment