X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/82540105e3a6fe20d8d65d3badbd1389bef20e92..d2f3b08582317760addae3bf02f28bb42dc2bf70:/include/wx/filepicker.h diff --git a/include/wx/filepicker.h b/include/wx/filepicker.h index 360f12c75e..d06d94af1e 100644 --- a/include/wx/filepicker.h +++ b/include/wx/filepicker.h @@ -17,19 +17,20 @@ #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 WXDLLIMPEXP_DATA_CORE(const char) wxFilePickerWidgetLabel[]; +extern WXDLLIMPEXP_DATA_CORE(const char) wxFilePickerWidgetNameStr[]; +extern WXDLLIMPEXP_DATA_CORE(const char) wxFilePickerCtrlNameStr[]; +extern WXDLLIMPEXP_DATA_CORE(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 WXDLLIMPEXP_DATA_CORE(const char) wxDirPickerWidgetLabel[]; +extern WXDLLIMPEXP_DATA_CORE(const char) wxDirPickerWidgetNameStr[]; +extern WXDLLIMPEXP_DATA_CORE(const char) wxDirPickerCtrlNameStr[]; +extern WXDLLIMPEXP_DATA_CORE(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 { @@ -391,13 +403,6 @@ typedef void (wxEvtHandler::*wxFileDirPickerEventFunction)(wxFileDirPickerEvent& #define EVT_DIRPICKER_CHANGED(id, fn) \ wx__DECLARE_EVT1(wxEVT_COMMAND_DIRPICKER_CHANGED, id, wxFileDirPickerEventHandler(fn)) -#ifdef _WX_DEFINE_DATE_EVENTS_ - DEFINE_EVENT_TYPE(wxEVT_COMMAND_FILEPICKER_CHANGED) - DEFINE_EVENT_TYPE(wxEVT_COMMAND_DIRPICKER_CHANGED) - - IMPLEMENT_DYNAMIC_CLASS(wxFileDirPickerEvent, wxCommandEvent) -#endif - #endif // wxUSE_FILEPICKERCTRL || wxUSE_DIRPICKERCTRL