From 5369b65f1cebb76c3646a9b637b0699333412772 Mon Sep 17 00:00:00 2001 From: Matt Ward Date: Sat, 21 Apr 2012 16:21:29 +0100 Subject: [PATCH] Fix view in browser for html files. --- .../AspNet.Mvc/Project/AspNet.Mvc.csproj | 1 - .../AspNet.Mvc/Project/Src/ViewInBrowser.cs | 77 ------------------- .../Project/ICSharpCode.SharpDevelop.addin | 2 +- .../Project/ICSharpCode.SharpDevelop.csproj | 1 + .../Project/Src/Commands/ViewInBrowser.cs | 32 ++++++++ 5 files changed, 34 insertions(+), 79 deletions(-) delete mode 100644 src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/ViewInBrowser.cs create mode 100644 src/Main/Base/Project/Src/Commands/ViewInBrowser.cs diff --git a/src/AddIns/BackendBindings/AspNet.Mvc/Project/AspNet.Mvc.csproj b/src/AddIns/BackendBindings/AspNet.Mvc/Project/AspNet.Mvc.csproj index 5fdddc6f264..34524f74cd4 100644 --- a/src/AddIns/BackendBindings/AspNet.Mvc/Project/AspNet.Mvc.csproj +++ b/src/AddIns/BackendBindings/AspNet.Mvc/Project/AspNet.Mvc.csproj @@ -231,7 +231,6 @@ - diff --git a/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/ViewInBrowser.cs b/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/ViewInBrowser.cs deleted file mode 100644 index 4a89a3e636f..00000000000 --- a/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/ViewInBrowser.cs +++ /dev/null @@ -1,77 +0,0 @@ -//// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt) -//// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) -// -//using System; -//using System.IO; -//using System.Linq; -// -//using ICSharpCode.Core; -//using ICSharpCode.SharpDevelop.Gui.OptionPanels; -//using ICSharpCode.SharpDevelop.Project; -//using ICSharpCode.SharpDevelop.Project.Commands; -// -//namespace ICSharpCode.AspNet.Mvc -//{ -// public class ViewInBrowser : AbstractMenuCommand -// { -// public override void Run() -// { -// var node = ProjectBrowserPad.Instance.SelectedNode as FileNode; -// if (node == null) { -// return; -// } -// -// var project = ProjectService.CurrentProject as CompilableProject; -// if (project == null) { -// return; -// } -// -// if (!project.IsWebProject) { -// MessageService.ShowError("${res:ProjectComponent.ContextMenu.NotAWebProject}"); -// return; -// } -// -// if (!WebProjectService.IsIISOrIISExpressInstalled) { -// MessageService.ShowError("${res:ICSharpCode.WebProjectOptionsPanel.IISNotFound}"); -// return; -// } -// -// string fileName = node.FileName; -// -//// // set project options -//// project.StartAction = StartAction.StartURL; -//// string directoryName = Path.GetDirectoryName(project.FileName) + "\\"; -//// project.StartUrl = fileName.Replace(directoryName, "/").Replace("\\", "/"); -// -// // set web server options -// string projectName = project.Name; -// WebProjectOptions existingOptions = WebProjectsOptions.Instance.GetWebProjectOptions(projectName); -// -// var options = new WebProjectOptions { -// Data = new WebProjectDebugData { -// WebServer = WebProjectService.IsIISExpressInstalled ? WebServer.IISExpress : WebServer.IIS, -// Port = (existingOptions != null && existingOptions.Data != null) ? existingOptions.Data.Port : "8080", //TODO: port collision detection -// ProjectUrl = string.Format("{0}/{1}", WebBehavior.LocalHost, project.Name) -// }, -// ProjectName = projectName -// }; -// -// if (options.Data.WebServer == WebServer.IISExpress) { -// options.Data.ProjectUrl = string.Format( -// @"{0}:{1}/{2}", WebBehavior.LocalHost, options.Data.Port, projectName); -// } -// -// WebProjectsOptions.Instance.SetWebProjectOptions(projectName, options); -// -// // create virtual directory -// string error = WebProjectService.CreateVirtualDirectory( -// options.Data.WebServer, -// projectName, -// Path.GetDirectoryName(ProjectService.CurrentProject.FileName)); -// LoggingService.Info(error ?? string.Empty); -// -// // RunProject -// new RunProject().Run(); -// } -// } -//} diff --git a/src/Main/Base/Project/ICSharpCode.SharpDevelop.addin b/src/Main/Base/Project/ICSharpCode.SharpDevelop.addin index 294b954cc3e..959cbe31818 100755 --- a/src/Main/Base/Project/ICSharpCode.SharpDevelop.addin +++ b/src/Main/Base/Project/ICSharpCode.SharpDevelop.addin @@ -490,7 +490,7 @@ - + ListViewPad.xaml + diff --git a/src/Main/Base/Project/Src/Commands/ViewInBrowser.cs b/src/Main/Base/Project/Src/Commands/ViewInBrowser.cs new file mode 100644 index 00000000000..2396a7417d1 --- /dev/null +++ b/src/Main/Base/Project/Src/Commands/ViewInBrowser.cs @@ -0,0 +1,32 @@ +// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt) +// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) + +using System; +using System.Diagnostics; +using System.IO; +using System.Linq; + +using ICSharpCode.Core; +using ICSharpCode.SharpDevelop.Gui.OptionPanels; +using ICSharpCode.SharpDevelop.Project; +using ICSharpCode.SharpDevelop.Project.Commands; + +namespace ICSharpCode.SharpDevelop.Project.Commands +{ + public class ViewInBrowser : AbstractMenuCommand + { + public override void Run() + { + var node = ProjectBrowserPad.Instance.SelectedNode as FileNode; + if (node == null) { + return; + } + + try { + Process.Start(node.FileName); + } catch (Exception ex) { + MessageService.ShowMessage(ex.Message); + } + } + } +}