/********************************************************************** Audacity: A Digital Audio Editor FileDialog.h Leland Lucius *******************************************************************//** \class FileDialog \brief Dialog used to present platform specific "Save As" dialog with custom controls. *//*******************************************************************/ #ifndef _FILEDIALOG_H_ #define _FILEDIALOG_H_ #include #include #include #ifndef AUDACITY_DLL_API #define AUDACITY_DLL_API #endif class AUDACITY_DLL_API FileDialogBase : public wxFileDialogBase { public: FileDialogBase(); virtual ~FileDialogBase() {}; // FileDialogBase typedef void (*UserPaneCreatorFunction)(wxWindow *parent, wxUIntPtr userdata); virtual bool HasUserPaneCreator() const; virtual void SetUserPaneCreator(UserPaneCreatorFunction creator, wxUIntPtr userdata); protected: void CreateUserPane(wxWindow *parent); UserPaneCreatorFunction m_creator; wxUIntPtr m_userdata; }; #if defined(__WXGTK__) #include "gtk/FileDialogPrivate.h" #elif defined(__WXMAC__) #include "mac/FileDialogPrivate.h" #elif defined(__WXMSW__) #include "win/FileDialogPrivate.h" #else #error Unknown implementation #endif // // Copied from wx 3.0.2 and modified to support additional features // ///////////////////////////////////////////////////////////////////////////// // Name: wx/filedlg.h // Purpose: wxFileDialog base header // Author: Robert Roebling // Modified by: Leland Lucius // Created: 8/17/99 // Copyright: (c) Robert Roebling // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// //---------------------------------------------------------------------------- // FileDialog convenience functions //---------------------------------------------------------------------------- wxString FileSelector(const wxString& message = wxFileSelectorPromptStr, const wxString& default_path = wxEmptyString, const wxString& default_filename = wxEmptyString, const wxString& default_extension = wxEmptyString, const wxString& wildcard = wxFileSelectorDefaultWildcardStr, int flags = 0, wxWindow *parent = NULL, int x = wxDefaultCoord, int y = wxDefaultCoord); // An extended version of FileSelector wxString FileSelectorEx(const wxString& message = wxFileSelectorPromptStr, const wxString& default_path = wxEmptyString, const wxString& default_filename = wxEmptyString, int *indexDefaultExtension = NULL, const wxString& wildcard = wxFileSelectorDefaultWildcardStr, int flags = 0, wxWindow *parent = NULL, int x = wxDefaultCoord, int y = wxDefaultCoord); #endif