git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@316 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61shortcuts
|
Before Width: | Height: | Size: 227 B After Width: | Height: | Size: 227 B |
|
Before Width: | Height: | Size: 236 B After Width: | Height: | Size: 236 B |
|
Before Width: | Height: | Size: 228 B After Width: | Height: | Size: 228 B |
|
Before Width: | Height: | Size: 1020 B After Width: | Height: | Size: 1020 B |
|
Before Width: | Height: | Size: 263 B After Width: | Height: | Size: 263 B |
|
Before Width: | Height: | Size: 227 B |
|
Before Width: | Height: | Size: 226 B |
|
Before Width: | Height: | Size: 700 B |
|
Before Width: | Height: | Size: 1.0 KiB |
|
Before Width: | Height: | Size: 730 B |
@ -1,376 +0,0 @@ |
|||||||
/* *********************************************************** |
|
||||||
* |
|
||||||
* Help 2.0 Environment for SharpDevelop |
|
||||||
* Browser Control |
|
||||||
* Based on "HtmlViewPane.cs" by Mike Krueger |
|
||||||
* |
|
||||||
* ********************************************************* */ |
|
||||||
|
|
||||||
//#define ChangeTopics_BringPadToFront
|
|
||||||
|
|
||||||
namespace HtmlHelp2Browser |
|
||||||
{ |
|
||||||
using System; |
|
||||||
using System.ComponentModel; |
|
||||||
using System.Drawing; |
|
||||||
using System.Runtime.InteropServices; |
|
||||||
using System.Windows.Forms; |
|
||||||
using ICSharpCode.Core; |
|
||||||
using ICSharpCode.SharpDevelop.Gui; |
|
||||||
using ICSharpCode.SharpDevelop.BrowserDisplayBinding; |
|
||||||
using HtmlHelp2; |
|
||||||
using HtmlHelp2Service; |
|
||||||
|
|
||||||
|
|
||||||
public class HtmlHelp2BrowserPane : AbstractViewContent |
|
||||||
{ |
|
||||||
protected HtmlHelp2BrowserControl help2Browser; |
|
||||||
|
|
||||||
public override Control Control { |
|
||||||
get { |
|
||||||
return help2Browser; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
public override bool IsDirty { |
|
||||||
get { |
|
||||||
return false; |
|
||||||
} |
|
||||||
set { |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
public override bool IsViewOnly { |
|
||||||
get { |
|
||||||
return true; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
public HtmlHelp2BrowserPane(string fileName) |
|
||||||
{ |
|
||||||
help2Browser = new HtmlHelp2BrowserControl(); |
|
||||||
help2Browser.AxWebBrowser.DocumentTitleChanged += new EventHandler(TitleChanged); |
|
||||||
if(fileName != null) this.Load(fileName); |
|
||||||
else this.Load("about:blank"); |
|
||||||
} |
|
||||||
|
|
||||||
public override void Load(string url) |
|
||||||
{ |
|
||||||
help2Browser.Navigate(url); |
|
||||||
this.FileName = url; |
|
||||||
} |
|
||||||
|
|
||||||
public override void Save(string url) |
|
||||||
{ |
|
||||||
Load(url); |
|
||||||
} |
|
||||||
|
|
||||||
void TitleChanged(object sender, EventArgs e) |
|
||||||
{ |
|
||||||
this.TitleName = help2Browser.AxWebBrowser.DocumentTitle; |
|
||||||
this.FileName = help2Browser.AxWebBrowser.Url.ToString(); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
|
|
||||||
public class HtmlHelp2BrowserControl : UserControl |
|
||||||
{ |
|
||||||
ExtendedWebBrowser axWebBrowser = null; |
|
||||||
ToolStripButton goBack = new ToolStripButton(); |
|
||||||
ToolStripButton goForward = new ToolStripButton(); |
|
||||||
ToolStripButton stopSite = new ToolStripButton(); |
|
||||||
ToolStripButton refreshSite = new ToolStripButton(); |
|
||||||
ToolStripButton homePage = new ToolStripButton(); |
|
||||||
ToolStripButton searchPage = new ToolStripButton(); |
|
||||||
ToolStripButton addToFavorites = new ToolStripButton(); |
|
||||||
ToolStripComboBox urlTextbox = new ToolStripComboBox(); |
|
||||||
ToolStripButton newWindow = new ToolStripButton(); |
|
||||||
ToolStripButton syncToc = new ToolStripButton(); |
|
||||||
ToolStripButton prevTocTopic = new ToolStripButton(); |
|
||||||
ToolStripButton nextTocTopic = new ToolStripButton(); |
|
||||||
// int zoomFactor = 2;
|
|
||||||
|
|
||||||
|
|
||||||
public WebBrowser AxWebBrowser |
|
||||||
{ |
|
||||||
get { |
|
||||||
return axWebBrowser; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
public HtmlHelp2BrowserControl() |
|
||||||
{ |
|
||||||
Size = new Size(800, 800); |
|
||||||
Dock = DockStyle.Fill; |
|
||||||
|
|
||||||
axWebBrowser = new ExtendedWebBrowser(); |
|
||||||
axWebBrowser.Dock = DockStyle.Fill; |
|
||||||
axWebBrowser.StatusTextChanged += new EventHandler(this.StatusTextChanged); |
|
||||||
axWebBrowser.Navigating += new WebBrowserNavigatingEventHandler(this.BeforeNavigating); |
|
||||||
axWebBrowser.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(this.DocumentCompleted); |
|
||||||
axWebBrowser.NewWindowExtended += new NewWindowExtendedEventHandler(this.NewBrowserWindow); |
|
||||||
Controls.Add(axWebBrowser); |
|
||||||
|
|
||||||
ToolStrip toolStrip = new ToolStrip(); |
|
||||||
toolStrip.Dock = DockStyle.Top; |
|
||||||
toolStrip.AllowItemReorder = false; |
|
||||||
Controls.Add(toolStrip); |
|
||||||
toolStrip.Items.Add(goBack); |
|
||||||
goBack.Click += new EventHandler(this.GoBack); |
|
||||||
goBack.Enabled = false; |
|
||||||
goBack.ImageIndex = 0; |
|
||||||
toolStrip.Items.Add(goForward); |
|
||||||
goForward.Click += new EventHandler(this.GoForward); |
|
||||||
goForward.Enabled = false; |
|
||||||
goForward.ImageIndex = 1; |
|
||||||
toolStrip.Items.Add(stopSite); |
|
||||||
stopSite.Click += new EventHandler(this.StopPageLoading); |
|
||||||
stopSite.Enabled = false; |
|
||||||
stopSite.ImageIndex = 2; |
|
||||||
toolStrip.Items.Add(refreshSite); |
|
||||||
refreshSite.Click += new EventHandler(this.RefreshPage); |
|
||||||
refreshSite.ImageIndex = 3; |
|
||||||
toolStrip.Items.Add(homePage); |
|
||||||
homePage.Click += new EventHandler(this.CallHomepage); |
|
||||||
homePage.ImageIndex = 4; |
|
||||||
toolStrip.Items.Add(new ToolStripSeparator()); |
|
||||||
toolStrip.Items.Add(searchPage); |
|
||||||
searchPage.Click += new EventHandler(this.CallSearchpage); |
|
||||||
searchPage.ImageIndex = 5; |
|
||||||
toolStrip.Items.Add(addToFavorites); |
|
||||||
addToFavorites.Click += new EventHandler(this.AddToHelpFavorites); |
|
||||||
addToFavorites.Enabled = false; |
|
||||||
addToFavorites.ImageIndex = 6; |
|
||||||
toolStrip.Items.Add(new ToolStripSeparator()); |
|
||||||
toolStrip.Items.Add(urlTextbox); |
|
||||||
urlTextbox.AutoCompleteMode = AutoCompleteMode.Suggest; |
|
||||||
urlTextbox.AutoCompleteSource = AutoCompleteSource.HistoryList; |
|
||||||
urlTextbox.DropDownWidth = 300; |
|
||||||
urlTextbox.Size = new Size(300, toolStrip.Items[0].Height); |
|
||||||
urlTextbox.KeyDown += new KeyEventHandler(this.UrlTextboxKeyDown); |
|
||||||
urlTextbox.SelectedIndexChanged += new EventHandler(this.UrlTextboxSelectedIndexChanged); |
|
||||||
toolStrip.Items.Add(new ToolStripSeparator()); |
|
||||||
toolStrip.Items.Add(newWindow); |
|
||||||
newWindow.Click += new EventHandler(this.NewHelpWindow); |
|
||||||
newWindow.ImageIndex = 7; |
|
||||||
toolStrip.Items.Add(syncToc); |
|
||||||
syncToc.Click += new EventHandler(this.SyncToc); |
|
||||||
syncToc.Enabled = false; |
|
||||||
syncToc.ImageIndex = 8; |
|
||||||
toolStrip.Items.Add(new ToolStripSeparator()); |
|
||||||
toolStrip.Items.Add(prevTocTopic); |
|
||||||
prevTocTopic.Click += new EventHandler(this.PreviousTocTopic); |
|
||||||
prevTocTopic.Enabled = false; |
|
||||||
prevTocTopic.ImageIndex = 9; |
|
||||||
toolStrip.Items.Add(nextTocTopic); |
|
||||||
nextTocTopic.Click += new EventHandler(this.NextTocTopic); |
|
||||||
nextTocTopic.Enabled = false; |
|
||||||
nextTocTopic.ImageIndex = 10; |
|
||||||
|
|
||||||
// TODO: name those buttons :o)
|
|
||||||
|
|
||||||
toolStrip.ImageList = new ImageList(); |
|
||||||
toolStrip.ImageList.Images.Add(ResourcesHelper.GetBitmap("HtmlHelp2.16x16.Back.png")); |
|
||||||
toolStrip.ImageList.Images.Add(ResourcesHelper.GetBitmap("HtmlHelp2.16x16.Forward.png")); |
|
||||||
toolStrip.ImageList.Images.Add(ResourcesHelper.GetBitmap("HtmlHelp2.16x16.Stop.png")); |
|
||||||
toolStrip.ImageList.Images.Add(ResourcesHelper.GetBitmap("HtmlHelp2.16x16.Refresh.png")); |
|
||||||
toolStrip.ImageList.Images.Add(ResourcesHelper.GetBitmap("HtmlHelp2.16x16.Home.gif")); |
|
||||||
toolStrip.ImageList.Images.Add(ResourcesHelper.GetBitmap("HtmlHelp2.16x16.SearchSite.gif")); |
|
||||||
toolStrip.ImageList.Images.Add(ResourcesHelper.GetBitmap("HtmlHelp2.16x16.AddToFavorites.png")); |
|
||||||
toolStrip.ImageList.Images.Add(ResourcesHelper.GetBitmap("HtmlHelp2.16x16.NewWindow.png")); |
|
||||||
toolStrip.ImageList.Images.Add(ResourcesHelper.GetBitmap("HtmlHelp2.16x16.SyncToc.png")); |
|
||||||
toolStrip.ImageList.Images.Add(ResourcesHelper.GetBitmap("HtmlHelp2.16x16.PrevTopic.png")); |
|
||||||
toolStrip.ImageList.Images.Add(ResourcesHelper.GetBitmap("HtmlHelp2.16x16.NextTopic.png")); |
|
||||||
} |
|
||||||
|
|
||||||
#region WebBrowser Events
|
|
||||||
private void StatusTextChanged(object sender, EventArgs e) |
|
||||||
{ |
|
||||||
StatusBarService.SetMessage(axWebBrowser.StatusText); |
|
||||||
} |
|
||||||
|
|
||||||
private void BeforeNavigating(object sender, WebBrowserNavigatingEventArgs e) |
|
||||||
{ |
|
||||||
stopSite.Enabled = true; |
|
||||||
} |
|
||||||
|
|
||||||
private void DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) |
|
||||||
{ |
|
||||||
// try {
|
|
||||||
// object arg = System.Reflection.Missing.Value;
|
|
||||||
// object dummy = 0;
|
|
||||||
//
|
|
||||||
// axWebBrowser.ExecWB(SHDocVw.OLECMDID.OLECMDID_ZOOM,
|
|
||||||
// SHDocVw.OLECMDEXECOPT.OLECMDEXECOPT_PROMPTUSER,
|
|
||||||
// ref arg,
|
|
||||||
// ref dummy);
|
|
||||||
//
|
|
||||||
// zoomFactor = (int)dummy;
|
|
||||||
// }
|
|
||||||
// catch {
|
|
||||||
// }
|
|
||||||
|
|
||||||
PadDescriptor toc = WorkbenchSingleton.Workbench.GetPad(typeof(HtmlHelp2TocPad)); |
|
||||||
|
|
||||||
// update URL textbox
|
|
||||||
string currentUrl = e.Url.ToString(); |
|
||||||
urlTextbox.Text = currentUrl; |
|
||||||
|
|
||||||
// update toolbar
|
|
||||||
goBack.Enabled = axWebBrowser.CanGoBack; |
|
||||||
goForward.Enabled = axWebBrowser.CanGoForward; |
|
||||||
stopSite.Enabled = false; |
|
||||||
addToFavorites.Enabled = currentUrl.StartsWith("ms-help://"); |
|
||||||
syncToc.Enabled = addToFavorites.Enabled; |
|
||||||
|
|
||||||
prevTocTopic.Enabled = (toc == null || ((HtmlHelp2TocPad)toc.PadContent).IsNotFirstNode); |
|
||||||
nextTocTopic.Enabled = (toc == null || ((HtmlHelp2TocPad)toc.PadContent).IsNotLastNode); |
|
||||||
|
|
||||||
// hilite (full-text search only!)
|
|
||||||
ShowHelpBrowser.HighlightDocument(); |
|
||||||
} |
|
||||||
|
|
||||||
private void NewBrowserWindow(object sender, NewWindowExtendedEventArgs e) |
|
||||||
{ |
|
||||||
HtmlHelp2BrowserPane help2Browser = new HtmlHelp2BrowserPane(""); |
|
||||||
WorkbenchSingleton.Workbench.ShowView(help2Browser); |
|
||||||
help2Browser.WorkbenchWindow.SelectWindow(); |
|
||||||
ExtendedWebBrowser newBrowser = (ExtendedWebBrowser)((HtmlHelp2BrowserControl)help2Browser.Control).AxWebBrowser; |
|
||||||
newBrowser.Navigate(e.Url); |
|
||||||
e.Cancel = true; |
|
||||||
} |
|
||||||
#endregion
|
|
||||||
|
|
||||||
#region Toolbar Command
|
|
||||||
public void Navigate(string url) |
|
||||||
{ |
|
||||||
this.AddTermToList(url); |
|
||||||
axWebBrowser.Navigate(url); |
|
||||||
} |
|
||||||
|
|
||||||
private void GoBack(object sender, EventArgs e) |
|
||||||
{ |
|
||||||
if(axWebBrowser.CanGoBack) axWebBrowser.GoBack(); |
|
||||||
} |
|
||||||
|
|
||||||
private void GoForward(object sender, EventArgs e) |
|
||||||
{ |
|
||||||
if(axWebBrowser.CanGoForward) axWebBrowser.GoForward(); |
|
||||||
} |
|
||||||
|
|
||||||
private void StopPageLoading(object sender, EventArgs e) |
|
||||||
{ |
|
||||||
axWebBrowser.Stop(); |
|
||||||
} |
|
||||||
|
|
||||||
private void RefreshPage(object sender, EventArgs e) |
|
||||||
{ |
|
||||||
axWebBrowser.Refresh(); |
|
||||||
} |
|
||||||
|
|
||||||
private void CallHomepage(object sender, EventArgs e) |
|
||||||
{ |
|
||||||
this.Navigate(HtmlHelp2Environment.DefaultPage); |
|
||||||
} |
|
||||||
|
|
||||||
private void CallSearchpage(object sender, EventArgs e) |
|
||||||
{ |
|
||||||
this.Navigate(HtmlHelp2Environment.SearchPage); |
|
||||||
} |
|
||||||
|
|
||||||
private void AddToHelpFavorites(object sender, EventArgs e) |
|
||||||
{ |
|
||||||
PadDescriptor favorites = WorkbenchSingleton.Workbench.GetPad(typeof(HtmlHelp2FavoritesPad)); |
|
||||||
if(favorites != null) { |
|
||||||
((HtmlHelp2FavoritesPad)favorites.PadContent).AddToFavorites(axWebBrowser.DocumentTitle, axWebBrowser.Url.ToString()); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
private void NewHelpWindow(object sender, EventArgs e) |
|
||||||
{ |
|
||||||
if(axWebBrowser.Url != null) { |
|
||||||
HtmlHelp2BrowserPane newPage = ShowHelpBrowser.CreateNewHelp2BrowserView(); |
|
||||||
newPage.Load(axWebBrowser.Url.ToString()); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
private void SyncToc(object sender, EventArgs e) |
|
||||||
{ |
|
||||||
if(axWebBrowser.Url != null) { |
|
||||||
PadDescriptor toc = WorkbenchSingleton.Workbench.GetPad(typeof(HtmlHelp2TocPad)); |
|
||||||
if(toc != null) { |
|
||||||
((HtmlHelp2TocPad)toc.PadContent).SyncToc(axWebBrowser.Url.ToString()); |
|
||||||
toc.BringPadToFront(); |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
private void PreviousTocTopic(object sender, EventArgs e) |
|
||||||
{ |
|
||||||
PadDescriptor toc = WorkbenchSingleton.Workbench.GetPad(typeof(HtmlHelp2TocPad)); |
|
||||||
if(toc != null) { |
|
||||||
((HtmlHelp2TocPad)toc.PadContent).GetPrevFromNode(); |
|
||||||
#if ChangeTopics_BringPadToFront
|
|
||||||
((HtmlHelp2TocPad)toc.PadContent).BringPadToFront(); |
|
||||||
#endif
|
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
private void NextTocTopic(object sender, EventArgs e) |
|
||||||
{ |
|
||||||
PadDescriptor toc = WorkbenchSingleton.Workbench.GetPad(typeof(HtmlHelp2TocPad)); |
|
||||||
if(toc != null) { |
|
||||||
((HtmlHelp2TocPad)toc.PadContent).GetNextFromNode(); |
|
||||||
#if ChangeTopics_BringPadToFront
|
|
||||||
((HtmlHelp2TocPad)toc.PadContent).BringPadToFront(); |
|
||||||
#endif
|
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
// public void ZoomText()
|
|
||||||
// {
|
|
||||||
//// try {
|
|
||||||
//// zoomFactor = (zoomFactor == 4)?0:zoomFactor+1;
|
|
||||||
//// object zoomArg = zoomFactor;
|
|
||||||
//// object dummy = System.Reflection.Missing.Value;
|
|
||||||
////
|
|
||||||
//// axWebBrowser.ExecWB(SHDocVw.OLECMDID.OLECMDID_ZOOM,
|
|
||||||
//// SHDocVw.OLECMDEXECOPT.OLECMDEXECOPT_PROMPTUSER,
|
|
||||||
//// ref zoomArg,
|
|
||||||
//// ref dummy);
|
|
||||||
//// }
|
|
||||||
//// catch {
|
|
||||||
//// }
|
|
||||||
// }
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
#region UrlTextbox
|
|
||||||
private void UrlTextboxKeyDown(object sender, KeyEventArgs e) |
|
||||||
{ |
|
||||||
if(e.KeyCode == Keys.Enter && urlTextbox.Text != "") { |
|
||||||
this.AddTermToList(urlTextbox.Text); |
|
||||||
this.Navigate(urlTextbox.Text); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
private void UrlTextboxSelectedIndexChanged(object sender, EventArgs e) |
|
||||||
{ |
|
||||||
string selectedUrl = urlTextbox.SelectedItem.ToString(); |
|
||||||
if(selectedUrl != "") { |
|
||||||
this.Navigate(selectedUrl); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
private void AddTermToList(string searchText) |
|
||||||
{ |
|
||||||
if(searchText == "") return; |
|
||||||
|
|
||||||
if(urlTextbox.Items.IndexOf(searchText) == -1) { |
|
||||||
urlTextbox.Items.Insert(0, searchText); |
|
||||||
if(urlTextbox.Items.Count > 10) urlTextbox.Items.RemoveAt(10); |
|
||||||
urlTextbox.SelectedIndex = 0; |
|
||||||
} |
|
||||||
} |
|
||||||
#endregion
|
|
||||||
} |
|
||||||
} |
|
||||||
@ -0,0 +1,66 @@ |
|||||||
|
/* |
||||||
|
* Created by SharpDevelop. |
||||||
|
* User: Daniel Grunwald |
||||||
|
* Date: 05.08.2005 |
||||||
|
* Time: 18:41 |
||||||
|
*/ |
||||||
|
|
||||||
|
using System; |
||||||
|
using System.Drawing; |
||||||
|
using System.Windows.Forms; |
||||||
|
|
||||||
|
using ICSharpCode.Core; |
||||||
|
using ICSharpCode.SharpDevelop; |
||||||
|
using ICSharpCode.SharpDevelop.Gui; |
||||||
|
using ICSharpCode.SharpDevelop.Project; |
||||||
|
using ICSharpCode.SharpDevelop.BrowserDisplayBinding; |
||||||
|
|
||||||
|
namespace HtmlHelp2 |
||||||
|
{ |
||||||
|
public abstract class HelpToolbarCommand : AbstractCommand |
||||||
|
{ |
||||||
|
public HtmlHelp2TocPad TocPad { |
||||||
|
get { |
||||||
|
return (HtmlHelp2TocPad)WorkbenchSingleton.Workbench.GetPad(typeof(HtmlHelp2TocPad)).PadContent; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public WebBrowser Browser { |
||||||
|
get { |
||||||
|
return ((HtmlViewPane)Owner).WebBrowser; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public void BringTocPadToFront() |
||||||
|
{ |
||||||
|
WorkbenchSingleton.Workbench.GetPad(typeof(HtmlHelp2TocPad)).BringPadToFront(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public class SyncTocCommand : HelpToolbarCommand |
||||||
|
{ |
||||||
|
public override void Run() |
||||||
|
{ |
||||||
|
TocPad.SyncToc(Browser.Url.ToString()); |
||||||
|
BringTocPadToFront(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public class PreviousTopicCommand : HelpToolbarCommand |
||||||
|
{ |
||||||
|
public override void Run() |
||||||
|
{ |
||||||
|
TocPad.GetPrevFromNode(); |
||||||
|
BringTocPadToFront(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public class NextTopicCommand : HelpToolbarCommand |
||||||
|
{ |
||||||
|
public override void Run() |
||||||
|
{ |
||||||
|
TocPad.GetNextFromNode(); |
||||||
|
BringTocPadToFront(); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,84 @@ |
|||||||
|
/* |
||||||
|
* Created by SharpDevelop. |
||||||
|
* User: Daniel Grunwald |
||||||
|
* Date: 05.08.2005 |
||||||
|
* Time: 14:35 |
||||||
|
*/ |
||||||
|
|
||||||
|
using System; |
||||||
|
using System.Windows.Forms; |
||||||
|
using ICSharpCode.Core; |
||||||
|
using ICSharpCode.SharpDevelop.Gui; |
||||||
|
|
||||||
|
namespace ICSharpCode.SharpDevelop.BrowserDisplayBinding |
||||||
|
{ |
||||||
|
public class GoBack : AbstractCommand |
||||||
|
{ |
||||||
|
public override void Run() |
||||||
|
{ |
||||||
|
((HtmlViewPane)Owner).WebBrowser.GoBack(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public class GoForward : AbstractCommand |
||||||
|
{ |
||||||
|
public override void Run() |
||||||
|
{ |
||||||
|
((HtmlViewPane)Owner).WebBrowser.GoForward(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public class Stop : AbstractCommand |
||||||
|
{ |
||||||
|
public override void Run() |
||||||
|
{ |
||||||
|
((HtmlViewPane)Owner).WebBrowser.Stop(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public class Refresh : AbstractCommand |
||||||
|
{ |
||||||
|
public override void Run() |
||||||
|
{ |
||||||
|
if ((Control.ModifierKeys & Keys.Control) == Keys.Control) |
||||||
|
((HtmlViewPane)Owner).WebBrowser.Refresh(WebBrowserRefreshOption.Completely); |
||||||
|
else |
||||||
|
((HtmlViewPane)Owner).WebBrowser.Refresh(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public class GoHome : AbstractCommand |
||||||
|
{ |
||||||
|
public override void Run() |
||||||
|
{ |
||||||
|
((HtmlViewPane)Owner).GoHome(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public class GoSearch : AbstractCommand |
||||||
|
{ |
||||||
|
public override void Run() |
||||||
|
{ |
||||||
|
((HtmlViewPane)Owner).GoSearch(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public class UrlComboBox : AbstractComboBoxCommand |
||||||
|
{ |
||||||
|
protected override void OnOwnerChanged(EventArgs e) |
||||||
|
{ |
||||||
|
base.OnOwnerChanged(e); |
||||||
|
ToolBarComboBox toolbarItem = (ToolBarComboBox)Owner; |
||||||
|
toolbarItem.ComboBox.Width *= 3; |
||||||
|
((HtmlViewPane)toolbarItem.Caller).SetUrlComboBox(toolbarItem.ComboBox); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public class NewWindow : AbstractCommand |
||||||
|
{ |
||||||
|
public override void Run() |
||||||
|
{ |
||||||
|
WorkbenchSingleton.Workbench.ShowView(new BrowserPane()); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,34 @@ |
|||||||
|
/* |
||||||
|
* Created by SharpDevelop. |
||||||
|
* User: Daniel Grunwald |
||||||
|
* Date: 05.08.2005 |
||||||
|
* Time: 19:37 |
||||||
|
*/ |
||||||
|
|
||||||
|
using System; |
||||||
|
using System.Text.RegularExpressions; |
||||||
|
using ICSharpCode.Core; |
||||||
|
|
||||||
|
namespace ICSharpCode.SharpDevelop.BrowserDisplayBinding |
||||||
|
{ |
||||||
|
/// <summary>
|
||||||
|
/// Description of BrowserLocationConditionEvaluator.
|
||||||
|
/// </summary>
|
||||||
|
public class BrowserLocationConditionEvaluator : IConditionEvaluator |
||||||
|
{ |
||||||
|
public bool IsValid(object caller, Condition condition) |
||||||
|
{ |
||||||
|
HtmlViewPane pane = (HtmlViewPane)caller; |
||||||
|
Uri uri = pane.Url; |
||||||
|
if (uri == null) |
||||||
|
return false; |
||||||
|
string url = uri.ToString(); |
||||||
|
string pattern = condition.Properties["urlRegex"]; |
||||||
|
string options = condition.Properties["options"]; |
||||||
|
if (options != null && options.Length > 0) |
||||||
|
return Regex.IsMatch(url, pattern, (RegexOptions)Enum.Parse(typeof(RegexOptions), options, true)); |
||||||
|
else |
||||||
|
return Regex.IsMatch(url, pattern); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||