/*
* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
* its licensors.
*
* For complete copyright and license terms please see the LICENSE at the root of this
* distribution (the "License"). All use of this software is governed by the License,
* or, if provided, by the license below or the license accompanying this file. Do not
* remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
*
*/
// Original file Copyright Crytek GMBH or its affiliates, used under license.
using System;
using System.Collections.Generic;
using System.Text;
namespace Aga.Controls.Tree
{
public class TreeModelEventArgs: TreePathEventArgs
{
private object[] _children;
public object[] Children
{
get { return _children; }
}
private int[] _indices;
public int[] Indices
{
get { return _indices; }
}
///
///
///
/// Path to a parent node
/// Child nodes
public TreeModelEventArgs(TreePath parent, object[] children)
: this(parent, null, children)
{
}
///
///
///
/// Path to a parent node
/// Indices of children in parent nodes collection
/// Child nodes
public TreeModelEventArgs(TreePath parent, int[] indices, object[] children)
: base(parent)
{
if (children == null)
throw new ArgumentNullException();
if (indices != null && indices.Length != children.Length)
throw new ArgumentException("indices and children arrays must have the same length");
_indices = indices;
_children = children;
}
}
}