X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3c69a2ec864e94f58243500ca6d41c980b0fa4fe..1e9693318372b3321c400fc7a1746bbcd696eceb:/wxPython/wxaddons/sized_controls.py diff --git a/wxPython/wxaddons/sized_controls.py b/wxPython/wxaddons/sized_controls.py index 04d74c1fc7..4123752042 100644 --- a/wxPython/wxaddons/sized_controls.py +++ b/wxPython/wxaddons/sized_controls.py @@ -457,10 +457,21 @@ class SizedPanel(wx.PyPanel): self.sizerType = "vertical" def AddChild(self, child): - wx.PyPanel.base_AddChild(self, child) - + if wx.VERSION < (2,8): + wx.PyPanel.base_AddChild(self, child) + else: + wx.PyPanel.AddChild(self, child) + + # Note: The wx.LogNull is used here to suppress a log message + # on wxMSW that happens because when AddChild is called the + # widget's hwnd hasn't been set yet, so the GetWindowRect that + # happens as a result of sizer.Add (in wxSizerItem::SetWindow) + # fails. A better fix would be to defer this code somehow + # until after the child widget is fully constructed. sizer = self.GetSizer() + nolog = wx.LogNull() item = sizer.Add(child) + del nolog item.SetUserData({"HGrow":0, "VGrow":0}) # Note: One problem is that the child class given to AddChild