Browse Source

Allow clicking "through" icons in the text editor icon bar margin if they don't handle the mouse event.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/2.1@2296 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 19 years ago
parent
commit
492c46df04
  1. 2
      src/AddIns/Misc/StartPage/Project/Src/ICSharpCodePage.cs
  2. 4
      src/Libraries/ICSharpCode.TextEditor/Project/Src/Document/BookmarkManager/Bookmark.cs
  3. 8
      src/Libraries/ICSharpCode.TextEditor/Project/Src/Gui/IconBarMargin.cs
  4. 16
      src/Main/Base/Project/Src/TextEditor/Bookmarks/ClassMemberBookmark.cs
  5. 2
      src/Main/GlobalAssemblyInfo.template

2
src/AddIns/Misc/StartPage/Project/Src/ICSharpCodePage.cs

@ -202,7 +202,7 @@ namespace ICSharpCode.StartPage
StaticStyleSheet = startPageLocation + "/Layout/default.css"; StaticStyleSheet = startPageLocation + "/Layout/default.css";
MetaAuthor = "Christoph Wille - christophw@alphasierrapapa.com"; MetaAuthor = "Christoph Wille - christophw@alphasierrapapa.com";
MetaCopyright = "(c) 2001-2006 AlphaSierraPapa"; MetaCopyright = "(c) 2001-2007 AlphaSierraPapa";
ShowLeftMenu = false; ShowLeftMenu = false;
ShowRightBox = false; ShowRightBox = false;

4
src/Libraries/ICSharpCode.TextEditor/Project/Src/Document/BookmarkManager/Bookmark.cs

@ -111,11 +111,13 @@ namespace ICSharpCode.TextEditor.Document
this.isEnabled = isEnabled; this.isEnabled = isEnabled;
} }
public virtual void Click(SWF.Control parent, SWF.MouseEventArgs e) public virtual bool Click(SWF.Control parent, SWF.MouseEventArgs e)
{ {
if (e.Button == SWF.MouseButtons.Left && CanToggle) { if (e.Button == SWF.MouseButtons.Left && CanToggle) {
document.BookmarkManager.RemoveMark(this); document.BookmarkManager.RemoveMark(this);
return true;
} }
return false;
} }
public virtual void Draw(IconBarMargin margin, Graphics g, Point p) public virtual void Draw(IconBarMargin margin, Graphics g, Point p)

8
src/Libraries/ICSharpCode.TextEditor/Project/Src/Gui/IconBarMargin.cs

@ -78,10 +78,16 @@ namespace ICSharpCode.TextEditor
} }
List<Bookmark> marks = textArea.Document.BookmarkManager.Marks; List<Bookmark> marks = textArea.Document.BookmarkManager.Marks;
List<Bookmark> marksInLine = new List<Bookmark>();
int oldCount = marks.Count; int oldCount = marks.Count;
foreach (Bookmark mark in marks) { foreach (Bookmark mark in marks) {
if (mark.LineNumber == lineNumber) { if (mark.LineNumber == lineNumber) {
mark.Click(textArea, new MouseEventArgs(mouseButtons, 1, mousePos.X, mousePos.Y, 0)); marksInLine.Add(mark);
}
}
for (int i = marksInLine.Count - 1; i >= 0; i--) {
Bookmark mark = marksInLine[i];
if (mark.Click(textArea, new MouseEventArgs(mouseButtons, 1, mousePos.X, mousePos.Y, 0))) {
if (oldCount != marks.Count) { if (oldCount != marks.Count) {
textArea.UpdateLine(lineNumber); textArea.UpdateLine(lineNumber);
} }

16
src/Main/Base/Project/Src/TextEditor/Bookmarks/ClassMemberBookmark.cs

@ -39,10 +39,14 @@ namespace ICSharpCode.SharpDevelop.Bookmarks
public const string ContextMenuPath = "/SharpDevelop/ViewContent/DefaultTextEditor/ClassMemberContextMenu"; public const string ContextMenuPath = "/SharpDevelop/ViewContent/DefaultTextEditor/ClassMemberContextMenu";
public override void Click(Control parent, MouseEventArgs e) public override bool Click(Control parent, MouseEventArgs e)
{ {
if (e.Button == MouseButtons.Left) if (e.Button == MouseButtons.Left) {
MenuService.ShowContextMenu(this, ContextMenuPath, parent, e.X, e.Y); MenuService.ShowContextMenu(this, ContextMenuPath, parent, e.X, e.Y);
return true;
} else {
return false;
}
} }
public abstract int IconIndex { public abstract int IconIndex {
@ -76,10 +80,14 @@ namespace ICSharpCode.SharpDevelop.Bookmarks
public const string ContextMenuPath = "/SharpDevelop/ViewContent/DefaultTextEditor/ClassBookmarkContextMenu"; public const string ContextMenuPath = "/SharpDevelop/ViewContent/DefaultTextEditor/ClassBookmarkContextMenu";
public override void Click(Control parent, MouseEventArgs e) public override bool Click(Control parent, MouseEventArgs e)
{ {
if (e.Button == MouseButtons.Left) if (e.Button == MouseButtons.Left) {
MenuService.ShowContextMenu(this, ContextMenuPath, parent, e.X, e.Y); MenuService.ShowContextMenu(this, ContextMenuPath, parent, e.X, e.Y);
return true;
} else {
return false;
}
} }
public override void Draw(IconBarMargin margin, Graphics g, Point p) public override void Draw(IconBarMargin margin, Graphics g, Point p)

2
src/Main/GlobalAssemblyInfo.template

@ -19,7 +19,7 @@ using System.Reflection;
[assembly: System.Runtime.InteropServices.ComVisible(false)] [assembly: System.Runtime.InteropServices.ComVisible(false)]
[assembly: AssemblyCompany("ic#code")] [assembly: AssemblyCompany("ic#code")]
[assembly: AssemblyProduct("SharpDevelop")] [assembly: AssemblyProduct("SharpDevelop")]
[assembly: AssemblyCopyright("2000-2006 AlphaSierraPapa")] [assembly: AssemblyCopyright("2000-2007 AlphaSierraPapa")]
[assembly: AssemblyVersion(RevisionClass.FullVersion)] [assembly: AssemblyVersion(RevisionClass.FullVersion)]
internal static class RevisionClass internal static class RevisionClass

Loading…
Cancel
Save