]> git.saurik.com Git - wxWidgets.git/commitdiff
fixed client area handling for wxFrame/Univ
authorVáclav Slavík <vslavik@fastmail.fm>
Sat, 22 Sep 2001 11:56:23 +0000 (11:56 +0000)
committerVáclav Slavík <vslavik@fastmail.fm>
Sat, 22 Sep 2001 11:56:23 +0000 (11:56 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@11665 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/univ/frame.h
src/univ/framuniv.cpp

index ab20d2f59e893debf17c0b8bcbd975b508de443d..9a64bb8733afa00fad873457ac7708756eb4d5cc 100644 (file)
@@ -49,6 +49,9 @@ public:
 protected:
     void OnSize(wxSizeEvent& 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();
index 5beac716265b1a0bc54226274c75b24314600c5d..c1a2650051a3bdbd730722aba08f58f44475800a 100644 (file)
@@ -103,6 +103,28 @@ wxPoint wxFrame::GetClientAreaOrigin() const
     return pt;
 }
 
+void wxFrame::DoGetClientSize(int *width, int *height) const
+{
+    wxFrameBase::DoGetClientSize(width, height);
+#if wxUSE_MENUS
+    if ( m_frameMenuBar && height )
+    {
+        (*height) -= m_frameMenuBar->GetSize().y;
+    }
+#endif // wxUSE_MENUS
+}
+
+void wxFrame::DoSetClientSize(int width, int height)
+{
+#if wxUSE_MENUS
+    if ( m_frameMenuBar )
+    {
+        height += m_frameMenuBar->GetSize().y;
+    }
+#endif // wxUSE_MENUS
+    wxFrameBase::DoSetClientSize(width, height);
+}
+
 bool wxFrame::Enable(bool enable)
 {
     if (!wxFrameBase::Enable(enable))