]> git.saurik.com Git - wxWidgets.git/commitdiff
Fix for when Set is called with wxSameAs to behave just like calling SameAs()
authorRobin Dunn <robin@alldunn.com>
Tue, 22 Jan 2002 18:30:54 +0000 (18:30 +0000)
committerRobin Dunn <robin@alldunn.com>
Tue, 22 Jan 2002 18:30:54 +0000 (18:30 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@13747 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/common/layout.cpp

index 8dbb8ea8dc5e93601ff196e31f90c85df0b784d5..74850c563135642e601c94b3e69171799c5d2685 100644 (file)
@@ -66,6 +66,14 @@ wxIndividualLayoutConstraint::~wxIndividualLayoutConstraint()
 
 void wxIndividualLayoutConstraint::Set(wxRelationship rel, wxWindowBase *otherW, wxEdge otherE, int val, int marg)
 {
 
 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;
     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)
 // '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, 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);
 }
 
     Set(wxPercentOf, otherW, wh, per);
 }
 
@@ -1038,7 +1046,7 @@ bool wxLayoutConstraints::SatisfyConstraints(wxWindowBase *win, int *nChanges)
     Set each calculated position and size
 
  */
     Set each calculated position and size
 
  */
+
 #if WXWIN_COMPATIBILITY
 bool wxOldDoLayout(wxWindowBase *win)
 {
 #if WXWIN_COMPATIBILITY
 bool wxOldDoLayout(wxWindowBase *win)
 {