From: Robin Dunn Date: Tue, 22 Jan 2002 18:30:54 +0000 (+0000) Subject: Fix for when Set is called with wxSameAs to behave just like calling SameAs() X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/844a4451f694840694663dd283c3bed3a3d81947?hp=90b5abc1ebd65e37bb3d05288574e7962e281978 Fix for when Set is called with wxSameAs to behave just like calling SameAs() git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@13747 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/common/layout.cpp b/src/common/layout.cpp index 8dbb8ea8dc..74850c5631 100644 --- a/src/common/layout.cpp +++ b/src/common/layout.cpp @@ -66,6 +66,14 @@ wxIndividualLayoutConstraint::~wxIndividualLayoutConstraint() void wxIndividualLayoutConstraint::Set(wxRelationship rel, wxWindowBase *otherW, wxEdge otherE, int val, int marg) { + if (rel == wxSameAs) + { + // If Set is called by the user with wxSameAs then call SameAs to do + // it since it will actually use wxPercent instead. + SameAs(otherW, otherE, marg); + return; + } + relationship = rel; otherWin = otherW; otherEdge = otherE; @@ -106,13 +114,13 @@ void wxIndividualLayoutConstraint::Below(wxWindowBase *sibling, int marg) // 'Same edge' alignment // void wxIndividualLayoutConstraint::SameAs(wxWindowBase *otherW, wxEdge edge, int marg) -{ +{ Set(wxPercentOf, otherW, edge, 100, marg); } // The edge is a percentage of the other window's edge void wxIndividualLayoutConstraint::PercentOf(wxWindowBase *otherW, wxEdge wh, int per) -{ +{ Set(wxPercentOf, otherW, wh, per); } @@ -1038,7 +1046,7 @@ bool wxLayoutConstraints::SatisfyConstraints(wxWindowBase *win, int *nChanges) Set each calculated position and size */ - + #if WXWIN_COMPATIBILITY bool wxOldDoLayout(wxWindowBase *win) {