#define USE_LOG_WINDOW 0
#endif
-#if wxUSE_OWNER_DRAWN
+#if wxUSE_OWNER_DRAWN || defined(__WXGTK__)
#include "copy.xpm"
#endif
#if USE_LOG_WINDOW
wxMenuItem *item = new wxMenuItem(fileMenu, Menu_File_ClearLog,
_T("Clear &log\tCtrl-L"));
-#if wxUSE_OWNER_DRAWN
+#if wxUSE_OWNER_DRAWN || defined(__WXGTK__)
item->SetBitmap(copy_xpm);
#endif
fileMenu->Append(item);
void MyFrame::LogMenuEvent(const wxCommandEvent& event)
{
int id = event.GetId();
- if ( !GetMenuBar()->FindItem(id) )
- return;
wxString msg = wxString::Format(_T("Menu command %d"), id);
- if ( GetMenuBar()->FindItem(id)->IsCheckable() )
+
+ // catch all checkable menubar items and also the check item from the popup
+ // menu
+ wxMenuItem *item = GetMenuBar()->FindItem(id);
+ if ( (item && item->IsCheckable()) || id == Menu_Popup_ToBeChecked )
{
msg += wxString::Format(_T(" (the item is currently %schecked)"),
event.IsChecked() ? _T("") : _T("not "));