]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/menucmn.cpp
Update OpenVMS compile support
[wxWidgets.git] / src / common / menucmn.cpp
index dc9db4f268176eac4de935ba6536a549394ad2a7..af96b1116dfcba781c44abbb08461df6659f5783 100644 (file)
@@ -30,6 +30,7 @@
     #include "wx/intl.h"
     #include "wx/log.h"
     #include "wx/menu.h"
+    #include "wx/frame.h"
 #endif
 
 #include "wx/stockitem.h"
@@ -513,23 +514,18 @@ void wxMenuBase::SetInvokingWindow(wxWindow *win)
     m_invokingWindow = win;
 }
 
-wxWindow *wxMenuBase::GetInvokingWindow() const
+wxWindow *wxMenuBase::GetWindow() const
 {
-    // only the popup menu itself has a non-NULL invoking window so recurse
-    // upwards until we find it
+    // only the top level menus have non-NULL invoking window or a pointer to
+    // the menu bar so recurse upwards until we find it
     const wxMenuBase *menu = this;
     while ( menu->GetParent() )
     {
         menu = menu->GetParent();
     }
 
-    // menu is a top level menu here
-    return menu->m_invokingWindow;
-}
-
-wxWindow *wxMenuBase::GetWindow() const
-{
-    return GetMenuBar() ? (wxWindow*)GetMenuBar()->GetFrame() : GetInvokingWindow();
+    return menu->GetMenuBar() ? menu->GetMenuBar()->GetFrame()
+                              : menu->GetInvokingWindow();
 }
 
 // ----------------------------------------------------------------------------