]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/cocoa/NSWindow.h
Digital Mars doesn't like the identifiers being declared later
[wxWidgets.git] / include / wx / cocoa / NSWindow.h
index 808656f44267aea418fe4475c01ce5f5e7b677aa..4b16e5f7f061b0099f93498f480b9392f10d63cb 100644 (file)
@@ -4,9 +4,9 @@
 // Author:      David Elliott
 // Modified by:
 // Created:     2003/03/16
-// RCS-ID:      $Id:
+// RCS-ID:      $Id$
 // Copyright:   (c) 2003 David Elliott
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 
 #ifndef __WX_COCOA_NSWINDOW_H__
@@ -18,7 +18,9 @@
 WX_DECLARE_OBJC_HASHMAP(NSWindow);
 
 class WXDLLEXPORT wxMenuBar;
+class WXDLLEXPORT wxTopLevelWindowCocoa;
 
+DECLARE_WXCOCOA_OBJC_CLASS(NSMenuItem);
 DECLARE_WXCOCOA_OBJC_CLASS(wxNSWindowDelegate);
 
 class wxCocoaNSWindow
@@ -28,6 +30,8 @@ class wxCocoaNSWindow
 public:
     void AssociateNSWindow(WX_NSWindow cocoaNSWindow);
     void DisassociateNSWindow(WX_NSWindow cocoaNSWindow);
+    virtual bool Cocoa_canBecomeKeyWindow(bool &canBecome)
+    {   return false; }
     virtual bool Cocoa_canBecomeMainWindow(bool &canBecome)
     {   return false; }
     virtual bool CocoaDelegate_windowShouldClose(void) = 0;
@@ -36,11 +40,16 @@ public:
     virtual void CocoaDelegate_windowDidResignKey(void) { }
     virtual void CocoaDelegate_windowDidBecomeMain(void) { }
     virtual void CocoaDelegate_windowDidResignMain(void) { }
+    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:
-    wxCocoaNSWindow();
+    wxCocoaNSWindow(wxTopLevelWindowCocoa *tlw = NULL);
     virtual ~wxCocoaNSWindow();
     WX_wxNSWindowDelegate m_cocoaDelegate;
+    wxTopLevelWindowCocoa *m_wxTopLevelWindowCocoa;
 };
 
 #endif // _WX_COCOA_NSWINDOW_H_