// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
//
-#if NET_2_0
using System;
using System.Web.UI;
item.Menu = menu;
}
- public MenuItem this [int i] {
- get { return (MenuItem) items [i]; }
+ public MenuItem this [int index] {
+ get { return (MenuItem) items [index]; }
}
public void Add (MenuItem child)
child.SetParent (parent);
if (marked) {
((IStateManager)child).TrackViewState ();
- child.SetDirty ();
- dirty = true;
+ SetDirty ();
}
}
((MenuItem)items[n]).Index = n;
if (marked) {
((IStateManager)child).TrackViewState ();
- child.SetDirty ();
- dirty = true;
+ SetDirty ();
}
}
}
}
items.Clear ();
- dirty = true;
+ if (marked) {
+ SetDirty ();
+ }
}
- public bool Contains (MenuItem child)
+ public bool Contains (MenuItem c)
{
- return items.Contains (child);
+ return items.Contains (c);
}
- public void CopyTo (Array itemArray, int index)
+ public void CopyTo (Array array, int index)
{
- items.CopyTo (itemArray, index);
+ items.CopyTo (array, index);
}
- public void CopyTo (MenuItem[] itemArray, int index)
+ public void CopyTo (MenuItem[] array, int index)
{
- items.CopyTo (itemArray, index);
+ items.CopyTo (array, index);
}
public IEnumerator GetEnumerator ()
return items.GetEnumerator ();
}
- public int IndexOf (MenuItem item)
+ public int IndexOf (MenuItem value)
{
- return items.IndexOf (item);
+ return items.IndexOf (value);
}
- public void Remove (MenuItem item)
+ public void Remove (MenuItem value)
{
- int i = IndexOf (item);
+ int i = IndexOf (value);
if (i == -1) return;
items.RemoveAt (i);
if (menu != null)
- item.Menu = null;
- dirty = true;
+ value.Menu = null;
+ if (marked) {
+ SetDirty ();
+ }
}
public void RemoveAt (int index)
items.RemoveAt (index);
if (menu != null)
item.Menu = null;
- dirty = true;
+ if (marked) {
+ SetDirty ();
+ }
}
public int Count {
((IStateManager) item).LoadViewState (ns);
}
}
+ else {
+ for (int n = 1; n < its.Length; n++) {
+ Pair pair = (Pair) its [n];
+ int oi = (int) pair.First;
+ MenuItem node = (MenuItem) items [oi];
+ ((IStateManager) node).LoadViewState (pair.Second);
+ }
+ }
}
object IStateManager.SaveViewState ()
bool hasData = false;
if (dirty) {
- state = new object [items.Count + 1];
- state [0] = true;
- for (int n=0; n<items.Count; n++) {
- MenuItem item = items[n] as MenuItem;
- object ns = ((IStateManager)item).SaveViewState ();
- if (ns != null) {
- hasData = true;
+ if (items.Count > 0) {
+ hasData = true;
+ state = new object [items.Count + 1];
+ state [0] = true;
+ for (int n = 0; n < items.Count; n++) {
+ MenuItem item = items [n] as MenuItem;
+ object ns = ((IStateManager) item).SaveViewState ();
state [n + 1] = ns;
}
}
}
}
-#endif