X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3f2711d5c119962a9fcb7198ebf351930d646e23..0b7e6e7da208b6a95fb23cb50286a09dc90d96d2:/src/msw/dirdlg.cpp diff --git a/src/msw/dirdlg.cpp b/src/msw/dirdlg.cpp index 3523789d38..f8de559fa2 100644 --- a/src/msw/dirdlg.cpp +++ b/src/msw/dirdlg.cpp @@ -27,39 +27,32 @@ #pragma hdrstop #endif +#if defined(__WIN95__) && !defined(__GNUWIN32_OLD__) + #ifndef WX_PRECOMP #include "wx/utils.h" #include "wx/dialog.h" #include "wx/dirdlg.h" + #include "wx/log.h" #endif #include "wx/msw/private.h" -#if defined(__WIN95__) && \ - (!defined(__GNUWIN32__) || defined(wxUSE_NORLANDER_HEADERS)) - #define CAN_COMPILE_DIRDLG -//#else: we provide a stub version which doesn't do anything -#endif - -#ifdef CAN_COMPILE_DIRDLG - #include "shlobj.h" // Win95 shell -#endif +#include "shlobj.h" // Win95 shell // ---------------------------------------------------------------------------- // constants // ---------------------------------------------------------------------------- #ifndef MAX_PATH - #define MAX_PATH 4096 // be generuous + #define MAX_PATH 4096 // be generous #endif // ---------------------------------------------------------------------------- // wxWindows macros // ---------------------------------------------------------------------------- -#if !USE_SHARED_LIBRARY - IMPLEMENT_CLASS(wxDirDialog, wxDialog) -#endif +IMPLEMENT_CLASS(wxDirDialog, wxDialog) // ---------------------------------------------------------------------------- // private functions prototypes @@ -72,6 +65,7 @@ static void ItemListFree(LPITEMIDLIST pidl); static int CALLBACK BrowseCallbackProc(HWND hwnd, UINT uMsg, LPARAM lp, LPARAM pData); + // ============================================================================ // implementation // ============================================================================ @@ -89,11 +83,11 @@ wxDirDialog::wxDirDialog(wxWindow *parent, m_message = message; m_parent = parent; m_path = defaultPath; + m_path.Replace(_T("/"), _T("\\")); // SHBrowseForFolder doesn't like '/'s } int wxDirDialog::ShowModal() { -#ifdef CAN_COMPILE_DIRDLG BROWSEINFO bi; bi.hwndOwner = m_parent ? GetHwndOf(m_parent) : NULL; bi.pidlRoot = NULL; @@ -129,9 +123,6 @@ int wxDirDialog::ShowModal() } return wxID_OK; -#else // !CAN_COMPILE_DIRDLG - return wxID_CANCEL; -#endif // CAN_COMPILE_DIRDLG/!CAN_COMPILE_DIRDLG } // ---------------------------------------------------------------------------- @@ -188,3 +179,6 @@ static void ItemListFree(LPITEMIDLIST pidl) } } +#else + #include "../generic/dirdlgg.cpp" +#endif // compiler/platform on which the code here compiles