X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8b17ba727c69f66dfa0a73dfdd04ff7d30e3c188..473d087e563d557a572ee85dd12778f37f8f18ec:/include/wx/generic/filedlgg.h diff --git a/include/wx/generic/filedlgg.h b/include/wx/generic/filedlgg.h index 04f081b6bf..aee6a30925 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_ @@ -21,10 +21,10 @@ #include "wx/dialog.h" #include "wx/checkbox.h" #include "wx/listctrl.h" -#include "wx/button.h" -#include "wx/validate.h" #include "wx/textctrl.h" #include "wx/choice.h" +#include "wx/checkbox.h" +#include "wx/stattext.h" //----------------------------------------------------------------------------- // data @@ -62,20 +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(); - bool NewNameIsLegal( const wxString &s ); - bool Rename( const wxString &s ); void MakeItem( wxListItem &item ); - + void SetNewName( const wxString &name, const wxString &fname ); + private: DECLARE_DYNAMIC_CLASS(wxFileData); }; @@ -89,34 +88,36 @@ class wxFileCtrl : public wxListCtrl private: wxString m_dirName; bool m_showHidden; + wxString m_wild; public: wxFileCtrl(); - wxFileCtrl( wxWindow *win, const wxWindowID id, const wxString &dirName, - 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) ) {}; - int FillList( wxStringList &list ); - void DeleteFiles(); - void CopyFiles( char *dest ); - void MoveFiles( char *dest ); - void RenameFile(); void MakeDir(); void GoToParentDir(); void GoToHomeDir(); void GoToDir( const wxString &dir ); + void SetWild( const wxString &wild ); void GetDir( wxString &dir ); void OnListDeleteItem( wxListEvent &event ); - void OnListKeyDown( wxListEvent &event ); void OnListEndLabelEdit( wxListEvent &event ); -private: +private: DECLARE_DYNAMIC_CLASS(wxFileCtrl); DECLARE_EVENT_TABLE() }; @@ -137,6 +138,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); @@ -152,39 +154,48 @@ 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 ); void OnReport( wxCommandEvent &event ); - void OnIcon( wxCommandEvent &event ); void OnUp( wxCommandEvent &event ); void OnHome( wxCommandEvent &event ); void OnListOk( 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 OnNew( wxCommandEvent &event ); + 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