]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/filedlg.cpp
do take the toolbar into account for Windows CE, otherwise the menus overlap with...
[wxWidgets.git] / src / msw / filedlg.cpp
index bca53ff1a50e34d0529ecb2ff06182f6dcdcd2cb..b8d7c947e5045230502f715327514157b11a8195 100644 (file)
@@ -17,7 +17,7 @@
 // headers
 // ----------------------------------------------------------------------------
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
     #pragma implementation "filedlg.h"
 #endif
 
@@ -28,7 +28,7 @@
     #pragma hdrstop
 #endif
 
-#if wxUSE_FILEDLG
+#if wxUSE_FILEDLG && !wxUSE_SMARTPHONE
 
 #ifndef WX_PRECOMP
     #include "wx/utils.h"
@@ -113,6 +113,11 @@ void wxFileDialog::GetPaths(wxArrayString& paths) const
     }
 }
 
+void wxFileDialog::GetFilenames(wxArrayString& files) const
+{
+    files = m_fileNames;
+}
+
 void wxFileDialog::SetPath(const wxString& path)
 {
     wxString ext;
@@ -152,13 +157,12 @@ int wxFileDialog::ShowModal()
     {
         msw_flags |= OFN_NOCHANGEDIR;
     }
-/* chris elliott for some reason this does not work usefully if no extension
-   is given, as it test for junk instead of junk.ext
+
     if ( m_dialogStyle & wxOVERWRITE_PROMPT )
     {
         msw_flags |= OFN_OVERWRITEPROMPT;
     }
-*/
+
     OPENFILENAME of;
     wxZeroMemory(of);
 
@@ -303,10 +307,11 @@ int wxFileDialog::ShowModal()
 
         if ( ( m_dialogStyle & wxMULTIPLE ) &&
 #if defined(OFN_EXPLORER)
-             ( fileNameBuffer[of.nFileOffset-1] == wxT('\0') ) )
+             ( fileNameBuffer[of.nFileOffset-1] == wxT('\0') )
 #else
-             ( fileNameBuffer[of.nFileOffset-1] == wxT(' ') ) )
+             ( fileNameBuffer[of.nFileOffset-1] == wxT(' ') )
 #endif // OFN_EXPLORER
+           )
         {
 #if defined(OFN_EXPLORER)
             m_dir = fileNameBuffer;
@@ -334,8 +339,8 @@ int wxFileDialog::ShowModal()
             if ( m_dir.Last() != _T('\\') )
                 dir += _T('\\');
 
-            m_fileNames.Sort(wxStringSortAscending);
             m_path = dir + m_fileName;
+            m_filterIndex = (int)of.nFilterIndex - 1;
         }
         else
         {
@@ -363,18 +368,6 @@ int wxFileDialog::ShowModal()
             m_fileNames.Add(m_fileName);
             m_dir = wxPathOnly(fileNameBuffer);
         }
-        //=== Simulating the wxOVERWRITE_PROMPT >>============================
-        //should we also test for file save style ??
-        if ( (m_dialogStyle & wxOVERWRITE_PROMPT) &&
-             ::wxFileExists( fileNameBuffer ) )
-             {
-             wxString messageText;
-             messageText.Printf(_("File '%s' already exists.\nDo you want to replace it?"), fileNameBuffer);
-             if ( wxMessageBox(messageText, wxT("Save File As"), wxYES_NO | wxICON_EXCLAMATION  ) != wxYES )
-             {
-                 success = FALSE;
-             }            
-        }
     }
     else
     {