X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9923c37dccb4e5dbe6387ceb3ab0a8202fadc231..fe593cc504195a3c91281eae4edf5e852a51a59c:/src/os2/menu.cpp diff --git a/src/os2/menu.cpp b/src/os2/menu.cpp index 89d968065d..ca8af4aa8e 100644 --- a/src/os2/menu.cpp +++ b/src/os2/menu.cpp @@ -47,7 +47,7 @@ extern wxMenu* wxCurrentPopupMenu; // // The (popup) menu title has this special id // -static const int idMenuTitle = -2; +static const int idMenuTitle = -3; // // The unique ID for Menus @@ -226,7 +226,7 @@ void wxMenu::UpdateAccel( if (IsAttached()) { - m_menuBar->RebuildAccelTable(); + GetMenuBar()->RebuildAccelTable(); } } } // wxMenu::UpdateAccel @@ -280,7 +280,7 @@ bool wxMenu::DoInsertOrAppend( rItem.id = pItem->GetId(); } - BYTE* pData; + BYTE* pData=NULL; #if wxUSE_OWNER_DRAWN if (pItem->IsOwnerDrawn()) @@ -304,10 +304,18 @@ bool wxMenu::DoInsertOrAppend( } else { - // - // Menu is just a normal string (passed in data parameter) - // - rItem.afStyle |= MIS_TEXT; + if (pItem->GetId() == idMenuTitle) + { + // Item is an unselectable title to be passed via pData + rItem.afStyle = MIS_STATIC; + } + else + { + // + // Menu is just a normal string (passed in data parameter) + // + rItem.afStyle |= MIS_TEXT; + } pData = (char*)pItem->GetText().c_str(); } @@ -354,9 +362,9 @@ bool wxMenu::DoInsertOrAppend( // // If we're already attached to the menubar, we must update it // - if (IsAttached() && m_menuBar->IsAttached()) + if (IsAttached() && GetMenuBar()->IsAttached()) { - m_menuBar->Refresh(); + GetMenuBar()->Refresh(); } return TRUE; } @@ -497,12 +505,12 @@ wxMenuItem* wxMenu::DoRemove( ,MPFROM2SHORT(pItem->GetId(), TRUE) ,(MPARAM)0 ); - if (IsAttached() && m_menuBar->IsAttached()) + if (IsAttached() && GetMenuBar()->IsAttached()) { // // Otherwise, the chane won't be visible // - m_menuBar->Refresh(); + GetMenuBar()->Refresh(); } // @@ -615,8 +623,8 @@ wxWindow* wxMenu::GetWindow() const { if (m_invokingWindow != NULL) return m_invokingWindow; - else if ( m_menuBar != NULL) - return m_menuBar->GetFrame(); + else if ( GetMenuBar() != NULL) + return GetMenuBar()->GetFrame(); return NULL; } // end of wxMenu::GetWindow