// Created: 2003/03/16
// RCS-ID: $Id:
// Copyright: (c) 2003 David Elliott
-// Licence: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_COCOA_FRAME_H_
#define _WX_COCOA_FRAME_H_
class WXDLLEXPORT wxMenuBar;
-class WXDLLEXPORT wxMenuItem;
class WXDLLEXPORT wxStatusBar;
class WXDLLEXPORT wxFrame: public wxFrameBase
// ------------------------------------------------------------------------
// Cocoa specifics
// ------------------------------------------------------------------------
-protected:
- virtual void Cocoa_wxMenuItemAction(wxMenuItem& item);
- virtual void CocoaSetWxWindowSize(int width, int height);
+public:
+ virtual wxMenuBar* GetAppMenuBar(wxCocoaNSWindow *win);
+ // Returns the NSView for non-client drawing
+ virtual WX_NSView GetNonClientNSView();
// Helper function to position status/tool bars
+ // Also called by native toolbar to force a size update
void UpdateFrameNSView();
+ virtual void CocoaDelegate_wxMenuItemAction(WX_NSMenuItem menuItem);
+ virtual bool CocoaDelegate_validateMenuItem(WX_NSMenuItem menuItem);
+protected:
+ virtual void CocoaSetWxWindowSize(int width, int height);
+
virtual void CocoaReplaceView(WX_NSView oldView, WX_NSView newView);
// frameNSView is used whenever a statusbar/generic toolbar are present
WX_NSView m_frameNSView;
// Implementation
// ------------------------------------------------------------------------
public:
- void AttachMenuBar(wxMenuBar *mbar);
- void DetachMenuBar();
+ virtual void AttachMenuBar(wxMenuBar *mbar);
+ virtual void DetachMenuBar();
+ virtual void SetMenuBar(wxMenuBar *menubar);
// implementation only from now on
// -------------------------------
// override some more virtuals
- virtual bool Show( bool show = true );
// get the origin of the client area (which may be different from (0, 0)
// if the frame has a toolbar) in client coordinates