// Author: Julian Smart
// Modified by:
// Created: 01/02/97
-// RCS-ID: $Id$
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
(defined(__HANDHELDPC__) && (_WIN32_WCE >= 500)))
#include "wx/dirdlg.h"
+#include "wx/modalhook.h"
#ifndef WX_PRECOMP
#include "wx/utils.h"
#if wxUSE_DYNLIB_CLASS && !defined(__WXWINCE__)
#define wxUSE_IFILEDIALOG 1
#else
- #define wxUSE_IFILEDIALOG
+ #define wxUSE_IFILEDIALOG 0
#endif
#if wxUSE_IFILEDIALOG
virtual HRESULT wxSTDCALL Compare(IShellItem*, DWORD, int*) = 0;
};
+#endif // #ifndef __IShellItem_INTERFACE_DEFINED__
+
+// Define this GUID in any case, even when __IShellItem_INTERFACE_DEFINED__ is
+// defined in the headers we might still not have it in the actual uuid.lib,
+// this happens with at least VC7 used with its original (i.e. not updated) SDK
+// and there is no harm in defining the GUID unconditionally.
DEFINE_GUID(IID_IShellItem,
0x43826D1E, 0xE718, 0x42EE, 0xBC, 0x55, 0xA1, 0xE2, 0x61, 0xC3, 0x7B, 0xFE);
-#endif // #ifndef __IShellItem_INTERFACE_DEFINED__
-
struct IShellItemFilter;
struct IFileDialogEvents;
int wxDirDialog::ShowModal()
{
+ WX_HOOK_MODAL_DIALOG();
+
wxWindow* const parent = GetParent();
WXHWND hWndParent = parent ? GetHwndOf(parent) : NULL;
#endif
bi.ulFlags = BIF_RETURNONLYFSDIRS | BIF_STATUSTEXT;
bi.lpfn = BrowseCallbackProc;
- bi.lParam = (LPARAM)m_path.wx_str(); // param for the callback
+ bi.lParam = wxMSW_CONV_LPARAM(m_path); // param for the callback
static const int verComCtl32 = wxApp::GetComCtl32Version();
}
SendMessage(hwnd, BFFM_SETSTATUSTEXT,
- 0, (LPARAM)strDir.wx_str());
+ 0, wxMSW_CONV_LPARAM(strDir));
}
}
break;