Browse Source

Fixed SD2-402:Toolbar in bookmark pad.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@480 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Mike Krüger 20 years ago
parent
commit
748cb314ca
  1. 2
      src/Main/Base/Project/Src/TextEditor/Bookmarks/Commands/MenuCommands.cs
  2. 49
      src/Main/Base/Project/Src/TextEditor/Bookmarks/Pad/BookmarkPad.cs
  3. 24
      src/Main/Base/Project/Src/TextEditor/Bookmarks/Pad/BookmarkPadToolbarCommands.cs
  4. 5
      src/Main/Base/Project/Src/TextEditor/Bookmarks/Pad/Nodes/BookmarkNode.cs

2
src/Main/Base/Project/Src/TextEditor/Bookmarks/Commands/MenuCommands.cs

@ -38,11 +38,11 @@ namespace ICSharpCode.SharpDevelop.Bookmarks @@ -38,11 +38,11 @@ namespace ICSharpCode.SharpDevelop.Bookmarks
public class PrevBookmark : AbstractEditActionMenuCommand
{
public static bool AcceptOnlyStandardBookmarks(Bookmark mark)
{
return (mark is SDBookmark);
}
public override IEditAction EditAction {
get {
return new ICSharpCode.TextEditor.Actions.GotoPrevBookmark(PrevBookmark.AcceptOnlyStandardBookmarks);

49
src/Main/Base/Project/Src/TextEditor/Bookmarks/Pad/BookmarkPad.cs

@ -44,6 +44,12 @@ namespace ICSharpCode.SharpDevelop.Bookmarks @@ -44,6 +44,12 @@ namespace ICSharpCode.SharpDevelop.Bookmarks
}
}
public BookmarkNode CurrentNode {
get {
return bookmarkTreeView.SelectedNode as BookmarkNode;
}
}
public BookmarkPad()
{
instance = this;
@ -67,6 +73,49 @@ namespace ICSharpCode.SharpDevelop.Bookmarks @@ -67,6 +73,49 @@ namespace ICSharpCode.SharpDevelop.Bookmarks
}
}
public class BookmarkNodeEnumerator {
public IEnumerator<TreeNode> GetEnumerator()
{
Stack<TreeNode> treeNodes = new Stack<TreeNode>();
foreach (TreeNode node in Instance.bookmarkTreeView.Nodes) {
treeNodes.Push(node);
}
while (treeNodes.Count > 0) {
TreeNode node = treeNodes.Pop();
foreach (TreeNode childNode in node.Nodes) {
treeNodes.Push(childNode);
}
yield return node;
}
}
}
BookmarkNodeEnumerator bookmarkNodeEnumerator = new BookmarkNodeEnumerator();
public BookmarkNodeEnumerator AllNodes {
get {
return bookmarkNodeEnumerator;
}
}
public void EnableDisableAll()
{
bool isOneChecked = false;
foreach (TreeNode node in AllNodes) {
if (node is BookmarkNode) {
if (((BookmarkNode)node).Checked) {
isOneChecked = true;
break;
}
}
}
foreach (TreeNode node in AllNodes) {
if (node is BookmarkNode) {
((BookmarkNode)node).Checked = !isOneChecked;
}
}
}
void AddMark(SDBookmark mark)
{
if (!mark.IsVisibleInBookmarkPad)

24
src/Main/Base/Project/Src/TextEditor/Bookmarks/Pad/BookmarkPadToolbarCommands.cs

@ -21,20 +21,26 @@ using ICSharpCode.SharpDevelop.Project; @@ -21,20 +21,26 @@ using ICSharpCode.SharpDevelop.Project;
using ICSharpCode.SharpDevelop.Gui;
using ICSharpCode.SharpDevelop.DefaultEditor.Commands;
using ICSharpCode.SharpDevelop;
using ICSharpCode.TextEditor;
using ICSharpCode.TextEditor.Actions;
namespace ICSharpCode.SharpDevelop.Bookmarks
{
public class GotoNext : AbstractMenuCommand
public class GotoNext : AbstractEditActionMenuCommand
{
public override void Run()
{
public override IEditAction EditAction {
get {
return new ICSharpCode.TextEditor.Actions.GotoNextBookmark(PrevBookmark.AcceptOnlyStandardBookmarks);
}
}
}
public class GotoPrev : AbstractMenuCommand
public class GotoPrev : AbstractEditActionMenuCommand
{
public override void Run()
{
public override IEditAction EditAction {
get {
return new ICSharpCode.TextEditor.Actions.GotoPrevBookmark(PrevBookmark.AcceptOnlyStandardBookmarks);
}
}
}
@ -42,6 +48,11 @@ namespace ICSharpCode.SharpDevelop.Bookmarks @@ -42,6 +48,11 @@ namespace ICSharpCode.SharpDevelop.Bookmarks
{
public override void Run()
{
BookmarkNode node = BookmarkPad.Instance.CurrentNode;
if (node != null) {
node.Bookmark.Document.BookmarkManager.RemoveMark(node.Bookmark);
WorkbenchSingleton.MainForm.Refresh();
}
}
}
@ -49,6 +60,7 @@ namespace ICSharpCode.SharpDevelop.Bookmarks @@ -49,6 +60,7 @@ namespace ICSharpCode.SharpDevelop.Bookmarks
{
public override void Run()
{
BookmarkPad.Instance.EnableDisableAll();
}
}

5
src/Main/Base/Project/Src/TextEditor/Bookmarks/Pad/Nodes/BookmarkNode.cs

@ -54,6 +54,11 @@ namespace ICSharpCode.SharpDevelop.Bookmarks @@ -54,6 +54,11 @@ namespace ICSharpCode.SharpDevelop.Bookmarks
}
}
public override void CheckedChanged()
{
bookmark.IsEnabled = Checked;
}
void BookmarkDocumentChanged(object sender, EventArgs e)
{
if (bookmark.Document != null) {

Loading…
Cancel
Save