⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 browsertoolbar.cs

📁 c#源代码
💻 CS
字号:
/* ***********************************************************
 * 
 * Help 2.0 Environment for SharpDevelop
 * Navigation Toolbar
 * Copyright (c) 2005, Mathias Simmack. All rights reserved.
 * 
 * ********************************************************* */

#define AddToFavorites_BringPadToFront
//#define ChangeTopics_BringPadToFront

namespace HtmlHelp2Browser
{
	using System;
	using System.Windows.Forms;
	using ICSharpCode.Core.AddIns.Codons;
	using ICSharpCode.SharpDevelop.Gui;
	using ICSharpCode.Core.Services;
	using HtmlHelp2;
	using HtmlHelp2Service;

	public class CallBrowserGoBack : AbstractMenuCommand
	{
		public override void Run()
		{
			IWorkbenchWindow window = WorkbenchSingleton.Workbench.ActiveWorkbenchWindow;
			if(window != null && window.ViewContent is HtmlHelp2BrowserPane)
			{
				HtmlHelp2BrowserControl browser = (HtmlHelp2BrowserControl)((HtmlHelp2BrowserPane)window.ViewContent).Control;
				browser.GoBack();
			}
		}
	}

	public class CallBrowserGoForward : AbstractMenuCommand
	{
		public override void Run()
		{
			IWorkbenchWindow window = WorkbenchSingleton.Workbench.ActiveWorkbenchWindow;
			if(window != null && window.ViewContent is HtmlHelp2BrowserPane)
			{
				HtmlHelp2BrowserControl browser = (HtmlHelp2BrowserControl)((HtmlHelp2BrowserPane)window.ViewContent).Control;
				browser.GoForward();
			}
		}
	}

	public class CallBrowserStop : AbstractMenuCommand
	{
		public override void Run()
		{
			IWorkbenchWindow window = WorkbenchSingleton.Workbench.ActiveWorkbenchWindow;
			if(window != null && window.ViewContent is HtmlHelp2BrowserPane)
			{
				HtmlHelp2BrowserControl browser = (HtmlHelp2BrowserControl)((HtmlHelp2BrowserPane)window.ViewContent).Control;
				browser.StopLoadingSite();
			}
		}
	}

	public class CallBrowserRefresh : AbstractMenuCommand
	{
		public override void Run()
		{
			IWorkbenchWindow window = WorkbenchSingleton.Workbench.ActiveWorkbenchWindow;
			if(window != null && window.ViewContent is HtmlHelp2BrowserPane)
			{
				HtmlHelp2BrowserControl browser = (HtmlHelp2BrowserControl)((HtmlHelp2BrowserPane)window.ViewContent).Control;
				browser.RefreshSite();
			}
		}
	}

	public class CallBrowserHomepage : AbstractMenuCommand
	{
		public override void Run()
		{
			HtmlHelp2BrowserPane browserPane = ShowHelpBrowser.GetActiveHelp2BrowserView();
			if(browserPane != null)
			{
				HtmlHelp2BrowserControl browser  = (HtmlHelp2BrowserControl)browserPane.Control;
				HtmlHelp2Environment h2env = (HtmlHelp2Environment)ServiceManager.Services.GetService(typeof(HtmlHelp2Environment));
				if(h2env.DefaultPage != "") browser.Navigate(h2env.DefaultPage);
			}
		}
	}

	public class CallBrowserSearchpage : AbstractMenuCommand
	{
		public override void Run()
		{
			HtmlHelp2BrowserPane browserPane = ShowHelpBrowser.GetActiveHelp2BrowserView();
			if(browserPane != null)
			{
				HtmlHelp2BrowserControl browser  = (HtmlHelp2BrowserControl)browserPane.Control;
				HtmlHelp2Environment h2env = (HtmlHelp2Environment)ServiceManager.Services.GetService(typeof(HtmlHelp2Environment));
				if(h2env.SearchPage != null) browser.Navigate(h2env.SearchPage);
			}			
		}
	}

	public class CallAddToFavorites : AbstractMenuCommand
	{
		public override void Run()
		{
			string currentUrl   = "";
			string currentTitle = "";

			IWorkbenchWindow window = WorkbenchSingleton.Workbench.ActiveWorkbenchWindow;
			if(window != null && window.ViewContent is HtmlHelp2BrowserPane)
			{
				currentUrl   = ((HtmlHelp2BrowserPane)window.ViewContent).FileName;
				currentTitle = ((HtmlHelp2BrowserPane)window.ViewContent).TitleName;
			}

			if(currentUrl != "" && currentTitle != "")
			{
				HtmlHelp2FavoritesPad favorites = (HtmlHelp2FavoritesPad)WorkbenchSingleton.Workbench.GetPad(typeof(HtmlHelp2FavoritesPad));
				if(favorites != null)
				{
					favorites.AddToFavorites(currentTitle, currentUrl);
					#if AddToFavorites_BringPadToFront
					favorites.BringPadToFront();
					#endif
				}
			}
		}
	}

	public class CallNewWindow : AbstractMenuCommand
	{
		public override void Run()
		{
			string currentUrl = "";

			IWorkbenchWindow window = WorkbenchSingleton.Workbench.ActiveWorkbenchWindow;
			if(window != null && window.ViewContent is HtmlHelp2BrowserPane)
			{
				currentUrl = ((HtmlHelp2BrowserPane)window.ViewContent).FileName;
			}

			if(currentUrl != "")
			{
				HtmlHelp2BrowserPane newPane = ShowHelpBrowser.CreateNewHelp2BrowserView();
				newPane.Load(currentUrl);
			}
		}
	}

	public class CallBrowserSyncToc : AbstractMenuCommand
	{
		public override void Run()
		{
			string currentUrl = "";

			IWorkbenchWindow window = WorkbenchSingleton.Workbench.ActiveWorkbenchWindow;
			if(window != null && window.ViewContent is HtmlHelp2BrowserPane)
			{
				currentUrl = ((HtmlHelp2BrowserPane)window.ViewContent).FileName;
			}

			if(currentUrl != "")
			{
				HtmlHelp2TocPad toc = (HtmlHelp2TocPad)WorkbenchSingleton.Workbench.GetPad(typeof(HtmlHelp2TocPad));
				if(toc != null)
				{
					toc.SyncToc(currentUrl);
					toc.BringPadToFront();
				}
			}
		}
	}

	public class CallBrowserPrevTopic : AbstractMenuCommand
	{
		public override void Run()
		{
			HtmlHelp2TocPad toc = (HtmlHelp2TocPad)WorkbenchSingleton.Workbench.GetPad(typeof(HtmlHelp2TocPad));
			if(toc != null)
			{
				try
				{
					toc.GetPrevFromNode();
				}
				catch
				{
					string currentUrl       = "";
					IWorkbenchWindow window = WorkbenchSingleton.Workbench.ActiveWorkbenchWindow;
					if(window != null && window.ViewContent is HtmlHelp2BrowserPane)
					{
						currentUrl = ((HtmlHelp2BrowserPane)window.ViewContent).FileName;
						toc.GetPrevFromUrl(currentUrl);
					}
				}
				#if ChangeTopics_BringPadToFront
				toc.BringPadToFront();
				#endif
			}
		}
	}

	public class CallBrowserNextTopic : AbstractMenuCommand
	{
		public override void Run()
		{
			HtmlHelp2TocPad toc = (HtmlHelp2TocPad)WorkbenchSingleton.Workbench.GetPad(typeof(HtmlHelp2TocPad));
			if(toc != null)
			{
				try
				{
					toc.GetNextFromNode();
				}
				catch
				{
					string currentUrl       = "";
					IWorkbenchWindow window = WorkbenchSingleton.Workbench.ActiveWorkbenchWindow;
					if(window != null && window.ViewContent is HtmlHelp2BrowserPane)
					{
						currentUrl = ((HtmlHelp2BrowserPane)window.ViewContent).FileName;
						toc.GetNextFromUrl(currentUrl);
					}
				}
				#if ChangeTopics_BringPadToFront
				toc.BringPadToFront();
				#endif
			}
		}
	}

	public class CallTextZoom : AbstractMenuCommand
	{
		public override void Run()
		{
			IWorkbenchWindow window = WorkbenchSingleton.Workbench.ActiveWorkbenchWindow;
			if(window != null && window.ViewContent is HtmlHelp2BrowserPane)
			{
				HtmlHelp2BrowserControl browser = (HtmlHelp2BrowserControl)((HtmlHelp2BrowserPane)window.ViewContent).Control;
				browser.ZoomText();
			}
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -