X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/71908213057690d5452f72b2b9c8e62b53357170..c7d6c56303bf5673372f091400aeaa79efb03d7c:/include/wx/univ/frame.h diff --git a/include/wx/univ/frame.h b/include/wx/univ/frame.h index d47e67e3ba..d53d940e1b 100644 --- a/include/wx/univ/frame.h +++ b/include/wx/univ/frame.h @@ -12,44 +12,79 @@ #ifndef _WX_UNIV_FRAME_H_ #define _WX_UNIV_FRAME_H_ -#ifdef __GNUG__ - #pragma interface "frame.h" -#endif - // ---------------------------------------------------------------------------- // wxFrame // ---------------------------------------------------------------------------- -#if defined(__WXMSW__) -#define wxFrameNative wxFrameMSW -#elif defined(__WXGTK__) -#define wxFrameNative wxFrameGTK -#elif defined(__WXMGL__) -#define wxFrameNative wxFrameMGL -#endif - -class wxFrame : public wxFrameNative +class WXDLLEXPORT wxFrame : public wxFrameBase { public: - wxFrame(); + wxFrame() {} wxFrame(wxWindow *parent, wxWindowID id, const wxString& title, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, - const wxString& name = wxFrameNameStr); + const wxString& name = wxFrameNameStr) + { + Create(parent, id, title, pos, size, style, name); + } + + bool Create(wxWindow *parent, + wxWindowID id, + const wxString& title, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxDEFAULT_FRAME_STYLE, + const wxString& name = wxFrameNameStr); virtual wxPoint GetClientAreaOrigin() const; + virtual bool Enable(bool enable = true); + +#if wxUSE_STATUSBAR + virtual wxStatusBar* CreateStatusBar(int number = 1, + long style = wxST_SIZEGRIP, + wxWindowID id = 0, + const wxString& name = wxStatusLineNameStr); +#endif // wxUSE_STATUSBAR + +#if wxUSE_TOOLBAR + // create main toolbar bycalling OnCreateToolBar() + virtual wxToolBar* CreateToolBar(long style = -1, + wxWindowID id = wxID_ANY, + const wxString& name = wxToolBarNameStr); +#endif // wxUSE_TOOLBAR + + virtual wxSize GetMinSize() const; + + // sends wxSizeEvent to itself (used after attaching xxxBar) + virtual void SendSizeEvent(); protected: void OnSize(wxSizeEvent& event); + void OnSysColourChanged(wxSysColourChangedEvent& event); + + virtual void DoGetClientSize(int *width, int *height) const; + virtual void DoSetClientSize(int width, int height); #if wxUSE_MENUS // override to update menu bar position when the frame size changes virtual void PositionMenuBar(); + virtual void DetachMenuBar(); + virtual void AttachMenuBar(wxMenuBar *menubar); +#endif // wxUSE_MENUS + +#if wxUSE_STATUSBAR + // override to update statusbar position when the frame size changes + virtual void PositionStatusBar(); #endif // wxUSE_MENUS +protected: +#if wxUSE_TOOLBAR + virtual void PositionToolBar(); +#endif // wxUSE_TOOLBAR + DECLARE_EVENT_TABLE() DECLARE_DYNAMIC_CLASS(wxFrame) };