]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/cocoa/NSWindow.h
Open Watcom doesn't like typename, use class (patch 826812)
[wxWidgets.git] / include / wx / cocoa / NSWindow.h
index c8ca32b1ae690915abe9d7acfaa7d944dc151aa9..b0c87c8f2b6343c9926c9b4166a4e5a2fc9b9f77 100644 (file)
@@ -13,7 +13,7 @@
 #define __WX_COCOA_NSWINDOW_H__
 
 #include "wx/hashmap.h"
-#include "wx/cocoa/ObjcPose.h"
+#include "wx/cocoa/ObjcAssociate.h"
 
 WX_DECLARE_OBJC_HASHMAP(NSWindow);
 
@@ -23,13 +23,17 @@ class wxCocoaNSWindow
     WX_DECLARE_OBJC_INTERFACE_HASHMAP(NSWindow)
 public:
     void AssociateNSWindow(WX_NSWindow cocoaNSWindow);
-    inline void DisassociateNSWindow(WX_NSWindow cocoaNSWindow)
-    {
-        sm_cocoaHash.erase(cocoaNSWindow);
-    }
-    virtual void Cocoa_close(void) = 0;
-    virtual bool Cocoa_windowShouldClose(void) = 0;
-    virtual void Cocoa_wxMenuItemAction(wxMenuItem& item) = 0;
+    void DisassociateNSWindow(WX_NSWindow cocoaNSWindow);
+    virtual bool Cocoa_canBecomeMainWindow(bool &canBecome)
+    {   return false; }
+    virtual bool CocoaDelegate_windowShouldClose(void) = 0;
+    virtual void CocoaDelegate_windowWillClose(void) = 0;
+    virtual void CocoaDelegate_windowDidBecomeKey(void) { }
+    virtual void CocoaDelegate_windowDidResignKey(void) { }
+    virtual void CocoaDelegate_windowDidBecomeMain(void) { }
+    virtual void CocoaDelegate_windowDidResignMain(void) { }
+protected:
+    static struct objc_object *sm_cocoaDelegate;
 };
 
 #endif // _WX_COCOA_NSWINDOW_H_