wxWidgets/include/wx/cocoa/NSWindow.h
David Elliott 8ded703ddc Add wxCocoaNSWindow* parameter to GetAppMenuBar so implementations can
return an alternate menubar based on the window which needs it


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@24431 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-11-06 20:37:16 +00:00

43 lines
1.4 KiB
C++

///////////////////////////////////////////////////////////////////////////////
// Name: wx/cocoa/NSWindow.h
// Purpose: wxCocoaNSWindow class
// Author: David Elliott
// Modified by:
// Created: 2003/03/16
// RCS-ID: $Id:
// Copyright: (c) 2003 David Elliott
// Licence: wxWindows license
///////////////////////////////////////////////////////////////////////////////
#ifndef __WX_COCOA_NSWINDOW_H__
#define __WX_COCOA_NSWINDOW_H__
#include "wx/hashmap.h"
#include "wx/cocoa/ObjcAssociate.h"
WX_DECLARE_OBJC_HASHMAP(NSWindow);
class WXDLLEXPORT wxMenuBar;
class wxCocoaNSWindow
{
/* NSWindow is a rather special case and requires some extra attention */
WX_DECLARE_OBJC_INTERFACE_HASHMAP(NSWindow)
public:
void AssociateNSWindow(WX_NSWindow cocoaNSWindow);
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) { }
virtual wxMenuBar* GetAppMenuBar(wxCocoaNSWindow *win);
protected:
static struct objc_object *sm_cocoaDelegate;
};
#endif // _WX_COCOA_NSWINDOW_H_