X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a2d49353d4ac77775d5c513e55940175458faa1c..d3d0b8dba702091fb19c83ae0ad9844a9bc4bf47:/contrib/src/gizmos/dynamicsash.cpp diff --git a/contrib/src/gizmos/dynamicsash.cpp b/contrib/src/gizmos/dynamicsash.cpp index fa9ee2d622..ea93094de6 100644 --- a/contrib/src/gizmos/dynamicsash.cpp +++ b/contrib/src/gizmos/dynamicsash.cpp @@ -27,6 +27,10 @@ #include "wx/wx.h" #endif +#ifdef __WXMSW__ +#include "wx/mdi.h" +#endif + #include "wx/gizmos/dynamicsash.h" @@ -108,7 +112,7 @@ public: virtual wxEvent* Clone() const { return new wxDynamicSashReparentEvent(*this); } - DECLARE_DYNAMIC_CLASS(wxDynamicSashReparentEvent); + DECLARE_DYNAMIC_CLASS(wxDynamicSashReparentEvent) }; @@ -452,7 +456,11 @@ wxWindow *wxDynamicSashWindowImpl::FindFrame() const { wxWindow *win; win = m_window->GetParent(); - while (win && !win->IsTopLevel()) { + while (win && !win->IsTopLevel() +#ifdef __WXMSW__ + && ! wxIsKindOf(win, wxMDIChildFrame) // not top-level but still a frame +#endif + ) { win = win->GetParent(); } @@ -1172,7 +1180,7 @@ void wxDynamicSashWindowLeaf::OnScroll(wxScrollEvent &WXUNUSED(event)) { } void wxDynamicSashWindowLeaf::OnFocus(wxFocusEvent &event) { - if (event.m_eventObject == m_hscroll || event.m_eventObject == m_vscroll) { + if (event.GetEventObject() == m_hscroll || event.GetEventObject() == m_vscroll) { m_child->SetFocus(); } }