X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8907154c1a8a6882c6797d1f16393ddfb23e7f3a..137c8bde085d6d5b7c459902d2ea1a198ab48765:/src/motif/menuitem.cpp diff --git a/src/motif/menuitem.cpp b/src/motif/menuitem.cpp index ebceca3d9d..08bf34a5ff 100644 --- a/src/motif/menuitem.cpp +++ b/src/motif/menuitem.cpp @@ -1,5 +1,5 @@ /////////////////////////////////////////////////////////////////////////////// -// Name: menuitem.cpp +// Name: src/motif/menuitem.cpp // Purpose: wxMenuItem implementation // Author: Julian Smart // Modified by: @@ -20,12 +20,13 @@ // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" -#include "wx/defs.h" - -#include "wx/menu.h" #include "wx/menuitem.h" -#include "wx/utils.h" -#include "wx/frame.h" + +#ifndef WX_PRECOMP + #include "wx/utils.h" + #include "wx/frame.h" + #include "wx/menu.h" +#endif #ifdef __VMS__ #pragma message disable nosimpint @@ -158,7 +159,8 @@ wxMenuItem *wxMenuItemBase::New(wxMenu *parentMenu, // Motif-specific // ---------------------------------------------------------------------------- -void wxMenuItem::CreateItem (WXWidget menu, wxMenuBar * menuBar, wxMenu * topMenu) +void wxMenuItem::CreateItem (WXWidget menu, wxMenuBar * menuBar, + wxMenu * topMenu, size_t index) { m_menuBar = menuBar; m_topMenu = topMenu; @@ -170,19 +172,25 @@ void wxMenuItem::CreateItem (WXWidget menu, wxMenuBar * menuBar, wxMenu * topMen (wxStripMenuCodes(m_text), xmLabelGadgetClass, (Widget) menu, NULL); } - else if ((!m_text.IsNull() && m_text != "") && (!m_subMenu)) + else if (!m_text.empty() && !m_subMenu) { wxString strName = wxStripMenuCodes(m_text); if (IsCheckable()) { m_buttonWidget = (WXWidget) XtVaCreateManagedWidget (strName, xmToggleButtonGadgetClass, (Widget) menu, +#ifdef XmNpositionIndex + XmNpositionIndex, index, +#endif NULL); XtVaSetValues ((Widget) m_buttonWidget, XmNset, (Boolean) IsChecked(), NULL); } else m_buttonWidget = (WXWidget) XtVaCreateManagedWidget (strName, xmPushButtonGadgetClass, (Widget) menu, +#ifdef XmNpositionIndex + XmNpositionIndex, index, +#endif NULL); char mnem = wxFindMnemonic (m_text); if (mnem != 0) @@ -225,11 +233,15 @@ void wxMenuItem::CreateItem (WXWidget menu, wxMenuBar * menuBar, wxMenu * topMen else if (GetId() == wxID_SEPARATOR) { m_buttonWidget = (WXWidget) XtVaCreateManagedWidget ("separator", - xmSeparatorGadgetClass, (Widget) menu, NULL); + xmSeparatorGadgetClass, (Widget) menu, +#ifndef XmNpositionIndex + XmNpositionIndex, index, +#endif + NULL); } else if (m_subMenu) { - m_buttonWidget = m_subMenu->CreateMenu (menuBar, menu, topMenu, m_text, true); + m_buttonWidget = m_subMenu->CreateMenu (menuBar, menu, topMenu, index, m_text, true); m_subMenu->SetButtonWidget(m_buttonWidget); XtAddCallback ((Widget) m_buttonWidget, XmNcascadingCallback, @@ -247,7 +259,7 @@ void wxMenuItem::DestroyItem(bool full) ; // Nothing } - else if ((!m_text.IsNull() && (m_text != "")) && !m_subMenu) + else if (!m_text.empty() && !m_subMenu) { if (m_buttonWidget) { @@ -401,4 +413,3 @@ wxMenuItemDisarmCallback (Widget WXUNUSED(w), XtPointer clientData, } } } -