]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/framecmn.cpp
more IRIX support
[wxWidgets.git] / src / common / framecmn.cpp
index 59e2c3c868b6a9afca270c0b6fc5992afd7fc8aa..af39670bd7bc46f3444b6af4f96b1c60795a66ee 100644 (file)
@@ -3,41 +3,55 @@
 // Purpose:     common (for all platforms) wxFrame functions
 // Author:      Julian Smart, Vadim Zeitlin
 // Created:     01/02/97
-// Id:
+// Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-void wxFrame::OnIdle(wxIdleEvent& event)
+// For compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
+#ifdef __BORLANDC__
+#pragma hdrstop
+#endif
+
+#include "wx/frame.h"
+#include "wx/menu.h"
+#include "wx/menuitem.h"
+
+void wxFrame::OnIdle(wxIdleEvent& WXUNUSED(event) )
 {
-  DoMenuUpdates();
+    DoMenuUpdates();
 }
 
 // update all menus
 void wxFrame::DoMenuUpdates()
 {
-  wxMenuBar* bar = GetMenuBar();
-  if ( bar != NULL ) {
-    int nCount = bar->GetMenuCount();
-    for (int n = 0; n < nCount; n++)
-      DoMenuUpdates(bar->GetMenu(n));
-  }
+    wxMenuBar* bar = GetMenuBar();
+
+    if ( bar != NULL ) 
+    {
+        int nCount = bar->GetMenuCount();
+        for (int n = 0; n < nCount; n++)
+            DoMenuUpdates(bar->GetMenu(n), (wxWindow*) NULL);
+    }
 }
 
 // update a menu and all submenus recursively
-void wxFrame::DoMenuUpdates(wxMenu* menu)
+void wxFrame::DoMenuUpdates(wxMenu* menu, wxWindow* WXUNUSED(focusWin))
 {
-  wxNode* node = menu->GetItems().First();
+  wxEvtHandler* evtHandler = GetEventHandler();
+  wxMenuItemList::Node* node = menu->GetMenuItems().GetFirst();
   while (node)
   {
-    wxMenuItem* item = (wxMenuItem*) node->Data();
+    wxMenuItem* item = node->GetData();
     if ( !item->IsSeparator() )
     {
       wxWindowID id = item->GetId();
       wxUpdateUIEvent event(id);
       event.SetEventObject( this );
 
-      if (GetEventHandler()->ProcessEvent(event))
+      if (evtHandler->ProcessEvent(event))
       {
         if (event.GetSetText())
           menu->SetLabel(id, event.GetText());
@@ -48,8 +62,8 @@ void wxFrame::DoMenuUpdates(wxMenu* menu)
       }
 
       if (item->GetSubMenu())
-        DoMenuUpdates(item->GetSubMenu());
+        DoMenuUpdates(item->GetSubMenu(), (wxWindow*) NULL);
     }
-    node = node->Next();
+    node = node->GetNext();
   }
 }