X-Git-Url: http://Server1/repobrowser/?p=xestiacalendar%2F.git;a=blobdiff_plain;f=source%2Fwidgets%2FXCEventMenu.cpp;h=ac3b5ec6b8cb20957f4293c340412002745413c3;hp=c52698781e111b83b169832e9ccecc9a28dad7b2;hb=902d948e5e45ad483c8e235690dda8f2bf596ad5;hpb=d695a662d768eb20351008eb6ff359c7ff3d33a7 diff --git a/source/widgets/XCEventMenu.cpp b/source/widgets/XCEventMenu.cpp index c526987..ac3b5ec 100644 --- a/source/widgets/XCEventMenu.cpp +++ b/source/widgets/XCEventMenu.cpp @@ -31,40 +31,30 @@ XCEventMenu::~XCEventMenu(){ // Destory the XCEventMenu object. - // Delete the menu items. + // Remove items from list (but don't delete). - for (std::map::iterator MenuItemIter = MenuItems.begin(); - MenuItemIter != MenuItems.end(); ++MenuItemIter){ + menuItems.clear(); - // Delete the wxMenuItem object. - - this->Disconnect(MenuItemIter->second->GetId(), wxEVT_COMMAND_MENU_SELECTED, - wxCommandEventHandler(XCEventMenu::ProcessMenuItemClick) ); - delete(MenuItemIter->second); - MenuItemIter->second = NULL; - - } - - MenuItems.clear(); + // Menu items are deleted through ~wxMenuBase() } -void XCEventMenu::AppendMenuItem(wxString ObjectName, - wxString MenuName, - wxString MenuDescription, - XCEventMenuID ItemID, - wxItemKind ItemType){ +void XCEventMenu::AppendMenuItem(wxString objectName, + wxString menuName, + wxString menuDescription, + XCEventMenuID itemID, + wxItemKind itemType){ - if (ItemType == wxITEM_SEPARATOR){ + if (itemType == wxITEM_SEPARATOR){ this->AppendSeparator(); return; } // Append a menu item to the XCEventMenu control. - wxMenuItem *menuitem = this->Append(ItemID, MenuName, MenuDescription); + wxMenuItem *menuitem = this->Append(itemID, menuName, menuDescription); this->Connect(menuitem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler(XCEventMenu::ProcessMenuItemClick)); - MenuItems.insert(std::make_pair(ObjectName.ToStdString(), menuitem)); + menuItems.insert(std::make_pair(objectName.ToStdString(), menuitem)); } @@ -79,16 +69,16 @@ void XCEventMenu::ProcessMenuItemClick( wxCommandEvent& event){ // Process an action when a menu item in the XCEventMenu // control is selected. - int ItemID = event.GetId(); + int itemID = event.GetId(); - switch (ItemID){ + switch (itemID){ case ID_EVENTMENU_EDIT: { wxCommandEvent editEntry(XCMAIN_EDITEVENT); editEntry.SetId(ID_EDITEVENT); editEntry.SetInt(eventID); - wxPostEvent(WindowPtr, editEntry); + wxPostEvent(windowPtr, editEntry); } break; case ID_EVENTMENU_DELETE: @@ -101,7 +91,7 @@ void XCEventMenu::ProcessMenuItemClick( wxCommandEvent& event){ wxCommandEvent deleteEvent(XCMAIN_DELETEEVENT); deleteEvent.SetId(ID_DELETEEVENT); deleteEvent.SetClientData(eventInfo); - wxPostEvent(WindowPtr, deleteEvent); + wxPostEvent(windowPtr, deleteEvent); } break; @@ -123,6 +113,6 @@ void XCEventMenu::SetEventID(int eventID){ void XCEventMenu::SetWindowPointer(wxWindow *windowPointer){ - WindowPtr = windowPointer; + windowPtr = windowPointer; } \ No newline at end of file