--- dlls/comdlg32/filedlg31.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-)
diff --git a/dlls/comdlg32/filedlg31.c b/dlls/comdlg32/filedlg31.c index 43dbf7f9af..0d9293421a 100644 --- a/dlls/comdlg32/filedlg31.c +++ b/dlls/comdlg32/filedlg31.c @@ -43,6 +43,9 @@ WINE_DEFAULT_DEBUG_CHANNEL(commdlg); #define BUFFILE 512 #define BUFFILEALLOC 512 * sizeof(WCHAR)
+#define FLAG_FLDR_OPEN 0x10000 +#define INDENT_MASK 0xffff + static const WCHAR FILE_star[] = {'*','.','*', 0}; static const WCHAR FILE_bslash[] = {'\', 0}; static const WCHAR FILE_specc[] = {'%','c',':', 0}; @@ -206,9 +209,8 @@ static LRESULT FD31_Directory( HWND hdlg, LPCWSTR filespec, int pos, int indent, else lstrcpyW( buffer , entry.cFileName ); if (!long_names) CharLowerW( buffer ); - /* pos = LISTBOX_FindFileStrPos( descr, buffer ); */ SendMessageW(hdlg, LB_INSERTSTRING, pos+n, (LPARAM)buffer); - SendMessageW(hdlg, LB_SETITEMDATA, pos+n, curropen == (pos+n) ? indent | 0x10000 : indent); + SendMessageW(hdlg, LB_SETITEMDATA, pos+n, curropen == (pos+n) ? indent | FLAG_FLDR_OPEN : indent); if (ret <= maxinsert) maxinsert++; else maxinsert = ret; n++; } @@ -267,7 +269,7 @@ static BOOL FD31_ScanDir(const OPENFILENAMEW *ofn, HWND hWnd, LPCWSTR newPath, WCHAR * sepptr; UINT n = 0; WCHAR pathcomp[BUFFILE]; - SendMessageW(hdlg, LB_RESETCONTENT, 0, 0); + SendMessageW(hdlg, LB_RESETCONTENT, 0, 0); while (dir) { sepptr = wcschr(dir, FILE_bslash[0]); @@ -285,9 +287,9 @@ static BOOL FD31_ScanDir(const OPENFILENAMEW *ofn, HWND hWnd, LPCWSTR newPath, dir = (sepptr) ? (sepptr + 1) : 0; /* last entry sets open folder if -1 */ if (curropen == -1 && !dir) - SendMessageW(hdlg, LB_SETITEMDATA, n, n | 0x10000 ); + SendMessageW(hdlg, LB_SETITEMDATA, n, n | FLAG_FLDR_OPEN ); else - SendMessageW(hdlg, LB_SETITEMDATA, n,n == curropen ? n | 0x10000 : n); + SendMessageW(hdlg, LB_SETITEMDATA, n,n == curropen ? n | FLAG_FLDR_OPEN : n); n++; } FD31_Directory(hdlg, buffer, n, n, curropen, TRUE); @@ -307,9 +309,9 @@ static LONG FD31_WMDrawItem(HWND hWnd, WPARAM wParam, LPARAM lParam, COLORREF oldText = 0, oldBk = 0; ULONG indent = 0;
- if (lpdis->itemData) + if (lpdis->itemData) { - indent = lpdis->itemData & 0xffff; + indent = lpdis->itemData & INDENT_MASK; } if (lpdis->CtlType == ODT_LISTBOX && lpdis->CtlID == lst1) { @@ -365,7 +367,7 @@ static LONG FD31_WMDrawItem(HWND hWnd, WPARAM wParam, LPARAM lParam, SetBkColor( lpdis->hDC, oldBk ); SetTextColor( lpdis->hDC, oldText ); } - if (lpdis->itemData & 0x10000) + if (lpdis->itemData & FLAG_FLDR_OPEN) DrawIconEx( lpdis->hDC, lpdis->rcItem.left + indent*indentWidth, lpdis->rcItem.top, hFolder2, 16, 16, 0, 0, DI_NORMAL ); else DrawIconEx( lpdis->hDC, lpdis->rcItem.left + indent*indentWidth, lpdis->rcItem.top, hFolder, 16, 16, 0, 0, DI_NORMAL ); @@ -508,7 +510,7 @@ static LRESULT FD31_DirListDblClick( FD31_DATA *lfs ) if (lRet == LB_ERR) return TRUE; pstr = heap_alloc(BUFFILEALLOC); SendDlgItemMessageW(hWnd, lst2, LB_GETTEXT, lRet, (LPARAM)pstr); - currindent = SendDlgItemMessageW(hWnd, lst2, LB_GETITEMDATA, lRet, 0) & 0xffff; + currindent = SendDlgItemMessageW(hWnd, lst2, LB_GETITEMDATA, lRet, 0) & INDENT_MASK; lfs->curropen = currindent; lstrcpyW( tmpstr, pstr ); /* get the selected directory in tmpstr */ @@ -521,7 +523,7 @@ static LRESULT FD31_DirListDblClick( FD31_DATA *lfs ) while (n >= 0) { SendDlgItemMessageW(hWnd, lst2, LB_GETTEXT, n, (LPARAM)pstr); - indent = SendDlgItemMessageW(hWnd, lst2, LB_GETITEMDATA, n, 0) & 0xffff; + indent = SendDlgItemMessageW(hWnd, lst2, LB_GETITEMDATA, n, 0) & INDENT_MASK; if (indent < currindent) { lstrcpyW(tmpstr2, pstr); @@ -1178,7 +1180,7 @@ static LONG FD31_WMInitDialog(HWND hWnd, WPARAM wParam, LPARAM lParam) if (ofn->Flags & OFN_HIDEREADONLY) ShowWindow(GetDlgItem(hWnd, chx1), SW_HIDE); if (lfs->hook) - return FD31_CallWindowProc(lfs, WM_INITDIALOG, wParam, lfs->lParam); + return FD31_CallWindowProc(lfs, WM_INITDIALOG, wParam, lfs->lParam); return TRUE; }