]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/filedlg.h
added wxMBConv::Clone() to be able to copy conversion objects polymorphically
[wxWidgets.git] / include / wx / filedlg.h
index 2a1892ecde971dd78f0d4ba1c4bf233c909a2771..cf82cba2cc1761ff09ddad522eb18584b6268ebb 100644 (file)
@@ -5,18 +5,16 @@
 // 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_
 
-#if wxUSE_FILEDLG
+#include "wx/defs.h"
 
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma interface "filedlg.h"
-#endif
+#if wxUSE_FILEDLG
 
 #include "wx/dialog.h"
 #include "wx/arrstr.h"
@@ -38,8 +36,8 @@ enum
     wxCHANGE_DIR        = 0x0040
 };
 
-extern WXDLLEXPORT_DATA(const wxChar*) wxFileSelectorPromptStr;
-extern WXDLLEXPORT_DATA(const wxChar*) wxFileSelectorDefaultWildcardStr;
+extern WXDLLEXPORT_DATA(const wxChar) wxFileSelectorPromptStr[];
+extern WXDLLEXPORT_DATA(const wxChar) wxFileSelectorDefaultWildcardStr[];
 
 //----------------------------------------------------------------------------
 // wxFileDialogBase
@@ -48,15 +46,27 @@ extern WXDLLEXPORT_DATA(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; }
@@ -99,7 +109,6 @@ public:
 protected:
     wxString      m_message;
     long          m_dialogStyle;
-    wxWindow     *m_parent;
     wxString      m_dir;
     wxString      m_path;       // Full path
     wxString      m_fileName;
@@ -107,6 +116,7 @@ protected:
     int           m_filterIndex;
 
 private:
+    void Init();
     DECLARE_DYNAMIC_CLASS(wxFileDialogBase)
     DECLARE_NO_COPY_CLASS(wxFileDialogBase)
 };
@@ -158,8 +168,10 @@ wxSaveFileSelector(const wxChar *what,
 #include "wx/msw/filedlg.h"
 #elif defined(__WXMOTIF__)
 #include "wx/motif/filedlg.h"
-#elif defined(__WXGTK__)
+#elif defined(__WXGTK20__)
 #include "wx/gtk/filedlg.h"
+#elif defined(__WXGTK__)
+#include "wx/gtk1/filedlg.h"
 #elif defined(__WXX11__)
 #include "wx/generic/filedlgg.h"
 #elif defined(__WXMGL__)