]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/filepicker.h
translate "Copy URL" string in the popup menu (feature request 1803958) (should have...
[wxWidgets.git] / include / wx / filepicker.h
index b4f12513ebef9eb64ad7f59dc1589def4e8f71c1..0f0c7cc57a5284031e730f9da3fc73b4984d8e7c 100644 (file)
 #if wxUSE_FILEPICKERCTRL || wxUSE_DIRPICKERCTRL
 
 #include "wx/pickerbase.h"
+#include "wx/filename.h"
 
-class WXDLLIMPEXP_CORE wxDialog;
-class WXDLLIMPEXP_CORE wxFileDirPickerEvent;
+class WXDLLIMPEXP_FWD_CORE wxDialog;
+class WXDLLIMPEXP_FWD_CORE wxFileDirPickerEvent;
 
-extern WXDLLEXPORT_DATA(const wxChar) wxFilePickerWidgetLabel[];
-extern WXDLLEXPORT_DATA(const wxChar) wxFilePickerWidgetNameStr[];
-extern WXDLLEXPORT_DATA(const wxChar) wxFilePickerCtrlNameStr[];
-extern WXDLLEXPORT_DATA(const wxChar) wxFileSelectorPromptStr[];
+extern WXDLLEXPORT_DATA(const char) wxFilePickerWidgetLabel[];
+extern WXDLLEXPORT_DATA(const char) wxFilePickerWidgetNameStr[];
+extern WXDLLEXPORT_DATA(const char) wxFilePickerCtrlNameStr[];
+extern WXDLLEXPORT_DATA(const char) wxFileSelectorPromptStr[];
 
-extern WXDLLEXPORT_DATA(const wxChar) wxDirPickerWidgetLabel[];
-extern WXDLLEXPORT_DATA(const wxChar) wxDirPickerWidgetNameStr[];
-extern WXDLLEXPORT_DATA(const wxChar) wxDirPickerCtrlNameStr[];
-extern WXDLLEXPORT_DATA(const wxChar) wxDirSelectorPromptStr[];
+extern WXDLLEXPORT_DATA(const char) wxDirPickerWidgetLabel[];
+extern WXDLLEXPORT_DATA(const char) wxDirPickerWidgetNameStr[];
+extern WXDLLEXPORT_DATA(const char) wxDirPickerCtrlNameStr[];
+extern WXDLLEXPORT_DATA(const char) wxDirSelectorPromptStr[];
 
 
 // ----------------------------------------------------------------------------
@@ -215,6 +216,11 @@ public:
                                                    validator, name);
     }
 
+    void SetFileName(const wxFileName &filename)
+        { SetPath(filename.GetFullPath()); }
+
+    wxFileName GetFileName() const
+        { return wxFileName(GetPath()); }
 
 public:     // overrides
 
@@ -231,13 +237,14 @@ public:     // overrides
         { return wxEVT_COMMAND_FILEPICKER_CHANGED; }
 
 protected:
+    virtual
     wxFileDirPickerWidgetBase *CreatePicker(wxWindow *parent,
                                             const wxString& path,
                                             const wxString& message,
                                             const wxString& wildcard)
     {
         return new wxFilePickerWidget(parent, wxID_ANY,
-                                      wxFilePickerWidgetLabel,
+                                      wxGetTranslation(wxFilePickerWidgetLabel),
                                       path, message, wildcard,
                                       wxDefaultPosition, wxDefaultSize,
                                       GetPickerStyle(GetWindowStyle()));
@@ -307,6 +314,11 @@ public:
                );
     }
 
+    void SetDirName(const wxFileName &dirname)
+        { SetPath(dirname.GetPath()); }
+
+    wxFileName GetDirName() const
+        { return wxFileName::DirName(GetPath()); }
 
 public:     // overrides
 
@@ -321,12 +333,14 @@ public:     // overrides
         { return wxEVT_COMMAND_DIRPICKER_CHANGED; }
 
 protected:
+    virtual
     wxFileDirPickerWidgetBase *CreatePicker(wxWindow *parent,
                                             const wxString& path,
                                             const wxString& message,
                                             const wxString& WXUNUSED(wildcard))
     {
-        return new wxDirPickerWidget(parent, wxID_ANY, wxDirPickerWidgetLabel,
+        return new wxDirPickerWidget(parent, wxID_ANY,
+                                     wxGetTranslation(wxDirPickerWidgetLabel),
                                      path, message,
                                      wxDefaultPosition, wxDefaultSize,
                                      GetPickerStyle(GetWindowStyle()));
@@ -349,10 +363,8 @@ private:
 // wxFileDirPickerEvent: used by wxFilePickerCtrl and wxDirPickerCtrl only
 // ----------------------------------------------------------------------------
 
-BEGIN_DECLARE_EVENT_TYPES()
-    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_CORE, wxEVT_COMMAND_FILEPICKER_CHANGED, 1102)
-    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_CORE, wxEVT_COMMAND_DIRPICKER_CHANGED, 1103)
-END_DECLARE_EVENT_TYPES()
+extern WXDLLIMPEXP_CORE const wxEventType wxEVT_COMMAND_FILEPICKER_CHANGED;
+extern WXDLLIMPEXP_CORE const wxEventType wxEVT_COMMAND_DIRPICKER_CHANGED;
 
 class WXDLLIMPEXP_CORE wxFileDirPickerEvent : public wxCommandEvent
 {