External/Aga.Controls/Tree/NodeControls/NodeStateIcon.cs
author moel.mich
Mon, 02 Jul 2012 21:14:40 +0000
changeset 357 fb8dc26f65a4
permissions -rw-r--r--
Added mainboard specific configurations for the following Gigabyte mainboards: EX58-UD3R, G41M-Combo, G41MT-S2, G41MT-S2P, GA-MA770T-UD3P, GA-MA785GM-US2H, GA-MA78LM-S2H, GA-MA790X-UD3P, H55-USB3, H55N-USB3, H61M-DS2 REV 1.2, H61M-USB3-B3 REV 2.0, H67A-USB3-B3, P55A-UD3, P67A-UD3-B3, P67A-UD3R-B3, Z68A-D3H-B3, Z68AP-D3, Z68X-UD3H-B3.
moel@345
     1
using System;
moel@345
     2
using System.Collections.Generic;
moel@345
     3
using System.Text;
moel@345
     4
using System.Drawing;
moel@345
     5
using Aga.Controls.Properties;
moel@345
     6
moel@345
     7
namespace Aga.Controls.Tree.NodeControls
moel@345
     8
{
moel@345
     9
	public class NodeStateIcon: NodeIcon
moel@345
    10
	{
moel@345
    11
		private Image _leaf;
moel@345
    12
		private Image _opened;
moel@345
    13
		private Image _closed;
moel@345
    14
moel@345
    15
		public NodeStateIcon()
moel@345
    16
		{
moel@345
    17
			_leaf = MakeTransparent(Resources.Leaf);
moel@345
    18
			_opened = MakeTransparent(Resources.Folder);
moel@345
    19
			_closed = MakeTransparent(Resources.FolderClosed);
moel@345
    20
		}
moel@345
    21
moel@345
    22
		private static Image MakeTransparent(Bitmap bitmap)
moel@345
    23
		{
moel@345
    24
			bitmap.MakeTransparent(bitmap.GetPixel(0,0));
moel@345
    25
			return bitmap;
moel@345
    26
		}
moel@345
    27
moel@345
    28
		protected override Image GetIcon(TreeNodeAdv node)
moel@345
    29
		{
moel@345
    30
			Image icon = base.GetIcon(node);
moel@345
    31
			if (icon != null)
moel@345
    32
				return icon;
moel@345
    33
			else if (node.IsLeaf)
moel@345
    34
				return _leaf;
moel@345
    35
			else if (node.CanExpand && node.IsExpanded)
moel@345
    36
				return _opened;
moel@345
    37
			else
moel@345
    38
				return _closed;
moel@345
    39
		}
moel@345
    40
	}
moel@345
    41
}