]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/filepicker.h
Make the CreateTool factories be public so they can be used from application code
[wxWidgets.git] / interface / wx / filepicker.h
index 9d57338383417ae7a818a05bb4c769ecd2f0505c..3053fcefc38c3e32856293d9fb4b768242a16d00 100644 (file)
@@ -3,7 +3,7 @@
 // Purpose:     interface of wxFilePickerCtrl
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 /**
            existing file.
     @style{wxFLP_CHANGE_DIR}
            Change current working directory on each user file selection change.
+    @style{wxFLP_SMALL}
+           Use smaller version of the control with a small "..." button instead
+           of the normal "Browse" one. This flag is new since wxWidgets 2.9.3.
     @endStyleTable
 
 
-    @beginEventTable{wxFileDirPickerEvent}
+    @beginEventEmissionTable{wxFileDirPickerEvent}
     @event{EVT_FILEPICKER_CHANGED(id, func)}
         The user changed the file selected in the control either using the
         button or using text control (see wxFLP_USE_TEXTCTRL; note that in
@@ -50,7 +53,7 @@
 
     @library{wxcore}
     @category{pickers}
-    <!-- @appearance{filepickerctrl.png} -->
+    @appearance{filepickerctrl.png}
 
     @see wxFileDialog, wxFileDirPickerEvent
 */
@@ -63,13 +66,13 @@ public:
     */
     wxFilePickerCtrl(wxWindow* parent, wxWindowID id,
                      const wxString& path = wxEmptyString,
-                     const wxString& message = "Select a file",
-                     const wxString& wildcard = ".",
+                     const wxString& message = wxFileSelectorPromptStr,
+                     const wxString& wildcard = wxFileSelectorDefaultWildcardStr,
                      const wxPoint& pos = wxDefaultPosition,
                      const wxSize& size = wxDefaultSize,
                      long style = wxFLP_DEFAULT_STYLE,
                      const wxValidator& validator = wxDefaultValidator,
-                     const wxString& name = "filepickerctrl");
+                     const wxString& name = wxFilePickerCtrlNameStr);
 
     /**
         Creates this widget with the given parameters.
@@ -93,7 +96,7 @@ public:
         @param style
             The window style, see wxFLP_* flags.
         @param validator
-            Validator which can be used for additional date checks.
+            Validator which can be used for additional data checks.
         @param name
             Control name.
 
@@ -102,13 +105,13 @@ public:
     */
     bool Create(wxWindow* parent, wxWindowID id,
                 const wxString& path = wxEmptyString,
-                const wxString& message = "Select a file",
-                const wxString& wildcard = ".",
+                const wxString& message = wxFileSelectorPromptStr,
+                const wxString& wildcard = wxFileSelectorDefaultWildcardStr,
                 const wxPoint& pos = wxDefaultPosition,
                 const wxSize& size = wxDefaultSize,
                 long style = wxFLP_DEFAULT_STYLE,
                 const wxValidator& validator = wxDefaultValidator,
-                const wxString& name = "filepickerctrl");
+                const wxString& name = wxFilePickerCtrlNameStr);
 
     /**
         Similar to GetPath() but returns the path of the currently selected
@@ -127,6 +130,20 @@ public:
     */
     void SetFileName(const wxFileName& filename);
 
+    /**
+        Set the directory to show when starting to browse for files.
+
+        This function is mostly useful for the file picker controls which have
+        no selection initially to configure the directory that should be shown
+        if the user starts browsing for files as otherwise the directory of
+        initially selected file is used, which is usually the desired
+        behaviour and so the directory specified by this function is ignored in
+        this case.
+
+        @since 2.9.4
+     */
+    void SetInitialDirectory(const wxString& dir);
+
     /**
         Sets the absolute path of the currently selected file.
         This must be a valid file if the @c wxFLP_FILE_MUST_EXIST style was given.
@@ -161,9 +178,12 @@ public:
            support its absence.
     @style{wxDIRP_CHANGE_DIR}
            Change current working directory on each user directory selection change.
+    @style{wxDIRP_SMALL}
+           Use smaller version of the control with a small "..." button instead
+           of the normal "Browse" one. This flag is new since wxWidgets 2.9.3.
     @endStyleTable
 
-    @beginEventTable{wxFileDirPickerEvent}
+    @beginEventEmissionTable{wxFileDirPickerEvent}
     @event{EVT_DIRPICKER_CHANGED(id, func)}
         The user changed the directory selected in the control either using the
         button or using text control (see wxDIRP_USE_TEXTCTRL; note that in this
@@ -174,7 +194,7 @@ public:
 
     @library{wxcore}
     @category{pickers}
-    <!-- @appearance{dirpickerctrl.png} -->
+    @appearance{dirpickerctrl.png}
 
     @see wxDirDialog, wxFileDirPickerEvent
 */
@@ -187,12 +207,12 @@ public:
     */
     wxDirPickerCtrl(wxWindow* parent, wxWindowID id,
                     const wxString& path = wxEmptyString,
-                    const wxString& message = "Select a folder",
+                    const wxString& message = wxDirSelectorPromptStr,
                     const wxPoint& pos = wxDefaultPosition,
                     const wxSize& size = wxDefaultSize,
                     long style = wxDIRP_DEFAULT_STYLE,
                     const wxValidator& validator = wxDefaultValidator,
-                    const wxString& name = "dirpickerctrl");
+                    const wxString& name = wxDirPickerCtrlNameStr);
 
     /**
         Creates the widgets with the given parameters.
@@ -222,12 +242,12 @@ public:
     */
     bool Create(wxWindow* parent, wxWindowID id,
                 const wxString& path = wxEmptyString,
-                const wxString& message = "Select a folder",
+                const wxString& message = wxDirSelectorPromptStr,
                 const wxPoint& pos = wxDefaultPosition,
                 const wxSize& size = wxDefaultSize,
                 long style = wxDIRP_DEFAULT_STYLE,
                 const wxValidator& validator = wxDefaultValidator,
-                const wxString& name = "dirpickerctrl");
+                const wxString& name = wxDirPickerCtrlNameStr);
 
     /**
         Returns the absolute path of the currently selected directory as a
@@ -246,6 +266,20 @@ public:
     */
     void SetDirName(const wxFileName& dirname);
 
+    /**
+        Set the directory to show when starting to browse for directories.
+
+        This function is mostly useful for the directory picker controls which
+        have no selection initially to configure the directory that should be
+        shown if the user starts browsing for directories as otherwise the
+        initially selected directory is used, which is usually the desired
+        behaviour and so the directory specified by this function is ignored in
+        this case.
+
+        @since 2.9.4
+     */
+    void SetInitialDirectory(const wxString& dir);
+
     /**
         Sets the absolute path of  (the default converter uses current locale's
         charset)the currently selected directory.
@@ -262,6 +296,13 @@ public:
     This event class is used for the events generated by
     wxFilePickerCtrl and by wxDirPickerCtrl.
 
+    @beginEventTable{wxFileDirPickerEvent}
+    @event{EVT_FILEPICKER_CHANGED(id, func)}
+        Generated whenever the selected file changes.
+    @event{EVT_DIRPICKER_CHANGED(id, func)}
+        Generated whenever the selected directory changes.
+    @endEventTable
+
     @library{wxcore}
     @category{events}
 
@@ -275,7 +316,7 @@ public:
     */
     wxFileDirPickerEvent(wxEventType type, wxObject* generator,
                          int id,
-                         const wxString path);
+                         const wxString& path);
 
     /**
         Retrieve the absolute path of the file/directory the user has just selected.