X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0cf3e587a2ec542ba1eb6e03a84c54edefae1881..da8b1d4b3b535aba94d04494f5b6e2b3e47901ee:/include/wx/generic/filedlgg.h diff --git a/include/wx/generic/filedlgg.h b/include/wx/generic/filedlgg.h index 661d7f88b7..b4f35b3afd 100644 --- a/include/wx/generic/filedlgg.h +++ b/include/wx/generic/filedlgg.h @@ -15,6 +15,7 @@ #include "wx/listctrl.h" #include "wx/datetime.h" #include "wx/filefn.h" +#include "wx/artprov.h" #include "wx/filedlg.h" #include "wx/generic/filectrlg.h" @@ -31,7 +32,7 @@ class WXDLLIMPEXP_FWD_CORE wxFileCtrlEvent; // wxGenericFileDialog //------------------------------------------------------------------------- -class WXDLLEXPORT wxGenericFileDialog: public wxFileDialogBase +class WXDLLIMPEXP_CORE wxGenericFileDialog: public wxFileDialogBase { public: wxGenericFileDialog() : wxFileDialogBase() { Init(); } @@ -60,14 +61,33 @@ public: virtual ~wxGenericFileDialog(); + virtual void SetDirectory(const wxString& dir) + { m_filectrl->SetDirectory(dir); } + virtual void SetFilename(const wxString& name) + { m_filectrl->SetFilename(name); } virtual void SetMessage(const wxString& message) { SetTitle(message); } - virtual void SetPath(const wxString& path); - virtual void SetFilterIndex(int filterIndex); - virtual void SetWildcard(const wxString& wildCard); - - // for multiple file selection - virtual void GetPaths(wxArrayString& paths) const; - virtual void GetFilenames(wxArrayString& files) const; + virtual void SetPath(const wxString& path) + { m_filectrl->SetPath(path); } + virtual void SetFilterIndex(int filterIndex) + { m_filectrl->SetFilterIndex(filterIndex); } + virtual void SetWildcard(const wxString& wildCard) + { m_filectrl->SetWildcard(wildCard); } + + virtual wxString GetPath() const + { return m_filectrl->GetPath(); } + virtual void GetPaths(wxArrayString& paths) const + { m_filectrl->GetPaths(paths); } + virtual wxString GetDirectory() const + { return m_filectrl->GetDirectory(); } + virtual wxString GetFilename() const + { return m_filectrl->GetFilename(); } + virtual void GetFilenames(wxArrayString& files) const + { m_filectrl->GetFilenames(files); } + virtual wxString GetWildcard() const + { return m_filectrl->GetWildcard(); } + virtual int GetFilterIndex() const + { return m_filectrl->GetFilterIndex(); } + virtual bool SupportsExtraControl() const { return true; } // implementation only from now on // ------------------------------- @@ -83,13 +103,14 @@ public: void OnNew( wxCommandEvent &event ); void OnFileActivated( wxFileCtrlEvent &event); - virtual void UpdateControls(); - private: - // Don't use this implementation at all :-) + // if true, don't use this implementation at all bool m_bypassGenericImpl; protected: + // update the state of m_upDirButton and m_newDirButton depending on the + // currently selected directory + void OnUpdateButtonsUI(wxUpdateUIEvent& event); wxString m_filterExtension; wxGenericFileCtrl *m_filectrl; @@ -98,6 +119,9 @@ protected: private: void Init(); + wxBitmapButton* AddBitmapButton( wxWindowID winId, const wxArtID& artId, + const wxString& tip, wxSizer *sizer ); + DECLARE_DYNAMIC_CLASS(wxGenericFileDialog) DECLARE_EVENT_TABLE() @@ -108,10 +132,10 @@ private: #ifdef wxHAS_GENERIC_FILEDIALOG -class WXDLLEXPORT wxFileDialog: public wxGenericFileDialog +class WXDLLIMPEXP_CORE wxFileDialog: public wxGenericFileDialog { public: - wxFileDialog() {} + wxFileDialog() {} wxFileDialog(wxWindow *parent, const wxString& message = wxFileSelectorPromptStr, @@ -119,8 +143,12 @@ public: const wxString& defaultFile = wxEmptyString, const wxString& wildCard = wxFileSelectorDefaultWildcardStr, long style = 0, - const wxPoint& pos = wxDefaultPosition) - :wxGenericFileDialog(parent, message, defaultDir, defaultFile, wildCard, style, pos) + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize) + :wxGenericFileDialog(parent, message, + defaultDir, defaultFile, wildCard, + style, + pos, size) { }