X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c82be69b51b8f8aabb5bd667b063dba399c6d894..222702b112dcc7bebe018d6f4d66fe469fefd02c:/src/os2/menu.cpp diff --git a/src/os2/menu.cpp b/src/os2/menu.cpp index ca8af4aa8e..ae9fb9d429 100644 --- a/src/os2/menu.cpp +++ b/src/os2/menu.cpp @@ -179,12 +179,12 @@ void wxMenu::UpdateAccel( if (pItem->IsSubMenu()) { wxMenu* pSubmenu = pItem->GetSubMenu(); - wxMenuItemList::Node* pNode = pSubmenu->GetMenuItems().GetFirst(); + wxMenuItemList::compatibility_iterator node = pSubmenu->GetMenuItems().GetFirst(); - while (pNode) + while (node) { - UpdateAccel(pNode->GetData()); - pNode = pNode->GetNext(); + UpdateAccel(node->GetData()); + node = node->GetNext(); } } else if (!pItem->IsSeparator()) @@ -353,7 +353,7 @@ bool wxMenu::DoInsertOrAppend( { vError = ::WinGetLastError(vHabmain); sError = wxPMErrorToStr(vError); - wxLogError("Error inserting or appending a menuitem. Error: %s\n", sError.c_str()); + wxLogError(wxT("Error inserting or appending a menuitem. Error: %s\n"), sError.c_str()); wxLogLastError("Insert or AppendMenu"); return FALSE; } @@ -416,11 +416,11 @@ wxMenuItem* wxMenu::DoAppend( // pItem->SetRadioGroupStart(m_nStartRadioGroup); - wxMenuItemList::Node* pNode = GetMenuItems().Item(m_nStartRadioGroup); + wxMenuItemList::compatibility_iterator node = GetMenuItems().Item(m_nStartRadioGroup); - if (pNode) + if (node) { - pNode->GetData()->SetRadioGroupEnd(nCount); + node->GetData()->SetRadioGroupEnd(nCount); } else { @@ -470,19 +470,19 @@ wxMenuItem* wxMenu::DoRemove( // We need to find the items position in the child list // size_t nPos; - wxMenuItemList::Node* pNode = GetMenuItems().GetFirst(); + wxMenuItemList::compatibility_iterator node = GetMenuItems().GetFirst(); - for (nPos = 0; pNode; nPos++) + for (nPos = 0; node; nPos++) { - if (pNode->GetData() == pItem) + if (node->GetData() == pItem) break; - pNode = pNode->GetNext(); + node = node->GetNext(); } // // DoRemove() (unlike Remove) can only be called for existing item! // - wxCHECK_MSG(pNode, NULL, wxT("bug in wxMenu::Remove logic")); + wxCHECK_MSG(node, NULL, wxT("bug in wxMenu::Remove logic")); #if wxUSE_ACCEL // @@ -560,7 +560,7 @@ void wxMenu::SetTitle( { if (!rLabel.IsEmpty()) { - if (!::WinSetWindowText(hMenu, rLabel.c_str())) + if (!::WinSetWindowText(hMenu, (PSZ)rLabel.c_str())) { wxLogLastError("SetMenuTitle"); } @@ -581,7 +581,7 @@ void wxMenu::SetTitle( // // Modify the title // - if (!::WinSetWindowText(hMenu, rLabel.c_str())) + if (!::WinSetWindowText(hMenu, (PSZ)rLabel.c_str())) { wxLogLastError("SetMenuTitle"); } @@ -641,7 +641,7 @@ wxMenuItem* wxMenu::FindItem( wxMenuItem* pItem = NULL; - for ( wxMenuItemList::Node *node = m_items.GetFirst(); + for ( wxMenuItemList::compatibility_iterator node = m_items.GetFirst(); node && !pItem; node = node->GetNext() ) { @@ -697,6 +697,7 @@ wxMenuBar::wxMenuBar( int nCount , wxMenu* vMenus[] , const wxString sTitles[] +, long WXUNUSED(lStyle) ) { Init(); @@ -772,9 +773,9 @@ WXHMENU wxMenuBar::Create() } else { - size_t nCount = GetMenuCount(); - - for (size_t i = 0; i < nCount; i++) + size_t nCount = GetMenuCount(), i; + wxMenuList::iterator it; + for (i = 0, it = m_menus.begin(); i < nCount; i++, it++) { APIRET rc; ERRORID vError; @@ -784,31 +785,31 @@ WXHMENU wxMenuBar::Create() // // Set the parent and owner of the submenues to be the menubar, not the desktop // - hSubMenu = m_menus[i]->m_vMenuData.hwndSubMenu; - if (!::WinSetParent(m_menus[i]->m_vMenuData.hwndSubMenu, m_hMenu, FALSE)) + hSubMenu = (*it)->m_vMenuData.hwndSubMenu; + if (!::WinSetParent((*it)->m_vMenuData.hwndSubMenu, m_hMenu, FALSE)) { vError = ::WinGetLastError(vHabmain); sError = wxPMErrorToStr(vError); - wxLogError("Error setting parent for submenu. Error: %s\n", sError.c_str()); + wxLogError(wxT("Error setting parent for submenu. Error: %s\n"), sError.c_str()); return NULLHANDLE; } - if (!::WinSetOwner(m_menus[i]->m_vMenuData.hwndSubMenu, m_hMenu)) + if (!::WinSetOwner((*it)->m_vMenuData.hwndSubMenu, m_hMenu)) { vError = ::WinGetLastError(vHabmain); sError = wxPMErrorToStr(vError); - wxLogError("Error setting parent for submenu. Error: %s\n", sError.c_str()); + wxLogError(wxT("Error setting parent for submenu. Error: %s\n"), sError.c_str()); return NULLHANDLE; } - m_menus[i]->m_vMenuData.iPosition = i; + (*it)->m_vMenuData.iPosition = i; - rc = (APIRET)::WinSendMsg(m_hMenu, MM_INSERTITEM, (MPARAM)&m_menus[i]->m_vMenuData, (MPARAM)m_titles[i].c_str()); + rc = (APIRET)::WinSendMsg(m_hMenu, MM_INSERTITEM, (MPARAM)&(*it)->m_vMenuData, (MPARAM)m_titles[i].c_str()); if (rc == (APIRET)MIT_MEMERROR || rc == (APIRET)MIT_ERROR) { vError = ::WinGetLastError(vHabmain); sError = wxPMErrorToStr(vError); - wxLogError("Error inserting or appending a menuitem. Error: %s\n", sError.c_str()); + wxLogError(wxT("Error inserting or appending a menuitem. Error: %s\n"), sError.c_str()); return NULLHANDLE; } } @@ -1051,7 +1052,7 @@ wxMenu* wxMenuBar::Remove( #endif // wxUSE_ACCEL Refresh(); } - m_titles.Remove(nPos); + m_titles.RemoveAt(nPos); return pMenu; } // end of wxMenuBar::Remove @@ -1065,10 +1066,10 @@ void wxMenuBar::RebuildAccelTable() size_t nAccelCount = 0; size_t i; size_t nCount = GetMenuCount(); - - for (i = 0; i < nCount; i++) + wxMenuList::iterator it; + for (i = 0, it = m_menus.begin(); i < nCount; i++, it++) { - nAccelCount += m_menus[i]->GetAccelCount(); + nAccelCount += (*it)->GetAccelCount(); } if (nAccelCount) @@ -1076,9 +1077,9 @@ void wxMenuBar::RebuildAccelTable() wxAcceleratorEntry* pAccelEntries = new wxAcceleratorEntry[nAccelCount]; nAccelCount = 0; - for (i = 0; i < nCount; i++) + for (i = 0, it = m_menus.begin(); i < nCount; i++, it++) { - nAccelCount += m_menus[i]->CopyAccels(&pAccelEntries[nAccelCount]); + nAccelCount += (*it)->CopyAccels(&pAccelEntries[nAccelCount]); } m_vAccelTable = wxAcceleratorTable( nAccelCount ,pAccelEntries @@ -1128,14 +1129,14 @@ int wxMenuBar::FindMenuItem( ) const { wxString sMenuLabel = wxStripMenuCodes(rMenuString); - size_t nCount = GetMenuCount(); - - for (size_t i = 0; i < nCount; i++) + size_t nCount = GetMenuCount(), i; + wxMenuList::const_iterator it; + for (i = 0, it = m_menus.begin(); i < nCount; i++, it++) { wxString sTitle = wxStripMenuCodes(m_titles[i]); if (rMenuString == sTitle) - return m_menus[i]->FindItem(rItemString); + return (*it)->FindItem(rItemString); } return wxNOT_FOUND; } // end of wxMenuBar::FindMenuItem @@ -1149,13 +1150,13 @@ wxMenuItem* wxMenuBar::FindItem( *ppItemMenu = NULL; wxMenuItem* pItem = NULL; - size_t nCount = GetMenuCount(); - - for (size_t i = 0; !pItem && (i < nCount); i++) + size_t nCount = GetMenuCount(), i; + wxMenuList::const_iterator it; + for (i = 0, it = m_menus.begin(); !pItem && (i < nCount); i++, it++) { - pItem = m_menus[i]->FindItem( nId - ,ppItemMenu - ); + pItem = (*it)->FindItem( nId + ,ppItemMenu + ); } return pItem; } // end of wxMenuBar::FindItem @@ -1170,14 +1171,14 @@ wxMenuItem* wxMenuBar::FindItem( *ppItemMenu = NULL; wxMenuItem* pItem = NULL; - size_t nCount = GetMenuCount(); - - for (size_t i = 0; !pItem && (i < nCount); i++) + size_t nCount = GetMenuCount(), i; + wxMenuList::const_iterator it; + for (i = 0, it = m_menus.begin(); !pItem && (i < nCount); i++, it++) { - pItem = m_menus[i]->FindItem( nId - ,hItem - ,ppItemMenu - ); + pItem = (*it)->FindItem( nId + ,hItem + ,ppItemMenu + ); } return pItem; } // end of wxMenuBar::FindItem