]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/cocoa/frame.h
Add support for custom attributes to wxOSX/Cocoa wxDataViewCustomRenderer.
[wxWidgets.git] / include / wx / cocoa / frame.h
index 1e82ab5fbc6ab14b961bc97f24817ce305f5ac63..417f57080de0f1640efbf4fc7489170beefbda5b 100644 (file)
@@ -4,19 +4,18 @@
 // 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_FRAME_H_
 #define _WX_COCOA_FRAME_H_
 
-class WXDLLEXPORT wxMenuBar;
-class WXDLLEXPORT wxMenuItem;
-class WXDLLEXPORT wxStatusBar;
+class WXDLLIMPEXP_FWD_CORE wxMenuBar;
+class WXDLLIMPEXP_FWD_CORE wxStatusBar;
 
-class WXDLLEXPORT wxFrame: public wxFrameBase 
+class WXDLLIMPEXP_CORE wxFrame: public wxFrameBase
 {
     DECLARE_EVENT_TABLE()
     DECLARE_DYNAMIC_CLASS(wxFrame)
@@ -51,13 +50,20 @@ protected:
 // ------------------------------------------------------------------------
 // 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;
@@ -65,14 +71,14 @@ protected:
 // 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
@@ -80,18 +86,20 @@ public:
 
     // create the main status bar by calling OnCreateStatusBar()
     virtual wxStatusBar* CreateStatusBar(int number = 1,
-                                         long style = wxST_SIZEGRIP,
+                                         long style = wxSTB_DEFAULT_STYLE,
                                          wxWindowID winid = 0,
                                          const wxString& name =
                                             wxStatusLineNameStr);
     // sets the main status bar
     void SetStatusBar(wxStatusBar *statBar);
+#if wxUSE_TOOLBAR
     // create main toolbar bycalling OnCreateToolBar()
     virtual wxToolBar* CreateToolBar(long style = -1,
-                                     wxWindowID winid = -1,
+                                     wxWindowID winid = wxID_ANY,
                                      const wxString& name = wxToolBarNameStr);
     // sets the main tool bar
     virtual void SetToolBar(wxToolBar *toolbar);
+#endif //wxUSE_TOOLBAR
 protected:
     void PositionStatusBar();
 };