// headers
// ----------------------------------------------------------------------------
+#include "wx/defs.h"
+
#include "wx/menu.h"
#include "wx/menuitem.h"
#include "wx/utils.h"
// dynamic classes implementation
// ----------------------------------------------------------------------------
- IMPLEMENT_DYNAMIC_CLASS(wxMenuItem, wxObject)
+IMPLEMENT_DYNAMIC_CLASS(wxMenuItem, wxObject)
// ----------------------------------------------------------------------------
// wxMenuItem
// ctor & dtor
// -----------
-wxMenuItem::wxMenuItem(wxMenu *pParentMenu, int id,
- const wxString& strName, const wxString& strHelp,
- bool bCheckable,
+wxMenuItem::wxMenuItem(wxMenu *pParentMenu,
+ int id,
+ const wxString& strName,
+ const wxString& strHelp,
+ wxItemKind kind,
wxMenu *pSubMenu)
+ : wxMenuItemBase(pParentMenu, id, strName, strHelp, kind, pSubMenu)
{
- wxASSERT_MSG( pParentMenu != NULL, wxT("menuitem should have a menu") );
-
- // common init
- m_parentMenu = pParentMenu;
- m_subMenu = pSubMenu;
- m_id = id;
- m_isEnabled = TRUE;
- m_isChecked = FALSE;
- m_help = strHelp;
- m_isCheckable = bCheckable;
- m_text = strName;
-
// Motif-specific
m_menuBar = NULL;
m_buttonWidget = (WXWidget) NULL;
void wxMenuItem::Enable(bool bDoEnable)
{
- if ( m_isChecked != bDoEnable )
+ if ( m_isEnabled != bDoEnable )
{
if ( !IsSubMenu() )
{
}
}
-wxString wxMenuItem::GetLabel() const
+/* static */
+wxString wxMenuItemBase::GetLabelFromText(const wxString& text)
{
- return wxStripMenuCodes(m_text);
+ return wxStripMenuCodes(text);
}
-
// ----------------------------------------------------------------------------
// wxMenuItemBase
// ----------------------------------------------------------------------------
int id,
const wxString& name,
const wxString& help,
- bool isCheckable,
+ wxItemKind kind,
wxMenu *subMenu)
{
- return new wxMenuItem(parentMenu, id, name, help, isCheckable, subMenu);
+ return new wxMenuItem(parentMenu, id, name, help, kind, subMenu);
}
// ----------------------------------------------------------------------------