From 5313676a69481acd5458050456ae5d8330f0a735 Mon Sep 17 00:00:00 2001 From: Daniel Grunwald Date: Sun, 28 Sep 2008 12:06:53 +0000 Subject: [PATCH] Make "Open containing folder in explorer" select the item. Add "SharpDevelop.exe /addindir:path" command line argument to allow testing addins without having to install them. git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/3.0@3559 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- src/Main/Base/Project/Src/Commands/FileTabStripCommands.cs | 6 ++---- .../ProjectBrowser/Commands/DefaultFileNodeCommands.cs | 5 ++--- src/Main/StartUp/Project/SharpDevelopMain.cs | 7 +++++++ 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/src/Main/Base/Project/Src/Commands/FileTabStripCommands.cs b/src/Main/Base/Project/Src/Commands/FileTabStripCommands.cs index 4b0f265aae..c8d4d5575f 100644 --- a/src/Main/Base/Project/Src/Commands/FileTabStripCommands.cs +++ b/src/Main/Base/Project/Src/Commands/FileTabStripCommands.cs @@ -84,10 +84,8 @@ namespace ICSharpCode.SharpDevelop.Commands.TabStrip public override void Run() { IWorkbenchWindow window = Owner as IWorkbenchWindow; - if (File.Exists(window.ActiveViewContent.PrimaryFileName)) { - string folder = Path.GetDirectoryName(window.ActiveViewContent.PrimaryFileName); - Process.Start(folder); - } + ICSharpCode.SharpDevelop.Project.Commands.OpenFolderContainingFile.OpenContainingFolderInExplorer( + window.ActiveViewContent.PrimaryFileName); } } } diff --git a/src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/Commands/DefaultFileNodeCommands.cs b/src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/Commands/DefaultFileNodeCommands.cs index 5b49b59a91..6310067b2e 100644 --- a/src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/Commands/DefaultFileNodeCommands.cs +++ b/src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/Commands/DefaultFileNodeCommands.cs @@ -109,11 +109,10 @@ namespace ICSharpCode.SharpDevelop.Project.Commands } } - void OpenContainingFolderInExplorer(string fileName) + public static void OpenContainingFolderInExplorer(string fileName) { if (File.Exists(fileName)) { - string folder = Path.GetDirectoryName(fileName); - Process.Start(folder); + Process.Start("explorer", "/select,\"" + fileName + "\""); } } } diff --git a/src/Main/StartUp/Project/SharpDevelopMain.cs b/src/Main/StartUp/Project/SharpDevelopMain.cs index addb4fd526..5cdb275419 100644 --- a/src/Main/StartUp/Project/SharpDevelopMain.cs +++ b/src/Main/StartUp/Project/SharpDevelopMain.cs @@ -135,6 +135,13 @@ namespace ICSharpCode.SharpDevelop startup.AddAddInsFromDirectory(Path.Combine(startup.ApplicationRootPath, "AddIns")); + // allows testing addins without having to install them + foreach (string parameter in SplashScreenForm.GetParameterList()) { + if (parameter.StartsWith("addindir:", StringComparison.OrdinalIgnoreCase)) { + startup.AddAddInsFromDirectory(parameter.Substring(9)); + } + } + SharpDevelopHost host = new SharpDevelopHost(AppDomain.CurrentDomain, startup); string[] fileList = SplashScreenForm.GetRequestedFileList();