X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0b8558681e8c69b749f64b891111f5ea72c04550..695237bccd652c60deba347117ba5ab32067880c:/include/wx/generic/filedlgg.h diff --git a/include/wx/generic/filedlgg.h b/include/wx/generic/filedlgg.h index f3724ad09d..9d39b679f9 100644 --- a/include/wx/generic/filedlgg.h +++ b/include/wx/generic/filedlgg.h @@ -6,7 +6,7 @@ // Created: 8/17/99 // Copyright: (c) Robert Roebling // RCS-ID: $Id$ -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_FILEDLGG_H_ @@ -23,6 +23,8 @@ #include "wx/listctrl.h" #include "wx/textctrl.h" #include "wx/choice.h" +#include "wx/checkbox.h" +#include "wx/stattext.h" //----------------------------------------------------------------------------- // data @@ -60,19 +62,19 @@ private: bool m_isExe; public: - wxFileData() {} + wxFileData() { } wxFileData( const wxString &name, const wxString &fname ); wxString GetName() const; wxString GetFullName() const; wxString GetHint() const; - wxString GetEntry( const int num ); + wxString GetEntry( int num ); bool IsDir(); bool IsLink(); bool IsExe(); long GetSize(); void MakeItem( wxListItem &item ); void SetNewName( const wxString &name, const wxString &fname ); - + private: DECLARE_DYNAMIC_CLASS(wxFileData); }; @@ -90,18 +92,22 @@ private: public: wxFileCtrl(); - wxFileCtrl( wxWindow *win, const wxWindowID id, - const wxString &dirName, const wxString &wild, - const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize, - const long style = wxLC_LIST, const wxValidator &validator = wxDefaultValidator, - const wxString &name = _T("filelist") ); + wxFileCtrl( wxWindow *win, + wxWindowID id, + const wxString &dirName, + const wxString &wild, + const wxPoint &pos = wxDefaultPosition, + const wxSize &size = wxDefaultSize, + long style = wxLC_LIST, + const wxValidator &validator = wxDefaultValidator, + const wxString &name = wxT("filelist") ); void ChangeToListMode(); void ChangeToReportMode(); void ChangeToIconMode(); void ShowHidden( bool show = TRUE ); long Add( wxFileData *fd, wxListItem &item ); void Update(); - virtual void StatusbarText( char *WXUNUSED(text) ) {}; + virtual void StatusbarText( wxChar *WXUNUSED(text) ) {}; void MakeDir(); void GoToParentDir(); void GoToHomeDir(); @@ -109,9 +115,10 @@ public: void SetWild( const wxString &wild ); void GetDir( wxString &dir ); void OnListDeleteItem( wxListEvent &event ); + void OnListDeleteAllItems( wxListEvent &event ); void OnListEndLabelEdit( wxListEvent &event ); -private: +private: DECLARE_DYNAMIC_CLASS(wxFileCtrl); DECLARE_EVENT_TABLE() }; @@ -132,6 +139,7 @@ public: const wxString& wildCard = wxFileSelectorDefaultWildcardStr, long style = 0, const wxPoint& pos = wxDefaultPosition); + ~wxFileDialog(); void SetMessage(const wxString& message) { m_message = message; } void SetPath(const wxString& path); @@ -147,8 +155,12 @@ public: wxString GetFilename() const { return m_fileName; } wxString GetWildcard() const { return m_wildCard; } long GetStyle() const { return m_dialogStyle; } - int GetFilterIndex() const { return m_filterIndex ; } - + int GetFilterIndex() const { return m_filterIndex; } + + // for multiple file selection + void GetPaths(wxArrayString& paths) const; + void GetFilenames(wxArrayString& files) const; + void OnSelected( wxListEvent &event ); void OnActivated( wxListEvent &event ); void OnList( wxCommandEvent &event ); @@ -157,29 +169,34 @@ public: void OnHome( wxCommandEvent &event ); void OnListOk( wxCommandEvent &event ); void OnNew( wxCommandEvent &event ); - -protected: - wxString m_message; - long m_dialogStyle; - wxString m_dir; - wxString m_path; // Full path - wxString m_fileName; - wxString m_wildCard; - int m_filterIndex; - wxChoice *m_choice; - wxTextCtrl *m_text; - wxFileCtrl *m_list; - + void OnChoice( wxCommandEvent &event ); + void OnTextEnter( wxCommandEvent &event ); + void OnCheck( wxCommandEvent &event ); + + void HandleAction( const wxString &fn ); + +protected: + wxString m_message; + long m_dialogStyle; + wxString m_dir; + wxString m_path; // Full path + wxString m_fileName; + wxString m_wildCard; + int m_filterIndex; + wxString m_filterExtension; + wxChoice *m_choice; + wxTextCtrl *m_text; + wxFileCtrl *m_list; + wxCheckBox *m_check; + wxStaticText *m_static; + private: DECLARE_DYNAMIC_CLASS(wxFileDialog) DECLARE_EVENT_TABLE() -}; -#define wxOPEN 1 -#define wxSAVE 2 -#define wxOVERWRITE_PROMPT 4 -#define wxHIDE_READONLY 8 -#define wxFILE_MUST_EXIST 16 + static long s_lastViewStyle; // list or report? + static bool s_lastShowHidden; +}; // File selector - backward compatibility WXDLLEXPORT wxString