Browse Source

Make "Open in explorer" available for solution items and directories.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/3.0@4464 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 16 years ago
parent
commit
df06006d8b
  1. 16
      AddIns/ICSharpCode.SharpDevelop.addin
  2. BIN
      data/resources/StringResources.de.resources
  3. BIN
      data/resources/StringResources.es-mx.resources
  4. BIN
      data/resources/StringResources.es.resources
  5. BIN
      data/resources/StringResources.fr.resources
  6. BIN
      data/resources/StringResources.kr.resources
  7. BIN
      data/resources/StringResources.nl.resources
  8. BIN
      data/resources/StringResources.no.resources
  9. BIN
      data/resources/StringResources.tr.resources
  10. 18
      src/Main/Base/Project/Src/Commands/ProjectMenuCommands.cs
  11. 26
      src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/Commands/DefaultFileNodeCommands.cs
  12. BIN
      src/Main/StartUp/Project/Resources/StringResources.resources

16
AddIns/ICSharpCode.SharpDevelop.addin

@ -258,6 +258,9 @@ @@ -258,6 +258,9 @@
<MenuItem id = "OpenFileWith"
label = "${res:Gui.ProjectBrowser.OpenWith}"
class = "ICSharpCode.SharpDevelop.Project.Commands.OpenFileFromProjectBrowserWith"/>
<MenuItem id = "OpenFolderContainingFile"
label = "${res:OpenFileTabEventHandler.FileContainingFolderInExplorer}"
class = "ICSharpCode.SharpDevelop.Project.Commands.OpenFolderContainingFile"/>
<MenuItem id = "OpenSeparator" type = "Separator" />
<Include id="CutCopyRemoveRename" path="/SharpDevelop/Pads/ProjectBrowser/ContextMenu/CutCopyRemoveRename"/>
@ -321,6 +324,13 @@ @@ -321,6 +324,13 @@
</Path>
<Path name="/SharpDevelop/Pads/ProjectBrowser/ContextMenu/ProjectActions">
<MenuItem id = "OpenFolder"
label = "${res:Gui.ProjectBrowser.OpenFolderInExplorer}"
class = "ICSharpCode.SharpDevelop.Project.Commands.OpenProjectFolder"/>
<MenuItem id = "OpenProjectOutputFolder"
label = "${res:ProjectComponent.ContextMenu.OpenProjectOutputFolder}"
class = "ICSharpCode.SharpDevelop.Project.Commands.OpenProjectOutputFolder"/>
<Condition name="IsProcessRunning" isprocessrunning="False" isdebugging="False" action="Disable">
<MenuItem id = "Run"
label = "${res:ProjectComponent.ContextMenu.RunProject}"
@ -338,9 +348,6 @@ @@ -338,9 +348,6 @@
<MenuItem id = "GenerateDocumentation"
label = "${res:ProjectComponent.ContextMenu.GenerateDocumentation}"
class = "ICSharpCode.SharpDevelop.Project.Commands.GenerateProjectDocumentation"/>
<MenuItem id = "OpenProjectOutputFolder"
label = "${res:ProjectComponent.ContextMenu.OpenProjectOutputFolder}"
class = "ICSharpCode.SharpDevelop.Project.Commands.OpenProjectOutputFolder"/>
</Path>
<Path name = "/SharpDevelop/Pads/ProjectBrowser/ContextMenu/ReferenceFolderNode">
@ -544,6 +551,9 @@ @@ -544,6 +551,9 @@
class = "ICSharpCode.SharpDevelop.Project.Commands.AddExistingFolderToProject"/>
</MenuItem>
<MenuItem id = "AddSeparator" type = "Separator" />
<MenuItem id = "OpenFolder"
label = "${res:Gui.ProjectBrowser.OpenFolderInExplorer}"
class = "ICSharpCode.SharpDevelop.Project.Commands.OpenFolder"/>
<ComplexCondition>
<Or>

BIN
data/resources/StringResources.de.resources

Binary file not shown.

BIN
data/resources/StringResources.es-mx.resources

Binary file not shown.

BIN
data/resources/StringResources.es.resources

Binary file not shown.

BIN
data/resources/StringResources.fr.resources

Binary file not shown.

BIN
data/resources/StringResources.kr.resources

Binary file not shown.

BIN
data/resources/StringResources.nl.resources

Binary file not shown.

BIN
data/resources/StringResources.no.resources

Binary file not shown.

BIN
data/resources/StringResources.tr.resources

Binary file not shown.

18
src/Main/Base/Project/Src/Commands/ProjectMenuCommands.cs

@ -86,6 +86,22 @@ namespace ICSharpCode.SharpDevelop.Project.Commands @@ -86,6 +86,22 @@ namespace ICSharpCode.SharpDevelop.Project.Commands
}
}
/// <summary>
/// Opens the projects output folder in an explorer window.
/// </summary>
public class OpenProjectFolder : AbstractMenuCommand
{
public override void Run()
{
IProject project = ProjectService.CurrentProject;
if (project == null) {
return;
}
OpenFolder.OpenFolderInExplorer(project.Directory);
}
}
/// <summary>
/// Opens the projects output folder in an explorer window.
/// </summary>
@ -104,7 +120,7 @@ namespace ICSharpCode.SharpDevelop.Project.Commands @@ -104,7 +120,7 @@ namespace ICSharpCode.SharpDevelop.Project.Commands
Directory.CreateDirectory(outputFolder);
}
Process.Start(outputFolder);
OpenFolder.OpenFolderInExplorer(outputFolder);
}
}
}

26
src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/Commands/DefaultFileNodeCommands.cs

@ -84,7 +84,7 @@ namespace ICSharpCode.SharpDevelop.Project.Commands @@ -84,7 +84,7 @@ namespace ICSharpCode.SharpDevelop.Project.Commands
}
/// <summary>
/// Opens the containing folder in the clipboard.
/// Opens the folder containing the selected file.
/// </summary>
public class OpenFolderContainingFile : AbstractMenuCommand
{
@ -111,12 +111,34 @@ namespace ICSharpCode.SharpDevelop.Project.Commands @@ -111,12 +111,34 @@ namespace ICSharpCode.SharpDevelop.Project.Commands
public static void OpenContainingFolderInExplorer(string fileName)
{
if (File.Exists(fileName)) {
if (fileName != null && File.Exists(fileName)) {
Process.Start("explorer", "/select,\"" + fileName + "\"");
}
}
}
/// <summary>
/// Opens the selected folder in Explorer.
/// </summary>
public class OpenFolder : AbstractMenuCommand
{
public override void Run()
{
DirectoryNode directoryNode = ProjectBrowserPad.Instance.SelectedNode as DirectoryNode;
if (directoryNode != null) {
OpenFolderInExplorer(directoryNode.Directory);
return;
}
}
public static void OpenFolderInExplorer(string directory)
{
if (directory != null && Directory.Exists(directory)) {
Process.Start(directory);
}
}
}
public class ExcludeFileFromProject : AbstractMenuCommand
{
public static void ExcludeFileNode(FileNode fileNode)

BIN
src/Main/StartUp/Project/Resources/StringResources.resources

Binary file not shown.
Loading…
Cancel
Save