External/Aga.Controls/Tree/TreeModelEventArgs.cs
author StephaneLenclud
Sun, 03 Feb 2013 18:01:50 +0100
branchMiniDisplay
changeset 433 090259cfd699
permissions -rw-r--r--
Adding SoundGraphDisplay and SensorFrontView classes.
They were respectively based on SystemTray and SensorNotifyIcon.
SoundGraphDisplay is now able to load iMONDisplay.dll providing it lives on your PATH.
Adding option to sensor context menu for adding it into FrontView.
moel@345
     1
using System;
moel@345
     2
using System.Collections.Generic;
moel@345
     3
using System.Text;
moel@345
     4
moel@345
     5
namespace Aga.Controls.Tree
moel@345
     6
{
moel@345
     7
	public class TreeModelEventArgs: TreePathEventArgs
moel@345
     8
	{
moel@345
     9
		private object[] _children;
moel@345
    10
		public object[] Children
moel@345
    11
		{
moel@345
    12
			get { return _children; }
moel@345
    13
		}
moel@345
    14
moel@345
    15
		private int[] _indices;
moel@345
    16
		public int[] Indices
moel@345
    17
		{
moel@345
    18
			get { return _indices; }
moel@345
    19
		}
moel@345
    20
moel@345
    21
		/// <summary>
moel@345
    22
		/// 
moel@345
    23
		/// </summary>
moel@345
    24
		/// <param name="parent">Path to a parent node</param>
moel@345
    25
		/// <param name="children">Child nodes</param>
moel@345
    26
		public TreeModelEventArgs(TreePath parent, object[] children)
moel@345
    27
			: this(parent, null, children)
moel@345
    28
		{
moel@345
    29
		}
moel@345
    30
moel@345
    31
		/// <summary>
moel@345
    32
		/// 
moel@345
    33
		/// </summary>
moel@345
    34
		/// <param name="parent">Path to a parent node</param>
moel@345
    35
		/// <param name="indices">Indices of children in parent nodes collection</param>
moel@345
    36
		/// <param name="children">Child nodes</param>
moel@345
    37
		public TreeModelEventArgs(TreePath parent, int[] indices, object[] children)
moel@345
    38
			: base(parent)
moel@345
    39
		{
moel@345
    40
			if (children == null)
moel@345
    41
				throw new ArgumentNullException();
moel@345
    42
moel@345
    43
			if (indices != null && indices.Length != children.Length)
moel@345
    44
				throw new ArgumentException("indices and children arrays must have the same length");
moel@345
    45
moel@345
    46
			_indices = indices;
moel@345
    47
			_children = children;
moel@345
    48
		}
moel@345
    49
	}
moel@345
    50
}