Handle more type conversion.
[mono.git] / mcs / class / System.XML / System.Xml.Schema / XmlSchemaObjectCollection.cs
1 // Author: Dwivedi, Ajay kumar
2 //            Adwiv@Yahoo.com
3
4 //
5 // Permission is hereby granted, free of charge, to any person obtaining
6 // a copy of this software and associated documentation files (the
7 // "Software"), to deal in the Software without restriction, including
8 // without limitation the rights to use, copy, modify, merge, publish,
9 // distribute, sublicense, and/or sell copies of the Software, and to
10 // permit persons to whom the Software is furnished to do so, subject to
11 // the following conditions:
12 // 
13 // The above copyright notice and this permission notice shall be
14 // included in all copies or substantial portions of the Software.
15 // 
16 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23 //
24 using System;
25 using System.Collections;
26
27 namespace System.Xml.Schema
28 {
29         /// <summary>
30         /// Summary description for XmlSchemaObjectCollection.
31         /// </summary>
32         public class XmlSchemaObjectCollection : System.Collections.CollectionBase
33         {
34 //              private XmlSchemaObject parent;
35
36                 public XmlSchemaObjectCollection()
37                 {
38                 }
39
40                 public XmlSchemaObjectCollection(XmlSchemaObject parent)
41                 {
42                         // FIXME: how is it used publicly?
43 //                      this.parent = parent;
44                 }
45
46                 // Properties
47                 public virtual XmlSchemaObject this[ int index ] 
48                 {  
49                         get
50                         {
51                                 return (XmlSchemaObject) this.List[index];
52                         } 
53                         set
54                         {
55                                 this.List[index] = value;
56                         }
57                 }
58
59                 // Methods
60                 public int  Add(XmlSchemaObject item)
61                 {
62                         return this.List.Add(item);
63                 }
64                 
65                 public bool Contains(XmlSchemaObject item)
66                 {
67                         return this.List.Contains(item);
68                 }
69                 
70                 public void CopyTo(XmlSchemaObject[] array, int index)
71                 {
72                         this.List.CopyTo(array,index);
73                 }
74                 
75                 public new XmlSchemaObjectEnumerator GetEnumerator ()
76                 {
77                         return new XmlSchemaObjectEnumerator(this.List);
78                 }
79                 
80                 public int IndexOf(XmlSchemaObject item)
81                 {
82                         return this.List.IndexOf(item);
83                 }
84                 
85                 public void Insert(int index, XmlSchemaObject item)
86                 {
87                         this.List.Insert(index, item);
88                 }
89                 
90                 protected override void OnClear()
91                 {
92                 }
93
94                 protected override void OnInsert(int index,object item)
95                 {
96                 }
97
98                 protected override void OnRemove(int index,object item)
99                 {
100                 }
101
102                 protected override void OnSet(int index,object oldValue,object newValue)
103                 {
104                 }
105
106                 public void Remove(XmlSchemaObject item)
107                 {
108                         this.List.Remove(item);
109                 }
110         }
111 }