X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/49e5528addbb69cf3eb79163fca53c2a6d9799c3..d642db66a5efc82d374b813022c72ba88bc50839:/include/wx/cocoa/dialog.h diff --git a/include/wx/cocoa/dialog.h b/include/wx/cocoa/dialog.h index 38038b341c..9bf499f766 100644 --- a/include/wx/cocoa/dialog.h +++ b/include/wx/cocoa/dialog.h @@ -4,9 +4,9 @@ // Author: David Elliott // Modified by: // Created: 2002/12/15 -// RCS-ID: $Id: +// RCS-ID: $Id$ // Copyright: David Elliott -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_COCOA_DIALOG_H_ @@ -17,15 +17,12 @@ #include "wx/panel.h" #include "wx/cocoa/NSPanel.h" -WXDLLEXPORT_DATA(extern const wxChar*) wxDialogNameStr; - // ======================================================================== // wxDialog // ======================================================================== -class WXDLLEXPORT wxDialog : public wxDialogBase, protected wxCocoaNSPanel +class WXDLLIMPEXP_CORE wxDialog : public wxDialogBase, protected wxCocoaNSPanel { DECLARE_DYNAMIC_CLASS(wxDialog) - DECLARE_EVENT_TABLE() WX_DECLARE_COCOA_OWNER(NSPanel,NSWindow,NSWindow) // ------------------------------------------------------------------------ // initialization @@ -33,18 +30,19 @@ class WXDLLEXPORT wxDialog : public wxDialogBase, protected wxCocoaNSPanel public: wxDialog() { Init(); } +#if WXWIN_COMPATIBILITY_2_6 // Constructor with a modal flag, but no window id - the old convention wxDialog(wxWindow *parent, - const wxString& title, bool modal, - int x = -1, int y= -1, int width = 500, int height = 500, + const wxString& title, bool WXUNUSED(modal), + int x = wxDefaultCoord, int y= wxDefaultCoord, int width = 500, int height = 500, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxDialogNameStr) { Init(); - long modalStyle = modal ? wxDIALOG_MODAL : wxDIALOG_MODELESS ; - Create(parent, -1, title, wxPoint(x, y), wxSize(width, height), - style | modalStyle, name); + Create(parent, wxID_ANY, title, wxPoint(x, y), wxSize(width, height), + style, name); } +#endif // WXWIN_COMPATIBILITY_2_6 // Constructor with no modal flag - the new convention. wxDialog(wxWindow *parent, wxWindowID winid, @@ -65,7 +63,7 @@ public: long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxDialogNameStr); - ~wxDialog(); + virtual ~wxDialog(); protected: void Init(); @@ -73,32 +71,25 @@ protected: // Cocoa specifics // ------------------------------------------------------------------------ protected: - virtual void Cocoa_close(void); + virtual void CocoaDelegate_windowWillClose(void); + virtual bool Cocoa_canBecomeMainWindow(bool &canBecome) + { canBecome = true; return true; } // ------------------------------------------------------------------------ // Implementation // ------------------------------------------------------------------------ public: - bool Show(bool show = true); + virtual bool Show(bool show = true); void SetModal(bool flag); - virtual bool IsModal() const; + virtual bool IsModal() const { return m_isModal; } + bool m_isModal; - // For now, same as Show(TRUE) but returns return code + // For now, same as Show(true) but returns return code virtual int ShowModal(); // may be called to terminate the dialog with the given return code virtual void EndModal(int retCode); - -// ------------------------------------------------------------------------ -// Event handlers -// ------------------------------------------------------------------------ -protected: - void OnCloseWindow(wxCloseEvent& event); - // Standard buttons - void OnOK(wxCommandEvent& event); - void OnApply(wxCommandEvent& event); - void OnCancel(wxCommandEvent& event); }; #endif // _WX_COCOA_DIALOG_H_