Add default ctors and Create() to wxDirDialog and wxFileDialog in wxOSX.
Allow two-step creation of these classes. Closes #15316. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74476 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
497b4e64ce
commit
aad2997b67
@ -19,7 +19,22 @@
|
||||
class WXDLLIMPEXP_CORE wxDirDialog : public wxDirDialogBase
|
||||
{
|
||||
public:
|
||||
wxDirDialog() { Init(); }
|
||||
|
||||
wxDirDialog(wxWindow *parent,
|
||||
const wxString& message = wxDirSelectorPromptStr,
|
||||
const wxString& defaultPath = wxT(""),
|
||||
long style = wxDD_DEFAULT_STYLE,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
const wxString& name = wxDirDialogNameStr)
|
||||
{
|
||||
Init();
|
||||
|
||||
Create(parent,message,defaultPath,style,pos,size,name);
|
||||
}
|
||||
|
||||
void Create(wxWindow *parent,
|
||||
const wxString& message = wxDirSelectorPromptStr,
|
||||
const wxString& defaultPath = wxT(""),
|
||||
long style = wxDD_DEFAULT_STYLE,
|
||||
@ -47,6 +62,9 @@ private:
|
||||
WX_NSObject m_sheetDelegate;
|
||||
#endif
|
||||
|
||||
// Common part of all ctors.
|
||||
void Init();
|
||||
|
||||
DECLARE_DYNAMIC_CLASS(wxDirDialog)
|
||||
};
|
||||
|
||||
|
@ -31,7 +31,23 @@ protected:
|
||||
wxArrayString m_paths;
|
||||
|
||||
public:
|
||||
wxFileDialog() { Init(); }
|
||||
wxFileDialog(wxWindow *parent,
|
||||
const wxString& message = wxFileSelectorPromptStr,
|
||||
const wxString& defaultDir = wxEmptyString,
|
||||
const wxString& defaultFile = wxEmptyString,
|
||||
const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
|
||||
long style = wxFD_DEFAULT_STYLE,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& sz = wxDefaultSize,
|
||||
const wxString& name = wxFileDialogNameStr)
|
||||
{
|
||||
Init();
|
||||
|
||||
Create(parent,message,defaultDir,defaultFile,wildCard,style,pos,sz,name);
|
||||
}
|
||||
|
||||
void Create(wxWindow *parent,
|
||||
const wxString& message = wxFileSelectorPromptStr,
|
||||
const wxString& defaultDir = wxEmptyString,
|
||||
const wxString& defaultFile = wxEmptyString,
|
||||
@ -87,6 +103,10 @@ protected:
|
||||
WX_NSObject m_delegate;
|
||||
WX_NSObject m_sheetDelegate;
|
||||
#endif
|
||||
|
||||
private:
|
||||
// Common part of all ctors.
|
||||
void Init();
|
||||
};
|
||||
|
||||
#endif // _WX_FILEDLG_H_
|
||||
|
@ -55,7 +55,11 @@ static pascal void NavEventProc(
|
||||
}
|
||||
}
|
||||
|
||||
wxDirDialog::wxDirDialog(wxWindow *parent,
|
||||
void wxDirDialog::Init()
|
||||
{
|
||||
}
|
||||
|
||||
void wxDirDialog::Create(wxWindow *parent,
|
||||
const wxString& message,
|
||||
const wxString& defaultPath,
|
||||
long style,
|
||||
|
@ -456,12 +456,17 @@ static pascal void NavEventProc(
|
||||
}
|
||||
|
||||
|
||||
wxFileDialog::wxFileDialog(
|
||||
void wxFileDialog::Init()
|
||||
{
|
||||
}
|
||||
|
||||
void wxFileDialog::Create(
|
||||
wxWindow *parent, const wxString& message,
|
||||
const wxString& defaultDir, const wxString& defaultFileName, const wxString& wildCard,
|
||||
long style, const wxPoint& pos, const wxSize& sz, const wxString& name)
|
||||
: wxFileDialogBase(parent, message, defaultDir, defaultFileName, wildCard, style, pos, sz, name)
|
||||
{
|
||||
wxFileDialogBase::Create(parent, message, defaultDir, defaultFileName, wildCard, style, pos, sz, name);
|
||||
|
||||
wxASSERT_MSG( NavServicesAvailable() , wxT("Navigation Services are not running") ) ;
|
||||
}
|
||||
|
||||
|
@ -38,7 +38,12 @@
|
||||
|
||||
IMPLEMENT_CLASS(wxDirDialog, wxDialog)
|
||||
|
||||
wxDirDialog::wxDirDialog(wxWindow *parent, const wxString& message,
|
||||
void wxDirDialog::Init()
|
||||
{
|
||||
m_sheetDelegate = nil;
|
||||
}
|
||||
|
||||
void wxDirDialog::Create(wxWindow *parent, const wxString& message,
|
||||
const wxString& defaultPath, long style, const wxPoint& WXUNUSED(pos),
|
||||
const wxSize& WXUNUSED(size), const wxString& WXUNUSED(name))
|
||||
{
|
||||
|
@ -187,16 +187,22 @@ bool HasAppKit_10_6()
|
||||
|
||||
IMPLEMENT_CLASS(wxFileDialog, wxFileDialogBase)
|
||||
|
||||
wxFileDialog::wxFileDialog(
|
||||
void wxFileDialog::Init()
|
||||
{
|
||||
m_filterIndex = -1;
|
||||
m_delegate = nil;
|
||||
m_sheetDelegate = nil;
|
||||
}
|
||||
|
||||
void wxFileDialog::Create(
|
||||
wxWindow *parent, const wxString& message,
|
||||
const wxString& defaultDir, const wxString& defaultFileName, const wxString& wildCard,
|
||||
long style, const wxPoint& pos, const wxSize& sz, const wxString& name)
|
||||
: wxFileDialogBase(parent, message, defaultDir, defaultFileName, wildCard, style, pos, sz, name)
|
||||
{
|
||||
m_filterIndex = -1;
|
||||
wxFileDialogBase::Create(parent, message, defaultDir, defaultFileName, wildCard, style, pos, sz, name);
|
||||
|
||||
m_sheetDelegate = [[ModalDialogDelegate alloc] init];
|
||||
[(ModalDialogDelegate*)m_sheetDelegate setImplementation: this];
|
||||
m_delegate = nil;
|
||||
}
|
||||
|
||||
wxFileDialog::~wxFileDialog()
|
||||
|
Loading…
Reference in New Issue
Block a user