Browse Source

Help 2.0: fixed a bug when selecting the previous or next topic button (browser) with a hidden TOC control; there was an exception because, of course, there was no selection in the TOC control. Now I use the Get*FromUrl method with the current browser URL. btw: some other things changed

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@534 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Mathias Simmack 20 years ago
parent
commit
23a9e07147
  1. 34
      src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/DynamicHelpPad.cs
  2. 1
      src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/FavoritesPad.cs
  3. 32
      src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/TocPad.cs
  4. 18
      src/AddIns/Misc/HtmlHelp2/Project/src/BrowserControl/HelpBrowserCommands.cs
  5. 5
      src/AddIns/Misc/HtmlHelp2/Project/src/BrowserControl/ShowHelpBrowser.cs
  6. 1
      src/AddIns/Misc/HtmlHelp2/Project/src/BrowserScheme.cs

34
src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/DynamicHelpPad.cs

@ -8,15 +8,11 @@ @@ -8,15 +8,11 @@
namespace HtmlHelp2
{
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Drawing;
using System.Drawing.Design;
using System.Windows.Forms;
using System.Reflection;
using System.IO;
using System.Xml;
using ICSharpCode.Core;
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Gui;
@ -59,8 +55,10 @@ namespace HtmlHelp2 @@ -59,8 +55,10 @@ namespace HtmlHelp2
public HtmlHelp2DynamicHelpPad()
{
dynamicHelpBrowser = new HtmlHelp2DynamicHelpBrowserControl(this.enableDebugInfo);
dynamicHelpBrowser = new HtmlHelp2DynamicHelpBrowserControl();
dynamicHelpBrowser.LoadDynamicHelpPage();
dynamicHelpBrowser.BuildANothing();
ParserService.ParserUpdateStepFinished += UpdateTick;
PropertyPad.SelectedObjectChanged += new EventHandler(this.FormsDesignerSelectedObjectChanged);
PropertyPad.SelectedGridItemChanged += new SelectedGridItemChangedEventHandler(this.FormsDesignerSelectedGridItemChanged);
@ -316,8 +314,8 @@ namespace HtmlHelp2 @@ -316,8 +314,8 @@ namespace HtmlHelp2
public class HtmlHelp2DynamicHelpBrowserControl : UserControl
{
WebBrowser axWebBrowser = null;
ToolStrip dynamicHelpToolbar = null;
WebBrowser axWebBrowser = new WebBrowser();
ToolStrip dynamicHelpToolbar = new ToolStrip();
int internalIndex = 0;
string[] toolbarButtons = new string[] {
"${res:AddIns.HtmlHelp2.Contents}",
@ -335,28 +333,20 @@ namespace HtmlHelp2 @@ -335,28 +333,20 @@ namespace HtmlHelp2
public HtmlHelp2DynamicHelpBrowserControl()
{
this.InitializeComponents(false);
this.InitializeComponents();
}
public HtmlHelp2DynamicHelpBrowserControl(bool enableDebugging)
{
this.InitializeComponents(enableDebugging);
}
private void InitializeComponents(bool enableDebugging)
private void InitializeComponents()
{
Dock = DockStyle.Fill;
Size = new Size(500, 500);
axWebBrowser = new WebBrowser();
Controls.Add(axWebBrowser);
axWebBrowser.Dock = DockStyle.Fill;
axWebBrowser.WebBrowserShortcutsEnabled = enableDebugging;
axWebBrowser.IsWebBrowserContextMenuEnabled = enableDebugging;
axWebBrowser.AllowWebBrowserDrop = enableDebugging;
this.LoadDynamicHelpPage();
axWebBrowser.WebBrowserShortcutsEnabled = false;
axWebBrowser.IsWebBrowserContextMenuEnabled = false;
axWebBrowser.AllowWebBrowserDrop = false;
dynamicHelpToolbar = new ToolStrip();
Controls.Add(dynamicHelpToolbar);
dynamicHelpToolbar.Dock = DockStyle.Top;
dynamicHelpToolbar.AllowItemReorder = false;
@ -384,11 +374,10 @@ namespace HtmlHelp2 @@ -384,11 +374,10 @@ namespace HtmlHelp2
}
}
private void LoadDynamicHelpPage()
public void LoadDynamicHelpPage()
{
if(!HtmlHelp2Environment.IsReady) return;
string url = String.Format("res://{0}/context", Assembly.GetExecutingAssembly().Location);
//if(!File.Exists(url)) url = "about:blank";
axWebBrowser.Navigate(url);
}
@ -483,7 +472,6 @@ namespace HtmlHelp2 @@ -483,7 +472,6 @@ namespace HtmlHelp2
HtmlElement img = axWebBrowser.Document.CreateElement("img");
img.Style = "width:16px;height:16px;margin-right:5px";
img.Id = String.Format("image_{0}", this.internalIndex.ToString());
// img.SetAttribute("src", "OpenBook.png");
img.SetAttribute("src", "open");
span.AppendChild(img);

1
src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/FavoritesPad.cs

@ -17,6 +17,7 @@ namespace HtmlHelp2 @@ -17,6 +17,7 @@ namespace HtmlHelp2
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Gui;
using HtmlHelp2.Environment;
using HtmlHelp2.ResourcesHelperClass;
public class ShowFavoritesMenuCommand : AbstractMenuCommand

32
src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/TocPad.cs

@ -68,11 +68,21 @@ namespace HtmlHelp2 @@ -68,11 +68,21 @@ namespace HtmlHelp2
if(help2TocControl.IsEnabled) help2TocControl.GetPrevFromNode();
}
public void GetPrevFromUrl(string topicUrl)
{
if(help2TocControl.IsEnabled) help2TocControl.GetPrevFromUrl(topicUrl);
}
public void GetNextFromNode()
{
if(help2TocControl.IsEnabled) help2TocControl.GetNextFromNode();
}
public void GetNextFromUrl(string topicUrl)
{
if(help2TocControl.IsEnabled) help2TocControl.GetNextFromUrl(topicUrl);
}
public bool IsNotFirstNode
{
get { return help2TocControl.IsNotFirstNode; }
@ -294,15 +304,29 @@ namespace HtmlHelp2 @@ -294,15 +304,29 @@ namespace HtmlHelp2
public void GetNextFromNode()
{
int currentNode = tocControl.Hierarchy.GetNextFromNode(tocControl.Selection);
string TopicUrl = tocControl.Hierarchy.GetURL(currentNode);
this.CallHelp(TopicUrl,true);
string topicUrl = tocControl.Hierarchy.GetURL(currentNode);
this.CallHelp(topicUrl, true);
}
public void GetNextFromUrl(string url)
{
int currentNode = tocControl.Hierarchy.GetNextFromUrl(url);
string topicUrl = tocControl.Hierarchy.GetURL(currentNode);
this.CallHelp(topicUrl, true);
}
public void GetPrevFromNode()
{
int currentNode = tocControl.Hierarchy.GetPrevFromNode(tocControl.Selection);
string TopicUrl = tocControl.Hierarchy.GetURL(currentNode);
this.CallHelp(TopicUrl,true);
string topicUrl = tocControl.Hierarchy.GetURL(currentNode);
this.CallHelp(topicUrl, true);
}
public void GetPrevFromUrl(string url)
{
int currentNode = tocControl.Hierarchy.GetPrevFromUrl(url);
string topicUrl = tocControl.Hierarchy.GetURL(currentNode);
this.CallHelp(topicUrl, true);
}
public bool IsNotFirstNode

18
src/AddIns/Misc/HtmlHelp2/Project/src/BrowserControl/HelpBrowserCommands.cs

@ -54,7 +54,14 @@ namespace HtmlHelp2 @@ -54,7 +54,14 @@ namespace HtmlHelp2
{
public override void Run()
{
TocPad.GetPrevFromNode();
try
{
TocPad.GetPrevFromNode();
}
catch
{
TocPad.GetPrevFromUrl(Browser.Url.ToString());
}
BringTocPadToFront();
}
}
@ -63,7 +70,14 @@ namespace HtmlHelp2 @@ -63,7 +70,14 @@ namespace HtmlHelp2
{
public override void Run()
{
TocPad.GetNextFromNode();
try
{
TocPad.GetNextFromNode();
}
catch
{
TocPad.GetNextFromUrl(Browser.Url.ToString());
}
BringTocPadToFront();
}
}

5
src/AddIns/Misc/HtmlHelp2/Project/src/BrowserControl/ShowHelpBrowser.cs

@ -34,6 +34,11 @@ namespace HtmlHelp2 @@ -34,6 +34,11 @@ namespace HtmlHelp2
OpenHelpView(topicUrl, null, false);
}
public static void OpenHelpView(string topicUrl, bool hiliteMatchingWords)
{
OpenHelpView(topicUrl, null, hiliteMatchingWords);
}
public static void OpenHelpView(string topicUrl, IHxTopic topic, bool hiliteMatchingWords)
{
hiliteMatches = hiliteMatchingWords;

1
src/AddIns/Misc/HtmlHelp2/Project/src/BrowserScheme.cs

@ -23,7 +23,6 @@ namespace HtmlHelp2 @@ -23,7 +23,6 @@ namespace HtmlHelp2
public override void GoSearch(HtmlViewPane pane)
{
// new ShowSearchMenuCommand().Run();
pane.Navigate(HtmlHelp2Environment.SearchPage);
}

Loading…
Cancel
Save