1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/gtk/frame.h
4 // Author: Robert Roebling
6 // Copyright: (c) 1998 Robert Roebling, Julian Smart
7 // Licence: wxWindows licence
8 /////////////////////////////////////////////////////////////////////////////
10 #ifndef _WX_GTK_FRAME_H_
11 #define _WX_GTK_FRAME_H_
13 //-----------------------------------------------------------------------------
15 //-----------------------------------------------------------------------------
17 class WXDLLIMPEXP_CORE wxMDIChildFrame
;
18 class WXDLLIMPEXP_CORE wxMDIClientWindow
;
19 class WXDLLIMPEXP_CORE wxMenu
;
20 class WXDLLIMPEXP_CORE wxMenuBar
;
21 class WXDLLIMPEXP_CORE wxToolBar
;
22 class WXDLLIMPEXP_CORE wxStatusBar
;
24 //-----------------------------------------------------------------------------
26 //-----------------------------------------------------------------------------
28 class WXDLLIMPEXP_CORE wxFrame
: public wxFrameBase
33 wxFrame(wxWindow
*parent
,
35 const wxString
& title
,
36 const wxPoint
& pos
= wxDefaultPosition
,
37 const wxSize
& size
= wxDefaultSize
,
38 long style
= wxDEFAULT_FRAME_STYLE
,
39 const wxString
& name
= wxFrameNameStr
)
43 Create(parent
, id
, title
, pos
, size
, style
, name
);
46 bool Create(wxWindow
*parent
,
48 const wxString
& title
,
49 const wxPoint
& pos
= wxDefaultPosition
,
50 const wxSize
& size
= wxDefaultSize
,
51 long style
= wxDEFAULT_FRAME_STYLE
,
52 const wxString
& name
= wxFrameNameStr
);
57 virtual wxStatusBar
* CreateStatusBar(int number
= 1,
58 long style
= wxST_SIZEGRIP
|wxFULL_REPAINT_ON_RESIZE
,
60 const wxString
& name
= wxStatusLineNameStr
);
62 void SetStatusBar(wxStatusBar
*statbar
);
63 #endif // wxUSE_STATUSBAR
66 virtual wxToolBar
* CreateToolBar(long style
= -1,
68 const wxString
& name
= wxToolBarNameStr
);
69 void SetToolBar(wxToolBar
*toolbar
);
70 #endif // wxUSE_TOOLBAR
72 virtual bool ShowFullScreen(bool show
, long style
= wxFULLSCREEN_ALL
);
73 wxPoint
GetClientAreaOrigin() const { return wxPoint(0, 0); }
75 // implementation from now on
76 // --------------------------
79 virtual void GtkOnSize();
80 virtual void OnInternalIdle();
82 bool m_menuBarDetached
;
84 bool m_toolBarDetached
;
87 // common part of all ctors
91 virtual void PositionStatusBar();
92 #endif // wxUSE_STATUSBAR
94 // override wxWindow methods to take into account tool/menu/statusbars
95 virtual void DoGetClientSize( int *width
, int *height
) const;
97 #if wxUSE_MENUS_NATIVE
99 virtual void DetachMenuBar();
100 virtual void AttachMenuBar(wxMenuBar
*menubar
);
103 // Menu size is dynamic now, call this whenever it might change.
104 void UpdateMenuBarSize();
106 #endif // wxUSE_MENUS_NATIVE
111 DECLARE_DYNAMIC_CLASS(wxFrame
)
114 #endif // _WX_GTK_FRAME_H_