Make wxWindow::SetSizeHints() do nothing.

Make wxTLW::SetSizeHints() set the various m_minWidth etc. fields.
  Override SetSizeHints() in wxGTK to call the relevant gtk funcion
    only there and not in every resize.
  Make GetMinWidth() etc. non-virtual.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42646 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling
2006-10-29 19:17:00 +00:00
parent 7a9763046b
commit 9379c0d752
9 changed files with 129 additions and 131 deletions

View File

@@ -389,26 +389,26 @@ public:
// set virtual size to satisfy children
virtual void FitInside();
// set min/max size of the window
// Methods for setting size hints. This is only used
// for toplevel windows.
virtual void SetSizeHints( int minW, int minH,
int maxW = wxDefaultCoord, int maxH = wxDefaultCoord,
int incW = wxDefaultCoord, int incH = wxDefaultCoord )
{
DoSetSizeHints(minW, minH, maxW, maxH, incW, incH);
}
{ DoSetSizeHints(minW, minH, maxW, maxH, incW, incH); }
void SetSizeHints( const wxSize& minSize,
const wxSize& maxSize=wxDefaultSize,
const wxSize& incSize=wxDefaultSize)
{
DoSetSizeHints(minSize.x, minSize.y,
maxSize.x, maxSize.y,
incSize.x, incSize.y);
}
{ DoSetSizeHints(minSize.x, minSize.y, maxSize.x, maxSize.y, incSize.x, incSize.y); }
virtual void DoSetSizeHints(int minW, int minH,
int maxW = wxDefaultCoord, int maxH = wxDefaultCoord,
int incW = wxDefaultCoord, int incH = wxDefaultCoord );
virtual void DoSetSizeHints( int minW, int minH,
int maxW = wxDefaultCoord, int maxH = wxDefaultCoord,
int incW = wxDefaultCoord, int incH = wxDefaultCoord ) { }
// Methods for setting virtual size hints
// FIXME: What are virtual size hints?
virtual void SetVirtualSizeHints( int minW, int minH,
int maxW = wxDefaultCoord, int maxH = wxDefaultCoord );
@@ -418,17 +418,20 @@ public:
SetVirtualSizeHints(minSize.x, minSize.y, maxSize.x, maxSize.y);
}
virtual int GetMinWidth() const { return m_minWidth; }
virtual int GetMinHeight() const { return m_minHeight; }
int GetMaxWidth() const { return m_maxWidth; }
int GetMaxHeight() const { return m_maxHeight; }
// Override this method to control the values given to Sizers etc.
virtual wxSize GetMaxSize() const { return wxSize( m_maxWidth, m_maxHeight ); }
virtual wxSize GetMinSize() const { return wxSize( m_minWidth, m_minHeight ); }
void SetMinSize(const wxSize& minSize) { SetSizeHints(minSize); }
void SetMaxSize(const wxSize& maxSize) { SetSizeHints(GetMinSize(), maxSize); }
// If a class doesn't override GetMinSize() or GetMaxSize()
// these values will be returned
int GetMinWidth() const { return m_minWidth; }
int GetMinHeight() const { return m_minHeight; }
int GetMaxWidth() const { return m_maxWidth; }
int GetMaxHeight() const { return m_maxHeight; }
void SetMinSize(const wxSize& minSize) { m_minWidth = minSize.x; m_minHeight = minSize.y; }
void SetMaxSize(const wxSize& maxSize) { m_maxWidth = maxSize.x; m_maxHeight = maxSize.y; }
// Methods for accessing the virtual size of a window. For most
// windows this is just the client area of the window, but for