void PHPWorkspace::DeleteProject(const wxString& project) { PHPProject::Ptr_t p = GetProject(project); CHECK_PTR_RET(p); m_projects.erase(project); if(p->IsActive() && !m_projects.empty()) { // we are removing the active project, select a new project to be the active PHPProject::Ptr_t newActiveProject = m_projects.begin()->second; newActiveProject->SetIsActive(true); newActiveProject->Save(); } Save(); // save the workspace }