Set the default directory first, if it's specified, and the file name later to
ensure that it's interpreted relatively to this directory. Otherwise we could
have a mismatch between the directory shown in the dialog and its initial
path.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70732
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
- // this sets both the default folder and the default file of the dialog
- dialog->SetPath(m_path);
-
// If there is no default file or if it doesn't have any path, use the
// explicitly set initial directory.
// If there is no default file or if it doesn't have any path, use the
// explicitly set initial directory.
+ //
+ // Notice that it is important to call this before SetPath() below as if we
+ // do have m_initialDir and no directory in m_path, we need to interpret
+ // the path as being relative with respect to m_initialDir.
if ( !m_initialDir.empty() )
DoSetInitialDirectory(dialog, m_initialDir);
if ( !m_initialDir.empty() )
DoSetInitialDirectory(dialog, m_initialDir);
+ // This sets both the default file name and the default directory of the
+ // dialog if m_path contains directory part.
+ dialog->SetPath(m_path);
+