// Setup the label.
- lblCalendarName = new wxStaticText(this, wxID_ANY, wxString(calendarName), wxDefaultPosition, wxDefaultSize, 0, "");
+ lblCalendarName = new wxStaticText(this, wxID_ANY, wxString(calendarName.c_str(), wxConvUTF8), wxDefaultPosition, wxDefaultSize, 0, "");
// Setup the colour.
XCCalendarListCalendarCtrl::~XCCalendarListCalendarCtrl(){
// Delete the controls.
+
+ chkShowCalendar->Disconnect(wxEVT_COMMAND_CHECKBOX_CLICKED, wxMouseEventHandler(XCCalendarListCalendarCtrl::ShowAllCheckboxClick), NULL, this);
+ chkShowCalendar->Disconnect(wxEVT_RIGHT_UP, wxMouseEventHandler(XCCalendarListCalendarCtrl::PopupMenu), NULL, this);
+ lblCalendarName->Disconnect(wxEVT_RIGHT_UP, wxMouseEventHandler(XCCalendarListCalendarCtrl::PopupMenu), NULL, this);
+ pnlColour->Disconnect(wxEVT_RIGHT_UP, wxMouseEventHandler(XCCalendarListCalendarCtrl::PopupMenu), NULL, this);
+ Disconnect(wxEVT_RIGHT_UP, wxMouseEventHandler(XCCalendarListCalendarCtrl::PopupMenu), NULL, this);
+
+ szrMain->Clear();
+
+ delete chkShowCalendar;
+ chkShowCalendar = nullptr;
+
+ delete lblCalendarName;
+ lblCalendarName = nullptr;
+
+ delete imgCalendarIcon;
+ imgCalendarIcon = nullptr;
+
+ delete calendarMenu;
+ calendarMenu = nullptr;
+
+ delete pnlColour;
+ pnlColour = nullptr;
+
+ this->SetSizer(nullptr, true);
}