]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/filedlg.h
Don't define __STRICT_ANSI__, we should build both with and without it.
[wxWidgets.git] / include / wx / gtk / filedlg.h
index 43dc8f418e3469f1eae85baba3210da120cb0563..377734db79f5d1cbd18d811155ebd4bf5fec06b2 100644 (file)
@@ -1,27 +1,21 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        filedlg.h
+// Name:        wx/gtk/filedlg.h
 // Purpose:
 // Author:      Robert Roebling
-// Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
+#ifndef _WX_GTKFILEDLG_H_
+#define _WX_GTKFILEDLG_H_
 
-#ifndef __GTKFILEDLGH__
-#define __GTKFILEDLGH__
-
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma interface "filedlggtk.h"
-#endif
-
-#include "wx/generic/filedlgg.h"
+#include "wx/gtk/filectrl.h"    // for wxGtkFileChooser
 
 //-------------------------------------------------------------------------
 // wxFileDialog
 //-------------------------------------------------------------------------
 
-class wxFileDialog: public wxGenericFileDialog
+class WXDLLIMPEXP_CORE wxFileDialog: public wxFileDialogBase
 {
 public:
     wxFileDialog() { }
@@ -31,35 +25,59 @@ public:
                  const wxString& defaultDir = wxEmptyString,
                  const wxString& defaultFile = wxEmptyString,
                  const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
-                 long style = 0,
-                 const wxPoint& pos = wxDefaultPosition);
-                 
-    ~wxFileDialog();
-    
+                 long style = wxFD_DEFAULT_STYLE,
+                 const wxPoint& pos = wxDefaultPosition,
+                 const wxSize& sz = wxDefaultSize,
+                 const wxString& name = wxFileDialogNameStr);
+    bool Create(wxWindow *parent,
+                 const wxString& message = wxFileSelectorPromptStr,
+                 const wxString& defaultDir = wxEmptyString,
+                 const wxString& defaultFile = wxEmptyString,
+                 const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
+                 long style = wxFD_DEFAULT_STYLE,
+                 const wxPoint& pos = wxDefaultPosition,
+                 const wxSize& sz = wxDefaultSize,
+                 const wxString& name = wxFileDialogNameStr);
+    virtual ~wxFileDialog();
+
+    virtual wxString GetPath() const;
     virtual void GetPaths(wxArrayString& paths) const;
+    virtual wxString GetFilename() const;
     virtual void GetFilenames(wxArrayString& files) const;
-    
+    virtual int GetFilterIndex() const;
+
     virtual void SetMessage(const wxString& message);
     virtual void SetPath(const wxString& path);
     virtual void SetDirectory(const wxString& dir);
     virtual void SetFilename(const wxString& name);
     virtual void SetWildcard(const wxString& wildCard);
     virtual void SetFilterIndex(int filterIndex);
-            
+
     virtual int ShowModal();
-    virtual bool Show( bool show = true );
 
+    virtual bool SupportsExtraControl() const { return true; }
+
+    // Implementation only.
+    void GTKSelectionChanged(const wxString& filename);
+
+
+protected:
+    // override this from wxTLW since the native
+    // form doesn't have any m_wxwindow
+    virtual void DoSetSize(int x, int y,
+                           int width, int height,
+                           int sizeFlags = wxSIZE_AUTO);
+
+
+private:
     void OnFakeOk( wxCommandEvent &event );
+    void OnSize(wxSizeEvent&);
+    virtual void AddChildGTK(wxWindowGTK* child);
 
-//private:
-    bool m_destroyed_by_delete;
-    
-    void UpdateFromDialog();
-    void UpdateDialog();
+    wxGtkFileChooser    m_fc;
 
-private:    
     DECLARE_DYNAMIC_CLASS(wxFileDialog)
     DECLARE_EVENT_TABLE()
 };
 
-#endif // __GTKFILEDLGH__
+#endif // _WX_GTKFILEDLG_H_