// wxWin macros
 // ----------------------------------------------------------------------------
 
-IMPLEMENT_DYNAMIC_CLASS(wxToolBar, wxToolBarBase)
+IMPLEMENT_DYNAMIC_CLASS(wxToolBar, wxControl)
 
 BEGIN_EVENT_TABLE(wxToolBar, wxToolBarBase)
     EVT_SIZE(wxToolBar::OnSize)
     int                             nY      = rPos.y;
     int                             nWidth  = rSize.x;
     int                             nHeight = rSize.y;
-    wxFrame*                        pFrame = wxDynamicCast(GetParent(), wxFrame);
 
     if (lStyle & wxTB_HORIZONTAL)
     {
 {
     int                             nMaxToolWidth  = 0;
     int                             nMaxToolHeight = 0;
-    int                             nX;
-    int                             nY;
 
     m_nCurrentRowsOrColumns = 0;
     m_vLastX               = m_xMargin;
     //
     // Find the maximum tool width and height
     //
-    wxToolBarToolsList::Node*       pNode = m_tools.GetFirst();
+    wxToolBarToolsList::compatibility_iterator     node = m_tools.GetFirst();
 
-    while (pNode )
+    while (node )
     {
-        wxToolBarTool*              pTool = (wxToolBarTool *)pNode->GetData();
+        wxToolBarTool*              pTool = (wxToolBarTool *)node->GetData();
 
         if (HasFlag(wxTB_TEXT) && !pTool->GetLabel().IsEmpty())
         {
             if (pTool->GetHeight() > nMaxToolHeight)
                 nMaxToolHeight = pTool->GetHeight();
         }
-        pNode = pNode->GetNext();
+        node = node->GetNext();
     }
 
     wxCoord                         vTbWidth = 0L;
 
     int                             nSeparatorSize = m_toolSeparation;
 
-    pNode = m_tools.GetFirst();
-    while (pNode)
+    node = m_tools.GetFirst();
+    while (node)
     {
-        wxToolBarTool*              pTool = (wxToolBarTool *)pNode->GetData();
+        wxToolBarTool*              pTool = (wxToolBarTool *)node->GetData();
 
         if (pTool->IsSeparator())
         {
         if (m_vLastY > m_maxHeight)
             m_maxHeight = m_vLastY;
 
-        pNode = pNode->GetNext();
+        node = node->GetNext();
     }
 
     if ( GetWindowStyleFlag() & wxTB_HORIZONTAL )
     nCount++;
 
     ::WinFillRect(vDc.GetHPS(), &vDc.m_vRclPaint, GetBackgroundColour().GetPixel());
-    for ( wxToolBarToolsList::Node* pNode = m_tools.GetFirst();
-          pNode;
-          pNode = pNode->GetNext() )
+    for ( wxToolBarToolsList::compatibility_iterator node = m_tools.GetFirst();
+          node;
+          node = node->GetNext() )
     {
-        wxToolBarTool*              pTool = (wxToolBarTool*)pNode->GetData();
+        wxToolBarTool*              pTool = (wxToolBarTool*)node->GetData();
 
         if (pTool->IsButton() )
             DrawTool(vDc, pTool);
     wxBitmap                        vBitmap = pTool->GetNormalBitmap();
     bool                            bUseMask = FALSE;
     wxMask*                         pMask = NULL;
-    RECTL                           vRect;
 
     PrepareDC(rDc);
 
 , wxCoord                           vY
 ) const
 {
-    wxCoord                         vTextX = 0;
-    wxCoord                         vTextY = 0;
     wxCoord                         vTBarHeight = 0;
 
     GetSize( NULL
             ,&vTBarHeight
            );
     vY = vTBarHeight - vY;
-    wxToolBarToolsList::Node* pNode = m_tools.GetFirst();
-    while (pNode)
+    wxToolBarToolsList::compatibility_iterator node = m_tools.GetFirst();
+    while (node)
     {
-        wxToolBarTool*              pTool = (wxToolBarTool *)pNode->GetData();
+        wxToolBarTool*              pTool = (wxToolBarTool *)node->GetData();
 
         if (HasFlag(wxTB_TEXT) && !pTool->GetLabel().IsNull())
         {
                 return pTool;
             }
         }
-        pNode = pNode->GetNext();
+        node = node->GetNext();
     }
     return (wxToolBarToolBase *)NULL;
 } // end of wxToolBar::FindToolForPosition