//------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // // [....] //------------------------------------------------------------------------------ namespace System.Xml.Schema { using System.Collections; using System.ComponentModel; using System.Xml.Serialization; /// /// /// [To be supplied.] /// public class XmlSchemaObjectCollection : CollectionBase { XmlSchemaObject parent; /// /// /// [To be supplied.] /// public XmlSchemaObjectCollection() { } /// /// /// [To be supplied.] /// public XmlSchemaObjectCollection(XmlSchemaObject parent) { this.parent = parent; } /// /// /// [To be supplied.] /// public virtual XmlSchemaObject this[int index] { get { return (XmlSchemaObject)List[index]; } set { List[index] = value; } } /// /// /// [To be supplied.] /// public new XmlSchemaObjectEnumerator GetEnumerator() { return new XmlSchemaObjectEnumerator(InnerList.GetEnumerator()); } /// /// /// [To be supplied.] /// public int Add(XmlSchemaObject item) { return List.Add(item); } /// /// /// [To be supplied.] /// public void Insert(int index, XmlSchemaObject item) { List.Insert(index, item); } /// /// /// [To be supplied.] /// public int IndexOf(XmlSchemaObject item) { return List.IndexOf(item); } /// /// /// [To be supplied.] /// public bool Contains(XmlSchemaObject item) { return List.Contains(item); } /// /// /// [To be supplied.] /// public void Remove(XmlSchemaObject item) { List.Remove(item); } /// /// /// [To be supplied.] /// public void CopyTo(XmlSchemaObject[] array, int index) { List.CopyTo(array, index); } /// /// /// [To be supplied.] /// protected override void OnInsert(int index, object item) { if (parent != null) { parent.OnAdd(this, item); } } /// /// /// [To be supplied.] /// protected override void OnSet(int index, object oldValue, object newValue) { if (parent != null) { parent.OnRemove(this, oldValue); parent.OnAdd(this, newValue); } } /// /// /// [To be supplied.] /// protected override void OnClear() { if (parent != null) { parent.OnClear(this); } } /// /// /// [To be supplied.] /// protected override void OnRemove(int index, object item) { if (parent != null) { parent.OnRemove(this, item); } } internal XmlSchemaObjectCollection Clone() { XmlSchemaObjectCollection coll = new XmlSchemaObjectCollection(); coll.Add(this); return coll; } private void Add(XmlSchemaObjectCollection collToAdd) { this.InnerList.InsertRange(0, collToAdd); } } /// /// /// [To be supplied.] /// public class XmlSchemaObjectEnumerator: IEnumerator { IEnumerator enumerator; internal XmlSchemaObjectEnumerator( IEnumerator enumerator ) { this.enumerator = enumerator; } /// /// /// [To be supplied.] /// public void Reset() { enumerator.Reset(); } /// /// /// [To be supplied.] /// public bool MoveNext() { return enumerator.MoveNext(); } /// /// /// [To be supplied.] /// public XmlSchemaObject Current { get { return (XmlSchemaObject)enumerator.Current; } } /// /// void IEnumerator.Reset() { enumerator.Reset(); } /// /// bool IEnumerator.MoveNext() { return enumerator.MoveNext(); } /// /// object IEnumerator.Current { get { return enumerator.Current; } } } }