@@ -14,6 +14,8 @@ namespace ProjectManager.Controls
1414
1515 public class RecentProjectsMenu : ToolStripMenuItem
1616 {
17+ private ToolStripMenuItem cleanItemMenu ;
18+ private ToolStripMenuItem cleanItemToolbar ;
1719 private ToolStripMenuItem clearItemMenu ;
1820 private ToolStripMenuItem clearItemToolbar ;
1921 public event ProjectEventHandler ProjectSelected ;
@@ -26,10 +28,15 @@ public RecentProjectsMenu() : base(TextHelper.GetString("Label.RecentProjects"))
2628 ToolbarSelector . DisplayStyle = ToolStripItemDisplayStyle . Image ;
2729 ToolbarSelector . Image = Icons . Project . Img ;
2830 ToolbarSelector . Enabled = false ;
29- string text = TextHelper . GetString ( "Label.ClearRecentProjects" ) ;
30- clearItemMenu = new ToolStripMenuItem ( text ) ;
31+ string cleanLabel = TextHelper . GetString ( "Label.CleanRecentProjects" ) ;
32+ cleanItemMenu = new ToolStripMenuItem ( cleanLabel ) ;
33+ cleanItemMenu . Click += delegate { CleanAllItems ( ) ; } ;
34+ cleanItemToolbar = new ToolStripMenuItem ( cleanLabel ) ;
35+ cleanItemToolbar . Click += delegate { CleanAllItems ( ) ; } ;
36+ string clearLabel = TextHelper . GetString ( "Label.ClearRecentProjects" ) ;
37+ clearItemMenu = new ToolStripMenuItem ( clearLabel ) ;
3138 clearItemMenu . Click += delegate { ClearAllItems ( ) ; } ;
32- clearItemToolbar = new ToolStripMenuItem ( text ) ;
39+ clearItemToolbar = new ToolStripMenuItem ( clearLabel ) ;
3340 clearItemToolbar . Click += delegate { ClearAllItems ( ) ; } ;
3441 RebuildList ( ) ;
3542 }
@@ -70,8 +77,10 @@ private void RebuildList()
7077 ToolbarSelector . DropDownItems . Add ( BuildItem ( projectPath , false ) ) ;
7178 }
7279 DropDownItems . Add ( new ToolStripSeparator ( ) ) ;
80+ DropDownItems . Add ( cleanItemMenu ) ;
7381 DropDownItems . Add ( clearItemMenu ) ;
7482 ToolbarSelector . DropDownItems . Add ( new ToolStripSeparator ( ) ) ;
83+ ToolbarSelector . DropDownItems . Add ( cleanItemToolbar ) ;
7584 ToolbarSelector . DropDownItems . Add ( clearItemToolbar ) ;
7685 ToolbarSelector . Enabled = Enabled = true ;
7786 }
@@ -103,6 +112,12 @@ private ToolStripMenuItem BuildItem(string projectPath, bool showPath)
103112 return item ;
104113 }
105114
115+ private void CleanAllItems ( )
116+ {
117+ FileHelper . FilterByExisiting ( PluginMain . Settings . RecentProjects , true ) ;
118+ RebuildList ( ) ;
119+ }
120+
106121 private void ClearAllItems ( )
107122 {
108123 PluginMain . Settings . RecentProjects . Clear ( ) ;
0 commit comments