X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/360be3c012c0641999ed55247a3b62ab830008c4..c26dba42b75b2c19df5834417ffbe330bc375b20:/include/wx/cocoa/NSWindow.h diff --git a/include/wx/cocoa/NSWindow.h b/include/wx/cocoa/NSWindow.h index b7b51e8d0f..65f702041b 100644 --- a/include/wx/cocoa/NSWindow.h +++ b/include/wx/cocoa/NSWindow.h @@ -18,6 +18,10 @@ WX_DECLARE_OBJC_HASHMAP(NSWindow); class WXDLLEXPORT wxMenuBar; +class WXDLLEXPORT wxTopLevelWindowCocoa; + +DECLARE_WXCOCOA_OBJC_CLASS(NSMenuItem); +DECLARE_WXCOCOA_OBJC_CLASS(wxNSWindowDelegate); class wxCocoaNSWindow { @@ -34,9 +38,16 @@ public: virtual void CocoaDelegate_windowDidResignKey(void) { } virtual void CocoaDelegate_windowDidBecomeMain(void) { } virtual void CocoaDelegate_windowDidResignMain(void) { } - virtual wxMenuBar* GetAppMenuBar(); + virtual void CocoaDelegate_wxMenuItemAction(WX_NSMenuItem menuItem) = 0; + virtual bool CocoaDelegate_validateMenuItem(WX_NSMenuItem menuItem) = 0; + virtual wxMenuBar* GetAppMenuBar(wxCocoaNSWindow *win); + inline wxTopLevelWindowCocoa* GetWxTopLevelWindowCocoa() + { return m_wxTopLevelWindowCocoa; } protected: - static struct objc_object *sm_cocoaDelegate; + wxCocoaNSWindow(wxTopLevelWindowCocoa *tlw = NULL); + virtual ~wxCocoaNSWindow(); + WX_wxNSWindowDelegate m_cocoaDelegate; + wxTopLevelWindowCocoa *m_wxTopLevelWindowCocoa; }; #endif // _WX_COCOA_NSWINDOW_H_