move SendSizeEvent() down to wxWindow from wxFrame; added SendSizeEventToParent(...
[wxWidgets.git] / include / wx / univ / frame.h
1 ///////////////////////////////////////////////////////////////////////////////
2 // Name: wx/univ/frame.h
3 // Purpose: wxFrame class for wxUniversal
4 // Author: Vadim Zeitlin
5 // Modified by:
6 // Created: 19.05.01
7 // RCS-ID: $Id$
8 // Copyright: (c) 2001 SciTech Software, Inc. (www.scitechsoft.com)
9 // Licence: wxWindows licence
10 ///////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_UNIV_FRAME_H_
13 #define _WX_UNIV_FRAME_H_
14
15 // ----------------------------------------------------------------------------
16 // wxFrame
17 // ----------------------------------------------------------------------------
18
19 class WXDLLIMPEXP_CORE wxFrame : public wxFrameBase
20 {
21 public:
22 wxFrame() {}
23 wxFrame(wxWindow *parent,
24 wxWindowID id,
25 const wxString& title,
26 const wxPoint& pos = wxDefaultPosition,
27 const wxSize& size = wxDefaultSize,
28 long style = wxDEFAULT_FRAME_STYLE,
29 const wxString& name = wxFrameNameStr)
30 {
31 Create(parent, id, title, pos, size, style, name);
32 }
33
34 bool Create(wxWindow *parent,
35 wxWindowID id,
36 const wxString& title,
37 const wxPoint& pos = wxDefaultPosition,
38 const wxSize& size = wxDefaultSize,
39 long style = wxDEFAULT_FRAME_STYLE,
40 const wxString& name = wxFrameNameStr);
41
42 virtual wxPoint GetClientAreaOrigin() const;
43 virtual bool Enable(bool enable = true);
44
45 #if wxUSE_STATUSBAR
46 virtual wxStatusBar* CreateStatusBar(int number = 1,
47 long style = wxST_SIZEGRIP,
48 wxWindowID id = 0,
49 const wxString& name = wxStatusLineNameStr);
50 #endif // wxUSE_STATUSBAR
51
52 #if wxUSE_TOOLBAR
53 // create main toolbar bycalling OnCreateToolBar()
54 virtual wxToolBar* CreateToolBar(long style = -1,
55 wxWindowID id = wxID_ANY,
56 const wxString& name = wxToolBarNameStr);
57 #endif // wxUSE_TOOLBAR
58
59 virtual wxSize GetMinSize() const;
60
61 protected:
62 void OnSize(wxSizeEvent& event);
63 void OnSysColourChanged(wxSysColourChangedEvent& event);
64
65 virtual void DoGetClientSize(int *width, int *height) const;
66 virtual void DoSetClientSize(int width, int height);
67
68 #if wxUSE_MENUS
69 // override to update menu bar position when the frame size changes
70 virtual void PositionMenuBar();
71 virtual void DetachMenuBar();
72 virtual void AttachMenuBar(wxMenuBar *menubar);
73 #endif // wxUSE_MENUS
74
75 #if wxUSE_STATUSBAR
76 // override to update statusbar position when the frame size changes
77 virtual void PositionStatusBar();
78 #endif // wxUSE_MENUS
79
80 protected:
81 #if wxUSE_TOOLBAR
82 virtual void PositionToolBar();
83 #endif // wxUSE_TOOLBAR
84
85 DECLARE_EVENT_TABLE()
86 DECLARE_DYNAMIC_CLASS(wxFrame)
87 };
88
89 #endif // _WX_UNIV_FRAME_H_