- // In the original implementation, defaultExtension is passed to the lpstrDefExt member
- // of OPENFILENAME. This extension, if non-NULL, is appended to the filename if the user
- // fails to type an extension.
- // The new implementation (taken from wxFileSelectorEx) appends the extension automatically,
- // by looking at the filter specification. In fact this should be better than the
- // native Microsoft implementation because Windows only allows *one* default extension,
- // whereas here we do the right thing depending on the filter the user has chosen.
-
- // If there's a default extension specified but no filter, we create a suitable
- // filter.
-
- wxString filter2("");
- if ( defaultExtension && !filter )
- filter2 = wxString("*.") + wxString(defaultExtension) ;
- else if ( filter )
- filter2 = filter;
-
- wxString defaultDirString;
- if (defaultDir)
- defaultDirString = defaultDir;
- else
- defaultDirString = "";
-
- wxString defaultFilenameString;
- if (defaultFileName)
- defaultFilenameString = defaultFileName;
- else
- defaultFilenameString = "";
-
- wxFileDialog fileDialog(parent, title, defaultDirString, defaultFilenameString, filter2, flags, wxPoint(x, y));
-
- if ( fileDialog.ShowModal() == wxID_OK )
- {
- strcpy(wxBuffer, (const char *)fileDialog.GetPath());
- return wxBuffer;
- }
- else
- return NULL;
-}
+ HWND hwndDialog;
+ hwndDialog = ::GetParent( hDlg );
+ switch (iMsg)
+ {
+ case WM_DESTROY:
+ {
+ RECT dlgRect;
+ GetWindowRect( hwndDialog, & dlgRect );
+ gs_rectDialog.x = dlgRect.left;
+ gs_rectDialog.y = dlgRect.top;
+ gs_rectDialog.width = dlgRect.right - dlgRect.left;
+ gs_rectDialog.height = dlgRect.bottom - dlgRect.top;
+ }
+ break;