X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f8bcb37d996a475f39de36230770a808827e2a0f..f2b7492a88eef36f26668cefff8d3f8b91e5f50e:/src/common/fldlgcmn.cpp diff --git a/src/common/fldlgcmn.cpp b/src/common/fldlgcmn.cpp index d6528d8a99..7c6e7fda2c 100644 --- a/src/common/fldlgcmn.cpp +++ b/src/common/fldlgcmn.cpp @@ -35,8 +35,10 @@ IMPLEMENT_DYNAMIC_CLASS(wxFileDialogBase, wxDialog) void wxFileDialogBase::Init() { - m_filterIndex = + m_filterIndex = 0; m_windowStyle = 0; + m_extraControl = NULL; + m_extraControlCreator = NULL; } bool wxFileDialogBase::Create(wxWindow *parent, @@ -149,18 +151,35 @@ wxString wxFileDialogBase::AppendExtension(const wxString &filePath, return filePath + ext; } +bool wxFileDialogBase::SetExtraControlCreator(ExtraControlCreatorFunction c) +{ + wxCHECK_MSG( !m_extraControlCreator, false, + "wxFileDialog::SetExtraControl() called second time" ); + + m_extraControlCreator = c; + return SupportsExtraControl(); +} + +bool wxFileDialogBase::CreateExtraControl() +{ + if (!m_extraControlCreator || m_extraControl) + return false; + m_extraControl = (*m_extraControlCreator)(this); + return true; +} + //---------------------------------------------------------------------------- // wxFileDialog convenience functions //---------------------------------------------------------------------------- -wxString wxDoFileSelector(const wxString& title, - const wxString& defaultDir, - const wxString& defaultFileName, - const wxString& defaultExtension, - const wxString& filter, - int flags, - wxWindow *parent, - int x, int y) +wxString wxFileSelector(const wxString& title, + const wxString& defaultDir, + const wxString& defaultFileName, + const wxString& defaultExtension, + const wxString& filter, + int flags, + wxWindow *parent, + int x, int y) { // The defaultExtension, if non-empty, is // appended to the filename if the user fails to type an extension. The new @@ -217,15 +236,15 @@ wxString wxDoFileSelector(const wxString& title, // wxFileSelectorEx //---------------------------------------------------------------------------- -wxString wxDoFileSelectorEx(const wxString& title, - const wxString& defaultDir, - const wxString& defaultFileName, - int* defaultFilterIndex, - const wxString& filter, - int flags, - wxWindow* parent, - int x, - int y) +wxString wxFileSelectorEx(const wxString& title, + const wxString& defaultDir, + const wxString& defaultFileName, + int* defaultFilterIndex, + const wxString& filter, + int flags, + wxWindow* parent, + int x, + int y) { wxFileDialog fileDialog(parent, @@ -289,10 +308,10 @@ static wxString wxDefaultFileSelector(bool load, // wxLoadFileSelector //---------------------------------------------------------------------------- -WXDLLEXPORT wxString wxDoLoadFileSelector(const wxString& what, - const wxString& extension, - const wxString& default_name, - wxWindow *parent) +WXDLLEXPORT wxString wxLoadFileSelector(const wxString& what, + const wxString& extension, + const wxString& default_name, + wxWindow *parent) { return wxDefaultFileSelector(true, what, extension, default_name, parent); } @@ -301,10 +320,10 @@ WXDLLEXPORT wxString wxDoLoadFileSelector(const wxString& what, // wxSaveFileSelector //---------------------------------------------------------------------------- -WXDLLEXPORT wxString wxDoSaveFileSelector(const wxString& what, - const wxString& extension, - const wxString& default_name, - wxWindow *parent) +WXDLLEXPORT wxString wxSaveFileSelector(const wxString& what, + const wxString& extension, + const wxString& default_name, + wxWindow *parent) { return wxDefaultFileSelector(false, what, extension, default_name, parent); }