tools or special-needs access programs) which need to identify windows
by name.
+
+\membersection{wxWindow::GetMaxClientSize}\label{wxwindowgetmaxclientsize}
+
+\constfunc{wxSize}{GetMaxClientSize}{\void}
+
+Returns the maximum size of window's client area.
+This is an indication to the sizer layout mechanism that this is the maximum
+possible size as well as the upper bound on window's size settable using
+\helpref{SetClientSize}{wxwindowsetclientsize}.
+
+\wxheading{See also}
+
+\helpref{wxWindow::GetMaxSize}{wxwindowgetmaxsize}
+
+
\membersection{wxWindow::GetMaxSize}\label{wxwindowgetmaxsize}
\constfunc{wxSize}{GetMaxSize}{\void}
-Returns the maximum size of the window, an indication to the sizer layout mechanism
-that this is the maximum possible size.
+Returns the maximum size of the window. This is an indication to the sizer
+layout mechanism that this is the maximum possible size as well as the upper
+bound on window's size settable using \helpref{SetSize}{wxwindowsetsize}.
+
+\wxheading{See also}
+
+\helpref{wxWindow::GetMaxClientSize}{wxwindowgetmaxclientsize}
+
\membersection{wxWindow::GetMinSize}\label{wxwindowgetminsize}
by \helpref{SetMinSize}{wxwindowsetminsize}, but it can be overridden to do the
calculation on demand.
+\wxheading{See also}
+
+\helpref{wxWindow::GetMinClientSize}{wxwindowgetminclientsize}
+
+
+\membersection{wxWindow::GetMinClientSize}\label{wxwindowgetminclientsize}
+
+\constfunc{virtual wxSize}{GetMinClientSize}{\void}
+
+Returns the minimum size of window's client area, an indication to the sizer
+layout mechanism that this is the minimum required size of its client area. It
+normally just returns the value set by
+\helpref{SetMinClientSize}{wxwindowsetminclientsize}, but it can be overridden
+to do the calculation on demand.
+
+\wxheading{See also}
+
+\helpref{wxWindow::GetMinSize}{wxwindowgetminsize}
+
+
\membersection{wxWindow::GetName}\label{wxwindowgetname}
\constfunc{virtual wxString }{GetName}{\void}
Sets the maximum size of the window, to indicate to the sizer layout mechanism
that this is the maximum possible size.
+\wxheading{See also}
+
+\helpref{wxWindow::SetMaxClientSize}{wxwindowsetmaxclientsize}
+
+
+\membersection{wxWindow::SetMaxClientSize}\label{wxwindowsetmaxclientsize}
+
+\func{void}{SetMaxClientSize}{\param{const wxSize\& }{size}}
+
+Sets the maximum \emph{client} size of the window, to indicate to the sizer
+layout mechanism that this is the maximum possible size of its client area.
+
+\wxheading{See also}
+
+\helpref{wxWindow::SetMaxSize}{wxwindowsetmaxsize}
+
+
\membersection{wxWindow::SetMinSize}\label{wxwindowsetminsize}
\func{void}{SetMinSize}{\param{const wxSize\& }{size}}
if you change the window size after construction and before adding
to its parent sizer.
+\wxheading{See also}
+
+\helpref{wxWindow::SetMinClientSize}{wxwindowsetminclientsize}
+
+
+\membersection{wxWindow::SetMinClientSize}\label{wxwindowsetminclientsize}
+
+\func{void}{SetMinClientSize}{\param{const wxSize\& }{size}}
+
+Sets the minimum \emph{client} size of the window, to indicate to the sizer
+layout mechanism that this is the minimum required size of window's client
+area. You may need to call this if you change the window size after
+construction and before adding to its parent sizer.
+
+\wxheading{See also}
+
+\helpref{wxWindow::SetMinSize}{wxwindowsetminsize}
+
+
\membersection{wxWindow::SetName}\label{wxwindowsetname}
\func{virtual void}{SetName}{\param{const wxString\& }{name}}
virtual void SetMinSize(const wxSize& minSize) { m_minWidth = minSize.x; m_minHeight = minSize.y; }
virtual void SetMaxSize(const wxSize& maxSize) { m_maxWidth = maxSize.x; m_maxHeight = maxSize.y; }
+ // Like Set*Size, but for client, not window, size
+ virtual void SetMinClientSize(const wxSize& size)
+ { SetMinSize(ClientToWindowSize(size)); }
+ virtual void SetMaxClientSize(const wxSize& size)
+ { SetMaxSize(ClientToWindowSize(size)); }
+
// Override these methods to impose restrictions on min/max size.
// The easier way is to call SetMinSize() and SetMaxSize() which
// will have the same effect. Doing both is non-sense.
virtual wxSize GetMinSize() const { return wxSize(m_minWidth, m_minHeight); }
virtual wxSize GetMaxSize() const { return wxSize(m_maxWidth, m_maxHeight); }
+ // Like Get*Size, but for client, not window, size
+ virtual wxSize GetMinClientSize() const
+ { return WindowToClientSize(GetMinSize()); }
+ virtual wxSize GetMaxClientSize() const
+ { return WindowToClientSize(GetMaxSize()); }
+
// Get the min and max values one by one
int GetMinWidth() const { return GetMinSize().x; }
int GetMinHeight() const { return GetMinSize().y; }