]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/filepicker.h
Mention using wxString::c_str() with vararg functions in the change log.
[wxWidgets.git] / include / wx / filepicker.h
index 3b471b7aca3c81d5975109a6961331f617ad99f4..771ad2e55eb0ea9e09d8135953b6154fc1eebba4 100644 (file)
@@ -59,8 +59,8 @@ private:
     DECLARE_DYNAMIC_CLASS_NO_ASSIGN(wxFileDirPickerEvent)
 };
 
     DECLARE_DYNAMIC_CLASS_NO_ASSIGN(wxFileDirPickerEvent)
 };
 
-wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_CORE, wxEVT_COMMAND_FILEPICKER_CHANGED, wxFileDirPickerEvent );
-wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_CORE, wxEVT_COMMAND_DIRPICKER_CHANGED, wxFileDirPickerEvent );
+wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_CORE, wxEVT_FILEPICKER_CHANGED, wxFileDirPickerEvent );
+wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_CORE, wxEVT_DIRPICKER_CHANGED, wxFileDirPickerEvent );
 
 // ----------------------------------------------------------------------------
 // event types and macros
 
 // ----------------------------------------------------------------------------
 // event types and macros
@@ -72,9 +72,9 @@ typedef void (wxEvtHandler::*wxFileDirPickerEventFunction)(wxFileDirPickerEvent&
     wxEVENT_HANDLER_CAST(wxFileDirPickerEventFunction, func)
 
 #define EVT_FILEPICKER_CHANGED(id, fn) \
     wxEVENT_HANDLER_CAST(wxFileDirPickerEventFunction, func)
 
 #define EVT_FILEPICKER_CHANGED(id, fn) \
-    wx__DECLARE_EVT1(wxEVT_COMMAND_FILEPICKER_CHANGED, id, wxFileDirPickerEventHandler(fn))
+    wx__DECLARE_EVT1(wxEVT_FILEPICKER_CHANGED, id, wxFileDirPickerEventHandler(fn))
 #define EVT_DIRPICKER_CHANGED(id, fn) \
 #define EVT_DIRPICKER_CHANGED(id, fn) \
-    wx__DECLARE_EVT1(wxEVT_COMMAND_DIRPICKER_CHANGED, id, wxFileDirPickerEventHandler(fn))
+    wx__DECLARE_EVT1(wxEVT_DIRPICKER_CHANGED, id, wxFileDirPickerEventHandler(fn))
 
 // ----------------------------------------------------------------------------
 // wxFileDirPickerWidgetBase: a generic abstract interface which must be
 
 // ----------------------------------------------------------------------------
 // wxFileDirPickerWidgetBase: a generic abstract interface which must be
@@ -87,9 +87,13 @@ public:
     wxFileDirPickerWidgetBase() {  }
     virtual ~wxFileDirPickerWidgetBase() {  }
 
     wxFileDirPickerWidgetBase() {  }
     virtual ~wxFileDirPickerWidgetBase() {  }
 
+    // Path here is the name of the selected file or directory.
     wxString GetPath() const { return m_path; }
     virtual void SetPath(const wxString &str) { m_path=str; }
 
     wxString GetPath() const { return m_path; }
     virtual void SetPath(const wxString &str) { m_path=str; }
 
+    // Set the directory to open the file browse dialog at initially.
+    virtual void SetInitialDirectory(const wxString& dir) = 0;
+
     // returns the picker widget cast to wxControl
     virtual wxControl *AsControl() = 0;
 
     // returns the picker widget cast to wxControl
     virtual wxControl *AsControl() = 0;
 
@@ -125,7 +129,7 @@ protected:
 //       requires that all classes being mapped as wx{File|Dir}PickerWidget have the
 //       same prototype for the contructor...
 // since GTK >= 2.6, there is GtkFileButton
 //       requires that all classes being mapped as wx{File|Dir}PickerWidget have the
 //       same prototype for the contructor...
 // since GTK >= 2.6, there is GtkFileButton
-#if defined(__WXGTK26__) && !defined(__WXUNIVERSAL__)
+#if defined(__WXGTK20__) && !defined(__WXUNIVERSAL__)
     #include "wx/gtk/filepicker.h"
     #define wxFilePickerWidget      wxFileButton
     #define wxDirPickerWidget       wxDirButton
     #include "wx/gtk/filepicker.h"
     #define wxFilePickerWidget      wxFileButton
     #define wxDirPickerWidget       wxDirButton
@@ -144,7 +148,7 @@ protected:
 class WXDLLIMPEXP_CORE wxFileDirPickerCtrlBase : public wxPickerBase
 {
 public:
 class WXDLLIMPEXP_CORE wxFileDirPickerCtrlBase : public wxPickerBase
 {
 public:
-    wxFileDirPickerCtrlBase() : m_bIgnoreNextTextCtrlUpdate(false) {}
+    wxFileDirPickerCtrlBase() {}
 
 protected:
     // NB: no default values since this function will never be used
 
 protected:
     // NB: no default values since this function will never be used
@@ -165,6 +169,12 @@ public:         // public API
     wxString GetPath() const;
     void SetPath(const wxString &str);
 
     wxString GetPath() const;
     void SetPath(const wxString &str);
 
+    // Set the directory to open the file browse dialog at initially.
+    void SetInitialDirectory(const wxString& dir)
+    {
+        m_pickerIface->SetInitialDirectory(dir);
+    }
+
 public:        // internal functions
 
     void UpdatePickerFromTextCtrl();
 public:        // internal functions
 
     void UpdatePickerFromTextCtrl();
@@ -173,11 +183,6 @@ public:        // internal functions
     // event handler for our picker
     void OnFileDirChange(wxFileDirPickerEvent &);
 
     // event handler for our picker
     void OnFileDirChange(wxFileDirPickerEvent &);
 
-    // Returns TRUE if the current path is a valid one
-    // (i.e. a valid file for a wxFilePickerWidget or a valid
-    //  folder for a wxDirPickerWidget).
-    virtual bool CheckPath(const wxString &str) const = 0;
-
     // TRUE if any textctrl change should update the current working directory
     virtual bool IsCwdToUpdate() const = 0;
 
     // TRUE if any textctrl change should update the current working directory
     virtual bool IsCwdToUpdate() const = 0;
 
@@ -199,9 +204,6 @@ protected:
 
 protected:
 
 
 protected:
 
-    // true if the next UpdateTextCtrl() call is to ignore
-    bool m_bIgnoreNextTextCtrlUpdate;
-
     // m_picker object as wxFileDirPickerWidgetBase interface
     wxFileDirPickerWidgetBase *m_pickerIface;
 };
     // m_picker object as wxFileDirPickerWidgetBase interface
     wxFileDirPickerWidgetBase *m_pickerIface;
 };
@@ -265,9 +267,6 @@ public:
 
 public:     // overrides
 
 
 public:     // overrides
 
-    // return true if the given path is valid for this control
-    bool CheckPath(const wxString& path) const;
-
     // return the text control value in canonical form
     wxString GetTextCtrlValue() const;
 
     // return the text control value in canonical form
     wxString GetTextCtrlValue() const;
 
@@ -275,11 +274,11 @@ public:     // overrides
         { return HasFlag(wxFLP_CHANGE_DIR); }
 
     wxEventType GetEventType() const
         { return HasFlag(wxFLP_CHANGE_DIR); }
 
     wxEventType GetEventType() const
-        { return wxEVT_COMMAND_FILEPICKER_CHANGED; }
+        { return wxEVT_FILEPICKER_CHANGED; }
 
     virtual void DoConnect( wxControl *sender, wxFileDirPickerCtrlBase *eventSink )
     {
 
     virtual void DoConnect( wxControl *sender, wxFileDirPickerCtrlBase *eventSink )
     {
-        sender->Connect( wxEVT_COMMAND_FILEPICKER_CHANGED,
+        sender->Connect( wxEVT_FILEPICKER_CHANGED,
             wxFileDirPickerEventHandler( wxFileDirPickerCtrlBase::OnFileDirChange ),
             NULL, eventSink );
     }
             wxFileDirPickerEventHandler( wxFileDirPickerCtrlBase::OnFileDirChange ),
             NULL, eventSink );
     }
@@ -369,19 +368,17 @@ public:
 
 public:     // overrides
 
 
 public:     // overrides
 
-    bool CheckPath(const wxString &path) const;
-
     wxString GetTextCtrlValue() const;
 
     bool IsCwdToUpdate() const
         { return HasFlag(wxDIRP_CHANGE_DIR); }
 
     wxEventType GetEventType() const
     wxString GetTextCtrlValue() const;
 
     bool IsCwdToUpdate() const
         { return HasFlag(wxDIRP_CHANGE_DIR); }
 
     wxEventType GetEventType() const
-        { return wxEVT_COMMAND_DIRPICKER_CHANGED; }
+        { return wxEVT_DIRPICKER_CHANGED; }
 
     virtual void DoConnect( wxControl *sender, wxFileDirPickerCtrlBase *eventSink )
     {
 
     virtual void DoConnect( wxControl *sender, wxFileDirPickerCtrlBase *eventSink )
     {
-        sender->Connect( wxEVT_COMMAND_DIRPICKER_CHANGED,
+        sender->Connect( wxEVT_DIRPICKER_CHANGED,
             wxFileDirPickerEventHandler( wxFileDirPickerCtrlBase::OnFileDirChange ),
             NULL, eventSink );
     }
             wxFileDirPickerEventHandler( wxFileDirPickerCtrlBase::OnFileDirChange ),
             NULL, eventSink );
     }
@@ -416,5 +413,9 @@ private:
 
 #endif      // wxUSE_DIRPICKERCTRL
 
 
 #endif      // wxUSE_DIRPICKERCTRL
 
+// old wxEVT_COMMAND_* constants
+#define wxEVT_COMMAND_FILEPICKER_CHANGED   wxEVT_FILEPICKER_CHANGED
+#define wxEVT_COMMAND_DIRPICKER_CHANGED    wxEVT_DIRPICKER_CHANGED
+
 #endif // _WX_FILEDIRPICKER_H_BASE_
 
 #endif // _WX_FILEDIRPICKER_H_BASE_