// wxTopLevelWindow geometry
// ----------------------------------------------------------------------------
+void wxTopLevelWindowBase::SetMinSize(const wxSize& minSize)
+{
+ SetSizeHints( minSize.x, minSize.y, GetMaxWidth(), GetMaxHeight() );
+}
+
+void wxTopLevelWindowBase::SetMaxSize(const wxSize& maxSize)
+{
+ SetSizeHints( GetMinWidth(), GetMinHeight(), maxSize.x, maxSize.y );
+}
+
// set the min/max size of the window
void wxTopLevelWindowBase::DoSetSizeHints(int minW, int minH,
int maxW, int maxH,
GetSize(w,h);
}
-wxSize wxTopLevelWindowBase::GetMaxSize() const
-{
- wxSize size = wxWindow::GetMaxSize();
-
- int w, h;
- wxClientDisplayRect(NULL, NULL, &w, &h );
-
- if ( size.GetWidth() == wxDefaultCoord )
- size.SetWidth(w);
-
- if ( size.GetHeight() == wxDefaultCoord )
- size.SetHeight(h);
-
- return size;
-}
-
/* static */
wxSize wxTopLevelWindowBase::GetDefaultSize()
{
int clientW, clientH;
DoGetClientSize(&clientW, &clientH);
- // for whatever reasons, wxGTK wants to have a small offset - it
- // probably looks better with it?
-#ifdef __WXGTK__
- const int ofs = 1;
- clientW -= 2 * ofs;
- clientH -= 2 * ofs;
- if (clientW < 0)
- clientW = 0;
- if (clientH < 0)
- clientH = 0;
-#else
- const int ofs = 0;
-#endif
-
- child->SetSize(ofs, ofs, clientW, clientH);
+ child->SetSize(0, 0, clientW, clientH);
}
}
}