X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/605c7e7ed81c740e80de66c751f50fc54bd77e4d..e4431849b4f2097edf0e01c5d50bf0ed947befa9:/include/wx/cocoa/NSMenu.h

diff --git a/include/wx/cocoa/NSMenu.h b/include/wx/cocoa/NSMenu.h
index 354d4738d4..6438f1e02d 100644
--- a/include/wx/cocoa/NSMenu.h
+++ b/include/wx/cocoa/NSMenu.h
@@ -23,7 +23,27 @@ WX_DECLARE_OBJC_HASHMAP(NSMenu);
 
 class wxCocoaNSMenu
 {
-    WX_DECLARE_OBJC_INTERFACE(NSMenu)
+    WX_DECLARE_OBJC_INTERFACE_HASHMAP(NSMenu)
+public:
+    void AssociateNSMenu(WX_NSMenu cocoaNSMenu, unsigned int flags = 0);
+    void DisassociateNSMenu(WX_NSMenu cocoaNSMenu);
+    enum
+    {   OBSERVE_DidAddItem          = 0x01
+    ,   OBSERVE_DidChangeItem       = 0x02
+    ,   OBSERVE_DidRemoveItem       = 0x04
+    ,   OBSERVE_DidSendAction       = 0x08
+    ,   OBSERVE_WillSendAction      = 0x10
+    };
+    virtual void Cocoa_dealloc() {}
+    virtual void CocoaNotification_menuDidAddItem(WX_NSNotification WXUNUSED(notification)) {}
+    virtual void CocoaNotification_menuDidChangeItem(WX_NSNotification WXUNUSED(notification)) {}
+    virtual void CocoaNotification_menuDidRemoveItem(WX_NSNotification WXUNUSED(notification)) {}
+    virtual void CocoaNotification_menuDidSendAction(WX_NSNotification WXUNUSED(notification)) {}
+    virtual void CocoaNotification_menuWillSendAction(WX_NSNotification WXUNUSED(notification)) {}
+    virtual ~wxCocoaNSMenu() { }
+
+protected:
+    static struct objc_object *sm_cocoaObserver;
 };
 
 #endif // _WX_COCOA_NSMENU_H_