// // // // // $Revision$ // using System; using System.Diagnostics; using System.IO; using System.Linq; using ICSharpCode.Core; using ICSharpCode.Core.WinForms; using ICSharpCode.SharpDevelop.Gui; namespace ICSharpCode.SharpDevelop.Commands.TabStrip { public class CloseFileTab : AbstractMenuCommand { public override void Run() { IWorkbenchWindow window = Owner as IWorkbenchWindow; if (window != null) { window.CloseWindow(false); } } } public class CloseAllButThisFileTab : AbstractMenuCommand { public override void Run() { IWorkbenchWindow thisWindow = Owner as IWorkbenchWindow; foreach (IWorkbenchWindow window in WorkbenchSingleton.Workbench.WorkbenchWindowCollection.ToArray()) { if (window != thisWindow) { if (!window.CloseWindow(false)) break; } } } } public class SaveFileTab : AbstractMenuCommand { public override void Run() { IWorkbenchWindow window = Owner as IWorkbenchWindow; if (window != null) { SaveFile.Save(window); } } } public class SaveFileAsTab : AbstractMenuCommand { public override void Run() { IWorkbenchWindow window = Owner as IWorkbenchWindow; if (window != null) { SaveFileAs.Save(window); } } } /// /// Copies the path to the clipboard. /// public class CopyPathName : AbstractMenuCommand { public override void Run() { IWorkbenchWindow window = Owner as IWorkbenchWindow; ClipboardWrapper.SetText(window.ActiveViewContent.PrimaryFileName ?? ""); } } /// /// Opens the containing folder in the clipboard. /// public class OpenFolderContainingFile : AbstractMenuCommand { public override void Run() { IWorkbenchWindow window = Owner as IWorkbenchWindow; ICSharpCode.SharpDevelop.Project.Commands.OpenFolderContainingFile.OpenContainingFolderInExplorer( window.ActiveViewContent.PrimaryFileName); } } }