X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1169a91932273bc84c23ed9dbd0a2da064d59d66..c8e1af672f46e93ae2fe6d7f9d5b35a3d8d49c16:/include/wx/generic/filedlgg.h diff --git a/include/wx/generic/filedlgg.h b/include/wx/generic/filedlgg.h index f8edaa82af..62f6bf2481 100644 --- a/include/wx/generic/filedlgg.h +++ b/include/wx/generic/filedlgg.h @@ -34,7 +34,7 @@ class WXDLLEXPORT wxListItem; class WXDLLEXPORT wxStaticText; class WXDLLEXPORT wxTextCtrl; -#if defined(__WXUNIVERSAL__)||defined(__WXGTK__)||defined(__WXX11__)||defined(__WXMGL__)||defined(__WXCOCOA__) +#if defined(__WXUNIVERSAL__)||defined(__WXX11__)||defined(__WXMGL__)||defined(__WXCOCOA__) #define USE_GENERIC_FILEDIALOG #endif @@ -45,7 +45,7 @@ class WXDLLEXPORT wxTextCtrl; class WXDLLEXPORT wxGenericFileDialog: public wxFileDialogBase { public: - wxGenericFileDialog(); + wxGenericFileDialog() { } wxGenericFileDialog(wxWindow *parent, const wxString& message = wxFileSelectorPromptStr, @@ -53,12 +53,21 @@ public: const wxString& defaultFile = wxEmptyString, const wxString& wildCard = wxFileSelectorDefaultWildcardStr, long style = 0, - const wxPoint& pos = wxDefaultPosition); + const wxPoint& pos = wxDefaultPosition, + bool bypassGenericImpl = false ); + bool Create( wxWindow *parent, + const wxString& message = wxFileSelectorPromptStr, + const wxString& defaultDir = wxEmptyString, + const wxString& defaultFile = wxEmptyString, + const wxString& wildCard = wxFileSelectorDefaultWildcardStr, + long style = 0, + const wxPoint& pos = wxDefaultPosition ); virtual ~wxGenericFileDialog(); 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; @@ -68,6 +77,7 @@ public: // ------------------------------- virtual int ShowModal(); + virtual bool Show( bool show = true ); void OnSelected( wxListEvent &event ); void OnActivated( wxListEvent &event ); @@ -85,6 +95,10 @@ public: virtual void HandleAction( const wxString &fn ); virtual void UpdateControls(); + +private: + // Don't use this implementation at all :-) + bool m_bypassGenericImpl; protected: // use the filter with the given index @@ -112,18 +126,22 @@ private: class WXDLLEXPORT wxFileDialog: public wxGenericFileDialog { - DECLARE_DYNAMIC_CLASS(wxFileDialog) - public: - wxFileDialog(); + wxFileDialog() {} wxFileDialog(wxWindow *parent, const wxString& message = wxFileSelectorPromptStr, - const wxString& defaultDir = _T(""), - const wxString& defaultFile = _T(""), + const wxString& defaultDir = wxEmptyString, + const wxString& defaultFile = wxEmptyString, const wxString& wildCard = wxFileSelectorDefaultWildcardStr, long style = 0, - const wxPoint& pos = wxDefaultPosition); + const wxPoint& pos = wxDefaultPosition) + :wxGenericFileDialog(parent, message, defaultDir, defaultFile, wildCard, style, pos) + { + } + +private: + DECLARE_DYNAMIC_CLASS(wxFileDialog) }; #endif // USE_GENERIC_FILEDIALOG @@ -145,11 +163,14 @@ public: }; // Full copy constructor - wxFileData( const wxFileData& fileData ); + wxFileData( const wxFileData& fileData ) { Copy(fileData); } // Create a filedata from this information wxFileData( const wxString &filePath, const wxString &fileName, fileType type, int image_id ); + // make a full copy of the other wxFileData + void Copy( const wxFileData &other ); + // (re)read the extra data about the file from the system void ReadData(); @@ -203,6 +224,9 @@ public: // initialize a wxListItem attributes void MakeItem( wxListItem &item ); + + wxFileData& operator = (const wxFileData& fd) { Copy(fd); return *this; } + private: wxString m_fileName; wxString m_filePath; @@ -235,7 +259,7 @@ public: virtual void ChangeToListMode(); virtual void ChangeToReportMode(); virtual void ChangeToSmallIconMode(); - virtual void ShowHidden( bool show = TRUE ); + virtual void ShowHidden( bool show = true ); bool GetShowHidden() const { return m_showHidden; } virtual long Add( wxFileData *fd, wxListItem &item ); @@ -250,6 +274,7 @@ public: wxString GetDir() const { return m_dirName; } void OnListDeleteItem( wxListEvent &event ); + void OnListDeleteAllItems( wxListEvent &event ); void OnListEndLabelEdit( wxListEvent &event ); void OnListColClick( wxListEvent &event ); @@ -258,7 +283,7 @@ public: wxFileData::fileListFieldType GetSortField() const { return m_sort_field; } protected: - void FreeItemData(const wxListItem& item); + void FreeItemData(wxListItem& item); void FreeAllItemsData(); wxString m_dirName;