📄 customfoldernode.cs
字号:
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="Mike Krüger" email="mike@icsharpcode.net"/>
// <version>$Revision: 915 $</version>
// </file>
using System;
using System.Drawing;
using System.IO;
using ICSharpCode.Core;
namespace ICSharpCode.SharpDevelop.Project
{
public class CustomFolderNode : AbstractProjectBrowserTreeNode
{
string closedImage = null;
string openedImage = null;
public string ClosedImage {
get {
return closedImage;
}
set {
closedImage = value;
if (!IsExpanded) {
SetIcon(closedImage);
}
}
}
public string OpenedImage {
get {
return openedImage;
}
set {
openedImage = value;
if (IsExpanded) {
SetIcon(openedImage);
}
}
}
public CustomFolderNode()
{
}
protected void UpdateIcon()
{
if (Nodes.Count == 0) {
SetIcon(ClosedImage);
} else if (IsExpanded) {
SetIcon(openedImage);
}
}
public override void Refresh()
{
base.Refresh();
UpdateIcon();
}
public override void Expanding()
{
if (openedImage != null) {
SetIcon(openedImage);
}
base.Expanding();
if (Nodes.Count == 0) {
SetIcon(ClosedImage);
}
}
public override void Collapsing()
{
if (closedImage != null) {
SetIcon(closedImage);
}
base.Collapsing();
}
public override object AcceptVisitor(ProjectBrowserTreeNodeVisitor visitor, object data)
{
return visitor.Visit(this, data);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -