]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/filedlg.h
we need our own imaglist implementation because in wxmac wxIcon does not inherit...
[wxWidgets.git] / include / wx / filedlg.h
index 21bd2595d5cd62b28259a4c9d24293e40f7056d6..60c59e80ef64fbe7a7a4496d26798e66896ed3c5 100644 (file)
@@ -5,13 +5,15 @@
 // Modified by:
 // Created:     8/17/99
 // Copyright:   (c) Robert Roebling
-// RCS-ID:
+// RCS-ID:      $Id$
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_FILEDLG_H_BASE_
 #define _WX_FILEDLG_H_BASE_
 
+#include "wx/defs.h"
+
 #if wxUSE_FILEDLG
 
 #if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
@@ -38,8 +40,8 @@ enum
     wxCHANGE_DIR        = 0x0040
 };
 
-WXDLLEXPORT_DATA(extern const wxChar*) wxFileSelectorPromptStr;
-WXDLLEXPORT_DATA(extern const wxChar*) wxFileSelectorDefaultWildcardStr;
+extern WXDLLEXPORT_DATA(const wxChar*) wxFileSelectorPromptStr;
+extern WXDLLEXPORT_DATA(const wxChar*) wxFileSelectorDefaultWildcardStr;
 
 //----------------------------------------------------------------------------
 // wxFileDialogBase
@@ -48,15 +50,27 @@ WXDLLEXPORT_DATA(extern const wxChar*) wxFileSelectorDefaultWildcardStr;
 class WXDLLEXPORT wxFileDialogBase: public wxDialog
 {
 public:
-    wxFileDialogBase () {}
+    wxFileDialogBase () { Init(); }
 
     wxFileDialogBase(wxWindow *parent,
-                 const wxString& message = wxFileSelectorPromptStr,
-                 const wxString& defaultDir = wxEmptyString,
-                 const wxString& defaultFile = wxEmptyString,
-                 const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
-                 long style = 0,
-                 const wxPoint& pos = wxDefaultPosition);
+                     const wxString& message = wxFileSelectorPromptStr,
+                     const wxString& defaultDir = wxEmptyString,
+                     const wxString& defaultFile = wxEmptyString,
+                     const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
+                     long style = 0,
+                     const wxPoint& pos = wxDefaultPosition) : wxDialog()
+    {
+        Init();
+        Create(parent, message, defaultDir, defaultFile, wildCard, style, pos);
+    }
+
+    bool Create(wxWindow *parent,
+                const wxString& message = wxFileSelectorPromptStr,
+                const wxString& defaultDir = wxEmptyString,
+                const wxString& defaultFile = wxEmptyString,
+                const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
+                long style = 0,
+                const wxPoint& pos = wxDefaultPosition);
 
     virtual void SetMessage(const wxString& message) { m_message = message; }
     virtual void SetPath(const wxString& path) { m_path = path; }
@@ -84,9 +98,9 @@ public:
     // The arrays will contain an equal number of items found before the error.
     // wildCard is in the form:
     // "All files (*)|*|Image Files (*.jpeg *.png)|*.jpg;*.png"
-    static int ParseWildcard(const wxString& wildCard,
-                             wxArrayString& descriptions,
-                             wxArrayString& filters);
+    wxDEPRECATED( static int ParseWildcard(const wxString& wildCard,
+                                           wxArrayString& descriptions,
+                                           wxArrayString& filters) );
 #endif // WXWIN_COMPATIBILITY_2_4
 
     // Append first extension to filePath from a ';' separated extensionList
@@ -107,6 +121,7 @@ protected:
     int           m_filterIndex;
 
 private:
+    void Init();
     DECLARE_DYNAMIC_CLASS(wxFileDialogBase)
     DECLARE_NO_COPY_CLASS(wxFileDialogBase)
 };
@@ -159,11 +174,7 @@ wxSaveFileSelector(const wxChar *what,
 #elif defined(__WXMOTIF__)
 #include "wx/motif/filedlg.h"
 #elif defined(__WXGTK__)
-#ifdef __WXGTK24__
 #include "wx/gtk/filedlg.h"
-#else
-#include "wx/generic/filedlgg.h"
-#endif
 #elif defined(__WXX11__)
 #include "wx/generic/filedlgg.h"
 #elif defined(__WXMGL__)