X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a905992cf7eb7a5734133fc95944b98dde9c00d5..5ecd98f17596ce1593741fb379e1ef813de41fcc:/include/wx/osx/dirdlg.h diff --git a/include/wx/osx/dirdlg.h b/include/wx/osx/dirdlg.h index 4ffad16d34..f355f604e8 100644 --- a/include/wx/osx/dirdlg.h +++ b/include/wx/osx/dirdlg.h @@ -1,10 +1,9 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: dirdlg.h +// Name: wx/osx/dirdlg.h // Purpose: wxDirDialog class // Author: Stefan Csomor // Modified by: // Created: 1998-01-01 -// RCS-ID: $Id$ // Copyright: (c) Stefan Csomor // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -12,23 +11,60 @@ #ifndef _WX_DIRDLG_H_ #define _WX_DIRDLG_H_ +#if wxOSX_USE_COCOA + DECLARE_WXCOCOA_OBJC_CLASS(NSOpenPanel); +#endif + class WXDLLIMPEXP_CORE wxDirDialog : public wxDirDialogBase { public: + wxDirDialog() { Init(); } + wxDirDialog(wxWindow *parent, const wxString& message = wxDirSelectorPromptStr, - const wxString& defaultPath = _T(""), + 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, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, const wxString& name = wxDirDialogNameStr); +#if wxOSX_USE_COCOA + ~wxDirDialog(); +#endif + virtual int ShowModal(); -protected: +#if wxOSX_USE_COCOA + virtual void ShowWindowModal(); + virtual void ModalFinishedCallback(void* panel, int returnCode); +#endif + +private: +#if wxOSX_USE_COCOA + // Create and initialize NSOpenPanel that we use in both ShowModal() and + // ShowWindowModal(). + WX_NSOpenPanel OSXCreatePanel() const; + + WX_NSObject m_sheetDelegate; +#endif + + // Common part of all ctors. + void Init(); DECLARE_DYNAMIC_CLASS(wxDirDialog) }; -#endif - // _WX_DIRDLG_H_ +#endif // _WX_DIRDLG_H_