]>
git.saurik.com Git - wxWidgets.git/blob - include/wx/cocoa/frame.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/cocoa/frame.h
3 // Purpose: wxFrame class
4 // Author: David Elliott
8 // Copyright: (c) 2003 David Elliott
9 // Licence: wxWindows license
10 /////////////////////////////////////////////////////////////////////////////
12 #ifndef _WX_COCOA_FRAME_H_
13 #define _WX_COCOA_FRAME_H_
15 class WXDLLEXPORT wxMenuBar
;
16 class WXDLLEXPORT wxStatusBar
;
18 class WXDLLEXPORT wxFrame
: public wxFrameBase
21 DECLARE_DYNAMIC_CLASS(wxFrame
)
22 // ------------------------------------------------------------------------
24 // ------------------------------------------------------------------------
27 wxFrame(wxWindow
*parent
,
29 const wxString
& title
,
30 const wxPoint
& pos
= wxDefaultPosition
,
31 const wxSize
& size
= wxDefaultSize
,
32 long style
= wxDEFAULT_FRAME_STYLE
,
33 const wxString
& name
= wxFrameNameStr
)
36 Create(parent
, winid
, title
, pos
, size
, style
, name
);
41 bool Create(wxWindow
*parent
,
43 const wxString
& title
,
44 const wxPoint
& pos
= wxDefaultPosition
,
45 const wxSize
& size
= wxDefaultSize
,
46 long style
= wxDEFAULT_FRAME_STYLE
,
47 const wxString
& name
= wxFrameNameStr
);
50 // ------------------------------------------------------------------------
52 // ------------------------------------------------------------------------
54 virtual wxMenuBar
* GetAppMenuBar(wxCocoaNSWindow
*win
);
55 // Returns the NSView for non-client drawing
56 virtual WX_NSView
GetNonClientNSView();
58 // Helper function to position status/tool bars
59 // Also called by native toolbar to force a size update
60 void UpdateFrameNSView();
62 virtual void CocoaSetWxWindowSize(int width
, int height
);
64 virtual void CocoaReplaceView(WX_NSView oldView
, WX_NSView newView
);
65 // frameNSView is used whenever a statusbar/generic toolbar are present
66 WX_NSView m_frameNSView
;
67 // ------------------------------------------------------------------------
69 // ------------------------------------------------------------------------
71 virtual void AttachMenuBar(wxMenuBar
*mbar
);
72 virtual void DetachMenuBar();
73 virtual void SetMenuBar(wxMenuBar
*menubar
);
75 // implementation only from now on
76 // -------------------------------
78 // override some more virtuals
80 // get the origin of the client area (which may be different from (0, 0)
81 // if the frame has a toolbar) in client coordinates
82 virtual wxPoint
GetClientAreaOrigin() const;
84 // create the main status bar by calling OnCreateStatusBar()
85 virtual wxStatusBar
* CreateStatusBar(int number
= 1,
86 long style
= wxST_SIZEGRIP
,
88 const wxString
& name
=
90 // sets the main status bar
91 void SetStatusBar(wxStatusBar
*statBar
);
93 // create main toolbar bycalling OnCreateToolBar()
94 virtual wxToolBar
* CreateToolBar(long style
= -1,
95 wxWindowID winid
= -1,
96 const wxString
& name
= wxToolBarNameStr
);
97 // sets the main tool bar
98 virtual void SetToolBar(wxToolBar
*toolbar
);
99 #endif //wxUSE_TOOLBAR
101 void PositionStatusBar();
104 #endif // _WX_COCOA_FRAME_H_