)
: wxMenuItemBase( pParentMenu
,nId
- ,rsText
+ ,TextToLabel(rsText)
,rsHelp
,eKind
,pSubMenu
)
: wxMenuItemBase( pParentMenu
,nId
- ,rsText
+ ,TextToLabel(rsText)
,rsHelp
,bIsCheckable ? wxITEM_CHECK : wxITEM_NORMAL
,pSubMenu
#endif // owner drawn
{
wxASSERT_MSG(pParentMenu != NULL, wxT("a menu item should have a parent"));
+ memset(&m_vMenuData, '\0', sizeof(m_vMenuData));
+ m_vMenuData.id = (USHORT)nId;
Init();
} // end of wxMenuItem::wxMenuItem
return label;
}
-// radio group stuff
+//
+// Radio group stuff
// -----------------
-
+//
void wxMenuItem::SetAsRadioGroupStart()
{
m_bIsRadioGroupStart = TRUE;
int nStart
)
{
- wxASSERT_MSG( !m_bIsRadioGroupStart,
- _T("should only be called for the next radio items") );
+ wxASSERT_MSG( !m_bIsRadioGroupStart
+ ,_T("should only be called for the next radio items")
+ );
m_vRadioGroup.m_nStart = nStart;
-} // end of wxMenuItem::SetRadioGroupStart
+} // wxMenuItem::SetRadioGroupStart
void wxMenuItem::SetRadioGroupEnd(
int nEnd
)
{
- wxASSERT_MSG( m_bIsRadioGroupStart,
- _T("should only be called for the first radio item") );
-
+ wxASSERT_MSG( m_bIsRadioGroupStart
+ ,_T("should only be called for the first radio item")
+ );
m_vRadioGroup.m_nEnd = nEnd;
} // end of wxMenuItem::SetRadioGroupEnd
if (m_isChecked == bCheck)
return;
- HMENU hMenu = GetHMenuOf(m_parentMenu);
+ HMENU hMenu = GetHmenuOf(m_parentMenu);
- if ( GetKind() == wxITEM_RADIO )
+ if (GetKind() == wxITEM_RADIO)
{
//
// It doesn't make sense to uncheck a radio item - what would this do?
//
const wxMenuItemList& rItems = m_parentMenu->GetMenuItems();
int nPos = rItems.IndexOf(this);
- int nStart;
- int nEnd;
- wxCHECK_RET( nPos != wxNOT_FOUND,
- _T("menuitem not found in the menu items list?") );
+ wxCHECK_RET( nPos != wxNOT_FOUND
+ ,_T("menuitem not found in the menu items list?")
+ );
//
// Get the radio group range
//
+ int nStart;
+ int nEnd;
if (m_bIsRadioGroupStart)
{
- // we already have all information we need
+ //
+ // We already have all information we need
+ //
nStart = nPos;
- nEnd = m_vRadioGroup.m_nEnd;
+ nEnd = m_vRadioGroup.m_nEnd;
}
- else // Next radio group item
+ else // next radio group item
{
//
// Get the radio group end from the start item
for (int n = nStart; n <= nEnd && pNode; n++)
{
- if (n != nPos)
- {
- pNode->GetData()->m_isChecked = FALSE;
- }
-
if (n == nPos)
{
- bOk = (bool)::WinSendMsg( hMenu
- ,MM_SETITEMATTR
- ,MPFROM2SHORT(n, TRUE)
- ,MPFROM2SHORT(MIA_CHECKED, MIA_CHECKED)
- );
+ ::WinSendMsg( hMenu
+ ,MM_SETITEMATTR
+ ,MPFROM2SHORT(n, TRUE)
+ ,MPFROM2SHORT(MIA_CHECKED, MIA_CHECKED)
+ );
}
- else
+ if (n != nPos)
{
- bOk = (bool)::WinSendMsg( hMenu
- ,MM_SETITEMATTR
- ,MPFROM2SHORT(n, TRUE)
- ,MPFROM2SHORT(MIA_CHECKED, FALSE)
- );
+ pNode->GetData()->m_isChecked = FALSE;
+ ::WinSendMsg( hMenu
+ ,MM_SETITEMATTR
+ ,MPFROM2SHORT(n, TRUE)
+ ,MPFROM2SHORT(MIA_CHECKED, FALSE)
+ );
}
pNode = pNode->GetNext();
}
else // check item
{
if (bCheck)
- bOk = (bool)::WinSendMsg( GetHMenuOf(m_parentMenu)
+ bOk = (bool)::WinSendMsg( hMenu
,MM_SETITEMATTR
,MPFROM2SHORT(GetRealId(), TRUE)
,MPFROM2SHORT(MIA_CHECKED, MIA_CHECKED)
);
else
- bOk = (bool)::WinSendMsg( GetHMenuOf(m_parentMenu)
+ bOk = (bool)::WinSendMsg( hMenu
,MM_SETITEMATTR
,MPFROM2SHORT(GetRealId(), TRUE)
,MPFROM2SHORT(MIA_CHECKED, FALSE)
// Don't do anything if label didn't change
//
- wxString Text = TextToLabel(rText);
- if (m_text == Text)
+ wxString sText = TextToLabel(rText);
+ if (m_text == sText)
return;
- wxMenuItemBase::SetText(Text);
- OWNER_DRAWN_ONLY(wxOwnerDrawn::SetName(Text));
+ wxMenuItemBase::SetText(sText);
+ OWNER_DRAWN_ONLY(wxOwnerDrawn::SetName(sText));
- HWND hMenu = GetHMenuOf(m_parentMenu);
+ HWND hMenu = GetHmenuOf(m_parentMenu);
wxCHECK_RET(hMenu, wxT("menuitem without menu"));
#endif //owner drawn
{
uFlagsOld |= MIS_TEXT;
- pData = (BYTE*)Text.c_str();
+ pData = (BYTE*)sText.c_str();
}
//