Files
mirror-processhacker/1.x/trunk/ProcessHacker/Components/TreeViewAdv/Tree/NodeControls/NodeIcon.cs
T
dmex 7f93e8d31b added missing files from last checkin
git-svn-id: svn://svn.code.sf.net/p/processhacker/code@4252 21ef857c-d57f-4fe0-8362-d861dc6d29cd
2011-06-22 04:04:06 +00:00

38 lines
785 B
C#

using System.Drawing;
namespace Aga.Controls.Tree.NodeControls
{
public class NodeIcon : BindableControl
{
public NodeIcon()
{
LeftMargin = 1;
}
public override Size MeasureSize(TreeNodeAdv node, DrawContext context)
{
Image image = GetIcon(node);
if (image != null)
return image.Size;
return Size.Empty;
}
public override void Draw(TreeNodeAdv node, DrawContext context)
{
Image image = GetIcon(node);
if (image != null)
{
Rectangle r = GetBounds(node, context);
context.Graphics.DrawImage(image, r.Location);
}
}
protected virtual Image GetIcon(TreeNodeAdv node)
{
return GetValue(node) as Image;
}
}
}