/// <summary>
 /// When a project is removed, empty the dictionary.
 /// </summary>
 /// <param name="project">Removed project</param>
 void OnSolutionItemsChanged(object sender, ProjectChangedEventArg e)
 {
     if (e.Action == EventAction.ProjectRemoved)
     {
         EnvDTE.Project project = new ProjectNode(e.Project).Project;
         UnregisterProject(project);
     }
     if (e.Action == EventAction.ProjectAdded)
     {
         var prj = new ProjectNode(e.Project);
         RegisterProject(prj);
     }
     if (e.Action == EventAction.ProjectChanged)
     {
         // TODO changement de nom de projet
     }
     if (e.Action == EventAction.SolutionLoaded)
     {
         // On laisse la main au modéle
     }
 }
 /// <summary>
 /// Called when [references changed].
 /// </summary>
 /// <param name="e">The e.</param>
 private void OnProjectChanged(object sender, ProjectChangedEventArg e)
 {
     if (ProjectChanged != null)
     {
         ProjectChanged(this, e);
     }
 }
 /// <summary>
 /// S_solutions the listener_ reference changed.
 /// </summary>
 /// <param name="sender">The sender.</param>
 /// <param name="e">The e.</param>
 void OnProjectChanged(object sender, ProjectChangedEventArg e)
 {
     //Debug.WriteLine(string.Format("{0} {1}", e.Action, e.Project.Name));
     if (ProjectChanged != null)
         ProjectChanged(sender, e);
 }